|
|
|
@ -148,7 +148,6 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
@Resource
|
|
|
|
|
UdiRelevanceDao udiRelevanceDao;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public IoCollectOrder getByBillNo(String billNo) {
|
|
|
|
|
return collectOrderMapper.selectOne(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, billNo).last("limit 1"));
|
|
|
|
|
}
|
|
|
|
@ -651,7 +650,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
if (CollUtil.isNotEmpty(ioCollectOrderList)) {
|
|
|
|
|
|
|
|
|
|
//是否自动转成待处理单据
|
|
|
|
|
Boolean autoDealOrder = collectSetService.getSet().getAutoDealOrder();
|
|
|
|
|
IoCollectSet collectSet = collectSetService.getSet();
|
|
|
|
|
|
|
|
|
|
List<IoCollectOrder> allotCollects = new ArrayList<>();
|
|
|
|
|
List<IoCollectOrderBiz> allotCollectBizs = new ArrayList<>();
|
|
|
|
@ -664,46 +663,10 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
if (sysWorkplaceDocumentEntity == null) {
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
//暂时不自动分配工位
|
|
|
|
|
// if (collectOrder.getWorkPlaceCode() == null) {
|
|
|
|
|
// //自动分配工位
|
|
|
|
|
// final Long[] defaultWorkplace = {null};
|
|
|
|
|
// List<SysWorkplaceResponse> sysWorkplaces = sysWorkplaceService.getAllByBusType(addr);
|
|
|
|
|
// if (CollUtil.isNotEmpty(sysWorkplaces)) {
|
|
|
|
|
// if (sysWorkplaces.size() == 1) {
|
|
|
|
|
// defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
|
|
|
|
|
// } else {
|
|
|
|
|
// 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));
|
|
|
|
|
// sysWorkplace.setOrderCount(collectOrderList1.size());
|
|
|
|
|
// if (IntUtil.value(sysWorkplace.getOrderCount()) > 0) {
|
|
|
|
|
// addWorkplace.add(sysWorkplace);
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// if (addWorkplace.size() > 0) {
|
|
|
|
|
// Optional<SysWorkplaceResponse> minCountObject = addWorkplace.stream()
|
|
|
|
|
// .min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount()));
|
|
|
|
|
// minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId());
|
|
|
|
|
// } else {
|
|
|
|
|
// defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// collectOrder.setWorkPlaceCode(defaultWorkplace[0]);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
// collectOrder.setBusType(sysWorkplaceDocumentEntity.getDocumentTypeCode());
|
|
|
|
|
collectOrder.setOrderCirType(sysWorkplaceDocumentEntity.getOrderCirType());
|
|
|
|
|
BeanUtils.copyProperties(collectOrder, ioCollectOrderOrigin);
|
|
|
|
|
boolean save = collectOrderOriginService.save(ioCollectOrderOrigin);
|
|
|
|
|
if (!save) {
|
|
|
|
|
throw new JsonException(500, "charu cuowu ");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
collectOrderOriginService.save(ioCollectOrderOrigin);
|
|
|
|
|
List<IoCollectOrderBiz> bizList = collectOrder.getBizList();
|
|
|
|
|
if (CollUtil.isNotEmpty(bizList)) {
|
|
|
|
|
//先清空 原来的biz
|
|
|
|
@ -727,7 +690,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
collectOrderBizOriginService.saveBatch(ioCollectOrderBizOrigins);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!collectOrder.getTagStatus().equals(4) && autoDealOrder) {//没出现耗材不匹配 且 开启了自动转成待处理单据
|
|
|
|
|
if (!collectOrder.getTagStatus().equals(4) && IntUtil.value(collectSet.getAutoDealOrder())) {//没出现耗材不匹配 且 开启了自动转成待处理单据
|
|
|
|
|
collectOrder.setTagStatus(1);
|
|
|
|
|
allotCollects.add(collectOrder);
|
|
|
|
|
allotCollectBizs.addAll(bizList);
|
|
|
|
@ -737,19 +700,22 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
if (CollUtil.isNotEmpty(allotCollects)) {
|
|
|
|
|
saveBatch(allotCollects);
|
|
|
|
|
collectOrderBizService.saveBatch(allotCollectBizs);
|
|
|
|
|
for (IoCollectOrder collectOrder : allotCollects) {
|
|
|
|
|
SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByBusType(addr);
|
|
|
|
|
if (IntUtil.value(sysWorkplaceDocumentEntity.getAutoTag()) == 1 && IntUtil.value(collectOrder.getTagStatus()) == 1) {
|
|
|
|
|
boolean b = splitFifoCodeService.lockInventoryByOrder(collectOrder.getBillNo(), 1);
|
|
|
|
|
if (b && sysWorkplaceDocumentEntity.getAutoHandle()) {
|
|
|
|
|
//单据是否自动完成 是 调用 完成
|
|
|
|
|
CollectOrderRequest collectOrderRequest = new CollectOrderRequest();
|
|
|
|
|
AuthAdmin user = customerService.getUserBean();
|
|
|
|
|
collectOrderRequest.setUpdateUser(user.getId());
|
|
|
|
|
finishOrder(collectOrderRequest, user, true);
|
|
|
|
|
|
|
|
|
|
if (IntUtil.value(collectSet.getAutoFinishOrder()))
|
|
|
|
|
for (IoCollectOrder collectOrder : allotCollects) {
|
|
|
|
|
SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByBusType(addr);
|
|
|
|
|
if (IntUtil.value(sysWorkplaceDocumentEntity.getAutoTag()) == 1 && IntUtil.value(collectOrder.getTagStatus()) == 1) {
|
|
|
|
|
boolean b = splitFifoCodeService.lockInventoryByOrder(collectOrder.getBillNo(), 1);
|
|
|
|
|
if (b && sysWorkplaceDocumentEntity.getAutoHandle()) {
|
|
|
|
|
//单据是否自动完成 是 调用 完成
|
|
|
|
|
CollectOrderRequest collectOrderRequest = new CollectOrderRequest();
|
|
|
|
|
AuthAdmin user = customerService.getUserBean();
|
|
|
|
|
collectOrderRequest.setUpdateUser(user.getId());
|
|
|
|
|
collectOrderRequest.setBusType(addr);
|
|
|
|
|
finishOrder(collectOrderRequest, user, true);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -1194,8 +1160,9 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(ioCollectOrders)){
|
|
|
|
|
if (CollUtil.isNotEmpty(ioCollectOrders)) {
|
|
|
|
|
CollectOrderRequest collectOrderRequest = new CollectOrderRequest();
|
|
|
|
|
|
|
|
|
|
collectOrderRequest.setBusType("YPCF002");
|
|
|
|
|
collectOrderRequest.setCreateUser(String.valueOf(customerService.getUserId()));
|
|
|
|
|
collectOrderRequest.setWorkPlaceCode(null);
|
|
|
|
|