From bf6bd8934f6ab0657ad63c741d93a82536678f7d Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Thu, 20 Jul 2023 20:36:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=BA=93=E5=AD=98=E5=93=81?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/DistributionStockListEntity.java | 21 ++++ .../DistributionUnpackingDetailsEntity.java | 4 +- .../DistributionStockListController.java | 19 ++- .../dto/DistributionStockListDTO.java | 5 + .../mapper/DistributionStockListMapper.java | 1 + .../mapper/DistributionStockListMapper.xml | 64 +++++++++- .../IDistributionStockListService.java | 6 +- .../DistributionStockArticleServiceImpl.java | 2 +- .../DistributionStockListServiceImpl.java | 110 ++++++++++-------- 9 files changed, 176 insertions(+), 56 deletions(-) diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java index e3de1e05c..eb7d5e221 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockListEntity.java @@ -98,6 +98,11 @@ public class DistributionStockListEntity extends TenantEntity { */ @ApiModelProperty(value = "货物名称") private String descriptionGoods; + /** + * 货物规则 + */ + @ApiModelProperty(value = "货物规则") + private String cargoNorms; /** * 车牌 @@ -252,6 +257,11 @@ public class DistributionStockListEntity extends TenantEntity { */ @ApiModelProperty(value = "门店名称") private String storeName; + /** + * SKU + */ + @ApiModelProperty(value = "SKu") + private String sku; /** * 冻结数量 */ @@ -263,6 +273,17 @@ public class DistributionStockListEntity extends TenantEntity { */ @ApiModelProperty(value = "拆包ID") private Long pid; + /** + * 托盘ID + */ + @ApiModelProperty(value = "托盘ID") + private Long trayId; + /** + * 托盘名称 + */ + @ApiModelProperty(value = "托盘名称") + private Long trayName; + diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionUnpackingDetailsEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionUnpackingDetailsEntity.java index c298d5d65..790f1bfcd 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionUnpackingDetailsEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionUnpackingDetailsEntity.java @@ -75,7 +75,7 @@ public class DistributionUnpackingDetailsEntity extends TenantEntity { * 订单ID */ @ApiModelProperty(value = "订单ID") - private String stockArticleId; + private Long stockArticleId; /** * 库存品Id */ @@ -96,7 +96,7 @@ public class DistributionUnpackingDetailsEntity extends TenantEntity { */ @ApiModelProperty(value = "拆包数量") private Integer unpackingQuantity; - public DistributionUnpackingDetailsEntity(String stockArticleId, String orderSelfNumber, Long stockListId, String itemName, Integer unpackingQuantity){ + public DistributionUnpackingDetailsEntity(Long stockArticleId, String orderSelfNumber, Long stockListId, String itemName, Integer unpackingQuantity){ this.stockArticleId = stockArticleId; this.orderSelfNumber = orderSelfNumber; this.stockListId = stockListId; diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java index a8ac56167..3ad9df97e 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockListController.java @@ -16,6 +16,7 @@ */ package com.logpm.distribution.controller; +import com.logpm.distribution.dto.DistributionStockListDTO; import com.logpm.distribution.excel.StockListImporter; import com.logpm.distribution.vo.DistributionStockArticleVO; import io.swagger.annotations.Api; @@ -82,6 +83,18 @@ public class DistributionStockListController extends BladeController { return R.data(pages); } + /** + * 库存品管理 分页自己 + */ + @GetMapping("/listOwn") + @ApiOperationSupport(order = 2) + @ApiOperation(value = "分页", notes = "传入distributionStockList") + public R> listOwn(@ApiIgnore @RequestParam Map distributionStockList, Query query) { + + IPage pages = distributionStockListService.pageOwn(Condition.getPage(query), distributionStockList); + return R.data(pages); + } + /** * 库存品管理 自定义分页 */ @@ -125,11 +138,11 @@ public class DistributionStockListController extends BladeController { /** * 库存品管理 拆包 */ - @PostMapping("/parcels") + @PostMapping("/parcels") @ApiOperationSupport(order = 6) @ApiOperation(value = "新增或修改", notes = "传入distributionStockList") - public R parcels(@Valid @RequestBody DistributionStockListEntity distributionStockList) { - return R.status(distributionStockListService.parcels(distributionStockList)); + public R parcels(@Valid @RequestBody DistributionStockListDTO distributionStockListDTO) { + return R.status(distributionStockListService.parcels(distributionStockListDTO)); } /** diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockListDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockListDTO.java index 48330c2ce..a9a6716be 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockListDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/DistributionStockListDTO.java @@ -36,4 +36,9 @@ public class DistributionStockListDTO extends DistributionStockListEntity { */ private Integer inventoryQuantity; +/* //物料id + private String materialId;*/ + + //入库个数 + private Integer storeNum; } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.java index cd88cc2b7..459466330 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.java @@ -51,4 +51,5 @@ public interface DistributionStockListMapper extends BaseMapper exportDistributionStockList(@Param("ew") Wrapper queryWrapper); + IPage pageOwn(IPage page,@Param("param") DistributionStockListEntity distributionStockListEntity); } diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml index 271e07c15..3c0f28d54 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionStockListMapper.xml @@ -22,7 +22,7 @@ - + @@ -44,4 +44,66 @@ SELECT * FROM logpm_distribution_stock_list ${ew.customSqlSegment} + + diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java index e6f02c23c..78cef3acc 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockListService.java @@ -17,6 +17,7 @@ package com.logpm.distribution.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.logpm.distribution.dto.DistributionStockListDTO; import com.logpm.distribution.entity.DistributionStockListEntity; import com.logpm.distribution.vo.DistributionStockArticleVO; import com.logpm.distribution.vo.DistributionStockListVO; @@ -26,6 +27,7 @@ import org.springblade.core.mp.base.BaseService; import org.springblade.core.tool.api.R; import java.util.List; +import java.util.Map; /** * 库存品管理 服务类 @@ -68,9 +70,11 @@ public interface IDistributionStockListService extends BaseService data, Boolean isCovered); - Boolean parcels(DistributionStockListEntity distributionStockList); + Boolean parcels(DistributionStockListDTO distributionStockListDTO); DistributionStockListVO getQueryData(Long storeId, Long clientId,Long materialId); Boolean getAddStockList(DistributionStockListEntity distributionStockListEntity); + + IPage pageOwn(IPage page, Map distributionStockList); } 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 30a92ee55..7f029b0aa 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 @@ -260,7 +260,7 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl list = new ArrayList<>(); - List detailsEntities = new ArrayList<>(); - distributionStockList.getParcels().forEach( i ->{ - //查询包件信息 - DistributionParcelDetailsEntity one = distributionParcelDetailsService.getOne(Wrappers.query().lambda() - .eq(DistributionParcelDetailsEntity::getId, i.getParcelsId()) - .eq(DistributionParcelDetailsEntity::getIsDeleted, 0) - ); - for (Integer integer = 0; integer < i.getUnpackingQuantity(); integer++) { - //添加拆包信息 - DistributionStockEntity distributionStock = new DistributionStockEntity(); - distributionStock.setStockListId(Long.parseLong(one.getStockArticleId())); - distributionStock.setParcelListId(Long.parseLong(one.getParcelListId())); - distributionStock.setConditions(1); //1 在库 - distributionStock.setUnpackingQuantity(1); - distributionStock.setUnit(one.getUnit()); - distributionStock.setGoodsAllocation(one.getGoodsAllocation()); -// String s1 = basicTenantCodeClient.shelfCode(AuthUtil.getTenantId(), "7"); - String random = Func.random(15, RandomType.INT); -// distributionStock.setCoding(s1+random); - distributionStock.setCoding(random); - list.add(distributionStock); - //添加拆包记录 - DistributionStockListEntity one1 = baseMapper.selectById( distributionStockList.getId()); - DistributionUnpackingDetailsEntity distributionUnpackingDetails= new DistributionUnpackingDetailsEntity(one.getStockArticleId(),one1.getOrderSelfNumbering(),distributionStockList.getId(),one.getName(),i.getUnpackingQuantity()); - detailsEntities.add(distributionUnpackingDetails); - } - }); - if(list.size() > 0){ - //修改库存品信息 - int total = distributionStockList.getParcels().stream().mapToInt(DistributionStockEntity::getUnpackingQuantity).sum(); - DistributionStockListEntity distributionStockList1 = new DistributionStockListEntity(); - distributionStockList1.setId(distributionStockList.getId()); - distributionStockList1.setUnpack(true); - distributionStockList1.setQuantityStock(total); - distributionStockList1.setOutboundQuantity(0); - baseMapper.updateById(distributionStockList1); - //添加拆包 - distributionStockService.saveBatch(list); - } - if(detailsEntities.size() > 0){ - //添加拆包记录 - distributionUnpackingDetailsService.saveBatch(detailsEntities); + public Boolean parcels(DistributionStockListDTO distributionStockListDTO) { + //查询客户是不是有该物资的拆包 + DistributionStockListEntity one2 = this.getOne(Wrappers.query().lambda() + .eq(DistributionStockListEntity::getPid, distributionStockListDTO.getId()) + .eq(DistributionStockListEntity::getMaterialId, distributionStockListDTO.getMaterialId()) + .eq(DistributionStockListEntity::getMarketId, distributionStockListDTO.getMarketId()) + .eq(ObjectUtil.isNotEmpty(distributionStockListDTO.getStoreId()), DistributionStockListEntity::getStoreId, distributionStockListDTO.getStoreId()) + ); + //客户物资信息 + DistributionStockListEntity one = this.getOne(Wrappers.query().lambda() + .eq(DistributionStockListEntity::getId, distributionStockListDTO.getId()) + /*.eq(DistributionStockListEntity::getMarketId, distributionStockListDTO.getMarketId()) + .eq(ObjectUtil.isNotEmpty(distributionStockListDTO.getStoreId()), DistributionStockListEntity::getStoreId, distributionStockListDTO.getStoreId()) + .isNull(DistributionStockListEntity::getPid)*/ + ); + if(ObjectUtil.isNotEmpty(one2)){ + //有修改 + DistributionStockListEntity d = new DistributionStockListEntity(); + d.setId(one2.getId()); + int i = one2.getQuantityStock() + distributionStockListDTO.getStoreNum(); + d.setQuantityStock(i); + this.updateById(d); + + }else{ + //没有新增 + DistributionStockListEntity distributionStockListEntity = new DistributionStockListEntity(); + BeanUtils.copyProperties(one,distributionStockListEntity); + distributionStockListEntity.setPid(one.getId()); + distributionStockListEntity.setSku(distributionStockListDTO.getSku()); + distributionStockListEntity.setQuantityStock(distributionStockListDTO.getStoreNum()); + distributionStockListEntity.setUnpackingQuantity(0); + distributionStockListEntity.setId(null); + this.save(distributionStockListEntity); + } + //修改客户物资记录 + DistributionStockListEntity distributionStockListEntity = new DistributionStockListEntity(); + distributionStockListEntity.setId(one.getId()); + distributionStockListEntity.setQuantityStock(one.getQuantityStock()-distributionStockListDTO.getUnpackingQuantity()); + distributionStockListEntity.setUnpackingQuantity(distributionStockListDTO.getUnpackingQuantity()); + baseMapper.updateById(distributionStockListEntity); + + //添加拆包记录 + DistributionUnpackingDetailsEntity distributionUnpackingDetails= new DistributionUnpackingDetailsEntity(); + distributionUnpackingDetails.setStockArticleId(Optional.ofNullable(one.getStockArticleId()).orElse(null)); + distributionUnpackingDetails.setOrderSelfNumber(Optional.ofNullable(one.getOrderSelfNumbering()).orElse(null)); + distributionUnpackingDetails.setItemName(Optional.ofNullable(one.getDescriptionGoods()).orElse(null)); + distributionUnpackingDetails.setUnpackingQuantity(Optional.ofNullable(one.getUnpackingQuantity()).orElse(null)); + distributionUnpackingDetails.setStockListId(Optional.ofNullable(distributionStockListDTO.getId()).orElse(null)); + + distributionUnpackingDetailsService.save(distributionUnpackingDetails); return true; } @@ -211,4 +217,12 @@ public class DistributionStockListServiceImpl extends BaseServiceImpl pageOwn(IPage page, Map distributionStockList) { + DistributionStockListEntity distributionStockListEntity = JSONObject.parseObject(JSONObject.toJSONString(distributionStockList), DistributionStockListEntity.class); + IPage page1= baseMapper.pageOwn(page,distributionStockListEntity); + + return page1; + } + }