diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderCodeDataVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderCodeDataVO.java index 3410ca6c4..1f74fe21b 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderCodeDataVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderCodeDataVO.java @@ -19,5 +19,6 @@ public class OrderCodeDataVO { @ApiModelProperty(value = "模板填充内容") private List> dataList; + private List moldList; } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderPackgeCodeDataVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderPackgeCodeDataVO.java index c51d7c6ee..508e5e841 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderPackgeCodeDataVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/OrderPackgeCodeDataVO.java @@ -20,4 +20,6 @@ public class OrderPackgeCodeDataVO { @ApiModelProperty(value = "模板填充内容") private List dataList; + private List moldList; + } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java index a85d2ed80..23cb05820 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java @@ -46,8 +46,6 @@ import com.logpm.distribution.vo.app.queryOrderVO; import com.logpm.distribution.wrapper.DistributionParcelListWrapper; import com.logpm.distribution.wrapper.DistributionStockArticleNewWrapper; import com.logpm.distribution.wrapper.DistributionStockArticleWrapper; -import com.logpm.warehouse.entity.WarehouseTrayGoodsEntity; -import com.logpm.warehouse.entity.WarehouseUpdownGoodsEntity; import com.logpm.warehouse.feign.IWarehouseTrayGoodsClient; import com.logpm.warehouse.feign.IWarehouseUpdownGoodsClient; import lombok.AllArgsConstructor; @@ -792,6 +790,17 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl moldList = new ArrayList<>(); + data.forEach(map -> { + try { + String popHtml = TemplateUtil.popTemplate("包件码", map, html); + moldList.add(popHtml); + } catch (Exception e) { + throw new RuntimeException(e); + } + }); + orderPackgeCodeDataVO.setMoldList(moldList); + return orderPackgeCodeDataVO; } @@ -2471,6 +2480,18 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl moldList = new ArrayList<>(); + data.forEach(map -> { + try { + String popHtml = TemplateUtil.popTemplate("订单码", map, html); + moldList.add(popHtml); + } catch (Exception e) { + throw new RuntimeException(e); + } + }); + orderCodeDataVO.setMoldList(moldList); + + return orderCodeDataVO; } @@ -2536,6 +2557,16 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl moldList = new ArrayList<>(); + data.forEach(map -> { + try { + String popHtml = TemplateUtil.popTemplate("订单码", map, html); + moldList.add(popHtml); + } catch (Exception e) { + throw new RuntimeException(e); + } + }); + return orderCodeDataVO; } diff --git a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/entity/PackageInfoEntity.java b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/entity/PackageInfoEntity.java index b27f120fa..710150390 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/entity/PackageInfoEntity.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/entity/PackageInfoEntity.java @@ -25,6 +25,8 @@ public class PackageInfoEntity extends BaseEntity { private String deliveryNoteId; @ApiModelProperty(value = "订单号") private String orderCode; + @ApiModelProperty(value = "单据编号") + private String billCode; @ApiModelProperty(value = "已推送节点编码") private Integer workedNodeCode; @ApiModelProperty(value = "父项物料编码") diff --git a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/FactoryOrderListener.java b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/FactoryOrderListener.java index 418726e5c..b454b72a1 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/FactoryOrderListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/FactoryOrderListener.java @@ -107,6 +107,7 @@ public class FactoryOrderListener { orderInfoEntity.setLogId(ObjectUtil.isNotEmpty(logId) ? logId.toString() : null); orderInfoEntity.setDeliveryNoteId(vo.getId().toString()); orderInfoEntity.setOrderCode(vo.getCustomizedBillCode()); + orderInfoEntity.setBillCode(vo.getBillCode()); infoEntities.add(orderInfoEntity); } packageInfoService.saveBatch(infoEntities); diff --git a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/NodeDataPushListener.java b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/NodeDataPushListener.java index b8690f4f0..f095bf6a3 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/NodeDataPushListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-linsy/src/main/java/com/logpm/factorydata/linsy/mq/NodeDataPushListener.java @@ -22,7 +22,6 @@ import com.logpm.factorydata.vo.PushData; import com.logpm.factorydata.vo.SendMsg; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.bouncycastle.util.Pack; import org.springblade.common.constant.WorkNodeEnums; import org.springblade.common.constant.factorydata.FactoryDataConstants; import org.springframework.amqp.core.ExchangeTypes; @@ -142,6 +141,8 @@ public class NodeDataPushListener { List collect = value.stream().map(PushData::getPackageCode).collect(Collectors.toList()); // 5 根据订单号,包件码 查看数据是否齐套,齐套直接推送工厂 List entities = packageInfoMap.get(orderCode); + PackageInfoEntity infoEntity = entities.get(0); + String billCode = infoEntity.getBillCode(); // 过滤掉entities 中的 workedNodeCode < code 的数据 List workerList = entities.stream() .filter(packageInfoEntity -> !collect.contains(packageInfoEntity.getBarcode())) @@ -174,7 +175,7 @@ public class NodeDataPushListener { } // 推送工厂 JSONObject sendObj = new JSONObject(); - sendObj.set("billCode", orderCode); + sendObj.set("billCode", billCode); sendObj.set("status", factoryByNodeAndStatus.getText()); sendObj.set("packages", entities.stream().map(packageInfoEntity -> { JSONObject jsonObject = new JSONObject(); diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml index a95db511c..36f9a4b03 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadMapper.xml @@ -464,10 +464,10 @@ and ltcl.load_status != '0' and ltcl.load_type != '4' - and ltcl.start_time >= #{param.startDate} + and ltcl.start_time >= #{param.startTime} - and ltcl.start_time <= #{param.endDate} + and ltcl.start_time <= #{param.endTime} diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml index 0fcc72850..cc3144087 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/mapper/TrunklineCarsLoadScanMapper.xml @@ -360,6 +360,7 @@ select IFNULL(sum(unload_num),0) from logpm_trunkline_cars_load_scan where sign_order_id = #{signOrderId} + and scan_status = '3' diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java index dbd82f7df..abdb5f4d0 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/TrunklineCarsLoadServiceImpl.java @@ -4517,76 +4517,81 @@ public class TrunklineCarsLoadServiceImpl extends BaseServiceImpl carsOrderEntityList = trunklineCarsOrderService.listByIds(carsOrderIdList); //移除carsOrderEntityList中signNum不为0的元素 carsOrderEntityList.removeIf(e -> e.getSignNum() != 0); - //把carsOrderEntityList通过signOrderId进行分组 - Map> collect = carsOrderEntityList.stream().collect(Collectors.groupingBy(TrunklineCarsOrderEntity::getSignOrderId)); - Set signOrderIds = collect.keySet(); - List signOrderEntityList = trunklineLoadSignOrderService.listByIds(signOrderIds); - //把signOrderEntityList转化成id为key的Map - Map signOrderEntityMap = signOrderEntityList.stream().collect(Collectors.toMap(TrunklineLoadSignOrderEntity::getId, Function.identity())); - - - List updateCarsOrderList = new ArrayList<>(); - List updateSignOrderList = new ArrayList<>(); - List delSignOrderList = new ArrayList<>(); - - Long finalLoadId1 = loadId; - collect.keySet().forEach(signOrderId -> { - List list = collect.get(signOrderId); - TrunklineLoadSignOrderEntity trunklineLoadSignOrderEntity = signOrderEntityMap.get(signOrderId); - //把list中所有元素的realNum求和 - int sumLoading = list.stream().mapToInt(TrunklineCarsOrderEntity::getRealNum).sum(); - int sumPlan = list.stream().mapToInt(TrunklineCarsOrderEntity::getPlanNum).sum(); - Integer planNum = trunklineLoadSignOrderEntity.getPlanNum(); - Integer loadingNum = trunklineLoadSignOrderEntity.getLoadingNum(); - Integer signNum = trunklineLoadSignOrderEntity.getSignNum(); - if(sumPlan < planNum){ - //只是更新不删除 - TrunklineLoadSignOrderEntity updateSignOrderEntity = new TrunklineLoadSignOrderEntity(); - updateSignOrderEntity.setId(trunklineLoadSignOrderEntity.getId()); - int diff = planNum - sumPlan; - updateSignOrderEntity.setPlanNum(diff); - updateSignOrderEntity.setLoadingNum(loadingNum-sumLoading); - if(signNum >= diff){ - updateSignOrderEntity.setSignStatus("20"); - }else if(signNum == 0){ - updateSignOrderEntity.setSignStatus("0"); + if(CollUtil.isNotEmpty(carsOrderEntityList)){ + //把carsOrderEntityList通过signOrderId进行分组 + Map> collect = carsOrderEntityList.stream().collect(Collectors.groupingBy(TrunklineCarsOrderEntity::getSignOrderId)); + Set signOrderIds = collect.keySet(); + List signOrderEntityList = trunklineLoadSignOrderService.listByIds(signOrderIds); + //把signOrderEntityList转化成id为key的Map + Map signOrderEntityMap = signOrderEntityList.stream().collect(Collectors.toMap(TrunklineLoadSignOrderEntity::getId, Function.identity())); + + + List updateCarsOrderList = new ArrayList<>(); + List updateSignOrderList = new ArrayList<>(); + List delSignOrderList = new ArrayList<>(); + + Long finalLoadId1 = loadId; + collect.keySet().forEach(signOrderId -> { + List list = collect.get(signOrderId); + TrunklineLoadSignOrderEntity trunklineLoadSignOrderEntity = signOrderEntityMap.get(signOrderId); + //把list中所有元素的realNum求和 + int sumLoading = list.stream().mapToInt(TrunklineCarsOrderEntity::getRealNum).sum(); + int sumPlan = list.stream().mapToInt(TrunklineCarsOrderEntity::getPlanNum).sum(); + Integer planNum = trunklineLoadSignOrderEntity.getPlanNum(); + Integer loadingNum = trunklineLoadSignOrderEntity.getLoadingNum(); + Integer signNum = trunklineLoadSignOrderEntity.getSignNum(); + if(sumPlan < planNum){ + //只是更新不删除 + TrunklineLoadSignOrderEntity updateSignOrderEntity = new TrunklineLoadSignOrderEntity(); + updateSignOrderEntity.setId(trunklineLoadSignOrderEntity.getId()); + int diff = planNum - sumPlan; + updateSignOrderEntity.setPlanNum(diff); + updateSignOrderEntity.setLoadingNum(loadingNum-sumLoading); + if(signNum >= diff){ + updateSignOrderEntity.setSignStatus("20"); + }else if(signNum == 0){ + updateSignOrderEntity.setSignStatus("0"); + }else{ + updateSignOrderEntity.setSignStatus("10"); + } + updateSignOrderList.add(updateSignOrderEntity); }else{ - updateSignOrderEntity.setSignStatus("10"); + //删除 + delSignOrderList.add(signOrderId); } - updateSignOrderList.add(updateSignOrderEntity); - }else{ - //删除 - delSignOrderList.add(signOrderId); - } - - list.forEach(e -> { - TrunklineCarsOrderEntity carsOrderEntity = new TrunklineCarsOrderEntity(); - carsOrderEntity.setId(e.getId()); - carsOrderEntity.setOrderCode(e.getOrderCode()); - carsOrderEntity.setWaybillNo(e.getWaybillNo()); - carsOrderEntity.setLoadId(finalLoadId1); - carsOrderEntity.setNodeId(e.getNodeId()); - updateCarsOrderList.add(carsOrderEntity); - }); - }); + list.forEach(e -> { + TrunklineCarsOrderEntity carsOrderEntity = new TrunklineCarsOrderEntity(); + carsOrderEntity.setId(e.getId()); + carsOrderEntity.setOrderCode(e.getOrderCode()); + carsOrderEntity.setWaybillNo(e.getWaybillNo()); + carsOrderEntity.setLoadId(finalLoadId1); + carsOrderEntity.setNodeId(e.getNodeId()); + updateCarsOrderList.add(carsOrderEntity); + }); - if(CollUtil.isNotEmpty(updateSignOrderList)){ - trunklineLoadSignOrderService.updateBatchById(updateSignOrderList); - } - if(CollUtil.isNotEmpty(delSignOrderList)){ - trunklineLoadSignOrderService.deleteListBySignOrderIds(delSignOrderList); - } - if(CollUtil.isNotEmpty(updateCarsOrderList)){ - //把updateCarsOrderIdList所有的id放入一个List - List updateCarsOrderIdList = updateCarsOrderList.stream().map(TrunklineCarsOrderEntity::getId).collect(Collectors.toList()); - trunklineCarsOrderService.updateNoCustomer(updateCarsOrderIdList); - updateCarsOrderList.forEach(e -> { - Long nodeId = e.getNodeId(); - String orderCode = e.getOrderCode(); - String waybillNo = e.getWaybillNo(); - trunklineCarsLoadScanService.clearSignOrderIdByLoadIdAndWarehouseIdAndOrderCodeAndWaybillNo(finalLoadId1,nodeId,orderCode,waybillNo); }); + + if(CollUtil.isNotEmpty(updateSignOrderList)){ + trunklineLoadSignOrderService.updateBatchById(updateSignOrderList); + } + if(CollUtil.isNotEmpty(delSignOrderList)){ + trunklineLoadSignOrderService.deleteListBySignOrderIds(delSignOrderList); + } + if(CollUtil.isNotEmpty(updateCarsOrderList)){ + //把updateCarsOrderIdList所有的id放入一个List + List updateCarsOrderIdList = updateCarsOrderList.stream().map(TrunklineCarsOrderEntity::getId).collect(Collectors.toList()); + trunklineCarsOrderService.updateNoCustomer(updateCarsOrderIdList); + updateCarsOrderList.forEach(e -> { + Long nodeId = e.getNodeId(); + String orderCode = e.getOrderCode(); + String waybillNo = e.getWaybillNo(); + trunklineCarsLoadScanService.clearSignOrderIdByLoadIdAndWarehouseIdAndOrderCodeAndWaybillNo(finalLoadId1,nodeId,orderCode,waybillNo); + }); + } + }else{ + log.warn("###############updateWaybillOrderIsCustemer: 订单已有签收数据不能移除"); + return R.fail(405,"订单已有签收数据,不能移除"); } }