Browse Source

1.新增判断设备联动、回调

2.新增出库
master
xia 3 years ago
parent
commit
c851d8b17e
  1. 38
      archives/src/main/java/com/storeroom/modules/archives/controller/StorageController.java
  2. 3
      archives/src/main/java/com/storeroom/modules/archives/service/ArchivesCaseService.java
  3. 4
      archives/src/main/java/com/storeroom/modules/archives/service/impl/ArchivesCaseServiceImpl.java
  4. 3
      storeroom/src/main/java/com/storeroom/modules/device/repository/OperatingStateRepository.java
  5. 13
      storeroom/src/main/java/com/storeroom/modules/device/service/OperatingStateService.java
  6. 22
      storeroom/src/main/java/com/storeroom/modules/device/service/impl/OperatingStateImpl.java

38
archives/src/main/java/com/storeroom/modules/archives/controller/StorageController.java

@ -1,9 +1,12 @@
package com.storeroom.modules.archives.controller; package com.storeroom.modules.archives.controller;
import com.storeroom.modules.archives.domain.ArchivesCase;
import com.storeroom.modules.archives.service.ArchivesCaseService; import com.storeroom.modules.archives.service.ArchivesCaseService;
import com.storeroom.modules.archives.service.ArchivesService; import com.storeroom.modules.archives.service.ArchivesService;
import com.storeroom.modules.archives.service.dto.CaseDTO; import com.storeroom.modules.archives.service.dto.CaseDTO;
import com.storeroom.modules.archives.service.dto.CollectDTO; import com.storeroom.modules.archives.service.dto.CollectDTO;
import com.storeroom.modules.device.domain.OperatingState;
import com.storeroom.modules.device.service.OperatingStateService;
import com.storeroom.utils.ApiResponse; import com.storeroom.utils.ApiResponse;
import com.storeroom.utils.enums.ResponseStatus; import com.storeroom.utils.enums.ResponseStatus;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@ -23,6 +26,7 @@ public class StorageController {
private final ArchivesCaseService caseService; private final ArchivesCaseService caseService;
private final ArchivesService archivesService; private final ArchivesService archivesService;
private final OperatingStateService operatingStateService;
@ApiOperation("可入库盒列表") @ApiOperation("可入库盒列表")
@GetMapping("/readyInto") @GetMapping("/readyInto")
@ -63,11 +67,37 @@ public class StorageController {
){ ){
if(null == dtos || dtos.size()==0) if(null == dtos || dtos.size()==0)
return ApiResponse.error(ResponseStatus.DEVICE_IS_NULL); return ApiResponse.error(ResponseStatus.DEVICE_IS_NULL);
String device = dtos.get(0).getDeviceId();
String deviceId = dtos.get(0).getDeviceId();
//判断设备是否有回调 //判断设备是否有回调
boolean isCallback = false;
Integer result = caseService.collect(isCallback,dtos);
return ApiResponse.success(result);
OperatingState callback = operatingStateService.findByDeviceIdAndStateType(deviceId,2);
boolean isCallback = callback == null ? false : callback.getInBound();
List<ArchivesCase> cases = caseService.collect(isCallback,dtos);
//判断设备是否有联动
OperatingState linkage = operatingStateService.findByDeviceIdAndStateType(deviceId,1);
if(null != linkage && linkage.getInBound()){
}
return ApiResponse.success(cases.size());
}
@ApiOperation("出库")
@PostMapping("/grant")
public ApiResponse<Object> grant(
@Validated @RequestBody List<CollectDTO> dtos
){
if(null == dtos || dtos.size()==0)
return ApiResponse.error(ResponseStatus.DEVICE_IS_NULL);
String deviceId = dtos.get(0).getDeviceId();
//判断设备是否有回调
OperatingState callback = operatingStateService.findByDeviceIdAndStateType(deviceId,2);
boolean isCallback = callback == null ? false : callback.getInBound();
List<ArchivesCase> cases = caseService.collect(isCallback,dtos);
//判断设备是否有联动
OperatingState linkage = operatingStateService.findByDeviceIdAndStateType(deviceId,1);
if(null != linkage && linkage.getInBound()){
}
return ApiResponse.success(cases.size());
} }
} }

3
archives/src/main/java/com/storeroom/modules/archives/service/ArchivesCaseService.java

@ -1,5 +1,6 @@
package com.storeroom.modules.archives.service; package com.storeroom.modules.archives.service;
import com.storeroom.modules.archives.domain.ArchivesCase;
import com.storeroom.modules.archives.domain.ArchivesCaseCartoning; import com.storeroom.modules.archives.domain.ArchivesCaseCartoning;
import com.storeroom.modules.archives.service.dto.ArchivesCaseCartoningDTO; import com.storeroom.modules.archives.service.dto.ArchivesCaseCartoningDTO;
import com.storeroom.modules.archives.service.dto.CaseDTO; import com.storeroom.modules.archives.service.dto.CaseDTO;
@ -41,5 +42,5 @@ public interface ArchivesCaseService {
//根据档案初始化装盒信息 //根据档案初始化装盒信息
Object initCaseByArchives(String archivesId); Object initCaseByArchives(String archivesId);
//入库 //入库
Integer collect(boolean isCallback,List<CollectDTO> dtos);
List<ArchivesCase> collect(boolean isCallback, List<CollectDTO> dtos);
} }

4
archives/src/main/java/com/storeroom/modules/archives/service/impl/ArchivesCaseServiceImpl.java

@ -420,7 +420,7 @@ public class ArchivesCaseServiceImpl implements ArchivesCaseService {
} }
@Override @Override
public Integer collect(boolean isCallback, List<CollectDTO> dtos) {
public List<ArchivesCase> collect(boolean isCallback, List<CollectDTO> dtos) {
List<ArchivesCase> cases = new ArrayList<>(); List<ArchivesCase> cases = new ArrayList<>();
Set<ArchivesSummary> archices = new HashSet<>(); Set<ArchivesSummary> archices = new HashSet<>();
for (CollectDTO dto : dtos){ for (CollectDTO dto : dtos){
@ -460,6 +460,6 @@ public class ArchivesCaseServiceImpl implements ArchivesCaseService {
} }
caseRepository.saveAllAndFlush(cases); caseRepository.saveAllAndFlush(cases);
archivesSummaryRepository.saveAllAndFlush(archices); archivesSummaryRepository.saveAllAndFlush(archices);
return cases.size();
return cases;
} }
} }

3
storeroom/src/main/java/com/storeroom/modules/device/repository/OperatingStateRepository.java

@ -5,4 +5,7 @@ import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
public interface OperatingStateRepository extends JpaRepository<OperatingState,String>, JpaSpecificationExecutor<OperatingState> { public interface OperatingStateRepository extends JpaRepository<OperatingState,String>, JpaSpecificationExecutor<OperatingState> {
OperatingState findByDeviceIdAndStateType(String deviceId,Integer stateType);
} }

13
storeroom/src/main/java/com/storeroom/modules/device/service/OperatingStateService.java

@ -0,0 +1,13 @@
package com.storeroom.modules.device.service;
import com.storeroom.modules.device.domain.OperatingState;
import com.storeroom.modules.device.service.dto.DeviceInfoDto;
import java.util.List;
public interface OperatingStateService {
//根据设备id和操作状态获取详细操作信息
OperatingState findByDeviceIdAndStateType(String deviceId,Integer stateType);
}

22
storeroom/src/main/java/com/storeroom/modules/device/service/impl/OperatingStateImpl.java

@ -0,0 +1,22 @@
package com.storeroom.modules.device.service.impl;
import com.storeroom.modules.device.domain.OperatingState;
import com.storeroom.modules.device.repository.OperatingStateRepository;
import com.storeroom.modules.device.service.OperatingStateService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@Service
@RequiredArgsConstructor
public class OperatingStateImpl implements OperatingStateService {
private final OperatingStateRepository operatingStateRepository;
@Override
public OperatingState findByDeviceIdAndStateType(String deviceId, Integer stateType) {
return operatingStateRepository.findByDeviceIdAndStateType(deviceId,stateType);
}
}
Loading…
Cancel
Save