From a706fd89521343de502490affc2ce8e6b12ad99f Mon Sep 17 00:00:00 2001 From: anthonywj Date: Wed, 6 Mar 2024 11:08:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BE=9B=E5=BA=94=E5=95=86?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E5=85=B3=E8=81=94=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../thrsys/ThrInvOrderController.java | 11 +++---- .../api/entity/thrsys/ThrInvOrderDetail.java | 5 +++ .../api/service/basic/UdiRlSupService.java | 6 +++- .../basic/impl/UdiRlSupServiceImpl.java | 12 ++++++- .../thrsys/impl/ThrInvOrderServiceImpl.java | 33 ++++++++++++------- src/main/resources/application-dev.yml | 2 +- src/main/resources/application-pro.yml | 2 -- src/main/resources/application.yml | 3 +- src/main/resources/schemas/schema_v2.4.sql | 4 +-- 9 files changed, 53 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/thrsys/ThrInvOrderController.java b/src/main/java/com/glxp/api/controller/thrsys/ThrInvOrderController.java index 85f33b11e..5801ea412 100644 --- a/src/main/java/com/glxp/api/controller/thrsys/ThrInvOrderController.java +++ b/src/main/java/com/glxp/api/controller/thrsys/ThrInvOrderController.java @@ -92,8 +92,7 @@ public class ThrInvOrderController { if (b > 0) { thrInvOrderDetailService.delThrInvOrderDetailByBillNo(billNo); return ResultVOUtils.success("删除成功"); - } - else return ResultVOUtils.error(500, "无法删除!"); + } else return ResultVOUtils.error(500, "无法删除!"); } @AuthRuleAnnotation("") @@ -102,7 +101,7 @@ public class ThrInvOrderController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - if (thrInvOrderService.generateOrder(generateOrderRequest)){ + if (thrInvOrderService.generateOrder(generateOrderRequest)) { return ResultVOUtils.success("生成成功"); } return ResultVOUtils.error(500, "生成失败!"); @@ -114,7 +113,7 @@ public class ThrInvOrderController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - if (thrInvOrderService.generateGhOrder(generateOrderRequest)){ + if (thrInvOrderService.generateGhOrder(generateOrderRequest)) { return ResultVOUtils.success("生成成功"); } return ResultVOUtils.error(500, "生成失败!"); @@ -126,7 +125,7 @@ public class ThrInvOrderController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - if (thrInvOrderService.refreshOrder(refreshOrderRequest)){ + if (thrInvOrderService.refreshOrder(refreshOrderRequest)) { return ResultVOUtils.success("刷新成功"); } return ResultVOUtils.error(500, "刷新失败!"); @@ -138,7 +137,7 @@ public class ThrInvOrderController { if (bindingResult.hasErrors()) { return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); } - if (thrInvOrderService.refreshGhOrder(refreshOrderRequest)){ + if (thrInvOrderService.refreshGhOrder(refreshOrderRequest)) { return ResultVOUtils.success("刷新成功"); } return ResultVOUtils.error(500, "刷新失败!"); diff --git a/src/main/java/com/glxp/api/entity/thrsys/ThrInvOrderDetail.java b/src/main/java/com/glxp/api/entity/thrsys/ThrInvOrderDetail.java index 083a990ab..6529f5506 100644 --- a/src/main/java/com/glxp/api/entity/thrsys/ThrInvOrderDetail.java +++ b/src/main/java/com/glxp/api/entity/thrsys/ThrInvOrderDetail.java @@ -100,6 +100,11 @@ public class ThrInvOrderDetail implements Serializable { */ private String supName; + /** + * 供应商ID + */ + private String supId; + /** * 部门 */ diff --git a/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java b/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java index 81c076477..a237aa94d 100644 --- a/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java +++ b/src/main/java/com/glxp/api/service/basic/UdiRlSupService.java @@ -1,6 +1,8 @@ package com.glxp.api.service.basic; +import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.entity.basic.UdiRelevanceEntity; import com.glxp.api.entity.basic.UdiRlSupEntity; import com.glxp.api.req.basic.CompanyProductRelevanceRequest; import com.glxp.api.req.basic.FilterCompanyProductRelevanceRequest; @@ -8,7 +10,7 @@ import com.glxp.api.res.basic.UdiRlSupResponse; import java.util.List; -public interface UdiRlSupService { +public interface UdiRlSupService extends IService { List filterUdiGp(CompanyProductRelevanceRequest basicInstrumentMaintainRequest); @@ -24,6 +26,8 @@ public interface UdiRlSupService { List findByUdiRlId(Long udiRlIdFk); + UdiRlSupEntity selOneByRlId(Long udiRlIdFk); + UdiRlSupEntity findCompanyProductRelevanceByProductUuid(UdiRlSupEntity udiRlSupEntity); List getCompanyProductRelevance(FilterCompanyProductRelevanceRequest filterCompanyProductRelevanceRequest); diff --git a/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java index 54cbbfea2..0014d0e9e 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/UdiRlSupServiceImpl.java @@ -3,12 +3,17 @@ package com.glxp.api.service.basic.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.basic.UdiRelevanceDao; import com.glxp.api.dao.basic.UdiRlSupDao; +import com.glxp.api.entity.auth.InvBusUserEntity; +import com.glxp.api.entity.basic.UdiRelevanceEntity; import com.glxp.api.entity.basic.UdiRlSupEntity; import com.glxp.api.req.basic.CompanyProductRelevanceRequest; import com.glxp.api.req.basic.FilterCompanyProductRelevanceRequest; import com.glxp.api.res.basic.UdiRlSupResponse; +import com.glxp.api.service.basic.UdiRelevanceService; import com.glxp.api.service.basic.UdiRlSupService; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -19,7 +24,7 @@ import java.util.List; @Service @Transactional(rollbackFor = Exception.class) -public class UdiRlSupServiceImpl implements UdiRlSupService { +public class UdiRlSupServiceImpl extends ServiceImpl implements UdiRlSupService { @Resource UdiRlSupDao udiRlSupDao; @@ -96,6 +101,11 @@ public class UdiRlSupServiceImpl implements UdiRlSupService { return companyProductRelevanceEntities; } + @Override + public UdiRlSupEntity selOneByRlId(Long udiRlIdFk) { + return udiRlSupDao.selectOne(new QueryWrapper().eq("udiRlIdFk", udiRlIdFk).last("limit 1")); + } + @Override public UdiRlSupEntity findCompanyProductRelevanceByProductUuid(UdiRlSupEntity udiRlSupEntity) { return udiRlSupDao.findCompanyProductRelevanceByProductUuid(udiRlSupEntity); diff --git a/src/main/java/com/glxp/api/service/thrsys/impl/ThrInvOrderServiceImpl.java b/src/main/java/com/glxp/api/service/thrsys/impl/ThrInvOrderServiceImpl.java index 7c81feba7..ac04026a8 100644 --- a/src/main/java/com/glxp/api/service/thrsys/impl/ThrInvOrderServiceImpl.java +++ b/src/main/java/com/glxp/api/service/thrsys/impl/ThrInvOrderServiceImpl.java @@ -16,10 +16,7 @@ import com.glxp.api.dao.basic.UdiRelevanceDao; import com.glxp.api.dao.inout.IoCodeTempDao; import com.glxp.api.dao.thrsys.ThrInvOrderDetailMapper; import com.glxp.api.dao.thrsys.ThrInvOrderMapper; -import com.glxp.api.entity.basic.BasicProductsEntity; -import com.glxp.api.entity.basic.BasicSkProjectDetailEntity; -import com.glxp.api.entity.basic.UdiEntity; -import com.glxp.api.entity.basic.UdiRelevanceEntity; +import com.glxp.api.entity.basic.*; import com.glxp.api.entity.inout.IoCodeTempEntity; import com.glxp.api.entity.inout.IoOrderDetailBizEntity; import com.glxp.api.entity.inout.IoOrderEntity; @@ -39,6 +36,7 @@ import com.glxp.api.res.inv.ThrInvResultResponse; import com.glxp.api.service.auth.CustomerService; import com.glxp.api.service.basic.ProductInfoService; import com.glxp.api.service.basic.UdiRelevanceService; +import com.glxp.api.service.basic.UdiRlSupService; import com.glxp.api.service.basic.impl.BasicDestinyRelService; import com.glxp.api.service.inout.IoAddInoutService; import com.glxp.api.service.inout.IoOrderDetailBizService; @@ -351,7 +349,7 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService { Long userId = customerService.getUserId(); ioOrderEntity.setCreateUser(userId + ""); ioOrderEntity.setUpdateUser(userId + ""); - ioOrderEntity.setOrderType(ConstantStatus.ORDER_TYPE_NORMAL);//正常单据处理 + ioOrderEntity.setOrderType(ConstantStatus.ORDER_TYPE_SCAN);//正常单据处理 List newOrderDetailBiz = new ArrayList<>(thrInvOrderDetails.size()); if (!copyOrderDetailBiz(thrInvOrderDetails, newOrderDetailBiz, newBillNo)) { @@ -365,7 +363,7 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService { thrInvOrderMapper.updateByPrimaryKey(thrInvOrder); ioOrderDetailBizService.batchInsertBizs(newOrderDetailBiz); - ioAddInoutService.stockGenScan(ioOrderEntity); +// ioAddInoutService.stockGenScan(ioOrderEntity); return true; } @@ -416,7 +414,7 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService { return false; } - if (!copyIoCodeTemps(thrInvOrderDetails, newIoCodeTemps, newBillNo,generateOrderRequest)) { + if (!copyIoCodeTemps(thrInvOrderDetails, newIoCodeTemps, newBillNo, generateOrderRequest)) { return false; } @@ -434,6 +432,7 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService { /** * 高耗码校验 + * * @param thrInvOrderDetails * @return */ @@ -443,6 +442,9 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService { return true; } + @Resource + UdiRlSupService udiRlSupService; + @Override public boolean refreshOrder(RefreshOrderRequest refreshOrderRequest) { String billNo = refreshOrderRequest.getBillNo(); @@ -514,13 +516,23 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService { String thrCode = item.getThrCode(); Long relId = mainIdRelIdMap.get(thrCode); if (ObjectUtil.isNotNull(relId)) { + item.setRelId(relId); updateThrInvOrderDetails.add(item); + + //校验产品是否被供应商关联 + UdiRlSupEntity udiRlSupEntity = udiRlSupService.selOneByRlId(relId); + if (udiRlSupEntity != null) + item.setSupId(udiRlSupEntity.getCustomerId()); + else + exmsg.append(thrCode + "供应商未关联"); } else { exmsg.append(thrCode + ","); } } }); + + } if (exmsg.length() > 0) { @@ -643,21 +655,20 @@ public class ThrInvOrderServiceImpl implements ThrInvOrderService { } /** - * * @param thrInvOrderDetails * @param newIoCodeTemps * @param newBillNo * @return */ - private boolean copyIoCodeTemps(List thrInvOrderDetails, List newIoCodeTemps, String newBillNo,GenerateOrderRequest generateOrderRequest) { + private boolean copyIoCodeTemps(List thrInvOrderDetails, List newIoCodeTemps, String newBillNo, GenerateOrderRequest generateOrderRequest) { - thrInvOrderDetails.forEach( item -> { + thrInvOrderDetails.forEach(item -> { IoCodeTempEntity ioCodeTempEntity = new IoCodeTempEntity(); ioCodeTempEntity.setId(null); ioCodeTempEntity.setCode(item.getUdiCode()); ioCodeTempEntity.setOrderId(newBillNo); ioCodeTempEntity.setAction(generateOrderRequest.getAction()); - BeanUtils.copyProperties(item,ioCodeTempEntity); + BeanUtils.copyProperties(item, ioCodeTempEntity); ioCodeTempEntity.setUpdateTime(new Date()); ioCodeTempEntity.setCreateTime(new Date()); diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index eff144325..149ccc6b6 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -4,7 +4,7 @@ server: spring: datasource: driver-class-name: com.p6spy.engine.spy.P6SpyDriver - jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_ct?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true + jdbc-url: jdbc:p6spy:mysql://192.168.0.43:3306/udi_wms_ct?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root password: 123456 hikari: diff --git a/src/main/resources/application-pro.yml b/src/main/resources/application-pro.yml index 0d904b0f8..96a3422e5 100644 --- a/src/main/resources/application-pro.yml +++ b/src/main/resources/application-pro.yml @@ -52,7 +52,5 @@ SPMS_KEY: lCOdWCBKS6Kw45wdnnqUTELXyuSKnXEs back_file_path: D:/share/udisps/back/ API_KEY: 1101 API_SECRET: zBITspLNvuoEd4FaamlSoqxRHmNsmQ9L -WEB_TITLE: 平潭协和医院 -WEB_SUB_TITLE: 医院UDI管理系统 SPMS_WEBSOCKET_TOKEN: 07rKFDFkQvBkbxgc7aUBlONo4gWNdx8b diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 390b02b7c..9b5217c08 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -36,4 +36,5 @@ server: max-http-post-size: 100MB max-http-header-size: 100MB - +WEB_TITLE: 平潭协和医院 +WEB_SUB_TITLE: 医院UDI管理系统 diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index 9b90f8a33..6b9188a46 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -596,8 +596,8 @@ CALL Pro_Temp_ColumnWork('thr_inv_order_detail', 'udiCode',' varchar(255) NULL CALL Pro_Temp_ColumnWork('thr_inv_order_detail', 'serialNo',' varchar(255) NULL DEFAULT NULL COMMENT ''序列号'' AFTER `remark`', 1); CALL Pro_Temp_ColumnWork('thr_inv_order_detail', 'sickerCode',' varchar(80) NULL DEFAULT NULL COMMENT ''患者编码'' AFTER `remark`', 1); CALL Pro_Temp_ColumnWork('thr_inv_order_detail', 'sickerName',' varchar(30) NULL DEFAULT NULL COMMENT ''患者名称'' AFTER `remark`', 1); - - +CALL Pro_Temp_ColumnWork('thr_inv_order', 'thirdSysFk', ' varchar(30) NULL DEFAULT NULL COMMENT ''第三方系统标识'' AFTER `remark`', 1); +CALL Pro_Temp_ColumnWork('thr_inv_order_detail', 'supId',' varchar(30) NULL DEFAULT NULL COMMENT ''供应商ID'' AFTER `remark`', 1); INSERT ignore INTO thr_system_detail(`id`, `name`, `key`, `value`, `enabled`, `guideUrl`, `remark`, `thirdSysFk`, `itrCache`, `fromType`, `time`, `dlLastTime`) VALUES (75, '收费出入库明细下载', 'invSfOrderUrl', '/udiwms/erp/inv/getInvSfResult', 1, '1', '', 'thirdId', 1, 3, 1440, NULL);