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..af925e9 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,20 @@ 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; + @Component @Slf4j public class LisWorkUtils extends LisWorkconfirm{ @@ -27,4 +34,69 @@ public class LisWorkUtils extends LisWorkconfirm{ dayMessage.setMsg(content); return lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.DAYMESSAGE, dayMessage); } + 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} + + +