diff --git a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataFactoryCategoryEntity.java b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataFactoryCategoryEntity.java new file mode 100644 index 000000000..e50aad741 --- /dev/null +++ b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/entity/BasicdataFactoryCategoryEntity.java @@ -0,0 +1,50 @@ +package com.logpm.basicdata.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.core.tenant.mp.TenantEntity; + +@Data +@TableName("logpm_basicdata_factory_category") +@ApiModel(value = "BasicdataFactoryCategory对象", description = "工厂物料映射表") +@EqualsAndHashCode(callSuper = true) +public class BasicdataFactoryCategoryEntity extends TenantEntity { + + /** + * 预留1 + */ + @ApiModelProperty(value = "预留1") + private String reserve1; + /** + * 预留2 + */ + @ApiModelProperty(value = "预留2") + private String reserve2; + /** + * 预留3 + */ + @ApiModelProperty(value = "预留3") + private String reserve3; + /** + * 预留4 + */ + @ApiModelProperty(value = "预留4") + private String reserve4; + /** + * 预留5 + */ + @ApiModelProperty(value = "预留5") + private String reserve5; + + + private Long categoryId; + private String firsts; + private String seconds; + private String thirds; + private String brand; + + +} diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataClientController.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataClientController.java index b023c1848..95e47d4de 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataClientController.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/controller/BasicdataClientController.java @@ -192,7 +192,7 @@ public class BasicdataClientController extends BladeController { @GetMapping("/listName") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入basicdataClient") - public R> listName(String name) { + public R> listName(@RequestParam String name) { List pages = basicdataClientService.listName(name); return R.data(pages); } @@ -203,7 +203,7 @@ public class BasicdataClientController extends BladeController { @GetMapping("/listCode") @ApiOperationSupport(order = 3) @ApiOperation(value = "分页", notes = "传入basicdataClient") - public R> listCode(String code) { + public R> listCode(@RequestParam String code) { List pages = basicdataClientService.listCode(code); return R.data(pages); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java index e16853dcb..c2b453bd1 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionDeliveryListController.java @@ -534,7 +534,7 @@ public class DistributionDeliveryListController extends BladeController { @PostMapping("/cancelDelivery") @ApiOperationSupport(order = 2) - @ApiOperation(value = "PC取消包件") + @ApiOperation(value = "PC取消配送任务") public R cancelDelivery(@Valid @RequestBody DistrilbutionAppsignforDTO distrilbutionloadingscanDTO) { R r = distributionDeliveryListService.cancelDelivery(distrilbutionloadingscanDTO.getDeliveryId()); // if (r.isSuccess()){ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml index b2b324992..478f4372c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryListMapper.xml @@ -2031,8 +2031,16 @@ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java index 57bebf194..74f936671 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java @@ -2773,6 +2773,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl { + List packageLockIds = new ArrayList<>(); //预约单数据填充 if (Func.isNotEmpty(s.getMallName())) { mallName.add(s.getMallName()); @@ -2841,7 +2842,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl a = bladeRedis.get("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + s.getOrderCode()); + if (Func.isNotEmpty(a)){ + boolean flag = a.stream().anyMatch(f -> packageLockIds.contains(f)); + if (flag){ + throw new RuntimeException(s.getOrderCode()+"正在操作,请刷新后尝试"); + }else { + bladeRedis.setEx("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + s.getOrderCode(),packageLockIds,5*60L); + } + } + } }); // -----------------------客户收货信息完善------------------------- reservationEntity.setConsignee(String.join(",", consigneeName)); @@ -2979,6 +2997,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl reservationStockarticleEntityList = distributionReservationStockarticleMapper.selectList(Wrappers.query().lambda().eq(DistributionReservationStockarticleEntity::getReservationId, reservationEntity.getId()).ne(DistributionReservationStockarticleEntity::getStockArticleStatus, ReservationOrderStatusConstant.quxiao.getValue())); Map> oldOrder = reservationStockarticleEntityList.stream().collect(Collectors.groupingBy(DistributionReservationStockarticleEntity::getStockArticleId)); v.forEach(s -> { + List packageLockIds = new ArrayList<>(); orderTotal.getAndIncrement(); //预约单数据填充 if (Func.isNotEmpty(s.getMallName())) { @@ -3040,6 +3059,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl ids = bladeRedis.get("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + parcelListEntity.getOrderCode()); + int indexOf = ids.indexOf(parcelListEntity.getId()); + if (indexOf>0){ + ids.remove(indexOf); + bladeRedis.set("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + parcelListEntity.getOrderCode(),ids); + } + } // distributionAsyncService.checkStockArticleReservationStatus(parcelListEntity); }); } else { @@ -3282,6 +3315,17 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl a = bladeRedis.get("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + s.getOrderCode()); + if (Func.isNotEmpty(a)){ + boolean flag = a.stream().anyMatch(f -> packageLockIds.contains(f)); + if (flag){ + throw new RuntimeException(s.getOrderCode()+"正在操作,请刷新后尝试"); + }else { + bladeRedis.setEx("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + s.getOrderCode(),packageLockIds,5*60L); + } + } + } }); if (Func.isNotEmpty(oldOrder)) { oldOrder.forEach((m, n) -> { @@ -3322,6 +3366,7 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl parcelListEntities = distributionParcelListService.list(Wrappers.query().lambda().eq(DistributionParcelListEntity::getOrderPackageCode, distrilbutionloadingscanDTO.getBarcode())); + List parcelListEntities = distributionParcelListService.list(Wrappers.query().lambda() + .eq(DistributionParcelListEntity::getOrderPackageCode, distrilbutionloadingscanDTO.getBarcode()) + .eq(DistributionParcelListEntity::getWarehouseId, myCurrentWarehouse.getId()) + ); if (Func.isNotEmpty(parcelListEntities) && parcelListEntities.size() == 1) { DistributionParcelListEntity parcelListEntity = parcelListEntities.get(0); if (OrderPackageLoadingStatusConstant.yizhuangche.getValue().equals(parcelListEntity.getOrderPackageLoadingStatus())) { diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java index c067c8ea4..11b36576c 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionReservationServiceImpl.java @@ -1503,6 +1503,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl storeName = new HashSet<>(); HashSet receivingUnit = new HashSet<>(); newStockArticle.forEach((k, v) -> { + List packageLockIds = new ArrayList<>(); if (Func.isEmpty(oldStockArticle.get(k))) { //这里发生了新增订单的操作 AtomicInteger packageNum = new AtomicInteger(); @@ -1517,6 +1518,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl ids = bladeRedis.get("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + parcelListEntity.getOrderCode()); + int indexOf = ids.indexOf(parcelListEntity.getId()); + if (indexOf>0){ + ids.remove(indexOf); + bladeRedis.set("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + parcelListEntity.getOrderCode(),ids); + } + } + //移除缓存 }); reservationStockarticleEntity.setReservationNum(packageNum.get()); distributionReservationStockarticleService.updateById(reservationStockarticleEntity); @@ -1745,6 +1748,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl a = bladeRedis.get("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + v.get(0).getOrderCode()); + if (Func.isNotEmpty(a)){ + boolean flag = a.stream().anyMatch(f -> packageLockIds.contains(f)); + if (flag){ + log.error("###############预约新增订单同时操作"); + //当前操作包件存在于缓存中,此次操作无效 + throw new RuntimeException(v.get(0).getOrderCode()+"正在操作,请刷新后尝试"); + }else { + bladeRedis.setEx("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + v.get(0).getOrderCode(),packageLockIds,5*60L); + } + } + } }); if (Func.isNotEmpty(oldStockArticle)) { oldStockArticle.forEach((i, j) -> { //这里就是需要进行取消的订单信息 + DistributionStockArticleEntity stockArticleEntity = distributionStockArticleService.getById(i); + DistributionReservationStockarticleEntity reservationStockarticleEntity = j.get(0); if (reservationStockarticleEntity.getIsZero().equals(IsOrNoConstant.no.getValue())) { reservationStockarticleEntity.setStockArticleStatus(ReservationOrderStatusConstant.quxiao.getValue()); @@ -1803,6 +1822,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl consignee = new HashSet<>(); v.forEach(s -> { + List packageLockIds = new ArrayList<>(); DistributionStockArticleDTO stockArticleDTO = Func.copy(s, DistributionStockArticleDTO.class); // WarehouseWaybillEntity warehouseWaybillEntity = warehouseWaybillClient.findByWaybillNo(s.getWaybillNumber()); // if (Func.isNotEmpty(warehouseWaybillEntity.getConsigneeMobile())){ @@ -2197,6 +2218,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl a = bladeRedis.get("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + s.getOrderCode()); + if (Func.isNotEmpty(a)){ + boolean flag = a.stream().anyMatch(f -> packageLockIds.contains(f)); + if (flag){ + log.info("###################商配存在同时操作订单,订单号:" + s.getOrderCode() + "###################"); + throw new RuntimeException(s.getOrderCode()+"正在操作,请刷新后尝试"); + } + }else { + bladeRedis.setEx("warehouseId:" + myCurrentWarehouse.getId() + "orderCode:" + s.getOrderCode(),packageLockIds,5*60L); + } + } }); //维护备货任务 DistributionStockupInfoEntity stockupInfoEntity = new DistributionStockupInfoEntity(); @@ -2613,6 +2652,11 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl>>{}", myCurrentWarehouse.getId()); + return false; + } if (Func.isEmpty(reservationDTO)) { log.error("参数异常allocationDTO>>>{}", reservationDTO); return false; @@ -2686,7 +2730,8 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl { + List packageLockIds = new ArrayList<>(); if (Func.isNotEmpty(s.getAllocation())) { s.setAllocation(null); } @@ -3158,8 +3204,11 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl packageIds = distributionParcelListEntities.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()); + packageLockIds.addAll(packageIds); distributionParcelListEntities.forEach(dp -> { if (!dp.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())) { + if (!Func.equals(dp.getOrderPackageFreezeStatus(), OrderPackageFreezeStatusConstant.yidongjie.getValue()) && !Func.equals(dp.getOrderPackageReservationStatus(), OrderPackageReservationStatusConstant.yiyueyue.getValue())) { DistributionReservationPackageEntity distributionReservationPackageEntity = new DistributionReservationPackageEntity(); distributionReservationPackageEntity.setReservationId(reservationId); @@ -3190,6 +3239,8 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl packageIds = packageList.stream().map(DistributionParcelListEntity::getId).collect(Collectors.toList()); + packageLockIds.addAll(packageIds); packageList.forEach(p -> { if (!p.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())) { if (!Func.equals(p.getOrderPackageFreezeStatus(), OrderPackageFreezeStatusConstant.yidongjie.getValue()) && !Func.equals(p.getOrderPackageReservationStatus(), OrderPackageReservationStatusConstant.yiyueyue.getValue())) { @@ -3273,6 +3324,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl a = bladeRedis.get("warehouseId:" + myCurrentWarehouse.getId() +"orderCode:"+ s.getOrderCode()); + if (Func.isNotEmpty(a)){ + boolean b = a.stream().anyMatch(f -> packageLockIds.contains(f)); + if (b){ + log.error("###############预约新增订单同时操作"); + //当前操作包件存在于缓存中,此次操作无效 + throw new RuntimeException(s.getOrderCode()+"正在操作,请刷新后尝试"); + }else { + bladeRedis.setEx("warehouseId:" + myCurrentWarehouse.getId() + s.getOrderCode(),packageLockIds,5*60L); + } + }else { + bladeRedis.setEx("warehouseId:" + myCurrentWarehouse.getId()+"orderCode:" + s.getOrderCode(),packageLockIds,5*60L); + } + } }); } //存在库存品构建预约库存品关联信息 @@ -3697,6 +3763,7 @@ public class DistributionReservationServiceImpl extends BaseServiceImpl parcelListEntityList = distributionParcelListService.list(Wrappers.query().lambda().eq(DistributionParcelListEntity::getOrderPackageCode, distrilbutionloadingscanDTO.getBarcode())); + List parcelListEntityList = distributionParcelListService.list(Wrappers.query().lambda() + .eq(DistributionParcelListEntity::getOrderPackageCode, distrilbutionloadingscanDTO.getBarcode()) + .eq(DistributionParcelListEntity::getWarehouseId, myCurrentWarehouse.getId()) + ); if (Func.isNotEmpty(parcelListEntityList) && parcelListEntityList.size() == 1) { DistributionParcelListEntity parcelListEntity = parcelListEntityList.get(0); if (parcelListEntity.getOrderPackageStatus().equals(OrderPackageStatusConstant.yiqianshou.getValue())) { 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 8c46b7029..855483377 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 @@ -1458,11 +1458,11 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl + select #{item} pid diff --git a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java index d64d2c466..819de6934 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/mq/ZbomFactoryOrderListener.java @@ -213,9 +213,9 @@ public class ZbomFactoryOrderListener { advanceEntity.setStoreCode(orderPackageDTO.getCustomerCode()); advanceEntity.setStoreName(orderPackageDTO.getCustomerName()); advanceEntity.setServiceNum(orderPackageDTO.getRelationOrderCode()); - advanceEntity.setConsigneePerson(orderPackageDTO.getReceiverName()); - advanceEntity.setConsigneeMobile(orderPackageDTO.getReceiverMobile()); - advanceEntity.setConsigneeAddress(orderPackageDTO.getReceiverAddress()); + advanceEntity.setCustomerName(orderPackageDTO.getReceiverName()); + advanceEntity.setCustomerPhone(orderPackageDTO.getReceiverMobile()); + advanceEntity.setCustomerAddress(orderPackageDTO.getReceiverAddress()); // 封装包件 TrunklineAdvanceDetailEntity advanceDetailEntity = new TrunklineAdvanceDetailEntity(); diff --git a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/util/ZbomUtil.java b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/util/ZbomUtil.java index a7d3f6714..8b5375319 100644 --- a/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/util/ZbomUtil.java +++ b/blade-service/logpm-factory-data/logpm-factory-data-zbom/src/main/java/com/logpm/factorydata/zbom/util/ZbomUtil.java @@ -3,7 +3,9 @@ package com.logpm.factorydata.zbom.util; import cn.hutool.core.map.MapUtil; import cn.hutool.http.HttpResponse; import cn.hutool.http.HttpUtil; +import cn.hutool.json.JSONUtil; import com.logpm.factorydata.zbom.pros.ZbFactoryProperties; +import lombok.extern.slf4j.Slf4j; import org.springblade.common.constant.HttpConstants; import org.springblade.common.utils.CommonUtil; @@ -18,19 +20,22 @@ import java.util.Map; * @author zhaoqiaobo * @create 2024-03-21 15:23 */ +@Slf4j public class ZbomUtil { /** * 推送数据 + * * @param zbProperties 志邦配置信息 - * @param body 请求提 - * @param method 请求方法 + * @param body 请求提 + * @param method 请求方法 * @return 返回请求结果 * @throws Exception */ public static String pushZbomSystem(ZbFactoryProperties zbProperties, String body, String method) throws Exception { // 构建请求url String url = ZbomUtil.buildUrl(zbProperties, body, method); + log.info("推送志邦url:{}", url); // 请求数据 HashMap headers = MapUtil.of(HttpConstants.HTTP.HEADER_NAME.CONTENT_TYPE, HttpConstants.HTTP.HEADER_VALUE.JSON); HttpResponse execute = HttpUtil.createPost(url).headerMap(headers, false).body(body).timeout(5 * 1000).execute(); @@ -47,8 +52,11 @@ public class ZbomUtil { params.put("sign_method", "md5"); params.put("timestamp", CommonUtil.dateToStringGeneral(new Date())); params.put("v", "1.0"); + log.info("推送志邦参数:{}", JSONUtil.toJsonStr(params)); String body = bodyParam.replaceAll("\\s+", ""); + log.info("推送志邦请求体:{}", body); String sign = QmSignUntil.signTopRequest(params, zbProperties.getSecretkey(), "md5", body); + log.info("推送志邦签名:{}", sign); String url = getZbUrl(zbProperties.getUrl() + "/api/edi/ots/in?", params, sign); return url; } diff --git a/blade-service/logpm-report/pom.xml b/blade-service/logpm-report/pom.xml index cd1eab52a..536029f00 100644 --- a/blade-service/logpm-report/pom.xml +++ b/blade-service/logpm-report/pom.xml @@ -33,8 +33,21 @@ logpm-basicdata-api 3.2.0.RELEASE - - + + org.springblade + logpm-report-api + 3.2.0.RELEASE + + + org.springblade + blade-dict-api + 3.2.0.RELEASE + + + org.springblade + logpm-factory-data-api + 3.2.0.RELEASE + diff --git a/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportBillLoadingController.java b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportBillLoadingController.java index 5469f68be..9fd6ff0e9 100644 --- a/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportBillLoadingController.java +++ b/blade-service/logpm-report/src/main/java/com/logpm/report/controller/ReportBillLoadingController.java @@ -1,7 +1,12 @@ package com.logpm.report.controller; +import cn.hutool.core.util.EnumUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.logpm.factorydata.enums.BrandEnums; +import com.logpm.factorydata.enums.NodeEnums; +import com.logpm.factorydata.util.FactoryDataMessageSender; +import com.logpm.factorydata.vo.NodePushMsg; import com.logpm.report.query.BillDetailsQuery; import com.logpm.report.query.BillLoadingTasksQuery; import com.logpm.report.service.IReportBillLoadingAsyncService; @@ -12,13 +17,19 @@ import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springblade.core.tool.api.R; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletResponse; +import java.util.Date; +import java.util.List; +import java.util.Map; /** * 自提报表前端控制器 + * * @Author zqb * @Date 2024/3/14 **/ @@ -30,6 +41,25 @@ public class ReportBillLoadingController { private IReportBillLoadingAsyncService reportBillLoadingAsyncService; + private final FactoryDataMessageSender sender; + + @PostMapping("/sendMessage") + @ApiOperation(value = "发送消息测试", notes = "发送消息测试") + public R tasksPage(@RequestBody Map map) { + String node = (String) map.get("node"); + NodeEnums nodeEnums = EnumUtil.fromString(NodeEnums.class, node); + NodePushMsg build = NodePushMsg.builder() + .node(nodeEnums) + .brand(BrandEnums.ZB) + .operatorTime(new Date()) + .operator("test") + .address("test") + .content((List) map.get("content")) + .build(); + sender.sendNodeDataByBrand(build); + return R.data("成功"); + } + @GetMapping("/tasks") @ApiOperationSupport(order = 1) @ApiOperation(value = "自提任务维度", notes = "自提任务维度") diff --git a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java index 7f14bd922..0ce05c922 100644 --- a/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java +++ b/blade-service/logpm-trunkline/src/main/java/com/logpm/trunkline/service/impl/InComingServiceImpl.java @@ -61,46 +61,65 @@ public class InComingServiceImpl implements IInComingService { String packageStatus = advanceDetailEntity.getPackageStatus(); Long advanceId = advanceDetailEntity.getAdvanceId(); if("1".equals(packageStatus)){ - log.warn("############incomingPackage: 包件已入库 packageCode={} warehouseId={}",packageCode,warehouseId); - return Resp.scanFail(405,"包件已入库","包件已入库"); - } + if(incomingType != 1){ + log.warn("############incomingPackage: 包件已入库 packageCode={} warehouseId={}",packageCode,warehouseId); + return Resp.scanFail(405,"包件已入库","包件已入库"); + }else{ + if(!Objects.isNull(billladingId)){ + //先判断该包件是否已经有提货记录了 + TrunklineBillladingPackageEntity billladingPackageEntity = billladingPackageServicie.findBillladingPackage(packageCode); + if(Objects.isNull(billladingPackageEntity)){ + billladingPackageServicie.saveEntity(packageCode,billladingId,warehouseId,incomingType); + } + } - if(StringUtil.isBlank(warehouseName)){ - BasicdataWarehouseEntity warehouseEntity = warehouseClient.getEntityWarehouseId(warehouseId); - if(!Objects.isNull(warehouseEntity)){ - warehouseName = warehouseEntity.getName(); + //4.如果有托盘码 + if(StringUtil.isNotBlank(trayCode) && StringUtil.isNotBlank(trayType)){ + Map map = new HashMap<>(); + map.put("trayType",trayType); + map.put("trayCode",trayCode); + map.put("warehouseId",warehouseId); + map.put("orderPackageCode",packageCode); + warehouseTrayTypeClient.orderScanOrderPackageCode(map); + } } - } - - //1.修改暂存单包件入库状态 - advanceDetailService.updatePackageStatusById("1",advanceDetailId,warehouseId,warehouseName); - List incomingWarehouseNames = advanceDetailService.findIncomingWarehouseName(advanceId); - advanceService.updateIncomingWarehouseName(String.join(",",incomingWarehouseNames),advanceId); - - //2.判断包件和订单是否已经存入在库订单 - boolean b = advanceService.saveOrderAndPackage(advanceDetailEntity, warehouseId); - - if(b){ - //3.根据是否有提货单id绑定提货单 - if(!Objects.isNull(billladingId)){ - //先判断该包件是否已经有提货记录了 - TrunklineBillladingPackageEntity billladingPackageEntity = billladingPackageServicie.findBillladingPackage(packageCode); - if(Objects.isNull(billladingPackageEntity)){ - billladingPackageServicie.saveEntity(packageCode,billladingId,warehouseId,incomingType); + }else{ + if(StringUtil.isBlank(warehouseName)){ + BasicdataWarehouseEntity warehouseEntity = warehouseClient.getEntityWarehouseId(warehouseId); + if(!Objects.isNull(warehouseEntity)){ + warehouseName = warehouseEntity.getName(); } } - //4.如果有托盘码 - if(StringUtil.isNotBlank(trayCode) && StringUtil.isNotBlank(trayType)){ - Map map = new HashMap<>(); - map.put("trayType",trayType); - map.put("trayCode",trayCode); - map.put("warehouseId",warehouseId); - map.put("orderPackageCode",packageCode); - warehouseTrayTypeClient.orderScanOrderPackageCode(map); + //1.修改暂存单包件入库状态 + advanceDetailService.updatePackageStatusById("1",advanceDetailId,warehouseId,warehouseName); + List incomingWarehouseNames = advanceDetailService.findIncomingWarehouseName(advanceId); + advanceService.updateIncomingWarehouseName(String.join(",",incomingWarehouseNames),advanceId); + + //2.判断包件和订单是否已经存入在库订单 + boolean b = advanceService.saveOrderAndPackage(advanceDetailEntity, warehouseId); + + if(b){ + //3.根据是否有提货单id绑定提货单 + if(!Objects.isNull(billladingId)){ + //先判断该包件是否已经有提货记录了 + TrunklineBillladingPackageEntity billladingPackageEntity = billladingPackageServicie.findBillladingPackage(packageCode); + if(Objects.isNull(billladingPackageEntity)){ + billladingPackageServicie.saveEntity(packageCode,billladingId,warehouseId,incomingType); + } + } + + //4.如果有托盘码 + if(StringUtil.isNotBlank(trayCode) && StringUtil.isNotBlank(trayType)){ + Map map = new HashMap<>(); + map.put("trayType",trayType); + map.put("trayCode",trayCode); + map.put("warehouseId",warehouseId); + map.put("orderPackageCode",packageCode); + warehouseTrayTypeClient.orderScanOrderPackageCode(map); + } } } - } return R.success("入库成功"); }