diff --git a/src/main/java/com/glxp/api/controller/collect/RelCodeBatchController.java b/src/main/java/com/glxp/api/controller/collect/RelCodeBatchController.java index 38d03a979..a21384461 100644 --- a/src/main/java/com/glxp/api/controller/collect/RelCodeBatchController.java +++ b/src/main/java/com/glxp/api/controller/collect/RelCodeBatchController.java @@ -1,5 +1,6 @@ package com.glxp.api.controller.collect; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.annotation.CusRedissonAnnotation; @@ -11,11 +12,16 @@ import com.glxp.api.controller.BaseController; import com.glxp.api.dao.inout.IoCodeTempDao; import com.glxp.api.entity.collect.RelCodeBatch; import com.glxp.api.entity.inout.IoCodeTempEntity; +import com.glxp.api.entity.inout.IoOrderDetailCodeEntity; import com.glxp.api.req.collect.RelCodeBatchRequest; import com.glxp.api.req.collect.RelCodeDetailRequest; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.collect.RelCodeBatchResponse; +import com.glxp.api.res.collect.RelCodeDetailResponse; import com.glxp.api.service.collect.RelCodeBatchService; +import com.glxp.api.service.collect.RelCodeDetailService; +import com.glxp.api.service.inout.IoOrderDetailCodeService; +import com.glxp.api.util.MsDateUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.*; @@ -134,6 +140,10 @@ public class RelCodeBatchController extends BaseController { @Resource IoCodeTempDao ioCodeTempDao; + @Resource + RelCodeDetailService relCodeDetailService; + @Resource + IoOrderDetailCodeService orderDetailCodeService; /** * 更新明细 @@ -144,11 +154,32 @@ public class RelCodeBatchController extends BaseController { @GetMapping("/udiwms/relCode/updateIoCodeTempEntity") public BaseResponse threadUpdateIoCodeTempEntity(@RequestParam("parentCode") String parentCode, @RequestParam("id") Integer id) { if (StrUtil.isBlank(parentCode)) return ResultVOUtils.error(500, "层级编码格式错误!"); - IoCodeTempEntity codeTempEntity = new IoCodeTempEntity(); + IoCodeTempEntity codeTempEntity = ioCodeTempDao.selectById(id); + IoOrderDetailCodeEntity orderDetailCodeEntity = orderDetailCodeService.findByUnique(codeTempEntity.getOrderId(), codeTempEntity.getRelId(), codeTempEntity.getBatchNo(), null); codeTempEntity.setId(id); codeTempEntity.setDrugLink(1); + RelCodeDetailResponse relCodeDetailResponse = relCodeDetailService.findByCode(parentCode); + if (relCodeDetailResponse != null) { + if (StrUtil.isEmpty(codeTempEntity.getBatchNo())) { + if (orderDetailCodeEntity != null) + orderDetailCodeEntity.setBatchNo(relCodeDetailResponse.getBatchNo()); + codeTempEntity.setBatchNo(relCodeDetailResponse.getBatchNo()); + } + if (StrUtil.isEmpty(codeTempEntity.getProduceDate())) { + codeTempEntity.setProduceDate(MsDateUtil.formatDate(relCodeDetailResponse.getMadeDate(), "yyMMdd")); + if (orderDetailCodeEntity != null) + orderDetailCodeEntity.setProductDate(codeTempEntity.getProduceDate()); + } + if (StrUtil.isEmpty(codeTempEntity.getExpireDate())) { + codeTempEntity.setExpireDate(MsDateUtil.formatDate(relCodeDetailResponse.getValidateDate(), "yyMMdd")); + if (orderDetailCodeEntity != null) + orderDetailCodeEntity.setExpireDate(codeTempEntity.getExpireDate()); + } + } ioCodeTempDao.updateById(codeTempEntity); + orderDetailCodeService.update(orderDetailCodeEntity); relCodeBatchService.threadUpdateIoCodeTempEntity(parentCode); return ResultVOUtils.success(); } + } diff --git a/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java b/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java index ec6412cd0..f4521f1a5 100644 --- a/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java +++ b/src/main/java/com/glxp/api/service/inout/IoOrderDetailCodeService.java @@ -11,7 +11,8 @@ import java.util.List; public interface IoOrderDetailCodeService { List findByOrderId(String orderId); - List findByOrderDetail(String orderId,String productName); + + List findByOrderDetail(String orderId, String productName); IoOrderDetailCodeEntity findByUnique(String orderId, Long relId, String bacthNo, BigDecimal price); @@ -40,7 +41,7 @@ public interface IoOrderDetailCodeService { */ int deleteByOrderId(String orderId); - public List checkOrderList(String orderId,String productName); + public List checkOrderList(String orderId, String productName); boolean isExit(String orderId); @@ -59,5 +60,5 @@ public interface IoOrderDetailCodeService { Boolean updateOrderDetailBiz(IoOrderDetailCodeEntity orderDetailCodeEntity); - List finishBizDetail( List orders); + List finishBizDetail(List orders); } diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index e140b2a42..d398d8cbf 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -4605,17 +4605,18 @@ CALL Pro_Temp_ColumnWork('sys_workplace', 'queueStatus', 1); -CREATE TABLE IF NOT EXISTS `sys_workplace_freight` ( - `id` int NOT NULL AUTO_INCREMENT, - `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '货架编码', - `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '货架名称', - `workPlaceIdFk` bigint NULL DEFAULT NULL COMMENT '工位ID', - `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - `createTime` datetime NULL DEFAULT NULL, - `updateTime` datetime NULL DEFAULT NULL, - `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, - `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, - PRIMARY KEY (`id`) USING BTREE +CREATE TABLE IF NOT EXISTS `sys_workplace_freight` +( + `id` int NOT NULL AUTO_INCREMENT, + `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '货架编码', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '货架名称', + `workPlaceIdFk` bigint NULL DEFAULT NULL COMMENT '工位ID', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', + `createTime` datetime NULL DEFAULT NULL, + `updateTime` datetime NULL DEFAULT NULL, + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci @@ -4636,17 +4637,18 @@ CALL Pro_Temp_ColumnWork('io_collect_set', 'lastCodeSplit', ' tinyint NULL DEFAULT b''1''COMMENT ''是否最后追溯码拆零0:关闭 1:启用''', 1); -CREATE TABLE IF NOT EXISTS `sys_workplace_layer` ( - `id` int NOT NULL AUTO_INCREMENT, - `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '摆货层编码', - `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', - `createTime` datetime NULL DEFAULT NULL, - `updateTime` datetime NULL DEFAULT NULL, - `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, - `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, - `freightCode` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '取货架Code', - `queueNum` int NULL DEFAULT NULL COMMENT '出货槽数量', - PRIMARY KEY (`id`) USING BTREE +CREATE TABLE IF NOT EXISTS `sys_workplace_layer` +( + `id` int NOT NULL AUTO_INCREMENT, + `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '摆货层编码', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', + `createTime` datetime NULL DEFAULT NULL, + `updateTime` datetime NULL DEFAULT NULL, + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `freightCode` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '取货架Code', + `queueNum` int NULL DEFAULT NULL COMMENT '出货槽数量', + PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci @@ -4688,4 +4690,11 @@ CALL Pro_Temp_ColumnWork('sys_workplace_queue', 'assignmentTerms2', 1); CALL Pro_Temp_ColumnWork('io_code_temp', 'parentCode', ' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''父级编码''', - 1); \ No newline at end of file + 1); + + + +CALL Pro_Temp_ColumnWork('rel_code_batch', 'erpId', + ' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''供应商ID''', + 1); +