From 692d817680443146ef322a5e59c1a4a9480a0fb8 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Mon, 21 Oct 2024 11:28:21 +0800 Subject: [PATCH 1/6] =?UTF-8?q?feat:=20=E6=89=93=E5=8D=B0=E7=A1=AE?= =?UTF-8?q?=E8=AE=A4=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glxp/api/controller/basic/BasicOrderPrintController.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java b/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java index 0d69cdef4..b74102948 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java @@ -150,6 +150,7 @@ public class BasicOrderPrintController { bizData.put("serialNo", udiProductEntity.getSerialNo() == null ? ' ' : udiProductEntity.getSerialNo()); bizData.put("productDate", obj.getProductDate()); bizData.put("expireDate", obj.getExpireDate()); + bizData.put("confirmTime", ioOrderResponse.getConfirmTime()); bizData.put("manufactor", obj.getManufacturer()); bizData.put("zczbhhzbapzbh", obj.getCertCode() == null ? ' ' : obj.getCertCode()); bizData.put("ylqxzcrbarmc", udiProductEntity.getYlqxzcrbarmc() == null ? ' ' : udiProductEntity.getYlqxzcrbarmc()); @@ -238,6 +239,7 @@ public class BasicOrderPrintController { bizData.put("serialNo", obj.getSerialNo() == null ? ' ' : obj.getSerialNo()); bizData.put("productDate", ioOrderDetailBizEntity.getProductDate()); bizData.put("expireDate", ioOrderDetailBizEntity.getExpireDate()); + bizData.put("confirmTime", ioOrderResponse.getConfirmTime()); bizData.put("manufactor", ioOrderDetailBizEntity.getManufacturer()); bizData.put("zczbhhzbapzbh", ioOrderDetailBizEntity.getCertCode() == null ? ' ' : ioOrderDetailBizEntity.getCertCode()); bizData.put("udiCode", obj.getCode().replaceAll("\u001D", "")); From 7ada9d3c9cab1aec767b437f6d76f5c91f13bb12 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Mon, 21 Oct 2024 15:33:30 +0800 Subject: [PATCH 2/6] =?UTF-8?q?feat:=20=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glxp/api/controller/basic/BasicOrderPrintController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java b/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java index b74102948..507bfb19c 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicOrderPrintController.java @@ -150,7 +150,7 @@ public class BasicOrderPrintController { bizData.put("serialNo", udiProductEntity.getSerialNo() == null ? ' ' : udiProductEntity.getSerialNo()); bizData.put("productDate", obj.getProductDate()); bizData.put("expireDate", obj.getExpireDate()); - bizData.put("confirmTime", ioOrderResponse.getConfirmTime()); + bizData.put("confirmTime", formatter.format(ioOrderResponse.getConfirmTime())); bizData.put("manufactor", obj.getManufacturer()); bizData.put("zczbhhzbapzbh", obj.getCertCode() == null ? ' ' : obj.getCertCode()); bizData.put("ylqxzcrbarmc", udiProductEntity.getYlqxzcrbarmc() == null ? ' ' : udiProductEntity.getYlqxzcrbarmc()); @@ -239,7 +239,7 @@ public class BasicOrderPrintController { bizData.put("serialNo", obj.getSerialNo() == null ? ' ' : obj.getSerialNo()); bizData.put("productDate", ioOrderDetailBizEntity.getProductDate()); bizData.put("expireDate", ioOrderDetailBizEntity.getExpireDate()); - bizData.put("confirmTime", ioOrderResponse.getConfirmTime()); + bizData.put("confirmTime", formatter.format(ioOrderResponse.getConfirmTime())); bizData.put("manufactor", ioOrderDetailBizEntity.getManufacturer()); bizData.put("zczbhhzbapzbh", ioOrderDetailBizEntity.getCertCode() == null ? ' ' : ioOrderDetailBizEntity.getCertCode()); bizData.put("udiCode", obj.getCode().replaceAll("\u001D", "")); From ba674c54919bc0d4102f13e109cbfae403831cb0 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Tue, 22 Oct 2024 14:51:39 +0800 Subject: [PATCH 3/6] =?UTF-8?q?feat:=20=E6=98=AF=E5=90=A6=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E6=94=B6=E8=B4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../glxp/api/controller/basic/UdiRelevanceController.java | 1 + .../api/controller/inout/IoOrderDetailBizController.java | 6 ++++++ .../glxp/api/entity/basic/BasicBussinessTypeEntity.java | 6 ++++++ .../java/com/glxp/api/entity/basic/UdiProductEntity.java | 1 + .../com/glxp/api/req/basic/BussinessTypeSaveRequest.java | 6 +++++- .../com/glxp/api/req/basic/UdiRelevanceSaveRequest.java | 1 + .../glxp/api/res/basic/BasicBussinessTypeResponse.java | 2 ++ .../java/com/glxp/api/res/basic/UdiRelevanceResponse.java | 1 + src/main/resources/mybatis/mapper/basic/UdiProductDao.xml | 3 +++ .../resources/mybatis/mapper/basic/UdiRelevanceDao.xml | 1 + src/main/resources/schemas/schema_v2.4.sql | 8 ++++++++ 11 files changed, 35 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java index 6d20e46e4..1051ec487 100644 --- a/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java +++ b/src/main/java/com/glxp/api/controller/basic/UdiRelevanceController.java @@ -386,6 +386,7 @@ public class UdiRelevanceController extends BaseController { udiProductEntity.setCatalogname3(udiRelevanceSaveRequest.getCatalogname3()); udiProductEntity.setMatrial(udiRelevanceSaveRequest.getMatrial()); udiProductEntity.setRequireScanCode(udiRelevanceSaveRequest.getRequireScanCode()); + udiProductEntity.setRequireCost(udiRelevanceSaveRequest.getRequireCost()); udiProductEntity.setFlbm(udiRelevanceSaveRequest.getFlbm()); // udiProductEntity = UdiInfoUtil.initUdiInfoEntity(udiProductEntity); if (StrUtil.isNotEmpty(udiRelevanceSaveRequest.getOriginUuid())) { diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java index f43ea9087..3e3a65d51 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java @@ -253,6 +253,12 @@ public class IoOrderDetailBizController extends BaseController { return ResultVOUtils.error(500, "单据只允许录入不需要扫码产品" + ",请检查后重试!"); } } + + //是否需要收费校验 是否已绑定收费项目 + if (IntUtil.value(bussinessTypeEntity.getRequireCost()) == 1 && IntUtil.value(udiRelevanceResponse.getRequireCost()) == 1) { + String thirdId = udiRelevanceResponse.getThirdId(); + if (StrUtil.isEmpty(thirdId)) return ResultVOUtils.error(500, "当前产品未绑定收费项目" + ",请检查后重试!"); + } } // todo 查询产品是否已经通过认证 diff --git a/src/main/java/com/glxp/api/entity/basic/BasicBussinessTypeEntity.java b/src/main/java/com/glxp/api/entity/basic/BasicBussinessTypeEntity.java index 7d653b812..0a4ddf0ad 100644 --- a/src/main/java/com/glxp/api/entity/basic/BasicBussinessTypeEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/BasicBussinessTypeEntity.java @@ -511,6 +511,12 @@ public class BasicBussinessTypeEntity { @TableField(value = "requireScanCode") private Integer requireScanCode; + /** + * 校验是否需要收费 :0:不需要;1.需要 + */ + @TableField(value = "requireCost") + private Integer requireCost; + /** * 是否开启校验扫码 :0:不校验;1:只允许录入扫码产品;2:只允许录入不扫码产品 */ diff --git a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java index 34bab34d7..a4045a3e0 100644 --- a/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java +++ b/src/main/java/com/glxp/api/entity/basic/UdiProductEntity.java @@ -140,5 +140,6 @@ public class UdiProductEntity { private Integer hcType; private Integer requireScanCode; + private Integer requireCost; private Boolean isStack; } diff --git a/src/main/java/com/glxp/api/req/basic/BussinessTypeSaveRequest.java b/src/main/java/com/glxp/api/req/basic/BussinessTypeSaveRequest.java index 0ce110322..6b635048a 100644 --- a/src/main/java/com/glxp/api/req/basic/BussinessTypeSaveRequest.java +++ b/src/main/java/com/glxp/api/req/basic/BussinessTypeSaveRequest.java @@ -341,5 +341,9 @@ public class BussinessTypeSaveRequest { @TableField(value = "codeCheck") private Integer codeCheck; - + /** + * 校验是否需要收费 :0:不需要;1.需要 + */ + @TableField(value = "requireCost") + private Integer requireCost; } diff --git a/src/main/java/com/glxp/api/req/basic/UdiRelevanceSaveRequest.java b/src/main/java/com/glxp/api/req/basic/UdiRelevanceSaveRequest.java index 22617300b..9f2e3aa3b 100644 --- a/src/main/java/com/glxp/api/req/basic/UdiRelevanceSaveRequest.java +++ b/src/main/java/com/glxp/api/req/basic/UdiRelevanceSaveRequest.java @@ -152,4 +152,5 @@ public class UdiRelevanceSaveRequest { private String matrial; private Integer requireScanCode; + private Integer requireCost; } diff --git a/src/main/java/com/glxp/api/res/basic/BasicBussinessTypeResponse.java b/src/main/java/com/glxp/api/res/basic/BasicBussinessTypeResponse.java index ddd7feb26..03a631825 100644 --- a/src/main/java/com/glxp/api/res/basic/BasicBussinessTypeResponse.java +++ b/src/main/java/com/glxp/api/res/basic/BasicBussinessTypeResponse.java @@ -223,4 +223,6 @@ public class BasicBussinessTypeResponse { @TableField(value = "codeCheck") private Integer codeCheck; + private Integer requireCost; + } diff --git a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java index 42cc26b9f..565dfc36c 100644 --- a/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java +++ b/src/main/java/com/glxp/api/res/basic/UdiRelevanceResponse.java @@ -202,6 +202,7 @@ public class UdiRelevanceResponse { private Integer destinyType; private Integer requireScanCode; + private Integer requireCost; /** * 包装规格 diff --git a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml index 9a0be1941..566cdb83f 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiProductDao.xml @@ -736,6 +736,9 @@ requireScanCode=#{requireScanCode}, + + requireCost=#{requireCost}, + where uuid = #{uuid} diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index 1333ded13..aa54baaab 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -559,6 +559,7 @@ basic_products.catalogname3, basic_products.matrial, basic_products.requireScanCode, + basic_products.requireCost, th.hsmc hslbName FROM basic_products inner JOIN basic_udirel diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index efe880fe5..85f2e877b 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -3921,3 +3921,11 @@ CREATE TABLE IF NOT EXISTS `device_asset_contract` INSERT ignore INTO `basic_bussiness_type`(`id`, `mainAction`, `action`, `name`, `enable`, `remark`, `thirdSysFk`, `genUnit`, `innerOrder`, `secCheckEnable`, `checkEnable`, `checkUdims`, `checkPdaEd`, `checkPdaUn`, `checkPc`, `checkWebNew`, `checkSp`, `checkChange`, `secCheckUdims`, `secCheckPdaEd`, `secCheckPdaUn`, `secCheckPc`, `secCheckWebNew`, `secCheckChange`, `secCheckSp`, `corpType`, `supplementOrderType`, `checkBalance`, `secCheckBalance`, `useDyCount`, `expireTip`, `updateTime`, `defaultUnit`, `prefix`, `outToSpms`, `ullageFill`, `scanPreIn`, `vailInv`, `entrutSpms`, `codeFillCheck`, `defaultSubInv`, `defaultInv`, `orderVisibleType`, `checkCopy`, `secCheckCopy`, `originAction`, `advanceType`, `changeEnable`, `spUse`, `preIn`, `preInBack`, `supplementAll`, `createUser`, `createTime`, `updateUser`, `vailDispatch`, `vailGroupBuy`, `busType`, `inStock`, `actionType`, `thrCheckEnable`, `thrCheckWebNew`, `thrCheckPdaUn`, `thrCheckPdaEd`, `thrCheckUdims`, `thrCheckPc`, `thrCheckSp`, `thrCheckChange`, `thrCheckBalance`, `thrCheckCopy`, `fillCodeRel`, `checkVailDate`, `checkExpire`, `checkCertExpire`, `preInBackAction`, `backPreinType`, `advancePreIn`, `sortNum`, `spaceOut`, `checkReview`, `secCheckReview`, `thrCheckReview`, `checkWebNewType`, `editType`, `inPreInBack`, `deptNoInvType`, `vailPrescribe`, `inputSick`, `groupBuySplit`, `vailInvBatchNo`, `vailProductAttributes`, `devInType`, `vailHcType`, `requireScanCode`, `codeCheck`) VALUES (1844274444567728128, 'WareHouseIn', 'SC72854426720051', '科室退费入库', 1, '', '', 0, 0, 0, 1, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, '', 0, 0, 0, 1, '2024-10-10 15:49:37', NULL, NULL, 0, 0, 0, 0, 0, 0, NULL, NULL, 0, 0, 0, NULL, NULL, 0, 0, NULL, 0, 0, NULL, NULL, '1', 0, 0, NULL, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, NULL, 1, 0, 999, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, NULL, 0, NULL, 0, NULL, b'0', NULL); + +CALL Pro_Temp_ColumnWork('basic_products', 'requireCost', + 'bit(1) NOT NULL DEFAULT b''0'' COMMENT ''是否需要收费 1是;0否''', + 1); + +CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'requireCost', + 'bit(1) NOT NULL DEFAULT b''0'' COMMENT ''校验是否需要收费 1是;0否''', + 1); \ No newline at end of file From 98cd9f7ba31890b68b6c34d63d06a21539f9a3e7 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Tue, 22 Oct 2024 15:25:54 +0800 Subject: [PATCH 4/6] =?UTF-8?q?feat:=20=E6=98=AF=E5=90=A6=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E6=94=B6=E8=B4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/inout/IoCodeTempController.java | 15 +++++++++++++++ .../inout/impl/IoOrderDetailBizServiceImpl.java | 7 +++++++ 2 files changed, 22 insertions(+) diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java index 61405a3b1..98aa95346 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -2,9 +2,11 @@ package com.glxp.api.controller.inout; import com.glxp.api.annotation.CusRedissonAnnotation; import com.glxp.api.constant.*; +import com.glxp.api.dao.basic.UdiRelevanceDao; import com.glxp.api.entity.basic.*; import com.glxp.api.entity.inv.InvProductDetailEntity; import com.glxp.api.exception.JsonException; +import com.glxp.api.req.basic.FilterUdiRelRequest; import com.glxp.api.service.inout.impl.IoCodeService; import com.glxp.api.service.inv.impl.InvProductDetailService; import org.springframework.beans.BeanUtils; @@ -93,6 +95,8 @@ public class IoCodeTempController extends BaseController { IoOrderDetailCodeService ioOrderDetailCodeService; @Resource IoCheckInvService checkInvService; + @Resource + UdiRelevanceDao udiRelevanceDao; /** * PDA-----单据上传 @@ -430,6 +434,17 @@ public class IoCodeTempController extends BaseController { return ResultVOUtils.error(500, "单据只允许录入不需要扫码产品" + ",请检查后重试!"); } } + + //是否需要收费校验 是否已绑定收费项目 + if (IntUtil.value(bussinessTypeEntity.getRequireCost()) == 1 ){ + FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest(); + filterUdiRelRequest.setUuid(udiInfoEntity.getUuid()); + UdiRelevanceResponse udiRelevanceResponse = udiRelevanceDao.selectOneUdiJoinSup(filterUdiRelRequest); + if(IntUtil.value(udiRelevanceResponse.getRequireCost()) == 1) { + String thirdId = udiRelevanceResponse.getThirdId(); + if (StrUtil.isEmpty(thirdId)) return ResultVOUtils.error(500, "当前产品未绑定收费项目" + ",请检查后重试!"); + } + } } diff --git a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java index 7a241cfee..ae6b35797 100644 --- a/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java +++ b/src/main/java/com/glxp/api/service/inout/impl/IoOrderDetailBizServiceImpl.java @@ -324,6 +324,13 @@ public class IoOrderDetailBizServiceImpl implements IoOrderDetailBizService { throw new JsonException("单据只允许录入不需要扫码产品" + ",请检查后重试!"); } } + + //是否需要收费校验 是否已绑定收费项目 + if (IntUtil.value(bussinessTypeEntity.getRequireCost()) == 1 && IntUtil.value(udiRelevanceResponse.getRequireCost()) == 1) { + String thirdId = udiRelevanceResponse.getThirdId(); + if (StrUtil.isEmpty(thirdId)) throw new JsonException("当前产品未绑定收费项目" + ",请检查后重试!"); + } + } From f869032b17da5bfe9b109e717d83fa25cee0f9f6 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Wed, 23 Oct 2024 17:36:25 +0800 Subject: [PATCH 5/6] =?UTF-8?q?feat:=20=E6=98=AF=E5=90=A6=E6=94=B6?= =?UTF-8?q?=E8=B4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml index aa54baaab..2a0345479 100644 --- a/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml +++ b/src/main/resources/mybatis/mapper/basic/UdiRelevanceDao.xml @@ -1677,6 +1677,8 @@ basic_products.mjfs, basic_products.categoryName, company_product_relevance.unitFk, + basic_products.requireScanCode, + basic_products.requireCost, basic_corp.name companyName FROM basic_udirel inner JOIN basic_products From a0fde464076b8495b864cf2ba2823934f86f7975 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Fri, 25 Oct 2024 11:58:07 +0800 Subject: [PATCH 6/6] =?UTF-8?q?feat:=20=E5=8F=91=E7=A5=A8=E7=A1=AE?= =?UTF-8?q?=E8=AE=A4=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml index bc6f42b35..b67be7ba3 100644 --- a/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml +++ b/src/main/resources/mybatis/mapper/inout/IoOrderDetailResultDao.xml @@ -220,6 +220,9 @@ AND date_format(a1.auditTime, '%Y-%m-%d') between date_format(#{startAduditTime}, '%Y-%m-%d') and date_format(#{endAduditTime}, '%Y-%m-%d') + + AND date_format(a1.confirmTime, '%Y-%m-%d') between date_format(#{confirmStarTime}, '%Y-%m-%d') and date_format(#{confirmEndTime}, '%Y-%m-%d') + AND a1.`action` in