From fc1ca6d211697d73f926e01edabc9fcf7c6c6215 Mon Sep 17 00:00:00 2001 From: caoyizhong <1270296080@qq.com> Date: Wed, 6 Sep 2023 17:05:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=87=AA=E6=8F=90=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../logpm/distribution/vo/BladeUserVO.java | 42 +++++ .../vo/DistrilbutionBillLadingAppVO.java | 4 +- ...DistrilbutionAppBillLadingOrderMainVO.java | 2 +- .../impl/BasicdataWarehouseServiceImpl.java | 6 + .../DistributionBillLadingAppController.java | 5 +- .../DistributionStockupAppController.java | 143 ++++++++++-------- .../DistributionStockupController.java | 7 + .../dto/app/BillLadingAppDTO.java | 1 + .../distribution/dto/app/StockupDTO.java | 1 + .../DistributionDeliveryDetailsMapper.xml | 11 +- .../mapper/DistrilbutionBillLadingMapper.xml | 10 +- .../service/IDistributionAsyncService.java | 5 + .../service/IDistributionStockupService.java | 7 +- .../IDistrilbutionBillLadingService.java | 3 +- .../impl/DistributionAsyncServiceImpl.java | 9 ++ .../impl/DistributionStockupServiceImpl.java | 60 ++++++++ .../DistrilbutionBillLadingServiceImpl.java | 142 ++++++++++------- .../WarehouseWarehousingEntryServiceImpl.java | 1 + 18 files changed, 329 insertions(+), 130 deletions(-) create mode 100644 blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/BladeUserVO.java diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/BladeUserVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/BladeUserVO.java new file mode 100644 index 000000000..ceeb727a6 --- /dev/null +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/BladeUserVO.java @@ -0,0 +1,42 @@ +package com.logpm.distribution.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springblade.core.tool.support.Kv; + +import java.io.Serializable; + +/** + * @program: LogisticsPlatform-Service + * @description: + * @author: cyz + * @create: 2023-09-05 15:58 + **/ +@Data +public class BladeUserVO implements Serializable { + private static final long serialVersionUID = 1L; + private String clientId; + + private Long userId; + + private String account; + + private String userName; + + private String nickName; + + private String tenantId; + + private String oauthId; + + private String deptId; + + private String postId; + + private String roleId; + + private String roleName; + + private Kv detail; + +} diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingAppVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingAppVO.java index 0168f64c3..47093b9c2 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingAppVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/DistrilbutionBillLadingAppVO.java @@ -90,8 +90,10 @@ public class DistrilbutionBillLadingAppVO extends DistrilbutionBillLadingEntity private Integer deliveryNum;//备货数量 @ApiModelProperty(value = "以扫备货数量") private Integer esauInventoryNum;//以扫备货数量 + @ApiModelProperty(value = "库存品数") + private Integer inventoryNub;//库存品数 @ApiModelProperty(value = "包装规格") - private Integer packingSpecification;//包装规格 + private String packingSpecification;//包装规格 private List list = new ArrayList<>(); diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/app/DistrilbutionAppBillLadingOrderMainVO.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/app/DistrilbutionAppBillLadingOrderMainVO.java index 938cd786e..b73e87ba8 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/app/DistrilbutionAppBillLadingOrderMainVO.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/vo/app/DistrilbutionAppBillLadingOrderMainVO.java @@ -35,7 +35,7 @@ public class DistrilbutionAppBillLadingOrderMainVO implements Serializable { private Integer orderNum;//订单总数 private Integer completeNum;//订单总数 private Integer planNum;//自提件数 -// private Integer assembleNum;//库存总数件数 + private Integer inventoryNub;//库存总数件数 private Integer signedNum;//签收总数 private List list = new ArrayList<>(); 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 49f473dfa..7a20ddb18 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 @@ -193,6 +193,10 @@ 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); + } return warehouseEntityList; } @@ -238,8 +242,10 @@ public class BasicdataWarehouseServiceImpl extends BaseServiceImpl myWarehouseList = new ArrayList<>(); BasicdataWarehouseEntity myCurrentWarehouse = this.getMyCurrentWarehouse(); if (Objects.isNull(myCurrentWarehouse)) { + // myWarehouseList = this.getMyWarehouseList(); } else { + // myWarehouseList.add(myCurrentWarehouse); } return myWarehouseList; diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionBillLadingAppController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionBillLadingAppController.java index 487010b64..410b3dd5a 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionBillLadingAppController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/appcontroller/DistributionBillLadingAppController.java @@ -18,6 +18,7 @@ package com.logpm.distribution.appcontroller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; +import com.logpm.distribution.bean.Resp; import com.logpm.distribution.dto.app.BillLadingAppDTO; import com.logpm.distribution.service.IDistrilbutionBillLadingService; import com.logpm.distribution.vo.DistrilbutionBillLadingAppVO; @@ -116,8 +117,8 @@ public class DistributionBillLadingAppController extends BladeController { @ApiImplicitParam(name = "coding", value = "包条码", required = true), @ApiImplicitParam(name = "type", value = "类型 2 订单 1 库存品", required = true) }) - public R getScan(@ApiIgnore @RequestParam Map distrilbutionBillLading){ - R scan = distrilbutionBillLadingService.getScan(distrilbutionBillLading); + public Resp getScan(@ApiIgnore @RequestParam Map distrilbutionBillLading){ + Resp scan = distrilbutionBillLadingService.getScan(distrilbutionBillLading); return scan; } 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 b5df5ae3a..cbeeb6400 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 @@ -375,7 +375,7 @@ public class DistributionStockupAppController extends BladeController { R.fail(3005,"操作人不对!"); } return R.fail(500,"未知错误!"); - }; + } @ResponseBody @@ -474,6 +474,8 @@ public class DistributionStockupAppController extends BladeController { String packetBarCode = stockupDTO.getPacketBarCode(); // String stockupArea = stockupDTO.getStockupArea();//备货区 Long stockupId = stockupDTO.getStockupId();//备货区 + Integer stockPrint = stockupDTO.getStockPrint(); // 库存 + if(StringUtil.isBlank(packetBarCode)){ log.warn("##################stockupScan: 库存品扫码,包件码为空"); return R.fail("库存品扫码:包件码不能为空"); @@ -490,70 +492,85 @@ public class DistributionStockupAppController extends BladeController { log.warn("##################stockupScan: 库存品扫码,预约单id为空"); return R.fail("库存品扫码:预约单id不能为空"); } - Integer integer = distributionStockupService.selectPackage(stockupDTO); - switch (integer){ - case 1: - DistributionStockupEntity stockupEntity = distributionStockupService.getById(stockupDTO.getStockupId()); - //先保存扫码包件信息,后续由队列来出来余下补充信息 - DistributionStockEntity entity = new DistributionStockEntity(); - entity.setCoding(packetBarCode); -// entity.setStockupArea(stockupArea); - entity.setStockupId(stockupId); - if(stockupEntity.getTypeService().equals("3")){ - entity.setBillLadingId(reservationId); - }else{ - entity.setReservationId(reservationId); - } - entity.setReservationId(reservationId); - entity.setStockListId(stockListId); - //添加物料信息 - DistributionStockListEntity byId = iDistributionStockListService.getById(stockListId); - if(ObjectUtils.isNotNull(byId.getMarketId())){ - entity.setMarketId(byId.getMarketId()); - entity.setMaterialId(byId.getMaterialId()); - } - entity.setConditions("0"); - entity.setType(2); - distributionStockService.save(entity); + if(Objects.isNull(stockPrint)){ + log.warn("##################stockupScan: 库存品扫码,类型为空"); + return R.fail("库存品扫码:类型不能为空"); + } - Map map = new HashMap<>(); - map.put("messageId", CommonUtil.getUUID()); - map.put("scanType", scanType); - map.put("logId", entity.getId()); - map.put("messageData", entity); - map.put("createTime", new Date().getTime()); - //将消息携带绑定键值 - rabbitTemplate.convertAndSend(RabbitConstant.STOCKUP_SCAN_EXCHANGE, RabbitConstant.STOCKUP_SCAN_ROUTING, map); - String audioValue = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "1"); - return Resp.scanSuccess("扫描成功!",audioValue); - case 2: - //扫码失败 - String audioValue2 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "2"); - return Resp.scanFail("重复扫描!",audioValue2); - case 3: - //重复扫码 - String audioValue3 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "3"); - return Resp.scanFail("包件不存在!",audioValue3); + Integer i = distributionStockupService.selectPackagePrint(stockupDTO); + switch (i){ + case 1: + //绑定 + Integer integer = distributionStockupService.selectPackage(stockupDTO); + switch (integer){ + case 1: + DistributionStockupEntity stockupEntity = distributionStockupService.getById(stockupDTO.getStockupId()); + //先保存扫码包件信息,后续由队列来出来余下补充信息 + DistributionStockEntity entity = new DistributionStockEntity(); + entity.setCoding(packetBarCode); +// entity.setStockupArea(stockupArea); + entity.setStockupId(stockupId); + if(stockupEntity.getTypeService().equals("3")){ + entity.setBillLadingId(reservationId); + }else{ + entity.setReservationId(reservationId); + } + entity.setReservationId(reservationId); + entity.setStockListId(stockListId); + //添加物料信息 + DistributionStockListEntity byId = iDistributionStockListService.getById(stockListId); + if(ObjectUtils.isNotNull(byId.getMarketId())){ + entity.setMarketId(byId.getMarketId()); + entity.setMaterialId(byId.getMaterialId()); + } + entity.setConditions("0"); + entity.setType(2); + distributionStockService.save(entity); + + Map map = new HashMap<>(); + map.put("messageId", CommonUtil.getUUID()); + map.put("scanType", scanType); + map.put("logId", entity.getId()); + map.put("messageData", entity); + map.put("createTime", new Date().getTime()); + //将消息携带绑定键值 + rabbitTemplate.convertAndSend(RabbitConstant.STOCKUP_SCAN_EXCHANGE, RabbitConstant.STOCKUP_SCAN_ROUTING, map); + String audioValue = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "1"); + return Resp.scanSuccess("扫描成功!",audioValue); + case 2: + //扫码失败 + String audioValue2 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "2"); + return Resp.scanFail("重复扫描!",audioValue2); + case 3: + //重复扫码 + String audioValue3 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "3"); + return Resp.scanFail("包件不存在!",audioValue3); + + case 4: + //重复扫码 + String audioValue4 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "4"); + return Resp.scanFail("操作失败!",audioValue4); + case 5: + //重复扫码 + String audioValue5 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "5"); + return Resp.scanFail("窜货!",audioValue5); + case 6: + //重复扫码 + String audioValue6 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "6"); + return Resp.scanFail("已完成!",audioValue6); + case 7: + //重复扫码 + String audioValue7 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "7"); + return Resp.scanFail("包条码不存在!",audioValue7); + default: + log.warn("###备货扫描:未知错误"); + return Resp.scanFail("未知错误!","未知错误"); + } + case 7: + //重复扫码 + String audioValue7 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "7"); + return Resp.scanFail("包条码不存在!",audioValue7); - case 4: - //重复扫码 - String audioValue4 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "4"); - return Resp.scanFail("操作失败!",audioValue4); - case 5: - //重复扫码 - String audioValue5 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "5"); - return Resp.scanFail("窜货!",audioValue5); - case 6: - //重复扫码 - String audioValue6 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "6"); - return Resp.scanFail("已完成!",audioValue6); - case 7: - //重复扫码 - String audioValue7 = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "7"); - return Resp.scanFail("包条码不存在!",audioValue7); - default: - log.warn("###备货扫描:未知错误"); - return Resp.scanFail("未知错误!","未知错误"); } } log.warn("###################stockupScan: 未知的扫码类型 scanType={}",scanType); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockupController.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockupController.java index 41363304f..d23ffef04 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockupController.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/controller/DistributionStockupController.java @@ -16,6 +16,8 @@ */ package com.logpm.distribution.controller; +import com.logpm.basicdata.entity.BasicdataWarehouseEntity; +import com.logpm.basicdata.feign.IBasicdataWarehouseClient; import com.logpm.distribution.service.IDistrilbutionBillLadingService; import com.logpm.distribution.vo.DistrilbutionBillLadingOwnVO; import com.logpm.distribution.vo.DistrilbutionBillLadingVO; @@ -64,6 +66,7 @@ public class DistributionStockupController extends BladeController { private final IDistributionStockupService distributionStockupService; private final IDistrilbutionBillLadingService distrilbutionBillLadingService; + private final IBasicdataWarehouseClient basicdataWarehouseClient; /** * 备货信息表 详情 @@ -173,6 +176,10 @@ public class DistributionStockupController extends BladeController { //获取当前登录用户 BladeUser user = AuthUtil.getUser(); BladeUser u = new BladeUser(); + BasicdataWarehouseEntity myCurrentWarehouse = basicdataWarehouseClient.getMyCurrentWarehouse(); + if(ObjectUtil.isNotEmpty(myCurrentWarehouse)){ + + } u.setDeptId(user.getDeptId()); u.setTenantId(user.getTenantId()); u.setUserId(user.getUserId()); diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/BillLadingAppDTO.java b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/BillLadingAppDTO.java index 565bdbbec..8692484c2 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/BillLadingAppDTO.java +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/dto/app/BillLadingAppDTO.java @@ -20,5 +20,6 @@ public class BillLadingAppDTO implements Serializable { private Integer scanStatus;//扫码类型 private String orderSelfNumbering;//订单自编码 + private Long warehouseId;//仓库ID } 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 defecddf5..8f2c88f46 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 @@ -45,6 +45,7 @@ public class StockupDTO implements Serializable { private String packetBarCode;//包件码 private String trayBarCode;//托盘码 private String typeService;//备货类型 + private Integer stockPrint;//库存品扫码类型 1 原有包条 2打印处理的扫码 private Long trayId;//货位ID private String stockupArea;//备货区 private Long stockupAreaId;//备货区ID diff --git a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml index a53b0e3b3..f5979c028 100644 --- a/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml +++ b/blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionDeliveryDetailsMapper.xml @@ -62,16 +62,19 @@ select sum(lddd.quantity) wholeNum , ( select COUNT(1) from logpm_distribution_delivery_details ldd - LEFT JOIN logpm_distribution_bill_lading_scan ldbls on ldd.id = ldbls.stock_article_id - where ldbls.scan_type = '3' and lddd.bill_lading_id = #{id} and ldd.is_deleted = 0 + LEFT JOIN logpm_distribution_bill_lading_scan ldbls on ldd.stock_list_id = ldbls.stock_list_id + where lddd.bill_lading_id = #{id} and ldd.is_deleted = 0 ) esauNum from logpm_distribution_delivery_details lddd where lddd.bill_lading_id = #{id} and lddd.is_deleted = 0