diff --git a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionReservationStocklistEntity.java b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionReservationStocklistEntity.java index acc2bd579..78f18ddd6 100644 --- a/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionReservationStocklistEntity.java +++ b/blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/entity/DistributionReservationStocklistEntity.java @@ -51,6 +51,11 @@ public class DistributionReservationStocklistEntity extends TenantEntity { */ @ApiModelProperty(value = "预约数量") private Integer reservationNum; + /** + * 实际数量 + */ + @ApiModelProperty(value = "实际数量") + private Integer realityNum; /** * 库存品单位 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 f8b69c243..403ffe664 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 @@ -317,10 +317,7 @@ public class DistributionStockupAppController extends BladeController { //包件扫描 String orderCode = stockupDTO.getOrderCode();//订单自编号 String packetBarCode = stockupDTO.getPacketBarCode();//包件码 -// String stockupArea = stockupDTO.getStockupArea();//备货区 Long stockupId = stockupDTO.getStockupId();//备货任务ID -// Long stockupId = Long.parseLong("1694647730430791682");//备货任务ID -// Long reservationId = Long.parseLong("1694649954590613505");//预约单id Long reservationId = stockupDTO.getReservationId();//预约单id if(StringUtil.isBlank(orderCode)){ log.warn("##################stockupScan: 包件扫码,订单自编号为空"); @@ -338,40 +335,55 @@ public class DistributionStockupAppController extends BladeController { log.warn("##################stockupScan: 包件扫码,预约单id为空"); return R.fail("包件扫码:预约单id不能为空"); } - - //先保存扫码包件信息,后续由队列来出来余下补充信息 - DistributionStockEntity entity = new DistributionStockEntity(); - entity.setOrderSelfNumbering(orderCode); - entity.setCoding(packetBarCode); + Integer integer = distributionStockupService.selectPackage(stockupDTO); + switch (integer){ + case 1: + //正常 + //先保存扫码包件信息,后续由队列来出来余下补充信息 + DistributionStockEntity entity = new DistributionStockEntity(); + entity.setOrderSelfNumbering(orderCode); + entity.setCoding(packetBarCode); // entity.setStockupArea(stockupArea); - entity.setStockupId(stockupId); - entity.setReservationId(reservationId); - 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()); -// Integer scanType = (Integer) map.get("scanType"); - DistributionStockEntity distributionStockEntity = (DistributionStockEntity) map.get("messageData"); - //根据扫码类型处理不同的数据 - if(scanType == 1){ - distributionStockService.repairPackageScanInfo(distributionStockEntity); - }else if(scanType == 2){ - distributionStockService.repairStockListScanInfo(distributionStockEntity); - }else{ - log.warn("################stockupScanHandler: 未知的扫码类型 scanType={}",scanType); + entity.setStockupId(stockupId); + entity.setReservationId(reservationId); + 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); + default: + log.warn("###备货扫描:未知错误"); + return Resp.scanFail("未知错误!","未知错误"); } - //将消息携带绑定键值 - rabbitTemplate.convertAndSend(RabbitConstant.STOCKUP_SCAN_EXCHANGE, RabbitConstant.STOCKUP_SCAN_ROUTING, map); - String audioValue = DictBizCache.getValue(DictBizConstant.PDA_AUDIO, "1"); - - return Resp.scanSuccess("success",audioValue); }else if(scanType == 2){ //库存品扫描 Long reservationId = stockupDTO.getReservationId(); @@ -395,40 +407,61 @@ public class DistributionStockupAppController extends BladeController { log.warn("##################stockupScan: 库存品扫码,预约单id为空"); return R.fail("库存品扫码:预约单id不能为空"); } - - //先保存扫码包件信息,后续由队列来出来余下补充信息 - DistributionStockEntity entity = new DistributionStockEntity(); - entity.setCoding(packetBarCode); + Integer integer = distributionStockupService.selectPackage(stockupDTO); + switch (integer){ + case 1: + //先保存扫码包件信息,后续由队列来出来余下补充信息 + DistributionStockEntity entity = new DistributionStockEntity(); + entity.setCoding(packetBarCode); // entity.setStockupArea(stockupArea); - entity.setStockupId(stockupId); - 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.setStockupId(stockupId); + 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); + default: + log.warn("###备货扫描:未知错误"); + return Resp.scanFail("未知错误!","未知错误"); } - 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); - - return R.success("扫码成功"); - }else{ + } log.warn("###################stockupScan: 未知的扫码类型 scanType={}",scanType); return R.fail("未知的扫码类型"); } - } - } 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 037b3cbd2..4e44b15a7 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 @@ -126,4 +126,6 @@ public interface DistributionStockupMapper extends BaseMapper + +