主程序
This commit is contained in:
parent
628a610ff3
commit
2075e738e6
@ -0,0 +1,36 @@
|
||||
package com.czlis.common.core.domain.entity.lis;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ComPat {
|
||||
private String brdh;
|
||||
private String mzh;
|
||||
private String zyh;
|
||||
private String sfzh;
|
||||
private String brxm;
|
||||
private String xb;
|
||||
private String brly;
|
||||
private String fb;
|
||||
private Date sr;
|
||||
private String ksdh;
|
||||
private String bq;
|
||||
private String ch;
|
||||
private String aboxx;
|
||||
private String rhxx;
|
||||
private Date ryrq;
|
||||
private String jzdz;
|
||||
private String xxdh;
|
||||
private String jbdh;
|
||||
private String bsbr;
|
||||
private String xxzt;
|
||||
private String sjys;
|
||||
private String zd;
|
||||
private String yljg;
|
||||
}
|
||||
@ -18,7 +18,7 @@ public class LabInputcol {
|
||||
private String mrz;
|
||||
private String kj;
|
||||
private Integer xh;
|
||||
|
||||
|
||||
private String zdlb;
|
||||
private String dict;
|
||||
|
||||
}
|
||||
|
||||
@ -20,4 +20,5 @@ public interface ComDictMapper {
|
||||
//根据名称查编号
|
||||
String getComDictIdByName(@Param("zdlb") String zdlb,@Param("zdmc") String zdmc);
|
||||
List<ComDict> getComDictListByZdlb(String zdlb);
|
||||
List<ComDict> getComDictListin(@Param("list") List<String> list);
|
||||
}
|
||||
|
||||
@ -0,0 +1,12 @@
|
||||
package com.czlis.interfaceCommon.mapper;
|
||||
|
||||
import com.czlis.common.core.domain.entity.lis.ComPat;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ComPatMapper {
|
||||
List<ComPat> getComPat(@Param("brdh") String brdh,@Param("yljg") String yljg);
|
||||
int deleteComPat(@Param("brdh") String brdh, @Param("yljg") String yljg);
|
||||
int insertComPat(ComPat comPat);
|
||||
}
|
||||
@ -79,6 +79,8 @@ public class CommonUtil {
|
||||
LabPatfeeMapper labPatfeeMapper;
|
||||
@Autowired
|
||||
LabGraphMapper labGraphMapper;
|
||||
@Autowired
|
||||
ComPatMapper comPatMapper;
|
||||
//====检验主表操作方法集合===
|
||||
public LabPat getLabPatOne(Date jyrq, String yq, String ybh) {
|
||||
return labPatMapper.getLabPatOne(jyrq, yq, ybh);
|
||||
@ -157,7 +159,17 @@ public class CommonUtil {
|
||||
public int delLabPat(LabPat labPat) {
|
||||
return labPatMapper.updateLabPat(labPat);
|
||||
}
|
||||
|
||||
public List<ComPat> getComPat(String brdh,String yljg){
|
||||
return comPatMapper.getComPat(brdh,yljg);
|
||||
}
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public int deleteComPat(String brdh,String yljg){
|
||||
return comPatMapper.deleteComPat(brdh,yljg);
|
||||
}
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public int insertComPat(ComPat comPat) {
|
||||
return comPatMapper.insertComPat(comPat);
|
||||
}
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public int updateLabPat(LabPat labPat) {
|
||||
return labPatMapper.updateLabPat(labPat);
|
||||
|
||||
@ -17,6 +17,7 @@ import com.czlis.interfaceCommon.mapper.LabInstrvsreqclassMapper;
|
||||
import com.czlis.interfaceCommon.mapper.LabReqdetailMapper;
|
||||
import com.czlis.interfaceCommon.mapper.LabReqmainMapper;
|
||||
import com.czlis.interfaceCommon.mapper.LisWorkUtilsMapper;
|
||||
import com.czlis.interfaceCommon.pojo.inter.DayMessage;
|
||||
import com.czlis.interfaceCommon.pojo.inter.GetReqInterface;
|
||||
import com.czlis.interfaceCommon.pojo.inter.SetReport;
|
||||
import com.czlis.interfaceCommon.pojo.inter.SetReqStatus;
|
||||
@ -1786,7 +1787,93 @@ public class LisWorkUtils {
|
||||
else commonUtil.updateLabPat(labPat);
|
||||
return new Result("0", "保存成功!", labPat);
|
||||
}
|
||||
public Result newPat(Date jyrq, String ybh, String yq, String brdh,String brly,String yljg,int problemId) {
|
||||
if(brly==null)brly="";
|
||||
if(yljg==null||"".equals(yljg))yljg=commonUtil.getLabInstr(yq).getYljg();
|
||||
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||
boolean newpatinfo = true;
|
||||
if (labPat != null) {
|
||||
String jgbz = labPat.getJgbz();
|
||||
if (LabPatConstants.CONFIRM.equals(jgbz)) {
|
||||
return new Result("-1", "当前样本已审核禁止修改!");
|
||||
}
|
||||
newpatinfo = false;
|
||||
String brdh0 = labPat.getBrdh();
|
||||
String sqh0 = labPat.getSqh();
|
||||
String brxm = labPat.getBrxm();
|
||||
if (problemId < 1) {
|
||||
if ((brdh0 != null && !"".equals(brdh0)) || (sqh0 != null && !"".equals(sqh0)) || (brxm != null && !"".equals(brxm))) {
|
||||
return new Result("5", "当前样本已有病人信息是否替换!", 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
String yhdh = SecurityUtils.getLoginUser().getUsername();
|
||||
|
||||
labPat = new LabPat();
|
||||
labPat.setJyrq(jyrq);
|
||||
labPat.setYq(yq);
|
||||
labPat.setYbh(ybh);
|
||||
labPat.setBrdh(brdh);
|
||||
if(!"".equals(brdh)){
|
||||
//4.获取病人信息
|
||||
DayMessage dayMessage = new DayMessage();
|
||||
dayMessage.setIp("");
|
||||
dayMessage.setYljg("1");
|
||||
dayMessage.setUserid(yhdh);
|
||||
dayMessage.setMsgid(LisinterfaceNameConstants.DAYMESSAGE_GETPATIENT);
|
||||
String val =brdh + "|"+brly+"|"+yljg; //这里有个医疗机构的,没有传,要考虑
|
||||
dayMessage.setMsg(val);
|
||||
Result result = lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.DAYMESSAGE, dayMessage);
|
||||
String msg=result.getMsg();
|
||||
String[] msgret = msg.split("\\|");
|
||||
|
||||
if(msgret.length>8) {
|
||||
labPat.setBrxm(msgret[0]);
|
||||
labPat.setBrxb(msgret[1]);
|
||||
String brsr=msgret[2];
|
||||
if(!"".equals(brsr)&&brsr!=null) {
|
||||
Map<String, Object> ageFromBirthDay = AgeUtils.getAgeByBirthDate(brsr);
|
||||
String age = ageFromBirthDay.get("nl").toString();
|
||||
String unit = ageFromBirthDay.get("nldw").toString();
|
||||
labPat.setNl(Integer.parseInt(age));
|
||||
labPat.setNldw(unit);
|
||||
}
|
||||
labPat.setBrdh(msgret[3]);
|
||||
labPat.setFb(msgret[4]);
|
||||
labPat.setBrly(msgret[5]);
|
||||
labPat.setCh(msgret[6]);
|
||||
labPat.setKsdh(msgret[7]);
|
||||
labPat.setZd(msgret[8]);
|
||||
}else{
|
||||
List<ComPat> comPatList= commonUtil.getComPat(brdh,yljg);
|
||||
if(comPatList.size()>0) {
|
||||
ComPat comPat=comPatList.get(0);
|
||||
labPat.setBrxm(comPat.getBrxm());
|
||||
labPat.setCh(comPat.getCh());
|
||||
labPat.setBrxm(comPat.getXb());
|
||||
labPat.setBrly(comPat.getBrly());
|
||||
labPat.setFb(comPat.getFb());
|
||||
labPat.setKsdh(comPat.getKsdh());
|
||||
labPat.setZd(comPat.getZd());
|
||||
labPat.setMzh(comPat.getMzh());
|
||||
labPat.setSjys(comPat.getSjys());
|
||||
Date sr=comPat.getSr();
|
||||
if(sr!=null) {
|
||||
Map<String, Object> ageFromBirthDay = AgeUtils.getAgeByBirthDate(sr);
|
||||
String age = ageFromBirthDay.get("nl").toString();
|
||||
String unit = ageFromBirthDay.get("nldw").toString();
|
||||
labPat.setNl(Integer.parseInt(age));
|
||||
labPat.setNldw(unit);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
labPat = loaddefault(labPat);
|
||||
//5.保存数据
|
||||
if (newpatinfo) commonUtil.insertLabPat(labPat);
|
||||
else commonUtil.updateLabPat(labPat);
|
||||
return new Result("0", "保存成功!", labPat);
|
||||
}
|
||||
public Result newPatInfo(Date jyrq, String ybh, String sqh, String yq, int problemId) {
|
||||
|
||||
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||
|
||||
@ -14,6 +14,13 @@
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
<select id="getComDictListin" resultType="com.czlis.common.core.domain.entity.lis.ComDict">
|
||||
<include refid="selectComDictVo"></include>
|
||||
where zdlb in
|
||||
<foreach collection="list" item="item" open="(" separator="," close=")">
|
||||
#{item}
|
||||
</foreach>
|
||||
</select>
|
||||
<select id="getComDictList" resultType="com.czlis.common.core.domain.entity.lis.ComDict">
|
||||
<include refid="selectComDictVo"></include>
|
||||
<where>
|
||||
|
||||
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.czlis.interfaceCommon.mapper.ComPatMapper">
|
||||
<select id="getComPat">
|
||||
select * from com_pat where brdh = #{brdh} AND yljg = #{yljg}
|
||||
</select>
|
||||
<delete id="deleteComPat">
|
||||
delete from com_pat where brdh = #{brdh} and yljg = #{yljg}
|
||||
</delete>
|
||||
<insert id="insertComPat" parameterType="com.czlis.common.core.domain.entity.lis.ComPat">
|
||||
insert into com_pat (brdh, mzh, zyh,
|
||||
sfzh, brxm, xb, brly,
|
||||
fb, sr, ksdh, bq,
|
||||
ch, aboxx, rhxx, ryrq,
|
||||
jzdz, xxdh, jbdh, bsbr,
|
||||
xxzt, sjys, zd, yljg
|
||||
)
|
||||
values (#{brdh,jdbcType=VARCHAR}, #{mzh,jdbcType=VARCHAR}, #{zyh,jdbcType=VARCHAR},
|
||||
#{sfzh,jdbcType=CHAR}, #{brxm,jdbcType=VARCHAR}, #{xb,jdbcType=CHAR}, #{brly,jdbcType=VARCHAR},
|
||||
#{fb,jdbcType=VARCHAR}, #{sr,jdbcType=TIMESTAMP}, #{ksdh,jdbcType=VARCHAR}, #{bq,jdbcType=VARCHAR},
|
||||
#{ch,jdbcType=VARCHAR}, #{aboxx,jdbcType=CHAR}, #{rhxx,jdbcType=CHAR}, #{ryrq,jdbcType=TIMESTAMP},
|
||||
#{jzdz,jdbcType=VARCHAR}, #{xxdh,jdbcType=VARCHAR}, #{jbdh,jdbcType=VARCHAR}, #{bsbr,jdbcType=CHAR},
|
||||
#{xxzt,jdbcType=CHAR}, #{sjys,jdbcType=VARCHAR}, #{zd,jdbcType=VARCHAR}, #{yljg,jdbcType=VARCHAR}
|
||||
)
|
||||
</insert>
|
||||
</mapper>
|
||||
@ -3,7 +3,7 @@
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.czlis.interfaceCommon.mapper.LabInputcolMapper">
|
||||
<select id="getLabInputcol" resultType="com.czlis.common.core.domain.entity.lis.LabInputcol">
|
||||
SELECT * FROM lab_inputcol where yq = #{yq}
|
||||
SELECT * FROM lab_inputcol where yq = #{yq} order by xh ASC
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
|
||||
@ -2,6 +2,7 @@ package com.czlis.system.config;
|
||||
|
||||
import com.czlis.common.asyncmanager.AsyncManager;
|
||||
import com.czlis.common.config.RuoYiConfig;
|
||||
import com.czlis.common.core.domain.entity.lis.ComDict;
|
||||
import com.czlis.common.utils.ComDictUtils;
|
||||
import com.czlis.interfaceCommon.mapper.ComDictMapper;
|
||||
import com.czlis.quartz.service.impl.SysJobServiceImpl;
|
||||
@ -19,6 +20,7 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.TimeZone;
|
||||
import java.util.TimerTask;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 程序注解配置
|
||||
@ -63,7 +65,8 @@ public class ApplicationConfig {
|
||||
try {
|
||||
//清空所有com_dict缓存
|
||||
ComDictUtils.clearDictCache();
|
||||
list.stream().forEach(zdlb -> ComDictUtils.setDictCache(zdlb, comDictMapper.getComDictListByZdlb(zdlb)));
|
||||
List<ComDict> comDictList=comDictMapper.getComDictListin(list);
|
||||
list.stream().forEach(zdlb -> ComDictUtils.setDictCache(zdlb,comDictList.stream().filter(lis->zdlb.equals(lis.getZdlb())).collect(Collectors.toList())));
|
||||
} catch (Exception e) {
|
||||
log.error("获取lis代码字典失败,异步执行{}方法失败",this, e);
|
||||
}
|
||||
|
||||
@ -1,13 +1,11 @@
|
||||
package com.czlis.liswork.service.impl;
|
||||
|
||||
|
||||
import cn.hutool.poi.excel.cell.CellSetter;
|
||||
import com.czlis.common.core.domain.entity.SysLoginParam;
|
||||
import com.czlis.common.core.domain.entity.SysUser;
|
||||
import com.czlis.common.core.domain.entity.lis.*;
|
||||
import com.czlis.common.utils.DateUtils;
|
||||
import com.czlis.common.utils.SecurityUtils;
|
||||
import com.czlis.common.utils.ServletUtils;
|
||||
import com.czlis.common.utils.StringUtils;
|
||||
import com.czlis.common.utils.*;
|
||||
import com.czlis.common.utils.ip.IpUtils;
|
||||
import com.czlis.interfaceCommon.constants.ComLogConstants;
|
||||
import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants;
|
||||
@ -27,6 +25,7 @@ import com.czlis.liswork.service.LisWorkOperService;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.time.DateFormatUtils;
|
||||
import org.openxmlformats.schemas.drawingml.x2006.main.CTRegularTextRun;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@ -48,11 +47,49 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
||||
}
|
||||
@Override
|
||||
public Result changePat(LabPat labPat) {
|
||||
if("2".equals(labPat.getJgbz())) return new Result("-1", "结果已审核禁止修改!");
|
||||
if("5".equals(labPat.getJgbz())) return new Result("-1", "结果已锁定禁止修改!");
|
||||
if("1".equals(labPat.getJgbz())) return new Result("-1", "结果已初审禁止修改!");
|
||||
int problemId = JsonParamUtils.getParameterToInt("problemId", 0);
|
||||
Date jyrq=labPat.getJyrq();
|
||||
String yq=labPat.getYq();
|
||||
String ybh=labPat.getYbh();
|
||||
//要防止别已经修改过了
|
||||
LabPat labPat0 =commonUtil.getLabPatOne(jyrq,yq,ybh);
|
||||
if(labPat0!=null) {
|
||||
if ("2".equals(labPat0.getJgbz())) return new Result("-1", "结果已审核禁止修改!");
|
||||
if ("5".equals(labPat0.getJgbz())) return new Result("-1", "结果已锁定禁止修改!");
|
||||
if ("1".equals(labPat0.getJgbz())) return new Result("-1", "结果已初审禁止修改!");
|
||||
String sqh=labPat0.getSqh();
|
||||
if(sqh==null)sqh="";
|
||||
String brdh=labPat0.getBrdh();
|
||||
if(brdh==null)brdh="";
|
||||
String sqh1=labPat.getSqh();
|
||||
if(sqh1==null)sqh1="";
|
||||
String brdh1=labPat.getBrdh();
|
||||
if(brdh1==null)brdh1="";
|
||||
//通过修改申请号触发病人信息载入
|
||||
if(!"".equals(sqh1)&&sqh1.equals(sqh)){
|
||||
return lisWorkUtils.newPatInfo(jyrq, ybh, sqh1, yq, problemId);
|
||||
}
|
||||
//通过修改住院号触发病人信息载入
|
||||
if(!"".equals(brdh1)&&brdh1.equals(brdh)){
|
||||
return lisWorkUtils.newPat(jyrq, ybh, yq, brdh1,labPat.getBrly(),labPat.getYljg(), problemId);
|
||||
}
|
||||
commonUtil.updateLabPat(labPat);
|
||||
saveallresult(labPat.getJyrq(),labPat.getYq(),labPat.getYbh());
|
||||
}else{
|
||||
String sqh1=labPat.getSqh();
|
||||
if(sqh1==null)sqh1="";
|
||||
String brdh1=labPat.getBrdh();
|
||||
if(brdh1==null)brdh1="";
|
||||
// 通过修改申请号触发病人信息载入
|
||||
if(!"".equals(sqh1)){
|
||||
return lisWorkUtils.newPatInfo(jyrq, ybh, sqh1, yq, problemId);
|
||||
}
|
||||
//通过修改住院号触发病人信息载入
|
||||
if(!"".equals(brdh1)){
|
||||
return lisWorkUtils.newPat(jyrq, ybh, yq, brdh1,labPat.getBrly(),labPat.getYljg(), problemId);
|
||||
}
|
||||
commonUtil.insertLabPat(labPat);
|
||||
}
|
||||
saveallresult(jyrq,yq,ybh);
|
||||
return new Result("0", "保存成功");
|
||||
}
|
||||
|
||||
@ -67,6 +104,11 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
||||
*/
|
||||
@Override
|
||||
public Result changePatColumn(Date jyrq,String yq, String ybh,String column,String value) {
|
||||
int problemId = ServletUtils.getParameterToInt("problemId", 0);
|
||||
if("brdh".equals(column)){
|
||||
return lisWorkUtils.newPat(jyrq, ybh, yq, value,"","", problemId);
|
||||
}
|
||||
if("sqh".equals(column)){return lisWorkUtils.newPatInfo(jyrq, ybh, value, yq, problemId);}
|
||||
return lisWorkUtils.changePatColumn(jyrq, yq, ybh, column, value);
|
||||
}
|
||||
@Override
|
||||
|
||||
@ -99,7 +99,75 @@ public class LisWorkServiceImpl implements LisWorkService {
|
||||
}
|
||||
@Override
|
||||
public Result getInstrdConfig(String yq) {
|
||||
List<ComOpt> instrdConfig = lisWorkMapper.getInstrdConfig(yq);
|
||||
List<ComOpt> comOptlist = lisWorkMapper.getInstrdConfig(yq);
|
||||
List<LabInputcol> labInputcolList = commonUtil.getLabInputcol(yq);
|
||||
for(LabInputcol labInputcol:labInputcolList){
|
||||
String zdmc=labInputcol.getZdmc();
|
||||
labInputcol.setZdlb("1");
|
||||
labInputcol.setDict("");
|
||||
switch(zdmc){
|
||||
case "brly":
|
||||
labInputcol.setDict("PT");
|
||||
break;
|
||||
case "brxb":
|
||||
labInputcol.setDict("SX");
|
||||
break;
|
||||
case "nldw":
|
||||
labInputcol.setDict("AU");
|
||||
break;
|
||||
case "nl":
|
||||
labInputcol.setZdlb("2");
|
||||
break;
|
||||
case "fb":
|
||||
labInputcol.setDict("FT");
|
||||
break;
|
||||
case "ksdh":
|
||||
labInputcol.setDict("DP");
|
||||
break;
|
||||
case "yblx":
|
||||
labInputcol.setDict("BT");
|
||||
break;
|
||||
case "sjys":
|
||||
labInputcol.setDict("SRD");
|
||||
break;
|
||||
case "sqsj":
|
||||
case "cyrq":
|
||||
case "dysj":
|
||||
labInputcol.setZdlb("3");
|
||||
break;
|
||||
case "yhdh":
|
||||
case "hdys":
|
||||
labInputcol.setDict("USR");
|
||||
break;
|
||||
case "zd":
|
||||
labInputcol.setDict("DG");
|
||||
break;
|
||||
case "bz":
|
||||
labInputcol.setDict("CM");
|
||||
break;
|
||||
case "jzbz":
|
||||
labInputcol.setZdlb("4");
|
||||
break;
|
||||
case "yljg":
|
||||
labInputcol.setDict("HOS");
|
||||
break;
|
||||
case "slzq":
|
||||
labInputcol.setDict("SLZQ");
|
||||
break;
|
||||
case "ybzt":
|
||||
labInputcol.setDict("ST");
|
||||
break;
|
||||
case "zjlx":
|
||||
labInputcol.setDict("ZJLX");
|
||||
break;
|
||||
default:
|
||||
labInputcol.setZdlb("1");
|
||||
labInputcol.setDict("");
|
||||
}
|
||||
}
|
||||
Map<String,Object> instrdConfig=new HashMap<String,Object>();
|
||||
instrdConfig.put("comOptlist",comOptlist);
|
||||
instrdConfig.put("labInputcolList",labInputcolList);
|
||||
return new Result("0","获取仪器参数成功!",instrdConfig);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user