From da1806ebfad2333ba538f4f0c489895294f6b53b Mon Sep 17 00:00:00 2001 From: tangw Date: Thu, 6 Nov 2025 17:53:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=BB=E7=A8=8B=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pojo/entity/LastLabPatParam.java | 3 + .../interfaceCommon/utils/LisWorkBase.java | 2 + .../interfaceCommon/utils/LisWorkUtils.java | 88 ++++++++++++++++++ .../main/resources/mapper/LabPatMapper.xml | 2 +- .../com/czlis/liswork/pojo/HistoryResult.java | 1 + .../impl/LisWorkPageInfoServiceImpl.java | 93 ++++++++++--------- .../mapper/LisWorkPageInfoMapper.xml | 19 +++- 7 files changed, 159 insertions(+), 49 deletions(-) diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/pojo/entity/LastLabPatParam.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/pojo/entity/LastLabPatParam.java index e2be8ad..eaadeea 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/pojo/entity/LastLabPatParam.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/pojo/entity/LastLabPatParam.java @@ -17,4 +17,7 @@ public class LastLabPatParam { private String sfzh; private String instrlist; private String yq; + private Date jyrq; + private String ybh; + private String yqdl; } diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkBase.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkBase.java index eebaab7..ff4eb85 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkBase.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkBase.java @@ -6,6 +6,7 @@ import com.czlis.common.core.domain.entity.lis.*; import com.czlis.common.utils.*; import com.czlis.common.utils.ip.IpUtils; import com.czlis.interfaceCommon.constants.LabPatConstants; +import com.czlis.interfaceCommon.pojo.entity.LastLabPatParam; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -395,4 +396,5 @@ public class LisWorkBase { } return falg; } + } diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java index 71472df..cb42adf 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java @@ -1,13 +1,21 @@ package com.czlis.interfaceCommon.utils; import com.czlis.common.core.domain.Result; +import com.czlis.common.core.domain.entity.lis.LabPat; +import com.czlis.common.core.domain.entity.lis.LabResult; import com.czlis.common.utils.SecurityUtils; import com.czlis.common.utils.ip.IpUtils; import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants; +import com.czlis.interfaceCommon.pojo.entity.LastLabPatParam; import com.czlis.interfaceCommon.pojo.inter.DayMessage; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + @Component @Slf4j public class LisWorkUtils extends LisWorkconfirm{ @@ -27,4 +35,84 @@ public class LisWorkUtils extends LisWorkconfirm{ dayMessage.setMsg(content); return lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.DAYMESSAGE, dayMessage); } + public List getHistroypat(LabPat labPat) { + List nullret=new ArrayList<>(); + if(labPat==null){return nullret;} + Date jyrq = labPat.getJyrq(); + String yq = labPat.getYq(); + String ybh = labPat.getYbh(); + LastLabPatParam lastLabPatParam=getLastLabPatParam(labPat); + if(lastLabPatParam==null){return nullret;} + List labPatList = commonUtil.getlastLabPat(lastLabPatParam); + if(!labPatList.isEmpty()){ + List labPatList0=labPatList.stream().filter(st->!jyrq.equals(st.getJyrq())&&!yq.equals(st.getYq())&&!ybh.equals(st.getYbh())).collect(Collectors.toList()); + return labPatList0; + } + return labPatList; + } + public LastLabPatParam getLastLabPatParam(LabPat labPat){ + LastLabPatParam nullret=new LastLabPatParam(); + Date jyrq = labPat.getJyrq(); + String yq = labPat.getYq(); + String ybh = labPat.getYbh(); + LastLabPatParam lastLabPatParam = new LastLabPatParam(); + String comparecol = commonUtil.getComOptValue(yq, "COMPARECOL"); + String brdh = labPat.getBrdh(); + String mzh = labPat.getMzh(); + String sfzh = labPat.getSfzh(); + String brxm = labPat.getBrxm(); + List labResultList = new ArrayList<>(); + switch (comparecol) { + case "住院号": + if ("".equals(brdh) || brdh == null) { + return nullret; + } + lastLabPatParam.setBrdh(brdh); + break; + case "卡号": + if ("".equals(mzh) || mzh == null) { + return nullret; + } + lastLabPatParam.setMzh(mzh); + break; + case "身份证": + if ("".equals(sfzh) || sfzh == null) { + return nullret; + } + lastLabPatParam.setSfzh(sfzh); + break; + case "姓名": + if ("".equals(brxm) || brxm == null) { + return nullret; + } + lastLabPatParam.setBrxm(brxm); + break; + default: + if ("".equals(brdh) || brdh == null) { + return nullret; + } + if ("".equals(brxm) || brxm == null) { + return nullret; + } + lastLabPatParam.setBrdh(brdh); + lastLabPatParam.setBrxm(brxm); + } + String interval = commonUtil.getComOptValue(yq, "COMPAREDA"); + if (interval == null || interval.isEmpty()) interval = "60"; + int getday = -Integer.parseInt(interval); + lastLabPatParam.setEndda(jyrq); + lastLabPatParam.setStartda(LisUtil.relativeDate(jyrq, getday)); + String compother = commonUtil.getComOptValue(yq, "COMPOTHERINSTR"); + if (compother != null && !compother.isEmpty()) { + String instrlist = commonUtil.getComOptValue(yq, "COMPOTHERINSTRLIST"); + //'CAL800','XS500I','33','40' + if ("".equals(instrlist) || instrlist == null) { + lastLabPatParam.setYq(yq); + } else { + instrlist = "(" + instrlist + ",'" + yq + "')"; + lastLabPatParam.setInstrlist(instrlist); + } + } + return lastLabPatParam; + } } diff --git a/lis-interfaceCommon/src/main/resources/mapper/LabPatMapper.xml b/lis-interfaceCommon/src/main/resources/mapper/LabPatMapper.xml index 030adb7..aa8079e 100644 --- a/lis-interfaceCommon/src/main/resources/mapper/LabPatMapper.xml +++ b/lis-interfaceCommon/src/main/resources/mapper/LabPatMapper.xml @@ -38,7 +38,7 @@ select jgbz from lab_pat where yq = #{yq} and jyrq = #{jyrq} and ybh = #{ybh} + + +