|
|
|
@ -10,6 +10,7 @@ import com.glxp.api.entity.auth.SysWorkplace;
|
|
|
|
|
import com.glxp.api.entity.basic.BasicCollectBustypeEntity;
|
|
|
|
|
import com.glxp.api.entity.basic.BasicSkPrescribeEntity;
|
|
|
|
|
import com.glxp.api.entity.basic.BasicSkPrescribeItemEntity;
|
|
|
|
|
import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
|
|
|
|
|
import com.glxp.api.entity.collect.IoCollectOrder;
|
|
|
|
|
import com.glxp.api.entity.collect.IoCollectOrderBiz;
|
|
|
|
|
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
|
|
|
|
@ -19,6 +20,7 @@ import com.glxp.api.exception.JsonException;
|
|
|
|
|
import com.glxp.api.req.collect.CollectOrderRequest;
|
|
|
|
|
import com.glxp.api.req.inout.DeleteTageCodeRequest;
|
|
|
|
|
import com.glxp.api.req.inout.FilterOrderRequest;
|
|
|
|
|
import com.glxp.api.res.basic.SysWorkplaceResponse;
|
|
|
|
|
import com.glxp.api.res.basic.UdiRelevanceResponse;
|
|
|
|
|
import com.glxp.api.res.collect.IoCollectOrderResponse;
|
|
|
|
|
import com.glxp.api.res.inout.IoOrderResponse;
|
|
|
|
@ -129,7 +131,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
SysWorkplaceDocumentService sysWorkplaceDocumentService;
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
|
BasicCollectBustypeService bustypeService;
|
|
|
|
|
|
|
|
|
|
public void importUdi() {
|
|
|
|
|
//下载UDI内部单据
|
|
|
|
@ -145,10 +148,10 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, ioOrderEntity.getBillNo()))) {
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByAddr(ioOrderEntity.getAction());
|
|
|
|
|
if (collectBustypeEntity == null)
|
|
|
|
|
continue;
|
|
|
|
|
List<SysWorkplace> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode());
|
|
|
|
|
// BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByAddr(ioOrderEntity.getAction());
|
|
|
|
|
// if (collectBustypeEntity == null)
|
|
|
|
|
// continue;
|
|
|
|
|
List<SysWorkplaceResponse> sysWorkplaces = sysWorkplaceService.getAllByBusType(ioOrderEntity.getAction());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//自动分配工位
|
|
|
|
@ -157,8 +160,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
if (sysWorkplaces.size() == 1) {
|
|
|
|
|
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
|
|
|
|
|
} else {
|
|
|
|
|
List<SysWorkplace> addWorkplace = new ArrayList<>();
|
|
|
|
|
for (SysWorkplace sysWorkplace : sysWorkplaces) {
|
|
|
|
|
List<SysWorkplaceResponse> addWorkplace = new ArrayList<>();
|
|
|
|
|
for (SysWorkplaceResponse sysWorkplace : sysWorkplaces) {
|
|
|
|
|
//获取是否有正在处理的工位
|
|
|
|
|
List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>()
|
|
|
|
|
.eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2));
|
|
|
|
@ -168,7 +171,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (addWorkplace.size() > 0) {
|
|
|
|
|
Optional<SysWorkplace> minCountObject = addWorkplace.stream()
|
|
|
|
|
Optional<SysWorkplaceResponse> minCountObject = addWorkplace.stream()
|
|
|
|
|
.min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount()));
|
|
|
|
|
minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId());
|
|
|
|
|
} else {
|
|
|
|
@ -178,8 +181,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
}
|
|
|
|
|
IoCollectOrder collectOrder = IoCollectOrder.builder()
|
|
|
|
|
.billNo(ioOrderEntity.getBillNo())
|
|
|
|
|
.busType(collectBustypeEntity.getCode())
|
|
|
|
|
.fromType(collectBustypeEntity.getFromType())
|
|
|
|
|
.fromType("UDI系统")
|
|
|
|
|
.busType(ioOrderEntity.getAction())
|
|
|
|
|
.fromCorp(ioOrderEntity.getFromName())
|
|
|
|
|
.workPlaceCode(defaultWorkplace[0])
|
|
|
|
|
.billTime(ioOrderEntity.getCreateTime())
|
|
|
|
@ -192,6 +195,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
if (collectOrder.getWorkPlaceCode() != null) {
|
|
|
|
|
collectOrder.setTagStatus(1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
collectOrderList.add(collectOrder);
|
|
|
|
|
List<IoOrderDetailBizEntity> orderDetailBizEntities = orderDetailBizService.findByOrderId(ioOrderEntity.getBillNo());
|
|
|
|
|
|
|
|
|
@ -236,9 +240,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
|
|
|
|
|
List<IoCollectOrder> collectOrderList = new ArrayList<>();
|
|
|
|
|
for (BasicSkPrescribeEntity basicSkPrescribeEntity : basicSkPrescribeEntities) {
|
|
|
|
|
BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByAddr(String.valueOf(basicSkPrescribeEntity.getAddr()));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByCode(String.valueOf(basicSkPrescribeEntity.getAddr()));
|
|
|
|
|
if (collectBustypeEntity == null)
|
|
|
|
|
continue;
|
|
|
|
|
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, basicSkPrescribeEntity.getCode()))) {
|
|
|
|
@ -246,13 +248,13 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
}
|
|
|
|
|
//自动分配工位
|
|
|
|
|
final Long[] defaultWorkplace = {null};
|
|
|
|
|
List<SysWorkplace> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode());
|
|
|
|
|
List<SysWorkplaceResponse> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode());
|
|
|
|
|
if (CollUtil.isNotEmpty(sysWorkplaces)) {
|
|
|
|
|
if (sysWorkplaces.size() == 1) {
|
|
|
|
|
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
|
|
|
|
|
} else {
|
|
|
|
|
List<SysWorkplace> addWorkplace = new ArrayList<>();
|
|
|
|
|
for (SysWorkplace sysWorkplace : sysWorkplaces) {
|
|
|
|
|
List<SysWorkplaceResponse> addWorkplace = new ArrayList<>();
|
|
|
|
|
for (SysWorkplaceResponse sysWorkplace : sysWorkplaces) {
|
|
|
|
|
//获取是否有正在处理的工位
|
|
|
|
|
List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>()
|
|
|
|
|
.eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2));
|
|
|
|
@ -262,7 +264,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (addWorkplace.size() > 0) {
|
|
|
|
|
Optional<SysWorkplace> minCountObject = addWorkplace.stream()
|
|
|
|
|
Optional<SysWorkplaceResponse> minCountObject = addWorkplace.stream()
|
|
|
|
|
.min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount()));
|
|
|
|
|
minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId());
|
|
|
|
|
} else {
|
|
|
|
@ -290,7 +292,6 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
}
|
|
|
|
|
collectOrderList.add(collectOrder);
|
|
|
|
|
List<BasicSkPrescribeItemEntity> basicSkPrescribeItemEntities = basicSkPrescirbeDetailService.findByPrescribeNum(basicSkPrescribeEntity.getCode());
|
|
|
|
|
|
|
|
|
|
List<IoCollectOrderBiz> collectOrderBizs = new ArrayList<>();
|
|
|
|
|
for (BasicSkPrescribeItemEntity bizEntity : basicSkPrescribeItemEntities) {
|
|
|
|
|
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByRelId(bizEntity.getRelId() + "");
|
|
|
|
|