From 92ab56c72b47381b9e9bc43e52b414472b6f7f02 Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Thu, 24 Aug 2023 17:38:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=87=E8=B4=A7=E5=8C=BA?= =?UTF-8?q?=E5=9F=9F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/IBasicdataGoodsAreaClient.java | 12 +++ .../entity/DistributionStockupEntity.java | 4 +- .../vo/DistributionStockupStockListVO.java | 2 + .../feign/IWarehouseTaryAllocationClient.java | 9 ++- .../feign/BasicdataGoodsAreaClient.java | 19 +++++ .../mapper/BasicdataGoodsAreaMapper.xml | 5 +- .../DistributionStockupAppController.java | 73 +++++++++++++++---- .../distribution/dto/app/StockupDTO.java | 5 +- .../mapper/DistributionReservationMapper.xml | 2 +- .../service/IDistributionStockupService.java | 3 +- .../DistributionReservationServiceImpl.java | 2 +- .../impl/DistributionStockServiceImpl.java | 26 ++++++- .../impl/DistributionStockupServiceImpl.java | 66 +++++++++++------ .../feign/WarehouseTaryAllocationClient.java | 3 +- 14 files changed, 182 insertions(+), 49 deletions(-) diff --git a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataGoodsAreaClient.java b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataGoodsAreaClient.java index 0a9cbbabf..837c46bd7 100644 --- a/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataGoodsAreaClient.java +++ b/blade-service-api/logpm-basicdata-api/src/main/java/com/logpm/basicdata/feign/IBasicdataGoodsAreaClient.java @@ -17,6 +17,7 @@ package com.logpm.basicdata.feign; import com.logpm.basicdata.entity.BasicdataGoodsAreaEntity; +import com.logpm.basicdata.vo.BasicdataGoodsAreaVO; import org.springblade.common.constant.ModuleNameConstant; import org.springblade.core.mp.support.BladePage; import org.springframework.cloud.openfeign.FeignClient; @@ -25,6 +26,8 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; +import java.util.List; + /** * 货区 Feign接口类 * @@ -38,6 +41,7 @@ public interface IBasicdataGoodsAreaClient { String API_PREFIX = "goodsArea/client"; String TOP = API_PREFIX + "/top"; + String GETDEPARTMENTID = API_PREFIX + "/departmentId"; /** * 获取货区列表 @@ -55,4 +59,12 @@ public interface IBasicdataGoodsAreaClient { @GetMapping(API_PREFIX+"/getEntityByGoodsAreaId") BasicdataGoodsAreaEntity getEntityByGoodsAreaId(@RequestParam Long goodsAreaId); + /** + * 根据部门id查询备货区 + * @param goodsAreaId + * @return + */ + @GetMapping(GETDEPARTMENTID) + List getDepartmentId(@RequestParam Long goodsAreaId); + } diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java index ff9887872..da19d8d17 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionStockupEntity.java @@ -77,9 +77,9 @@ public class DistributionStockupEntity extends TenantEntity { @ApiModelProperty(value = "备货库位") private String stockipAllocation; /** - * 预约信息编号 + * 备货区ID */ - @ApiModelProperty(value = "预约信息编号") + @ApiModelProperty(value = "备货区ID") private Long goodsAreaId; /** * 预留1 diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupStockListVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupStockListVO.java index 25dd69d74..e9ae58cef 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupStockListVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistributionStockupStockListVO.java @@ -24,6 +24,8 @@ public class DistributionStockupStockListVO implements Serializable { private String trayName;//托盘信息 + private Boolean trayLean;//整托状态 + private Integer unpack;//是否拆包 0 没有 1 拆了 } diff --git a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseTaryAllocationClient.java b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseTaryAllocationClient.java index f842e8611..bdd69921d 100644 --- a/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseTaryAllocationClient.java +++ b/blade-service-api/logpm-warehouse-api/src/main/java/com/logpm/warehouse/feign/IWarehouseTaryAllocationClient.java @@ -5,6 +5,7 @@ import com.logpm.warehouse.entity.WarehouseTaryAllocationEntity; import org.springblade.common.constant.ModuleNameConstant; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; @@ -18,8 +19,12 @@ public interface IWarehouseTaryAllocationClient { String TOP = API_PREFIX + "/top"; String GETALLOCATIONID = API_PREFIX + "/allocationId"; - - @GetMapping(GETALLOCATIONID) + /** + * 查询货位上的托盘 + * @param allocationId + * @return + */ + @PostMapping(GETALLOCATIONID) List getAllocationId(@RequestParam Long allocationId); diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataGoodsAreaClient.java b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataGoodsAreaClient.java index f90d9e1dc..a1f2ba05e 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataGoodsAreaClient.java +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/feign/BasicdataGoodsAreaClient.java @@ -19,6 +19,9 @@ package com.logpm.basicdata.feign; import com.baomidou.mybatisplus.core.metadata.IPage; import com.logpm.basicdata.entity.BasicdataGoodsAreaEntity; import com.logpm.basicdata.service.IBasicdataGoodsAreaService; +import com.logpm.basicdata.vo.BasicdataGoodsAreaVO; +import com.logpm.basicdata.wrapper.WarehouseGoodsAreaWrapper; +import com.logpm.warehouse.entity.WarehouseGoodsAreaEntity; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.BladePage; import org.springblade.core.mp.support.Condition; @@ -27,6 +30,8 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; import springfox.documentation.annotations.ApiIgnore; +import java.util.List; + /** * 货区 Feign实现类 * @@ -65,4 +70,18 @@ public class BasicdataGoodsAreaClient implements IBasicdataGoodsAreaClient { return basicdataGoodsAreaService.getById(goodsAreaId); } + /** + * 查询部门备货区 + * @param goodsAreaId + * @return + */ + @Override + @GetMapping(GETDEPARTMENTID) + public List getDepartmentId(Long goodsAreaId) { + BasicdataGoodsAreaEntity warehouseWarehouse = new BasicdataGoodsAreaEntity(); + warehouseWarehouse.setDepartment(String.valueOf(goodsAreaId)); + List pages = basicdataGoodsAreaService.stockUp(warehouseWarehouse); + return pages; + } + } diff --git a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAreaMapper.xml b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAreaMapper.xml index 2d8908222..2510c29b1 100644 --- a/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAreaMapper.xml +++ b/blade-service/logpm-basicdata/src/main/java/com/logpm/basicdata/mapper/BasicdataGoodsAreaMapper.xml @@ -33,9 +33,8 @@ diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java index 530cd1577..182dd7110 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionStockupAppController.java @@ -19,11 +19,14 @@ package com.logpm.distribution.appcontroller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.logpm.basicdata.feign.IBasicdataGoodsAreaClient; +import com.logpm.basicdata.vo.BasicdataGoodsAreaVO; import com.logpm.distribution.bean.Resp; import com.logpm.distribution.dto.app.StockupDTO; import com.logpm.distribution.entity.DistributionReservationEntity; import com.logpm.distribution.entity.DistributionStockEntity; import com.logpm.distribution.entity.DistributionStockListEntity; +import com.logpm.distribution.entity.DistributionStockupEntity; import com.logpm.distribution.service.*; import com.logpm.distribution.vo.*; import io.swagger.annotations.Api; @@ -34,6 +37,7 @@ import org.springblade.common.constant.DictBizConstant; import org.springblade.common.constant.RabbitConstant; import org.springblade.common.utils.CommonUtil; import org.springblade.core.boot.ctrl.BladeController; +import org.springblade.core.secure.utils.AuthUtil; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.StringUtil; import org.springblade.system.cache.DictBizCache; @@ -58,6 +62,7 @@ public class DistributionStockupAppController extends BladeController { private final IDistributionStockupService distributionStockupService; private final IDistributionReservationService distributionReservationService; + private final IBasicdataGoodsAreaClient basicdataGoodsAreaClient; private final IDistributionStockService distributionStockService; private final IDistributionReservationPackageService distributionReservationPackageService; @@ -103,7 +108,7 @@ public class DistributionStockupAppController extends BladeController { public R> homePageList(@RequestBody StockupDTO stockupDTO) { // Integer current = stockupDTO.getCurrent(); // Integer size = stockupDTO.getSize(); - String stockupId = stockupDTO.getStockupId(); + Long stockupId = stockupDTO.getStockupId(); // if(Objects.isNull(current)){ // log.info("#################pageList: 当前页码不能为空"); // return R.fail(401,"当前页码不能为空"); @@ -159,6 +164,8 @@ public class DistributionStockupAppController extends BladeController { for (DistributionStockupStockListVO vo:list){ planNum = planNum + vo.getPlanNum(); scanNum = scanNum + vo.getRealNum(); +// Boolean aBoolean = distributionStockupService.getClientStockupTray(reservationId, vo.getAllocationId()); +// vo.setTrayLean(aBoolean); } map.put("planNum",planNum); map.put("scanNum",scanNum); @@ -242,7 +249,7 @@ public class DistributionStockupAppController extends BladeController { } @PostMapping("/scanningCode") - @ApiOperation(value = "整托扫码") + @ApiOperation(value = "整托备货") public R scanningCodelist(@RequestBody StockupDTO stockupDTO){ if(ObjectUtils.isNull(stockupDTO.getStockupId())){ return R.fail(3002,"备货id不能为空"); @@ -253,9 +260,45 @@ public class DistributionStockupAppController extends BladeController { if(ObjectUtils.isNull(stockupDTO.getTrayId())){ return R.fail(3002,"托盘码不能为空"); } - boolean b = distributionStockupService.addPackTrayList(stockupDTO); + R b = distributionStockupService.addPackTrayList(stockupDTO); + return b; + }; + + + @PutMapping("/updateStockArea") + @ApiOperation(value = "修改备货区") + public R updateStockArea(@RequestBody StockupDTO stockupDTO){ + if(ObjectUtils.isNull(stockupDTO.getStockupId())){ + return R.fail(3002,"备货任务id不能为空"); + } + if(ObjectUtils.isNull(stockupDTO.getStockupAreaId())){ + return R.fail(3002,"备货区Id不能为空"); + } + if(ObjectUtils.isNull(stockupDTO.getStockupArea())){ + return R.fail(3002,"备货区名称不能为空"); + } + DistributionStockupEntity distributionStockupEntity = new DistributionStockupEntity(); + distributionStockupEntity.setGoodsAreaId(stockupDTO.getStockupAreaId()); + distributionStockupEntity.setId(stockupDTO.getStockupId()); + distributionStockupEntity.setStockupArea(stockupDTO.getStockupArea()); + return R.data(distributionStockupService.updateById(distributionStockupEntity)); + }; + + @PostMapping("/getStockupArea") + @ApiOperation(value = "查询可修改备货区") + public R getGoodsArea(@RequestBody StockupDTO stockupDTO){ - return R.data(b); + if(ObjectUtils.isNull(stockupDTO.getUserId())){ + return R.fail(3002,"当前操作人ID不能为空"); + } + Long userId = AuthUtil.getUserId(); + if(stockupDTO.getUserId().equals(userId)){ + String deptId = AuthUtil.getDeptId(); + return R.data(basicdataGoodsAreaClient.getDepartmentId(Long.parseLong(deptId))); + }else{ + R.fail(3005,"操作人不对!"); + } + return R.fail(500,"未知错误!"); }; @@ -270,7 +313,8 @@ public class DistributionStockupAppController extends BladeController { //包件扫描 String orderCode = stockupDTO.getOrderCode();//订单自编号 String packetBarCode = stockupDTO.getPacketBarCode();//包件码 - String stockupArea = stockupDTO.getStockupArea();//备货区 +// String stockupArea = stockupDTO.getStockupArea();//备货区 + Long stockupId = stockupDTO.getStockupId();//备货任务ID Long reservationId = stockupDTO.getReservationId();//预约单id if(StringUtil.isBlank(orderCode)){ log.warn("##################stockupScan: 包件扫码,订单自编号为空"); @@ -280,9 +324,9 @@ public class DistributionStockupAppController extends BladeController { log.warn("##################stockupScan: 包件扫码,包件码为空"); return R.fail("包件扫码:包件码不能为空"); } - if(StringUtil.isBlank(stockupArea)){ - log.warn("##################stockupScan: 包件扫码,备货区为空"); - return R.fail("包件扫码:备货区不能为空"); + if(ObjectUtils.isNull(stockupId)){ + log.warn("##################stockupId: 包件扫码,备货区为空"); + return R.fail("包件扫码:备货任务ID不能为空"); } if(Objects.isNull(reservationId)){ log.warn("##################stockupScan: 包件扫码,预约单id为空"); @@ -293,7 +337,8 @@ public class DistributionStockupAppController extends BladeController { DistributionStockEntity entity = new DistributionStockEntity(); entity.setOrderSelfNumbering(orderCode); entity.setCoding(packetBarCode); - entity.setStockupArea(stockupArea); +// entity.setStockupArea(stockupArea); + entity.setStockupId(stockupId); entity.setReservationId(reservationId); entity.setConditions("0"); entity.setType(2); @@ -316,14 +361,15 @@ public class DistributionStockupAppController extends BladeController { Long reservationId = stockupDTO.getReservationId(); Long stockListId = stockupDTO.getStockListId(); String packetBarCode = stockupDTO.getPacketBarCode(); - String stockupArea = stockupDTO.getStockupArea();//备货区 +// String stockupArea = stockupDTO.getStockupArea();//备货区 + Long stockupId = stockupDTO.getStockupId();//备货区 if(StringUtil.isBlank(packetBarCode)){ log.warn("##################stockupScan: 库存品扫码,包件码为空"); return R.fail("库存品扫码:包件码不能为空"); } - if(StringUtil.isBlank(stockupArea)){ + if(ObjectUtils.isNull(stockupId)){ log.warn("##################stockupScan: 库存品扫码,备货区为空"); - return R.fail("库存品扫码:备货区不能为空"); + return R.fail("库存品扫码:备货任务ID不能为空"); } if(Objects.isNull(stockListId)){ log.warn("##################stockupScan: 库存品扫码,库存品id为空"); @@ -337,7 +383,8 @@ public class DistributionStockupAppController extends BladeController { //先保存扫码包件信息,后续由队列来出来余下补充信息 DistributionStockEntity entity = new DistributionStockEntity(); entity.setCoding(packetBarCode); - entity.setStockupArea(stockupArea); +// entity.setStockupArea(stockupArea); + entity.setStockupId(stockupId); entity.setReservationId(reservationId); entity.setStockListId(stockListId); //添加物料信息 diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/StockupDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/StockupDTO.java index f892d5945..c48d3228f 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/StockupDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/StockupDTO.java @@ -43,9 +43,10 @@ public class StockupDTO implements Serializable { private Integer scanType;//备货扫码类型 1 包件 2库存品 private String packetBarCode;//包件码 private String trayBarCode;//托盘码 - private String trayId;//货位ID + private Long trayId;//货位ID private String stockupArea;//备货区 - private String stockupId;//备货区Id + private Long stockupAreaId;//备货区ID + private Long stockupId;//备货任务区Id private Long stockListId;//库存品id private Integer packageNum;//包条数量 diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml index f7dd32344..a71820840 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionReservationMapper.xml @@ -197,7 +197,7 @@ ldrs.stock_article_id, ldpl.pallet --> select DISTINCT GROUP_CONCAT(lwug.area_title,'-',lwug.shelf_title,'-',lwug.allocation_title ) allocation , lwtg.tray_code pallet, - lwug.area_id areaId,lwug.shelf_id shelfId,lwug.allocation_id allocationId + lwug.area_id areaId,lwug.shelf_id shelfId,lwug.allocation_id allocationId,lwtg.tray_id trayId ,( select COUNT(drp.id) from logpm_distribution_reservation_package drp diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java index e16435b7e..737ef5213 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionStockupService.java @@ -23,6 +23,7 @@ import com.logpm.distribution.entity.DistributionStockupEntity; import com.logpm.distribution.excel.DistributionStockupExcel; import com.logpm.distribution.vo.*; import org.springblade.core.mp.base.BaseService; +import org.springblade.core.tool.api.R; import java.util.List; import java.util.Map; @@ -119,7 +120,7 @@ public interface IDistributionStockupService extends BaseService queryWrapper = new QueryWrapper<>(); queryWrapper.eq("packet_bar_code",coding); DistributionParcelListEntity parcelListEntity = distributionParcelListService.getOne(queryWrapper);//包件信息 DistributionReservationEntity reservationEntity = distributionReservationService.getById(reservationId); + DistributionStockupEntity distributionStockupEntity = distributionStockupMapper.selectOne(Wrappers.query().lambda() + .eq(DistributionStockupEntity::getId, distributionStockEntity.getStockupId()) + ); if(!Objects.isNull(parcelListEntity)){ String cargoTitle = parcelListEntity.getCargoTitle();//货区 String shelfTitle = parcelListEntity.getShelfTitle();//货位 @@ -111,13 +120,20 @@ public class DistributionStockServiceImpl extends BaseServiceImplquery().lambda() + .eq(DistributionStockupEntity::getId, distributionStockEntity.getStockupId()) + ); if(!Objects.isNull(stockListEntity)){ distributionStockEntity.setGoodsAllocation(stockListEntity.getStorageLocation()); distributionStockEntity.setGoodsName(stockListEntity.getDescriptionGoods()); distributionStockEntity.setUnpackingQuantity(stockListEntity.getUnpackingQuantity()); distributionStockEntity.setUnit(stockListEntity.getCargoUnit()); distributionStockEntity.setParcelListId(stockListEntity.getParcelListId()); + distributionStockEntity.setStockupArea(distributionStockupEntity.getStockupArea()); distributionStockEntity.setReservationCode(reservationEntity.getReservationCode()); + distributionStockEntity.setMaterialId(stockListEntity.getMaterialId()); + distributionStockEntity.setMarketId(stockListEntity.getMarketId()); } distributionStockEntity.setConditions("1"); baseMapper.updateById(distributionStockEntity); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java index 13ec55570..515760613 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockupServiceImpl.java @@ -45,6 +45,7 @@ import org.springblade.common.exception.CustomerException; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.secure.BladeUser; import org.springblade.core.secure.utils.AuthUtil; +import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.StringUtil; import org.springblade.system.cache.DictBizCache; import org.springframework.beans.BeanUtils; @@ -68,8 +69,9 @@ public class DistributionStockupServiceImpl extends BaseServiceImpl stock = new AtomicReference<>(false); + //查询包件信息 List list = distributionReservationPackageService.listPackage(stockupDTO.getReservationId()); - List list1 = new ArrayList<>(); - list.forEach(i ->{ - DistributionStockEntity distributionStock = new DistributionStockEntity(); - distributionStock.setStockupId(Long.parseLong(stockupDTO.getStockupId())); - distributionStock.setStockArticle(i.getStockArticleId()); - distributionStock.setGoodsAllocation(i.getGoodsAllocation());//货位信息 - distributionStock.setConditions("1"); - distributionStock.setParcelListId(i.getParcelListId()); - distributionStock.setOrderSelfNumbering(i.getOrderCode()); - distributionStock.setType(1); - distributionStock.setDeliveryListCode(i.getNoteNumber()); - distributionStock.setDeliveryListId(i.getDeliveryId()); - distributionStock.setReservationId(i.getReservationId()); - distributionStock.setReservationCode(i.getReservationCode()); - distributionStock.setCoding(i.getPacketBarCode()); - list1.add(distributionStock); + //查询托盘上面的包件 + List trayIdList = warehouseTrayGoodsClient.getTrayIdList(stockupDTO.getTrayId()); + List voList = new ArrayList<>(); + trayIdList.forEach( t ->{ + Optional first = list.stream().filter(l -> l.getParcelListId().equals(t.getAssociationId())).findFirst(); + if (first.isPresent()) { + DistributionStockPackageVO distributionStockPackageVO = first.get(); + log.warn("找到了匹配的对象:" + distributionStockPackageVO); + voList.add(distributionStockPackageVO); + } else{ + log.warn("没有找到了匹配的对象;"); + stock.set(true); + } }); - //TODO 其他操作 - //添加扫描记录 - return distributionStockService.saveBatch(list1); + if(stock.get()){ + return R.fail(3001,"备货失败!"); + }else{ + List list1 = new ArrayList<>(); + voList.forEach(i ->{ + DistributionStockEntity distributionStock = new DistributionStockEntity(); + distributionStock.setStockupId(stockupDTO.getStockupId()); + distributionStock.setStockArticle(i.getStockArticleId()); + distributionStock.setGoodsAllocation(i.getGoodsAllocation());//货位信息 + distributionStock.setConditions("1"); + distributionStock.setParcelListId(i.getParcelListId()); + distributionStock.setOrderSelfNumbering(i.getOrderCode()); + distributionStock.setType(1); + distributionStock.setDeliveryListCode(i.getNoteNumber()); + distributionStock.setDeliveryListId(i.getDeliveryId()); + distributionStock.setReservationId(i.getReservationId()); + distributionStock.setReservationCode(i.getReservationCode()); + distributionStock.setCoding(i.getPacketBarCode()); + list1.add(distributionStock); + }); + //TODO 其他操作 + //添加扫描记录 + distributionStockService.saveBatch(list1); + return R.fail(200,"备货成功"); + } + } /** diff --git a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseTaryAllocationClient.java b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseTaryAllocationClient.java index e7458083c..295e816cb 100644 --- a/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseTaryAllocationClient.java +++ b/blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/feign/WarehouseTaryAllocationClient.java @@ -5,6 +5,7 @@ import com.logpm.warehouse.entity.WarehouseTaryAllocationEntity; import com.logpm.warehouse.service.IWarehouseTaryAllocationService; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; @@ -22,7 +23,7 @@ public class WarehouseTaryAllocationClient implements IWarehouseTaryAllocationCl private IWarehouseTaryAllocationService warehouseTaryAllocationService; @Override - @GetMapping(GETALLOCATIONID) + @PostMapping(GETALLOCATIONID) public List getAllocationId(Long allocationId) { return warehouseTaryAllocationService.list(Wrappers.query().lambda() .eq(WarehouseTaryAllocationEntity::getAllocationId,allocationId)