From b04dba12b0c3a09b9c1a2988c1ad5703382a866e Mon Sep 17 00:00:00 2001 From: kilo Date: Wed, 6 Sep 2023 17:36:09 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E9=A2=84=E7=BA=A6=E8=A1=A8=E6=A0=BC?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DistributionStockArticleController.java | 28 +++++++++-- .../mapper/DistributionStockupMapper.java | 7 +++ .../mapper/DistributionStockupMapper.xml | 47 +++++++++++++++++++ .../DistributionDeliveryListServiceImpl.java | 47 ++++++++++++++++++- 4 files changed, 122 insertions(+), 7 deletions(-) diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java index 4a77c71d3..fbb4f8168 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockArticleController.java @@ -16,8 +16,10 @@ */ package com.logpm.distribution.controller; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.logpm.basicdata.entity.BasicdataWarehouseEntity; import com.logpm.basicdata.feign.IBasicdataWarehouseClient; @@ -184,7 +186,11 @@ public class DistributionStockArticleController extends BladeController { Object o1 = distributionStockArticle.get("entDate"); String orderIds = (String) distributionStockArticle.get("orderIds"); String customerName = (String) distributionStockArticle.get("customerName"); + String reservationStatus = (String) distributionStockArticle.get("reservationStatus"); + String warehouseEntryTime = (String) distributionStockArticle.get("warehouseEntryTime"); String customerTelephone = (String) distributionStockArticle.get("customerTelephone"); + String completeSet = (String) distributionStockArticle.get("completeSet"); + String freezeStatus = (String) distributionStockArticle.get("freezeStatus"); Object d = distributionStockArticle.get("id"); distributionStockArticle.remove("id"); distributionStockArticle.remove("startDate"); @@ -194,10 +200,23 @@ public class DistributionStockArticleController extends BladeController { // distributionStockArticle.remove("currentPage"); // distributionStockArticle.remove("total"); QueryWrapper queryWrapper = Condition.getQueryWrapper(distributionStockArticle, DistributionStockArticleEntity.class); + LambdaQueryWrapper lambda = Wrappers.query().lambda(); queryWrapper.ne("reservation_status","30"); queryWrapper.lambda().eq(DistributionStockArticleEntity::getWarehouseId,myCurrentWarehouse.getId()); if(Func.isNotEmpty(o)){ - queryWrapper.in("orderCode",String.valueOf(o).split(",")); + queryWrapper.in("order_code",String.valueOf(o).split(",")); + } + if(Func.isNotEmpty(reservationStatus)){ + queryWrapper.eq("reservation_status",reservationStatus); + } + if(Func.isNotEmpty(warehouseEntryTime)){ + queryWrapper.apply("datediff(warehouse_entry_time,{0} ) = 0",warehouseEntryTime); + } + if(Func.isNotEmpty(freezeStatus)){ + queryWrapper.eq("freeze_status",freezeStatus); + } + if(Func.isNotEmpty(completeSet)){ + queryWrapper.eq("complete_set",completeSet); } if(ObjectUtil.isNotEmpty(d)){ queryWrapper.in("id",String.valueOf(d).split(",")); @@ -208,9 +227,9 @@ public class DistributionStockArticleController extends BladeController { if(Func.isNotEmpty(orderIds)){ queryWrapper.notIn("id",Func.toLongList(orderIds)); } - if(Func.isNotEmpty(orderIds)){ - queryWrapper.notIn("id",Func.toLongList(orderIds)); - } +// if(Func.isNotEmpty(orderIds)){ +// queryWrapper.notIn("id",Func.toLongList(orderIds)); +// } if(Func.isNotEmpty(customerName)){ queryWrapper.like("customer_name",customerName); } @@ -239,7 +258,6 @@ public class DistributionStockArticleController extends BladeController { IPage pages = distributionStockArticleService.page(Condition.getPage(query), queryWrapper); IPage distributionStockArticleVOIPage = distributionStockArticleService.handlePackage(DistributionStockArticleWrapper.build().pageVO(pages)); return R.data(distributionStockArticleVOIPage); - } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java index 73ad0fee3..e15b26d4a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.java @@ -153,4 +153,11 @@ public interface DistributionStockupMapper extends BaseMapper getMarketDeliveryStockupInfo(@Param("deliveryListId")Long id); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml index 30ac39a96..ad4baaa6b 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockupMapper.xml @@ -586,5 +586,52 @@ ldsi.stockup_id = #{ id } and ldsi.stock_up_type = 3 AND ldsi.is_deleted = 0 + 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 610367de1..74d598d76 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 @@ -210,8 +210,51 @@ public class DistributionDeliveryListServiceImpl extends BaseServiceImpl distributionStockupVOList = distributionStockupMapper.getMarketDeliveryStockupInfo(detail.getId()); +// Optional max = distributionStockupVOList.stream().max(Comparator.comparing(DistributionStockupVO::getOutboundDate)); +// Optional min = distributionStockupVOList.stream().min(Comparator.comparing(DistributionStockupVO::getOutboundDate)); +// String s1 = distributionStockupVOList.stream().min(Comparator.comparing(DistributionStockupVO::getOutboundDate)).toString(); + Date outboundDate = distributionStockupVOList.stream().filter(o -> o.getOutboundDate() != null).max(Comparator.comparing(DistributionStockupVO::getOutboundDate)).get().getOutboundDate(); + //这里需要处理一下 + if (distributionStockupVOList.size()>1){ + HashSet forkliftName = new HashSet<>(); + HashSet loaderName = new HashSet<>(); + HashSet stockUser = new HashSet<>(); + HashSet goodsArea = new HashSet<>(); + distributionStockupVOList.forEach(s->{ + if (Func.isNotEmpty(s.getForkliftName())){ + forkliftName.add(s.getForkliftName()); + } + if (Func.isNotEmpty(s.getLoaderName())){ + loaderName.add(s.getLoaderName()); + } + if (Func.isNotEmpty(s.getStockupUser())){ + stockUser.add(s.getStockupUser()); + } + if (Func.isNotEmpty(s.getStockupArea())){ + goodsArea.add(s.getStockupArea()); + } + }); + DistributionStockupVO distributionStockupVO = new DistributionStockupVO(); + distributionStockupVO.setForkliftName(String.join(",",forkliftName)); + distributionStockupVO.setStockupArea(String.join(",",goodsArea)); + distributionStockupVO.setStockupUser(String.join(",",stockUser)); + distributionStockupVO.setLoaderName(String.join(",",loaderName)); + distributionStockupVO.setOutboundDate(outboundDate); + distributionStockupVO.setTeamResponsibility(distributionStockupVOList.get(0).getTeamResponsibility()); + distributionDeliveryListVO.setStockupInfo(distributionStockupVO); + + }else { + distributionDeliveryListVO.setStockupInfo(distributionStockupVOList.get(0)); + } + }else { + DistributionStockupVO deliveryStockupInfo = distributionStockupMapper.getDeliveryStockupInfo(detail.getId()); + distributionDeliveryListVO.setStockupInfo(deliveryStockupInfo); + + } + // } else if (detail.getSource() == 2) { // //查询订单信息 // List customList = distributionDeliveryInfoMapper.selectcustomListByOrderId(detail.getOrderId()); From 1038fba30a737f017cbcc8eee46ee1494fe8c528 Mon Sep 17 00:00:00 2001 From: zhenghaoyu Date: Wed, 6 Sep 2023 18:06:50 +0800 Subject: [PATCH 2/5] =?UTF-8?q?1.=E4=BF=AE=E5=A4=8D=E4=B8=8A=E6=9E=B6?= =?UTF-8?q?=E5=8C=85=E4=BB=B6=E9=97=AE=E9=A2=98=202.=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E9=9B=B6=E6=8B=85=E8=BF=90=E5=8D=95=E5=88=9B=E5=BB=BA=E7=9A=84?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E9=9B=B6=E6=8B=85=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WarehouseUpdownTypeServiceImpl.java | 4 ++-- .../warehouse/service/impl/WarehouseWaybillServiceImpl.java | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java index 5db51fea1..a132947e3 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java @@ -211,14 +211,14 @@ public class WarehouseUpdownTypeServiceImpl extends BaseServiceImpl updownGoodsEntityQueryWrapper = new QueryWrapper<>(); updownGoodsEntityQueryWrapper.eq("association_value",code); WarehouseUpdownGoodsEntity updownGoodsEntity = warehouseUpdownGoodsService.getOne(updownGoodsEntityQueryWrapper); - if(Objects.isNull(updownGoodsEntity)){ + if(!Objects.isNull(updownGoodsEntity)){ log.warn("#################findUpShelfScanGoods: 包件已上架 code={}",code); throw new CustomerException(403,"包件已上架"); } QueryWrapper trayGoodsEntityQueryWrapper = new QueryWrapper<>(); trayGoodsEntityQueryWrapper.eq("association_value",code); WarehouseTrayGoodsEntity trayGoodsEntity = warehouseTrayGoodsService.getOne(trayGoodsEntityQueryWrapper); - if(Objects.isNull(trayGoodsEntity)){ + if(!Objects.isNull(trayGoodsEntity)){ log.warn("#################findUpShelfScanGoods: 包件已打托 code={}",code); throw new CustomerException(403,"包件已打托"); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java index 01bb235b3..a38d65099 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java @@ -217,7 +217,7 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl Date: Wed, 6 Sep 2023 19:26:50 +0800 Subject: [PATCH 3/5] =?UTF-8?q?1.=E9=99=90=E5=88=B6=E6=95=B0=E9=87=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BasicdataTrayServiceImpl.java | 8 ++++++-- .../mapper/WarehouseGoodsAllocationMapper.xml | 15 ++++++++------- .../impl/WarehouseUpdownTypeServiceImpl.java | 5 +++++ 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataTrayServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataTrayServiceImpl.java index 327fa5644..c1a2af45b 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataTrayServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataTrayServiceImpl.java @@ -43,6 +43,7 @@ import com.logpm.basicdata.vo.BasicdataStockArticleVO; import com.logpm.basicdata.vo.WarehouseParcelListVO; import com.logpm.basicdata.vo.WarehouseStockListVO; import com.logpm.distribution.vo.DistributionStockArticleQRCodeVO; +import com.logpm.warehouse.entity.WarehouseTrayGoodsEntity; import com.logpm.warehouse.feign.IWarehouseTrayGoodsClient; import com.logpm.warehouse.feign.IWarehouseTrayTypeClient; import com.logpm.warehouse.vo.WarehouseTrayQRCode; @@ -285,8 +286,11 @@ public class BasicdataTrayServiceImpl extends BaseServiceImpl longs = Func.toLongList(ids); + for (Long aLong : longs) { + //查询托盘有无绑定货物 + List trayIdList = warehouseTrayGoodsClient.getTrayIdList(aLong); + } return null; } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.xml b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.xml index 05bc2346d..71d7a4686 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.xml +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.xml @@ -205,6 +205,7 @@ ldsl.cargo_number cargoNumber, ldsl.cargo_norms cargoNorms, ldsl.cargo_unit cargoUnit, + ldsl.incoming_batch incomingBatch, lbm.product_code materialCode, ldsl.sku sku, ldsl.stock_list_code stockListCode, @@ -266,16 +267,16 @@ GROUP_CONCAT(lwtg.palletizing_type SEPARATOR ',') palletizingType FROM logpm_warehouse_tray lwt - JOIN logpm_warehouse_tary_allocation lwta ON lwt.id = lwta.tary_id + JOIN logpm_warehouse_tary_allocation lwta ON lwt.id = lwta.tray_id LEFT JOIN logpm_warehouse_tray_goods lwtg on lwtg.tray_id =lwt.id lwta.is_deleted =0 - - and lwt.pallet_name like concat('%',#{param.palletName},'%') - - - and lwt.pallet_code like concat('%',#{param.palletCode},'%') - + + + + + + and lwta.allocation_id =#{param.id} GROUP BY lwt.id diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java index 5db51fea1..55eaeec2e 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownTypeServiceImpl.java @@ -1009,6 +1009,11 @@ public class WarehouseUpdownTypeServiceImpl extends BaseServiceImplnum){ + stringBuffer.append("{").append(materialCode).append("}"); + b =true; + continue; + } Long updownGoodsId = updownGoodsEntity.getId(); Long updownTypeId = updownGoodsEntity.getUpdownTypeId(); WarehouseUpdownTypeEntity updownTypeEntity = baseMapper.selectById(updownTypeId); From 3613cf821e39fe8b3ddf0b0d5d25bfb229548a84 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Wed, 6 Sep 2023 19:27:43 +0800 Subject: [PATCH 4/5] =?UTF-8?q?1.=E5=B0=86=E4=BB=93=E5=BA=93=E6=A8=A1?= =?UTF-8?q?=E5=9D=97=E5=8F=91=E5=B8=83=E7=9A=84=E5=BC=80=E5=8F=91=E7=8E=AF?= =?UTF-8?q?=E5=A2=83=20=EF=BC=8C=E6=BB=A1=E8=B6=B3=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E7=9A=84=E6=97=B6=E5=80=99=E5=A6=82=E6=9E=9C=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=8F=AA=E6=9C=89=E4=B8=80=E4=B8=AA=E4=BB=93=E5=BA=93=20?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E6=9C=AA=E4=B8=80=E4=B8=AA=E4=BB=93=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/IBasicdataWarehouseClient.java | 73 ++++++++++++------- .../entity/FactoryPackageDetailEntity.java | 10 +++ .../feign/BasicdataWarehouseClient.java | 15 ++-- .../service/IBasicdataWarehouseService.java | 10 +++ .../impl/BasicdataWarehouseServiceImpl.java | 46 ++++++++---- .../service/impl/AsyncDataServiceImpl.java | 73 ++++++++++++++----- .../service/impl/OuPaiFactoryServiceImpl.java | 3 +- 7 files changed, 162 insertions(+), 68 deletions(-) diff --git a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataWarehouseClient.java b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataWarehouseClient.java index 07fbe34aa..78d47ebb9 100644 --- a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataWarehouseClient.java +++ b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataWarehouseClient.java @@ -37,45 +37,46 @@ import java.util.List; * @since 2023-05-15 */ @FeignClient( - value = ModuleNameConstant.APPLICATION_BASICDATA_NAME + value = ModuleNameConstant.APPLICATION_BASICDATA_NAME ) public interface IBasicdataWarehouseClient { - String API_PREFIX = "warehouse/client"; - String TOP = API_PREFIX + "/top"; - String GETWAREHOUSE = API_PREFIX + "/warehouse"; - String WAREHOUSEBYDEPARTMENT = API_PREFIX+"/getWarehouseByDepartment"; - - /** - * 获取仓库列表 - * - * @param current 页号 - * @param size 页数 - * @return BladePage - */ - @GetMapping(TOP) + String API_PREFIX = "warehouse/client"; + String TOP = API_PREFIX + "/top"; + String GETWAREHOUSE = API_PREFIX + "/warehouse"; + String WAREHOUSEBYDEPARTMENT = API_PREFIX + "/getWarehouseByDepartment"; + + /** + * 获取仓库列表 + * + * @param current 页号 + * @param size 页数 + * @return BladePage + */ + @GetMapping(TOP) BladePage topWarehouse(@RequestParam("current") Integer current, @RequestParam("size") Integer size); - @GetMapping(API_PREFIX+"/findByName") + @GetMapping(API_PREFIX + "/findByName") BasicdataWarehouseEntity findByName(@RequestParam("warehouseName") String destinationWarehouse); /** * 查询仓库信息 + * * @param name * @param warehouseCode * @return */ @GetMapping(GETWAREHOUSE) - BasicdataWarehouseEntity getWarehouse(@RequestParam("name") String name,@RequestParam("warehouseCode") String warehouseCode); + BasicdataWarehouseEntity getWarehouse(@RequestParam("name") String name, @RequestParam("warehouseCode") String warehouseCode); - @GetMapping(API_PREFIX+"/getWarehouseByOldId") - BasicdataWarehouseEntity getWarehouseByOldId(@RequestParam Integer id); + @GetMapping(API_PREFIX + "/getWarehouseByOldId") + BasicdataWarehouseEntity getWarehouseByOldId(@RequestParam Integer id); - @PostMapping(API_PREFIX+"/addWarehouse") + @PostMapping(API_PREFIX + "/addWarehouse") Long addWarehouse(@RequestBody BasicdataWarehouseEntity newEntity); - @GetMapping(API_PREFIX+"/getWarehouseEntityByWarehouseCode") - BasicdataWarehouseEntity getWarehouseEntityByWarehouseCode(@RequestParam String warehouseCode); + @GetMapping(API_PREFIX + "/getWarehouseEntityByWarehouseCode") + BasicdataWarehouseEntity getWarehouseEntityByWarehouseCode(@RequestParam String warehouseCode); @GetMapping(WAREHOUSEBYDEPARTMENT) @@ -84,44 +85,60 @@ public interface IBasicdataWarehouseClient { /** * 查询当前登录人仓库信息 + * * @return */ - @GetMapping(API_PREFIX+"/getMyWarehouseList") + @GetMapping(API_PREFIX + "/getMyWarehouseList") List getMyWarehouseList(); /** * 将当前登录人选择仓库存至缓存 */ - @PostMapping(API_PREFIX+"/preserveCurrentWarehouse") + @PostMapping(API_PREFIX + "/preserveCurrentWarehouse") BasicdataWarehouseEntity preserveCurrentWarehouse(@RequestBody BasicdataWarehouseEntity warehouseEntity); /** * 根据当前用户查询缓存中仓库信息 + * * @return */ - @GetMapping(API_PREFIX+"/getMyCurrentWarehouse") + @GetMapping(API_PREFIX + "/getMyCurrentWarehouse") BasicdataWarehouseEntity getMyCurrentWarehouse(); /** * 获取当前登录人的能查看的仓库 + * * @return */ - @GetMapping(API_PREFIX+"/getMyWatchWarehouse") + @GetMapping(API_PREFIX + "/getMyWatchWarehouse") List getMyWatchWarehouse(); /** * 清除当前登录人仓库缓存 + * * @return */ - @GetMapping(API_PREFIX+"/clearWarehouseCache") + @GetMapping(API_PREFIX + "/clearWarehouseCache") R clearWarehouseCache(); + @GetMapping(API_PREFIX + "/getEntityWarehouseId") + BasicdataWarehouseEntity getEntityWarehouseId(@RequestParam("warehouseId") Long warehouseId); + + /** + * 设置当前用户的仓库,前台是如果这个用户只有一个仓库 + * + * @param deptId + * @param tenantId + * @param userId + * @return + */ + @GetMapping(API_PREFIX + "/addWarehouseSingle") + BasicdataWarehouseEntity addWarehouseSingle(@RequestParam("deptId")String deptId, @RequestParam("tenantId")String tenantId, @RequestParam("userId")Long userId); - @GetMapping(API_PREFIX+"/getEntityWarehouseId") - BasicdataWarehouseEntity getEntityWarehouseId(@RequestParam("warehouseId") Long warehouseId); } + diff --git a/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/FactoryPackageDetailEntity.java b/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/FactoryPackageDetailEntity.java index 1280a3644..946538484 100644 --- a/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/FactoryPackageDetailEntity.java +++ b/blade-service-api/logpm-factory-api/src/main/java/com/logpm/factory/oupai/entity/FactoryPackageDetailEntity.java @@ -53,4 +53,14 @@ public class FactoryPackageDetailEntity extends BaseEntity { @ApiModelProperty(name = "原物料编码",notes = "") private String orgCode ; + /** 入库单状态 0正常 1作废 */ + @ApiModelProperty(name = "入库单状态 0正常 1作废",notes = "") + private Integer receiptStatus ; + /** 推送状态 1推送 0未推送 */ + @ApiModelProperty(name = "推送状态 1推送 0未推送",notes = "") + private Integer pushStatus ; + /** 转发状态 1转送 0未转送 */ + @ApiModelProperty(name = "转发状态 1转送 0未转送 2 转送失败",notes = "") + private Integer turnStatus ; + } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java index 90be952e9..cfb575741 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataWarehouseClient.java @@ -68,10 +68,7 @@ public class BasicdataWarehouseClient implements IBasicdataWarehouseClient { /** * 查询仓库数据 - * @param name - * @param warehouseCode - * @return - */ + */ @Override public BasicdataWarehouseEntity getWarehouse(String name, String warehouseCode) { return warehouseWarehouseService.getOne(Wrappers.query().lambda() @@ -144,8 +141,7 @@ public class BasicdataWarehouseClient implements IBasicdataWarehouseClient { @GetMapping(API_PREFIX+"/getMyCurrentWarehouse") @Override public BasicdataWarehouseEntity getMyCurrentWarehouse() { - BasicdataWarehouseEntity warehouseEntity = warehouseWarehouseService.getMyCurrentWarehouse(); - return warehouseEntity; + return warehouseWarehouseService.getMyCurrentWarehouse(); } @Override @@ -175,4 +171,11 @@ public class BasicdataWarehouseClient implements IBasicdataWarehouseClient { return warehouseWarehouseService.getById(warehouseId); } + @Override + @GetMapping(API_PREFIX + "/addWarehouseSingle") + public BasicdataWarehouseEntity addWarehouseSingle(String deptId, String tenantId, Long userId) { + return warehouseWarehouseService.getMyWarehouseList(deptId, tenantId, userId); + + } + } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataWarehouseService.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataWarehouseService.java index 03dc78861..b6135d384 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataWarehouseService.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/IBasicdataWarehouseService.java @@ -94,6 +94,16 @@ public interface IBasicdataWarehouseService extends BaseService getMyWarehouseList(); + + /** + * 根据相关参数查询用户仓库,如果用户仓库只有一个 将仓库数据写入缓存 + * @param deptId + * @param tenantId + * @param userId + * @return + */ + BasicdataWarehouseEntity getMyWarehouseList(String deptId, String tenantId, Long userId); + /** * 保存当前用户选择的仓库至Redis缓存中 * @param warehouseEntity diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataWarehouseServiceImpl.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataWarehouseServiceImpl.java index 7a20ddb18..f3cae2b32 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataWarehouseServiceImpl.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/service/impl/BasicdataWarehouseServiceImpl.java @@ -17,7 +17,6 @@ package com.logpm.basicdata.service.impl; import com.alibaba.fastjson.JSONObject; -import com.alibaba.nacos.shaded.com.google.gson.JsonObject; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -31,11 +30,9 @@ import com.logpm.basicdata.mapper.BasicdataGoodsAreaMapper; import com.logpm.basicdata.mapper.BasicdataWarehouseMapper; import com.logpm.basicdata.service.IBasicdataWarehouseService; import com.logpm.basicdata.vo.BasicdataWarehouseVO; -import com.logpm.basicdata.wrapper.BasicdataWarehouseWrapper; import lombok.AllArgsConstructor; import lombok.extern.log4j.Log4j2; import org.springblade.common.cache.CacheNames; -import org.springblade.core.cache.utils.CacheUtil; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.redis.cache.BladeRedis; import org.springblade.core.secure.BladeUser; @@ -48,7 +45,6 @@ import org.springblade.system.feign.IDeptClient; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.time.Duration; import java.util.ArrayList; import java.util.List; import java.util.Objects; @@ -164,12 +160,6 @@ public class BasicdataWarehouseServiceImpl extends BaseServiceImpl 一对多 递归查询 2、登录人部门就是营业部节点 登录人 -- 仓库 -> 一对一 - - - - - - */ @Override @@ -180,7 +170,6 @@ public class BasicdataWarehouseServiceImpl extends BaseServiceImpl userDeptNode = deptClient.getUserDeptNode(Long.parseLong(deptId)); - StringBuffer depts = new StringBuffer(); List deptIds = new ArrayList<>(); @@ -194,12 +183,39 @@ public class BasicdataWarehouseServiceImpl extends BaseServiceImpl warehouseEntityList = baseMapper.selectList(Wrappers.query().lambda().in(BasicdataWarehouseEntity::getDepartment, deptIds)); // String json = redis.get(CacheNames.tenantKeyObj(user.getTenantId(), CacheNames.USER_WAREHOUSE_KEY, user.getUserId())); - if(warehouseEntityList.size() <= 1 ){ - redis.setEx(CacheNames.tenantKeyObj(user.getTenantId(), CacheNames.USER_WAREHOUSE_KEY, user.getUserId()),warehouseEntityList.get(0),30*24*60*60L); + if (warehouseEntityList.size() <= 1) { + redis.setEx(CacheNames.tenantKeyObj(user.getTenantId(), CacheNames.USER_WAREHOUSE_KEY, user.getUserId()), warehouseEntityList.get(0), 30 * 24 * 60 * 60L); } return warehouseEntityList; } + @Override + public BasicdataWarehouseEntity getMyWarehouseList(String deptId, String tenantId, Long userId) { + + //查询出部门表 + List userDeptNode = deptClient.getUserDeptNode(Long.parseLong(deptId)); + + List deptIds = new ArrayList<>(); + + if (Func.isEmpty(userDeptNode)) { + log.error("userDeptNode用户部门信息有误+{" + userDeptNode + "}"); + return null; + } else { + userDeptNode.forEach(u -> { + deptIds.add(u.getId()); + }); + } + BasicdataWarehouseEntity warehouseEntity = null; + List warehouseEntityList = baseMapper.selectList(Wrappers.query().lambda().in(BasicdataWarehouseEntity::getDepartment, deptIds)); +// String json = redis.get(CacheNames.tenantKeyObj(user.getTenantId(), CacheNames.USER_WAREHOUSE_KEY, user.getUserId())); + if (warehouseEntityList.size() <= 1) { + warehouseEntity = warehouseEntityList.get(0); + String json = JSONObject.toJSONString(warehouseEntity); + redis.setEx(CacheNames.tenantKeyObj(tenantId, CacheNames.USER_WAREHOUSE_KEY, userId), json, 30 * 24 * 60 * 60L); + } + return warehouseEntity; + } + @Override public R preserveCurrentMyWarehouse(BasicdataWarehouseEntity warehouseEntity) { @@ -220,10 +236,10 @@ public class BasicdataWarehouseServiceImpl extends BaseServiceImpl list = factoryPackageService.lambdaQuery().eq(FactoryPackageEntity::getOrderId, factoryOrderEntity.getId()).eq(FactoryPackageEntity::getTurnStatus, 0).list(); for (FactoryPackageEntity factoryPackageEntity : list) { - addAdvanceDetailEntityByOuPai(factoryPackageEntity,factoryOrderEntity,advanceEntity); + addAdvanceDetailEntityByOuPai(factoryPackageEntity, factoryOrderEntity, advanceEntity); } - } factoryOrderService.updateBatchById(factoryOrderEntities); @@ -479,6 +478,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService { /** * 保存包件数据-- 欧派 + * * @param factoryPackageEntity * @param factoryOrderEntity * @param advanceEntity @@ -504,10 +504,6 @@ public class AsyncDataServiceImpl implements IAsyncDataService { advanceDetailClient.updateAdvanceDetail(advanceDetailEntity); - - - - } else { advanceDetailEntity = new AdvanceDetailEntity(); advanceDetailEntity.setAdvanceId(advanceEntity.getId());//预仓id @@ -540,7 +536,7 @@ public class AsyncDataServiceImpl implements IAsyncDataService { advanceDetailEntity.setVolume("");//体积 advanceDetailEntity.setUnitNo(StringUtil.isBlank(factoryPackageEntity.getCode()) ? "" : factoryPackageEntity.getCode());//包条码 advanceDetailEntity.setMctsTruck(advanceEntity.getMctsTruck());//车次号 - advanceDetailEntity.setMctsTruckNo(StringUtil.isBlank(advanceEntity.getMctsTruckNo())?"":advanceEntity.getMctsTruckNo());//车牌号 + advanceDetailEntity.setMctsTruckNo(StringUtil.isBlank(advanceEntity.getMctsTruckNo()) ? "" : advanceEntity.getMctsTruckNo());//车牌号 advanceDetailEntity.setDate100(null);//基地发货日期 advanceDetailEntity.setDate2("");//预约到厂时间 advanceDetailEntity.setDate3("");//实际到厂时间 @@ -559,8 +555,9 @@ public class AsyncDataServiceImpl implements IAsyncDataService { // 物料明细 List factoryPackageDetailEntities = factoryPackageDetailService.lambdaQuery().eq(FactoryPackageDetailEntity::getPackageId, factoryPackageEntity.getId()).list(); + // 保存物料明细 + saveDetailProductInforByOuPai(advanceDetailEntity, factoryPackageDetailEntities); - // todo 保存物料明细 if (detailId > 0) { //修改数据状态 @@ -687,6 +684,47 @@ public class AsyncDataServiceImpl implements IAsyncDataService { } + } + + /** + * oupai保存包件物料信息 + * + * @param advanceDetailEntity + * @param factoryPackageDetailEntities + */ + private void saveDetailProductInforByOuPai(AdvanceDetailEntity advanceDetailEntity, List factoryPackageDetailEntities) { + + // 循环遍历 + List saveList = new ArrayList<>(); + Long packageId = null; + for (FactoryPackageDetailEntity zbPackageInfoEntity : factoryPackageDetailEntities) { + DetailProductEntity detailProductEntity = new DetailProductEntity(); + detailProductEntity.setUnitNo(advanceDetailEntity.getUnitNo()); + detailProductEntity.setProductcode(StringUtil.isBlank(zbPackageInfoEntity.getCode()) ? "" : zbPackageInfoEntity.getCode()); + detailProductEntity.setProductname(StringUtil.isBlank(zbPackageInfoEntity.getName()) ? "" : zbPackageInfoEntity.getName()); + detailProductEntity.setSalenum(0); + detailProductEntity.setDelivernum(1); + detailProductEntity.setProducttype(""); + detailProductEntity.setBuyTime(""); + detailProductEntity.setAdministratorsId(0); + detailProductEntity.setDeleteTime(0); + detailProductEntity.setCreateTime(LocalDate.now()); + saveList.add(detailProductEntity); + packageId = zbPackageInfoEntity.getPackageId(); + } + + if (!saveList.isEmpty()) { + boolean flag = detailProductClient.addDetailProductList(saveList); + UpdateWrapper listUpdateWrapper = new UpdateWrapper<>(); + if (!flag) { + listUpdateWrapper.set("processing_status", 2).eq("package_id", packageId).eq("is_deleted", 0); + } else { + listUpdateWrapper.set("processing_status", 1).eq("package_id", packageId).eq("is_deleted", 0); + } + factoryPackageDetailService.update(listUpdateWrapper); + } + + } /** @@ -921,14 +959,13 @@ public class AsyncDataServiceImpl implements IAsyncDataService { advanceDetailEntity.setOrderNum("");//MSCS单号 可以为空 - - if("中心仓".equals(mtFactoryOrderMain.getWarehouseType())){ + if ("中心仓".equals(mtFactoryOrderMain.getWarehouseType())) { advanceDetailEntity.setIsOpai(1); //是否干仓配 - }else { //转运仓或者其它情况 + } else { //转运仓或者其它情况 advanceDetailEntity.setIsOpai(0); //是否干仓配 } - advanceDetailEntity.setMtdsNo(mtFactoryOrder.getProduceOrderCode());//MTDS单号 可以为空 + advanceDetailEntity.setMtdsNo(mtFactoryOrder.getProduceOrderCode());//MTDS单号 可以为空 advanceDetailEntity.setFirstPackName(mtPackageInfo.getBigType());//一级品类 // advanceDetailEntity.setFirstPackName(StringUtil.isBlank(mtPackageInfo.getBigType())?"":mtPackageInfo.getBigType());//一级品类 advanceDetailEntity.setFirstPackCode("");//二级品类 @@ -974,9 +1011,9 @@ public class AsyncDataServiceImpl implements IAsyncDataService { advanceEntity.setDealerCode(StringUtil.isBlank(mtFactoryOrder.getDealerCode()) ? "" : mtFactoryOrder.getDealerCode()); //商场编码 - if("中心仓".equals(mtFactoryOrderMain.getWarehouseType())){ + if ("中心仓".equals(mtFactoryOrderMain.getWarehouseType())) { advanceEntity.setIsOpai(1); //是否干仓配 - }else{ //转运仓或者其它情况 + } else { //转运仓或者其它情况 advanceEntity.setIsOpai(0); //是否干仓配 } advanceEntity.setDueDate(""); // 交期 diff --git a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java index 621d30acc..f6477ece7 100644 --- a/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java +++ b/blade-service/logpm-factory/src/main/java/com/logpm/factory/oupai/service/impl/OuPaiFactoryServiceImpl.java @@ -153,9 +153,10 @@ public class OuPaiFactoryServiceImpl implements IOuPaiFactoryService { JSONObject jsonObject = JSONObject.parseObject(opOrderStatusLogEntity.getArgs()); JSONArray resultArray = jsonObject.getJSONArray("value"); log.info("############handlePackageData: 数据处理开始"); - //TODO 这里需要添加处理配送发运单的逻辑 + + opOrderStatusLogEntity.setDataStatus(1); } catch (Exception e) { e.printStackTrace(); From 8d843f5465528382a6a33e9ce15dacf062aba592 Mon Sep 17 00:00:00 2001 From: "pref_mail@163.com" <123456> Date: Wed, 6 Sep 2023 19:33:38 +0800 Subject: [PATCH 5/5] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E7=9A=84=E5=BC=80=E5=8F=91=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- blade-service/logpm-basicdata/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/blade-service/logpm-basicdata/Dockerfile b/blade-service/logpm-basicdata/Dockerfile index 36935915d..be6cdebcf 100644 --- a/blade-service/logpm-basicdata/Dockerfile +++ b/blade-service/logpm-basicdata/Dockerfile @@ -11,4 +11,4 @@ EXPOSE 8400 ADD ./target/logpm-basicdata.jar ./app.jar ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "app.jar"] -CMD ["--spring.profiles.active=test"] +CMD ["--spring.profiles.active=dev"]