From 7f54ab93b493ea30c6e7bea3c7167bafcc51865c Mon Sep 17 00:00:00 2001 From: "0.0" <1092404103.qq.com> Date: Mon, 25 Sep 2023 11:06:56 +0800 Subject: [PATCH] =?UTF-8?q?1.=E5=8F=AF=E8=A7=86=E5=8C=96=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../logpm/warehouse/vo/WarehouseShelfVO.java | 40 +++++++ .../mapper/DistributionSigndetailMapper.xml | 2 +- .../WarehouseGoodsAllocationController.java | 24 ++-- .../WarehouseGoodsAllocationMapper.java | 2 +- .../mapper/WarehouseGoodsAllocationMapper.xml | 13 +- .../mapper/WarehouseUpdownGoodsMapper.java | 1 + .../mapper/WarehouseUpdownGoodsMapper.xml | 5 +- .../IWarehouseGoodsAllocationService.java | 2 +- .../service/IWarehouseUpdownGoodsService.java | 1 + .../WarehouseGoodsAllocationServiceImpl.java | 113 ++++++++++-------- .../impl/WarehouseUpdownGoodsServiceImpl.java | 5 + 11 files changed, 134 insertions(+), 74 deletions(-) create mode 100644 blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseShelfVO.java diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseShelfVO.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseShelfVO.java new file mode 100644 index 000000000..262c8fd22 --- /dev/null +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/vo/WarehouseShelfVO.java @@ -0,0 +1,40 @@ +package com.logpm.warehouse.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +@Data +public class WarehouseShelfVO { + /** + * 总货位 + */ + @ApiModelProperty(value = "总货位") + private Integer cargoNub; + /** + * 使用货位 + */ + @ApiModelProperty(value = "使用货位") + private Integer employNub; + /** + * 可用货位 + */ + @ApiModelProperty(value = "可用货位") + private Integer unusedNub; + /** + * 禁用货位 + */ + @ApiModelProperty(value = "禁用货位") + private Integer disableNub; + /** + * 总货数量 + */ + @ApiModelProperty(value = "总货数量") + private Integer goodsNub; + /** + * 货位list + */ + @ApiModelProperty(value = "货位list") + private List list; +} diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml index 0b30abf80..3e37843aa 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionSigndetailMapper.xml @@ -124,7 +124,7 @@ ldsa.warehouse warehouse, ldsa.brand brand, ldsa.complete_set completeSet, - ldsa.warehouse_entry_time_end warehouseEntryTimeEnd, + ldsa.warehouse_entry_time warehouseEntryTime, ldsa.store_time storeTime, ldr.consignee consignee, ldr.delivery_phone deliveryPhone, diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseGoodsAllocationController.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseGoodsAllocationController.java index 4d9aadd54..94f89984f 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseGoodsAllocationController.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseGoodsAllocationController.java @@ -358,13 +358,13 @@ public class WarehouseGoodsAllocationController extends BladeController { @GetMapping("/Visualization") @ApiOperationSupport(order = 17) @ApiOperation(value = "货位 可视化", notes = "传入warehouseGoodsAllocation") - public R> Visualization(WarehouseGoodsAllocationVO warehouseGoodsAllocation) { + public R Visualization(WarehouseGoodsAllocationVO warehouseGoodsAllocation) { //log.info("传入参数>>>>>>>>>>>>{}", warehouseGoodsAllocation); if (null != bladeRedis.get(Url + "/" + warehouseGoodsAllocation.getGoodsShelfId())) { log.info("缓存取值>>>>>>>>>>"+Url + "/" + warehouseGoodsAllocation.getGoodsShelfId()); return R.data(bladeRedis.get(Url + "/" + warehouseGoodsAllocation.getGoodsShelfId())); } - List pages = warehouseGoodsAllocationService.selectVisualization(warehouseGoodsAllocation); + WarehouseShelfVO pages = warehouseGoodsAllocationService.selectVisualization(warehouseGoodsAllocation); bladeRedis.setEx(Url +"/"+ warehouseGoodsAllocation.getGoodsShelfId(), pages, 600L); return R.data(pages); } @@ -376,12 +376,12 @@ public class WarehouseGoodsAllocationController extends BladeController { @ApiOperationSupport(order = 18) @ApiOperation(value = "货位 统计所有库位数量") public R locationsnub() { - if (null !=bladeRedis.get(Url+"/locationsnub)")){ - log.info("缓存取值>>>>>>>>>>"); - return R.data(bladeRedis.get(Url+"/locationsnub")); - } +// if (null !=bladeRedis.get(Url+"/locationsnub)")){ +// log.info("缓存取值>>>>>>>>>>"); +// return R.data(bladeRedis.get(Url+"/locationsnub")); +// } locationsnubVO locationsnubVO = warehouseGoodsAllocationService.selectlocationsnub(); - bladeRedis.setEx(Url+"/locationsnub",locationsnubVO,360L); +// bladeRedis.setEx(Url+"/locationsnub",locationsnubVO,360L); return R.data(locationsnubVO); } @@ -392,12 +392,12 @@ public class WarehouseGoodsAllocationController extends BladeController { @ApiOperationSupport(order = 19) @ApiOperation(value = "货位 统计每个货区数量") public R cargoNub() { - if (null != bladeRedis.get(Url + "_cargoNub")) { - log.info("缓存取值>>>>>>>>>>"); - return R.data(bladeRedis.get(Url + "_cargoNub")); - } +// if (null != bladeRedis.get(Url + "_cargoNub")) { +// log.info("缓存取值>>>>>>>>>>"); +// return R.data(bladeRedis.get(Url + "_cargoNub")); +// } List list = warehouseGoodsAllocationService.selectcargoNub(); - bladeRedis.setEx(Url + "_cargoNub", list, 600L); +// bladeRedis.setEx(Url + "_cargoNub", list, 600L); return R.data(list); } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.java index b9e70717f..4040846e7 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseGoodsAllocationMapper.java @@ -161,7 +161,7 @@ public interface WarehouseGoodsAllocationMapper extends BaseMapper selectCargoSumId(); + List selectCargoSumId(); List AllWarehouse(); } 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 f90cfc2b5..9aea256ca 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 @@ -306,18 +306,19 @@ - + + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java index 14bf9254d..3e3992c7d 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/mapper/WarehouseUpdownGoodsMapper.java @@ -92,6 +92,7 @@ public interface WarehouseUpdownGoodsMapper extends BaseMapper + diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseGoodsAllocationService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseGoodsAllocationService.java index 1796d5760..772579ca9 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseGoodsAllocationService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseGoodsAllocationService.java @@ -54,7 +54,7 @@ public interface IWarehouseGoodsAllocationService extends BaseService selectVisualization(WarehouseGoodsAllocationVO warehouseGoodsAllocation); + WarehouseShelfVO selectVisualization(WarehouseGoodsAllocationVO warehouseGoodsAllocation); /** * 上架 可视化查询 查询仓库 */ diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java index 644370b95..d1f36c335 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/IWarehouseUpdownGoodsService.java @@ -127,4 +127,5 @@ public interface IWarehouseUpdownGoodsService extends BaseService selectVisualization(WarehouseGoodsAllocationVO warehouseGoodsAllocation) { + public WarehouseShelfVO selectVisualization(WarehouseGoodsAllocationVO warehouseGoodsAllocation) { //获取当前登录人仓库 //BasicdataWarehouseEntity basicdataWarehouseEntity = basicdataWarehouseClient.getMyCurrentWarehouse(); + WarehouseShelfVO warehouseShelfVO = new WarehouseShelfVO(); + Long goodsAreaId = warehouseGoodsAllocation.getGoodsAreaId(); + Long goodsShelfId = warehouseGoodsAllocation.getGoodsShelfId(); //查询所有货位 List warehouseGoodsAllocationEntities = baseMapper.selectList(new QueryWrapper().lambda() .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) //.eq(null != basicdataWarehouseEntity,WarehouseGoodsAllocationEntity::getWarehouseId,basicdataWarehouseEntity.getId()) - .eq(WarehouseGoodsAllocationEntity::getGoodsAreaId, warehouseGoodsAllocation.getGoodsAreaId()) - .eq(WarehouseGoodsAllocationEntity::getGoodsShelfId, warehouseGoodsAllocation.getGoodsShelfId()) + .eq(WarehouseGoodsAllocationEntity::getGoodsAreaId, goodsAreaId) + .eq(WarehouseGoodsAllocationEntity::getGoodsShelfId,goodsShelfId) .orderByAsc(WarehouseGoodsAllocationEntity::getLayerNum) .orderByAsc(WarehouseGoodsAllocationEntity::getColumnNum) ); - + //获取货架的所有货位 + //查询该货区下的总货位 + locationsnubVO num1 = this.getNum(goodsAreaId, goodsShelfId); + Func.copy(num1,warehouseShelfVO); + //查询所有包件数量 + Integer num = warehouseUpdownGoodsService.selectCountNumByshelf(goodsAreaId,goodsShelfId); + warehouseShelfVO.setGoodsNub(null==num?0:num); //使用HashMap进行二维List分割 ArrayList warehouseGoodsAllocationVOS = new ArrayList<>(); //HashMap> map = new HashMap<>(); @@ -107,13 +116,14 @@ public class WarehouseGoodsAllocationServiceImpl extends BaseServiceImpl()); // } WarehouseGoodsAllocationVO warehouseGoodsAllocationVO = this.convert(warehouseGoodsAllocationEntity); - log.info("List>>>>>>>>>>>>>>>>>{}",warehouseGoodsAllocationVO); // map.get(layerNum).add(warehouseGoodsAllocationVO); warehouseGoodsAllocationVOS.add(warehouseGoodsAllocationVO); } + warehouseShelfVO.setList(warehouseGoodsAllocationVOS); + log.info("list>>>>>>>>>>>>>>>>>>>>{}",warehouseShelfVO); // ArrayList> arrayListTwo = new ArrayList<>(map.values()); //log.info("排序后>>>>>>>>>>>>>>{}",map); - return warehouseGoodsAllocationVOS; + return warehouseShelfVO; } @Override @@ -284,26 +294,54 @@ public class WarehouseGoodsAllocationServiceImpl extends BaseServiceImpl selectcargoNub() { + //查询所有货区id + List ids =baseMapper.selectCargoSumId(); + ArrayList list = new ArrayList<>(); + for (Long id : ids) { + WarehouseCargoSumVO warehouseCargoSumVO = new WarehouseCargoSumVO(); + locationsnubVO locationsnubVO = this.getNum(id, null); + Func.copy(locationsnubVO,warehouseCargoSumVO); + warehouseCargoSumVO.setId(id); + list.add(warehouseCargoSumVO); + } + return list; + } + + public locationsnubVO getNum(Long areaId,Long shelfId){ locationsnubVO locationsnubVO = new locationsnubVO(); - //查询所有货位 + //查询该货区下的总货位 Integer cargoNub = baseMapper.selectCount(new QueryWrapper().lambda() .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) + .eq(null != areaId,WarehouseGoodsAllocationEntity::getGoodsAreaId, areaId) + .eq(null != shelfId,WarehouseGoodsAllocationEntity::getGoodsShelfId, shelfId) ).intValue(); //查询所有使用货位 Integer employNub = baseMapper.selectCount(new QueryWrapper().lambda() .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) .eq(WarehouseGoodsAllocationEntity::getAllocationStatus, 2) + .eq(null != areaId,WarehouseGoodsAllocationEntity::getGoodsAreaId, areaId) + .eq(null != shelfId,WarehouseGoodsAllocationEntity::getGoodsShelfId, shelfId) ).intValue(); //查询所有禁用 Integer disableNub = baseMapper.selectCount(new QueryWrapper().lambda() .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) .eq(WarehouseGoodsAllocationEntity::getEnableStatus, 2) + .eq(null != areaId,WarehouseGoodsAllocationEntity::getGoodsAreaId, areaId) + .eq(null != shelfId,WarehouseGoodsAllocationEntity::getGoodsShelfId, shelfId) ).intValue(); //查询可用货位 Integer unusedNub = baseMapper.selectCount(new QueryWrapper().lambda() .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) .eq(WarehouseGoodsAllocationEntity::getEnableStatus, 1) .eq(WarehouseGoodsAllocationEntity::getAllocationStatus,1) + .eq(null != areaId,WarehouseGoodsAllocationEntity::getGoodsAreaId, areaId) + .eq(null != shelfId,WarehouseGoodsAllocationEntity::getGoodsShelfId, shelfId) ).intValue(); locationsnubVO.setCargoNub(cargoNub); locationsnubVO.setEmployNub(employNub); @@ -312,46 +350,6 @@ public class WarehouseGoodsAllocationServiceImpl extends BaseServiceImpl selectcargoNub() { - - //查询所有货区id - List list =baseMapper.selectCargoSumId(); - for (WarehouseCargoSumVO warehouseCargoSumVO : list) { - Long id = warehouseCargoSumVO.getId(); - //查询该货区下的总货位 - Integer cargoNub = baseMapper.selectCount(new QueryWrapper().lambda() - .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) - .eq(WarehouseGoodsAllocationEntity::getGoodsAreaId,id) - ).intValue(); - //查询所有使用货位 - Integer employNub = baseMapper.selectCount(new QueryWrapper().lambda() - .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) - .eq(WarehouseGoodsAllocationEntity::getAllocationStatus, 2) - .eq(WarehouseGoodsAllocationEntity::getGoodsAreaId,id) - ).intValue(); - //查询所有禁用 - Integer disableNub = baseMapper.selectCount(new QueryWrapper().lambda() - .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) - .eq(WarehouseGoodsAllocationEntity::getEnableStatus, 2) - .eq(WarehouseGoodsAllocationEntity::getGoodsAreaId,id) - ).intValue(); - //查询可用货位 - Integer unusedNub = baseMapper.selectCount(new QueryWrapper().lambda() - .eq(WarehouseGoodsAllocationEntity::getIsDeleted, 0) - .eq(WarehouseGoodsAllocationEntity::getEnableStatus, 1) - .eq(WarehouseGoodsAllocationEntity::getAllocationStatus,1) - .eq(WarehouseGoodsAllocationEntity::getGoodsAreaId,id) - ).intValue(); - warehouseCargoSumVO.setCargoNub(cargoNub); - warehouseCargoSumVO.setEmployNub(employNub); - warehouseCargoSumVO.setDisableNub(disableNub); - warehouseCargoSumVO.setUnusedNub(unusedNub); - } - - return list; - } - @Override public Boolean updateAllocationCache(String ids) { //查询货位 @@ -360,16 +358,27 @@ public class WarehouseGoodsAllocationServiceImpl extends BaseServiceImpl warehouseGoodsAllocationVOList = bladeRedis.get(Url + "/" + warehouseGoodsAllocationEntity.getGoodsShelfId()); + WarehouseShelfVO warehouseShelfVO = bladeRedis.get(Url + "/" + warehouseGoodsAllocationEntity.getGoodsShelfId()); + List warehouseGoodsAllocationVOList = warehouseShelfVO.getList(); //替换货位 - warehouseGoodsAllocationVOList = warehouseGoodsAllocationVOList.stream() - .map(obj -> obj.getId().equals(warehouseGoodsAllocationVO.getId()) ? warehouseGoodsAllocationVO : obj) - .collect(Collectors.toList()); + warehouseGoodsAllocationVOList = warehouseGoodsAllocationVOList.stream().map(obj -> obj.getId().equals(warehouseGoodsAllocationVO.getId()) ? warehouseGoodsAllocationVO : obj).collect(Collectors.toList()); + //计算数量 + //查询该货区下的总货位 + locationsnubVO num1 = this.getNum(goodsAreaId, goodsShelfId); + Func.copy(num1,warehouseShelfVO); + Integer num = warehouseUpdownGoodsService.selectCountNumByshelf(goodsAreaId,goodsShelfId); + warehouseShelfVO.setGoodsNub(null==num?0:num); + warehouseShelfVO.setList(warehouseGoodsAllocationVOList); //重新存入缓存 - bladeRedis.setEx(Url +"/"+ warehouseGoodsAllocationEntity.getGoodsShelfId(), warehouseGoodsAllocationVOList, 600L); + bladeRedis.setEx(Url +"/"+ warehouseGoodsAllocationEntity.getGoodsShelfId(), warehouseShelfVO, 600L); + log.info("货位缓存更新成功"); } } diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java index e14773275..690770c6e 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseUpdownGoodsServiceImpl.java @@ -219,4 +219,9 @@ public class WarehouseUpdownGoodsServiceImpl extends BaseServiceImpl