From a0b15d333bcfea6ee48376c3570bf5210015c447 Mon Sep 17 00:00:00 2001 From: jiangs <373297395@qq.com> Date: Thu, 5 Mar 2026 17:58:30 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=91=E5=86=85=E5=BC=80=E5=8D=95=EF=BC=8C?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=BC=80=E5=8D=95=E7=BB=B4=E6=8A=A4=E7=95=8C?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/domain/entity/lis/XmFeeInstr.java | 3 ++ .../mapper/XmFeeInstrMapper.java | 13 ++++++ .../resources/mapper/XmFeeInstrMapper.xml | 22 +-------- ...rMapper.java => XmFeeInstrItemMapper.java} | 7 +-- .../service/impl/XmFeeInstrServiceImpl.java | 13 +++--- .../resources/mapper/XmFeeInstrItemMapper.xml | 30 +++++++++++++ .../controller/ReqInputLisWorkController.java | 26 ++++++++++- .../mzcx/mapper/ReqInputLisWorkMapper.java | 4 ++ .../pojo/vo/ReqInputCreateReqListDTO.java | 27 +++++++++++ .../mzcx/service/ReqInputLisWorkService.java | 9 ++++ .../impl/ReqInputLisWorkServiceImpl.java | 45 +++++++++++++++++++ .../mapper/ReqInputLisWorkMapper.xml | 40 +++++++++++++++-- 12 files changed, 202 insertions(+), 37 deletions(-) create mode 100644 lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/XmFeeInstrMapper.java rename {liswork => lis-interfaceCommon}/src/main/resources/mapper/XmFeeInstrMapper.xml (58%) rename liswork/src/main/java/com/czlis/liswork/mapper/dict/{XmFeeInstrMapper.java => XmFeeInstrItemMapper.java} (60%) create mode 100644 liswork/src/main/resources/mapper/XmFeeInstrItemMapper.xml create mode 100644 mzcx/src/main/java/com/czlis/mzcx/pojo/vo/ReqInputCreateReqListDTO.java diff --git a/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/XmFeeInstr.java b/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/XmFeeInstr.java index f6c579d..72de09b 100644 --- a/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/XmFeeInstr.java +++ b/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/XmFeeInstr.java @@ -3,12 +3,15 @@ package com.czlis.common.core.domain.entity.lis; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import lombok.NonNull; @Data @NoArgsConstructor @AllArgsConstructor public class XmFeeInstr { + @NonNull private String yq; + @NonNull private String sfxmdh; private String mrz; private Integer xh; diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/XmFeeInstrMapper.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/XmFeeInstrMapper.java new file mode 100644 index 0000000..fbaf153 --- /dev/null +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/XmFeeInstrMapper.java @@ -0,0 +1,13 @@ +package com.czlis.interfaceCommon.mapper; + +import com.czlis.common.core.domain.entity.lis.XmFeeInstr; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface XmFeeInstrMapper { + List query(XmFeeInstr xmFeeInstr); + void add(XmFeeInstr xmFeeInstr); + void update(XmFeeInstr xmFeeInstr); + void delete(@Param("yq") String yq, @Param("sfxmdh") String sfxmdh); +} diff --git a/liswork/src/main/resources/mapper/XmFeeInstrMapper.xml b/lis-interfaceCommon/src/main/resources/mapper/XmFeeInstrMapper.xml similarity index 58% rename from liswork/src/main/resources/mapper/XmFeeInstrMapper.xml rename to lis-interfaceCommon/src/main/resources/mapper/XmFeeInstrMapper.xml index 7466fe1..dc76c09 100644 --- a/liswork/src/main/resources/mapper/XmFeeInstrMapper.xml +++ b/lis-interfaceCommon/src/main/resources/mapper/XmFeeInstrMapper.xml @@ -1,7 +1,7 @@ - + - SELECT xm_fee.sfxmdh, - xm_fee.sfxmmc, - xm_fee.xmlb, - xm_fee.dj, - xm_fee.zjf, - '0' as cp_flag,'' as cp_yq - FROM xm_fee - WHERE xm_fee.yljg=#{yljg} and not exists - ( select * from xm_feeinstr - where xm_feeinstr.yq = #{yq} - and xm_feeinstr.sfxmdh = xm_fee.sfxmdh) - and (sfxmmc like '%'+#{queryValue}+'%' or zjf like '%'+#{queryValue}+'%') - - - diff --git a/liswork/src/main/java/com/czlis/liswork/mapper/dict/XmFeeInstrMapper.java b/liswork/src/main/java/com/czlis/liswork/mapper/dict/XmFeeInstrItemMapper.java similarity index 60% rename from liswork/src/main/java/com/czlis/liswork/mapper/dict/XmFeeInstrMapper.java rename to liswork/src/main/java/com/czlis/liswork/mapper/dict/XmFeeInstrItemMapper.java index 84f0190..e78af93 100644 --- a/liswork/src/main/java/com/czlis/liswork/mapper/dict/XmFeeInstrMapper.java +++ b/liswork/src/main/java/com/czlis/liswork/mapper/dict/XmFeeInstrItemMapper.java @@ -8,12 +8,7 @@ import java.util.List; import java.util.Map; import java.util.Objects; -public interface XmFeeInstrMapper { - List query(XmFeeInstr xmFeeInstr); - void add(XmFeeInstr xmFeeInstr); - void update(XmFeeInstr xmFeeInstr); - void delete(@Param("yq") String yq,@Param("sfxmdh") String sfxmdh); - +public interface XmFeeInstrItemMapper { List> queryXm(QueryXmDTO queryXmDTO); List> queryYQData(); } diff --git a/liswork/src/main/java/com/czlis/liswork/service/impl/XmFeeInstrServiceImpl.java b/liswork/src/main/java/com/czlis/liswork/service/impl/XmFeeInstrServiceImpl.java index 0fe96d2..ef83445 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/impl/XmFeeInstrServiceImpl.java +++ b/liswork/src/main/java/com/czlis/liswork/service/impl/XmFeeInstrServiceImpl.java @@ -1,8 +1,8 @@ package com.czlis.liswork.service.impl; import com.czlis.common.core.domain.Result; -import com.czlis.interfaceCommon.utils.LisUtil; -import com.czlis.liswork.mapper.dict.XmFeeInstrMapper; +import com.czlis.interfaceCommon.mapper.XmFeeInstrMapper; +import com.czlis.liswork.mapper.dict.XmFeeInstrItemMapper; import com.czlis.common.core.domain.entity.lis.XmFeeInstr; import com.czlis.liswork.pojo.DTO.QueryXmDTO; import com.czlis.liswork.service.XmFeeInstrService; @@ -13,7 +13,6 @@ import org.springframework.stereotype.Service; import java.util.List; import java.util.Map; -import java.util.Objects; import java.util.stream.Collectors; @Service @@ -21,7 +20,9 @@ import java.util.stream.Collectors; public class XmFeeInstrServiceImpl implements XmFeeInstrService { @Autowired - private XmFeeInstrMapper xmFeeInstrMapper; + private XmFeeInstrItemMapper xmFeeInstrItemMapperMapper; + @Autowired + XmFeeInstrMapper xmFeeInstrMapper; @Override @@ -50,9 +51,9 @@ public class XmFeeInstrServiceImpl implements XmFeeInstrService { @Override public Result queryXm(QueryXmDTO queryXmDTO) { - List> xmFeeInstrList = xmFeeInstrMapper.queryXm(queryXmDTO); + List> xmFeeInstrList = xmFeeInstrItemMapperMapper.queryXm(queryXmDTO); String yqmcStr = ""; - List> queryYQDataList = xmFeeInstrMapper.queryYQData(); + List> queryYQDataList = xmFeeInstrItemMapperMapper.queryYQData(); for (Map stringObjectsMap : xmFeeInstrList) { String sfxmdh = String.valueOf(stringObjectsMap.get("sfxmdh")); List> collect = queryYQDataList.stream().filter(stringObjectMap -> stringObjectMap.get("sfxmdh").equals(sfxmdh)).collect(Collectors.toList()); diff --git a/liswork/src/main/resources/mapper/XmFeeInstrItemMapper.xml b/liswork/src/main/resources/mapper/XmFeeInstrItemMapper.xml new file mode 100644 index 0000000..a9dd179 --- /dev/null +++ b/liswork/src/main/resources/mapper/XmFeeInstrItemMapper.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + diff --git a/mzcx/src/main/java/com/czlis/mzcx/controller/ReqInputLisWorkController.java b/mzcx/src/main/java/com/czlis/mzcx/controller/ReqInputLisWorkController.java index 990ac05..ca7d4ea 100644 --- a/mzcx/src/main/java/com/czlis/mzcx/controller/ReqInputLisWorkController.java +++ b/mzcx/src/main/java/com/czlis/mzcx/controller/ReqInputLisWorkController.java @@ -6,6 +6,7 @@ import com.czlis.common.core.domain.Result; import com.czlis.common.core.domain.entity.SysLoginParam; import com.czlis.common.core.domain.entity.lis.ComPat; import com.czlis.common.core.domain.entity.lis.LabReqmain; +import com.czlis.common.core.domain.entity.lis.XmFeeInstr; import com.czlis.common.enums.BusinessType; import com.czlis.interfaceCommon.constants.SysLogConstants; import com.czlis.mzcx.pojo.dto.ReqInputLisWorkDTO; @@ -35,6 +36,12 @@ public class ReqInputLisWorkController extends BaseController { return reqInputLisWorkService.getPatientInfo(comPat); } + @ApiOperation("获取病人明细信息") + @GetMapping("/queryPatDetail") + public Result queryPatDetail(String sqh){ + return reqInputLisWorkService.queryPatDetail(sqh); + } + @ApiOperation("查询病人列表") @PostMapping("/queryPatList") public Result queryPatList(@RequestBody ReqInputLisWorkDTO reqInputLisWorkDTO){ @@ -54,12 +61,29 @@ public class ReqInputLisWorkController extends BaseController { } - @ApiOperation("获取项目信息") @GetMapping("/queryXmInfoList") public Result queryXmInfoList(){ return reqInputLisWorkService.queryXmInfoList(); } + @ApiOperation("不可开单项目列表") + @GetMapping("/queryCreateReqList") + public Result queryCreateReqList(){ + return reqInputLisWorkService.queryCreateReqList(); + } + + @ApiOperation("可开单项目列表") + @GetMapping("/queryCanCreateReqList") + public Result queryCanCreateReqList(){ + return reqInputLisWorkService.queryCanCreateReqList(); + } + @Log(title = SysLogConstants.REQINPUT,businessType = BusinessType.INSERT_VS) + @ApiOperation("保存可开单项目") + @PostMapping("/saveCanCreaeReqList") + public Result saveCanCreaeReqList(@RequestBody List xmFeeInstrList){ + return reqInputLisWorkService.saveCanCreaeReqList(xmFeeInstrList); + } + } diff --git a/mzcx/src/main/java/com/czlis/mzcx/mapper/ReqInputLisWorkMapper.java b/mzcx/src/main/java/com/czlis/mzcx/mapper/ReqInputLisWorkMapper.java index bb2905e..53d3c89 100644 --- a/mzcx/src/main/java/com/czlis/mzcx/mapper/ReqInputLisWorkMapper.java +++ b/mzcx/src/main/java/com/czlis/mzcx/mapper/ReqInputLisWorkMapper.java @@ -1,6 +1,8 @@ package com.czlis.mzcx.mapper; +import com.czlis.common.core.domain.entity.lis.XmFeeInstr; import com.czlis.mzcx.pojo.dto.ReqInputLisWorkDTO; +import com.czlis.mzcx.pojo.vo.ReqInputCreateReqListDTO; import com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO; import java.util.List; @@ -9,4 +11,6 @@ import java.util.Map; public interface ReqInputLisWorkMapper { List> queryPatList(ReqInputLisWorkDTO reqInputLisWorkDTO); List queryXmInfoList(); + List queryCreateReqList(); + List queryCanCreateReqList(); } diff --git a/mzcx/src/main/java/com/czlis/mzcx/pojo/vo/ReqInputCreateReqListDTO.java b/mzcx/src/main/java/com/czlis/mzcx/pojo/vo/ReqInputCreateReqListDTO.java new file mode 100644 index 0000000..7774d91 --- /dev/null +++ b/mzcx/src/main/java/com/czlis/mzcx/pojo/vo/ReqInputCreateReqListDTO.java @@ -0,0 +1,27 @@ +package com.czlis.mzcx.pojo.vo; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ReqInputCreateReqListDTO { + private String sflbmc; + private String sfxmdh; + private String sfxmmc; + private String bz; + private BigDecimal dj; + private String spec; + private String zjf; + private String sflbdh; + private String sflbjc; + private String bkcolor; + private String bglqdh; + private String yblx; + private String sampletips; + private Integer xh; +} diff --git a/mzcx/src/main/java/com/czlis/mzcx/service/ReqInputLisWorkService.java b/mzcx/src/main/java/com/czlis/mzcx/service/ReqInputLisWorkService.java index c261153..575c43a 100644 --- a/mzcx/src/main/java/com/czlis/mzcx/service/ReqInputLisWorkService.java +++ b/mzcx/src/main/java/com/czlis/mzcx/service/ReqInputLisWorkService.java @@ -3,6 +3,7 @@ package com.czlis.mzcx.service; import com.czlis.common.core.domain.Result; import com.czlis.common.core.domain.entity.lis.ComPat; import com.czlis.common.core.domain.entity.lis.LabReqmain; +import com.czlis.common.core.domain.entity.lis.XmFeeInstr; import com.czlis.mzcx.pojo.dto.ReqInputLisWorkDTO; import com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO; @@ -16,4 +17,12 @@ public interface ReqInputLisWorkService { Result saveReqInfo(LabReqmain labReqmain, List reqInputLisWorkVOList); Result queryXmInfoList(); + + Result queryCreateReqList(); + + Result queryCanCreateReqList(); + + Result saveCanCreaeReqList(List xmFeeInstrList); + + Result queryPatDetail(String sqh); } diff --git a/mzcx/src/main/java/com/czlis/mzcx/service/impl/ReqInputLisWorkServiceImpl.java b/mzcx/src/main/java/com/czlis/mzcx/service/impl/ReqInputLisWorkServiceImpl.java index e1ff333..d4ea76d 100644 --- a/mzcx/src/main/java/com/czlis/mzcx/service/impl/ReqInputLisWorkServiceImpl.java +++ b/mzcx/src/main/java/com/czlis/mzcx/service/impl/ReqInputLisWorkServiceImpl.java @@ -5,13 +5,16 @@ import com.czlis.common.core.domain.Result; import com.czlis.common.core.domain.entity.lis.ComPat; import com.czlis.common.core.domain.entity.lis.LabReqdetail; import com.czlis.common.core.domain.entity.lis.LabReqmain; +import com.czlis.common.core.domain.entity.lis.XmFeeInstr; import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants; +import com.czlis.interfaceCommon.mapper.XmFeeInstrMapper; import com.czlis.interfaceCommon.pojo.inter.DayMessage; import com.czlis.interfaceCommon.utils.CommonUtil; import com.czlis.interfaceCommon.utils.LisInterfaceUtil; import com.czlis.interfaceCommon.utils.LisUtil; import com.czlis.mzcx.mapper.ReqInputLisWorkMapper; import com.czlis.mzcx.pojo.dto.ReqInputLisWorkDTO; +import com.czlis.mzcx.pojo.vo.ReqInputCreateReqListDTO; import com.czlis.mzcx.pojo.vo.ReqInputLisWorkVO; import com.czlis.mzcx.service.ReqInputLisWorkService; import lombok.extern.slf4j.Slf4j; @@ -21,6 +24,7 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; @Service @Slf4j @@ -32,6 +36,8 @@ public class ReqInputLisWorkServiceImpl implements ReqInputLisWorkService { private CommonUtil commonUtil; @Autowired LisInterfaceUtil lisInterfaceUtil; + @Autowired + XmFeeInstrMapper xmFeeInstrMapper; @Override public Result getPatientInfo(ComPat comPat) { @@ -134,6 +140,45 @@ public class ReqInputLisWorkServiceImpl implements ReqInputLisWorkService { return new Result("0","获取数据成功!",reqInputLisWorkVOList); } + @Override + public Result queryCreateReqList() { + List reqInputCreateReqListDTOList = reqInputLisWorkMapper.queryCreateReqList(); + return new Result("0","获取数据成功!",reqInputCreateReqListDTOList); + } + + @Override + public Result queryCanCreateReqList() { + List xmFeeInstrList = reqInputLisWorkMapper.queryCanCreateReqList(); + return new Result("0","获取数据成功!",xmFeeInstrList); + } + + @Transactional + @Override + public Result saveCanCreaeReqList(List xmFeeInstrList) { + XmFeeInstr xmFeeInstr2 = new XmFeeInstr(); + xmFeeInstr2.setYq("_yljg_"); + List xmFeeInstrListAll = xmFeeInstrMapper.query(xmFeeInstr2); + for (XmFeeInstr xmFeeInstr : xmFeeInstrList) { + List collect = xmFeeInstrListAll.stream().filter(xmFeeInstr1 -> xmFeeInstr1.getYq().equals(xmFeeInstr.getYq()) && xmFeeInstr1.getSfxmdh().equals(xmFeeInstr.getSfxmdh())).collect(Collectors.toList()); + if(collect.size() > 0) { + xmFeeInstrMapper.delete(xmFeeInstr.getYq(),xmFeeInstr.getSfxmdh()); + } + xmFeeInstr.setYq("_yljg_"); + xmFeeInstrMapper.add(xmFeeInstr); + } + return new Result("0","保存数据成功!"); + } + + @Override + public Result queryPatDetail(String sqh) { + LabReqmain labReqmainOne = commonUtil.getLabReqmainOne(sqh); + List labReqdetailList = commonUtil.getLabReqdetailList(sqh); + Map map = new HashMap<>(); + map.put("labReqmain",labReqmainOne); + map.put("labReqdetailList",labReqdetailList); + return new Result("0","获取数据成功!",map); + } + /** * 生成申请号 diff --git a/mzcx/src/main/resources/mapper/ReqInputLisWorkMapper.xml b/mzcx/src/main/resources/mapper/ReqInputLisWorkMapper.xml index dff6528..e078c4b 100644 --- a/mzcx/src/main/resources/mapper/ReqInputLisWorkMapper.xml +++ b/mzcx/src/main/resources/mapper/ReqInputLisWorkMapper.xml @@ -52,11 +52,45 @@ lab_feeitemclass.yblx, lab_feeitemclass.sampletips FROM lab_feeitem_vs_class INNER JOIN - lab_feeitemclass ON - lab_feeitem_vs_class.sflbdh = lab_feeitemclass.sflbdh INNER JOIN - xm_fee ON lab_feeitem_vs_class.sfxmdh = xm_fee.sfxmdh where lab_feeitemclass.sflbdh<>'0' + lab_feeitemclass ON lab_feeitem_vs_class.sflbdh = lab_feeitemclass.sflbdh + INNER JOIN xm_fee ON lab_feeitem_vs_class.sfxmdh = xm_fee.sfxmdh + INNER JOIN xm_feeinstr ON xm_feeinstr.sfxmdh= lab_feeitem_vs_class.sfxmdh and xm_feeinstr.yq ='_yljg_' + where lab_feeitemclass.sflbdh<>'0' ]]> + + + +