主业务添加代码
This commit is contained in:
parent
9cde711a53
commit
17d6b6d220
@ -1,20 +1,33 @@
|
|||||||
package com.czlis.common.core.domain;
|
package com.czlis.common.core.domain;
|
||||||
|
|
||||||
|
|
||||||
|
import cn.hutool.json.JSONUtil;
|
||||||
|
import com.alibaba.fastjson2.JSON;
|
||||||
|
import com.czlis.common.utils.JsonParamUtils;
|
||||||
|
import com.czlis.common.utils.ServletUtils;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 出参格式
|
* 出参格式
|
||||||
* {"code":"","message":""}
|
* {"code":"","message":""}
|
||||||
*/
|
*/
|
||||||
|
@Slf4j
|
||||||
@Data
|
@Data
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
public class Result {
|
public class Result {
|
||||||
private String code;
|
private String code;
|
||||||
private String msg;
|
private String msg;
|
||||||
private Object data;
|
private Object data;
|
||||||
|
private String url;// 下一步请求的URL
|
||||||
|
private String method;// 下一步请求的方法(get/post等)
|
||||||
|
private Object params;// 下一步请求的URL参数
|
||||||
|
private Integer problemId;// 问题ID(之前提到的关键标识)
|
||||||
public Result(String resultCode, String message) {
|
public Result(String resultCode, String message) {
|
||||||
super();
|
super();
|
||||||
this.code = resultCode;
|
this.code = resultCode;
|
||||||
@ -26,4 +39,23 @@ public class Result {
|
|||||||
this.msg = message;
|
this.msg = message;
|
||||||
this.data = data;
|
this.data = data;
|
||||||
}
|
}
|
||||||
|
public Result(String resultCode, String message,Integer problemId) {
|
||||||
|
this.code = resultCode;
|
||||||
|
this.msg = message;
|
||||||
|
Integer problemId0=problemId;
|
||||||
|
HttpServletRequest request =ServletUtils.getRequest();
|
||||||
|
this.url = request.getContextPath() + request.getServletPath();
|
||||||
|
this.method = request.getMethod();
|
||||||
|
if("GET".equals(this.method)){
|
||||||
|
this.params = ServletUtils.getParamMap(request);
|
||||||
|
}else {
|
||||||
|
try {
|
||||||
|
this.data = JsonParamUtils.getJsonParams(request);
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.problemId=problemId0;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,130 @@
|
|||||||
|
package com.czlis.common.utils;
|
||||||
|
|
||||||
|
import com.czlis.common.core.text.Convert;
|
||||||
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import java.io.BufferedReader;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStreamReader;
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
|
import java.text.ParseException;
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 从 POST JSON 请求中获取参数清单的工具类
|
||||||
|
*/
|
||||||
|
public class JsonParamUtils {
|
||||||
|
|
||||||
|
private static final ObjectMapper objectMapper = new ObjectMapper();
|
||||||
|
public static Map<String, Object> getJsonParams(){
|
||||||
|
try {
|
||||||
|
return getJsonParams(ServletUtils.getRequest());
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 读取 POST JSON 请求的参数,返回参数名-值映射
|
||||||
|
*/
|
||||||
|
public static Map<String, Object> getJsonParams(HttpServletRequest request) throws IOException {
|
||||||
|
// 1. 读取请求体中的 JSON 字符串
|
||||||
|
StringBuilder jsonSb = new StringBuilder();
|
||||||
|
String line;
|
||||||
|
try (BufferedReader reader = new BufferedReader(
|
||||||
|
new InputStreamReader(request.getInputStream(), StandardCharsets.UTF_8))) {
|
||||||
|
while ((line = reader.readLine()) != null) {
|
||||||
|
jsonSb.append(line);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String jsonStr = jsonSb.toString();
|
||||||
|
|
||||||
|
// 2. 若 JSON 为空,返回空 Map
|
||||||
|
if (jsonStr.isEmpty()) {
|
||||||
|
return new HashMap<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. 将 JSON 字符串解析为 Map(键为参数名,值为参数值)
|
||||||
|
return objectMapper.readValue(jsonStr, Map.class);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 获取String参数
|
||||||
|
*/
|
||||||
|
public static String getParameter(String name) {
|
||||||
|
return getString(getJsonParams(),name);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取String参数
|
||||||
|
*/
|
||||||
|
public static String getParameter(String name, String defaultValue) {
|
||||||
|
return Convert.toStr(getString(getJsonParams(),name), defaultValue);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取Integer参数
|
||||||
|
*/
|
||||||
|
public static Integer getParameterToInt(String name) {
|
||||||
|
return Convert.toInt(getString(getJsonParams(),name));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取Integer参数
|
||||||
|
*/
|
||||||
|
public static Integer getParameterToInt(String name, Integer defaultValue) {
|
||||||
|
return Convert.toInt(getString(getJsonParams(),name), defaultValue);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 从 Map 中安全获取 String 类型参数
|
||||||
|
*/
|
||||||
|
public static String getString(Map<String, Object> map, String key) {
|
||||||
|
if (map == null || key == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
Object value = map.get(key);
|
||||||
|
return (value instanceof String) ? (String) value : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 从 Map 中安全获取 Integer 类型参数
|
||||||
|
*/
|
||||||
|
public static Integer getInteger(Map<String, Object> map, String key) {
|
||||||
|
if (map == null || key == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
Object value = map.get(key);
|
||||||
|
// 支持数字类型(如 Integer、Long、Double 等)转为 Integer
|
||||||
|
if (value instanceof Number) {
|
||||||
|
return ((Number) value).intValue();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 从 Map 中安全获取 Date 类型参数(指定格式)
|
||||||
|
*/
|
||||||
|
public static Date getDate(Map<String, Object> map, String key, String pattern) {
|
||||||
|
String dateStr = getString(map, key);
|
||||||
|
if (dateStr == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
return new SimpleDateFormat(pattern).parse(dateStr);
|
||||||
|
} catch (ParseException e) {
|
||||||
|
return null; // 格式错误返回 null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 从 Map 中安全获取 Boolean 类型参数
|
||||||
|
*/
|
||||||
|
public static Boolean getBoolean(Map<String, Object> map, String key) {
|
||||||
|
if (map == null || key == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
Object value = map.get(key);
|
||||||
|
return (value instanceof Boolean) ? (Boolean) value : null;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -12,4 +12,16 @@ public class LisinterfaceNameConstants {
|
|||||||
//获取门诊病人信息列表
|
//获取门诊病人信息列表
|
||||||
public static final String DAYMESSAGE_GETOUTPATLIST = "222";
|
public static final String DAYMESSAGE_GETOUTPATLIST = "222";
|
||||||
public static final String DAYMESSAGE_GETPATIENT = "204";
|
public static final String DAYMESSAGE_GETPATIENT = "204";
|
||||||
|
/**
|
||||||
|
* 准备发送报告-5
|
||||||
|
*/
|
||||||
|
public static final String REPORTSTART = "5";
|
||||||
|
/**
|
||||||
|
* 发送报告-1
|
||||||
|
*/
|
||||||
|
public static final String REPORTEND = "1";
|
||||||
|
/**
|
||||||
|
* 撤销报告-0
|
||||||
|
*/
|
||||||
|
public static final String REPORTCANCAL = "0";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,35 @@
|
|||||||
|
package com.czlis.interfaceCommon.constants;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检验报告单状态常量(lab_pat.jgbz)
|
||||||
|
*/
|
||||||
|
public class ReportStatusConstants {
|
||||||
|
/**
|
||||||
|
* 未审核报告默认状态=0
|
||||||
|
*/
|
||||||
|
public static final String DEFAULT = "0";
|
||||||
|
/**
|
||||||
|
* 初审=1
|
||||||
|
*/
|
||||||
|
public static final String PRELIM = "1";
|
||||||
|
/**
|
||||||
|
* 终审报告完成=2
|
||||||
|
*/
|
||||||
|
public static final String CONFIRM = "2";
|
||||||
|
/**
|
||||||
|
* 初级报告发出=3
|
||||||
|
*/
|
||||||
|
public static final String FIRST = "3";
|
||||||
|
/**
|
||||||
|
* 二级报告发出=4
|
||||||
|
*/
|
||||||
|
public static final String SECOND = "4";
|
||||||
|
/**
|
||||||
|
* 报告锁定=5
|
||||||
|
*/
|
||||||
|
public static final String STOP = "5";
|
||||||
|
/**
|
||||||
|
* 撤销报告=C
|
||||||
|
*/
|
||||||
|
public static final String CANCAL = "C";
|
||||||
|
}
|
||||||
@ -1,6 +1,45 @@
|
|||||||
package com.czlis.interfaceCommon.constants;
|
package com.czlis.interfaceCommon.constants;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申请单状态常量(lab_reqmain.zt)
|
||||||
|
*/
|
||||||
public class SampleStatusConstants {
|
public class SampleStatusConstants {
|
||||||
|
/**
|
||||||
|
* 标本开单,新建样本-1
|
||||||
|
*/
|
||||||
|
public static final String CREATE="1";
|
||||||
|
/**
|
||||||
|
* 标本执行,打印条码-11
|
||||||
|
*/
|
||||||
|
public static final String PRINT="11";
|
||||||
|
/**
|
||||||
|
* 标本采样-12
|
||||||
|
*/
|
||||||
|
public static final String COLLECTION="12";
|
||||||
|
/**
|
||||||
|
* 标本送出-13
|
||||||
|
*/
|
||||||
|
public static final String SEND="13";
|
||||||
|
/**
|
||||||
|
* 标本签收-2
|
||||||
|
*/
|
||||||
|
public static final String SIGNFOR = "2";
|
||||||
|
/**
|
||||||
|
* 上机开始检测-3(暂时未使用)
|
||||||
|
*/
|
||||||
|
public static final String START = "3";
|
||||||
|
/**
|
||||||
|
* 审核完成-4
|
||||||
|
*/
|
||||||
|
public static final String CONFIRM = "4";
|
||||||
|
/**
|
||||||
|
* 剔回样本-8
|
||||||
|
*/
|
||||||
|
public static final String REBACK = "8";
|
||||||
|
/**
|
||||||
|
* 作废样本-9
|
||||||
|
*/
|
||||||
|
public static final String CANCAL = "9";
|
||||||
|
|
||||||
|
|
||||||
public static final String SIGNFOR = "2"; //标本签收
|
|
||||||
}
|
}
|
||||||
@ -0,0 +1,17 @@
|
|||||||
|
package com.czlis.interfaceCommon.mapper;
|
||||||
|
|
||||||
|
import com.czlis.common.core.domain.entity.lis.LabInstr;
|
||||||
|
import com.czlis.common.core.domain.entity.lis.XmInfo;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public interface LabInstrMapper {
|
||||||
|
List<LabInstr> getLabInstrAll();
|
||||||
|
List<LabInstr> getLabInstrList(LabInstr labInstr);
|
||||||
|
LabInstr getLabInstr(@Param("yq")String yq);
|
||||||
|
String getYqmc(@Param("yq")String yq);
|
||||||
|
String getYqdl(@Param("yq")String yq);
|
||||||
|
String getBgdh(@Param("yq")String yq);
|
||||||
|
String getLisgroup(@Param("yq")String yq);
|
||||||
|
}
|
||||||
@ -42,6 +42,8 @@ public class CommonUtil {
|
|||||||
@Autowired
|
@Autowired
|
||||||
XmValMapper xmValMapper;
|
XmValMapper xmValMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
LabInstrMapper labInstrMapper;
|
||||||
|
@Autowired
|
||||||
XmAlarmdetailMapper xmAlarmdetailMapper;
|
XmAlarmdetailMapper xmAlarmdetailMapper;
|
||||||
//====检验主表操作方法集合===
|
//====检验主表操作方法集合===
|
||||||
public LabPat getLabPatOne(Date jyrq, String yq, String ybh){
|
public LabPat getLabPatOne(Date jyrq, String yq, String ybh){
|
||||||
@ -83,12 +85,17 @@ public class CommonUtil {
|
|||||||
public XmRef getXmRefValue(Map<String,Object> map) {return xmRefMapper.getXmRefValue(map);}
|
public XmRef getXmRefValue(Map<String,Object> map) {return xmRefMapper.getXmRefValue(map);}
|
||||||
public String getXmRefJgbz(String yq,String xmdh,String csjg,String csjg1,String csjg2) {return xmValMapper.getXmValJgbz(yq,xmdh,csjg,csjg1,csjg2);}
|
public String getXmRefJgbz(String yq,String xmdh,String csjg,String csjg1,String csjg2) {return xmValMapper.getXmValJgbz(yq,xmdh,csjg,csjg1,csjg2);}
|
||||||
public List<XmAlarmdetail> getXmAlarmdetail(String yq,String xmdh){return xmAlarmdetailMapper.getXmAlarmdetail(yq,xmdh);};
|
public List<XmAlarmdetail> getXmAlarmdetail(String yq,String xmdh){return xmAlarmdetailMapper.getXmAlarmdetail(yq,xmdh);};
|
||||||
|
public String getYqmc(String yq){return labInstrMapper.getYqmc(yq);}
|
||||||
|
public String getYqdl(String yq){return labInstrMapper.getYqdl(yq);}
|
||||||
|
public LabInstr getLabInstr(String yq){return labInstrMapper.getLabInstr(yq);}
|
||||||
|
public List<LabInstr> getLabInstrList(LabInstr labInstr){return labInstrMapper.getLabInstrList(labInstr);}
|
||||||
//服务器时间方法
|
//服务器时间方法
|
||||||
public Date getCurrentTime(){return commonMapper.getCurrentTime();}
|
public Date getCurrentTime(){return commonMapper.getCurrentTime();}
|
||||||
public String getCurrentDate(){return DateFormatUtils.format(commonMapper.getCurrentTime(), "yyyy-MM-dd");}
|
public String getCurrentDate(){return getDateString(getCurrentTime());}
|
||||||
public String getCurrentDateTime(){return DateFormatUtils.format(commonMapper.getCurrentTime(), "yyyy-MM-dd HH:mm:ss");}
|
public String getCurrentDateTime(){return getDateTimeString(getCurrentTime());}
|
||||||
|
public String getDateString(Date rq){return DateFormatUtils.format(rq, "yyyy-MM-dd");}
|
||||||
|
public String getDateTimeString(Date rq){return DateFormatUtils.format(rq, "yyyy-MM-dd HH:mm:ss");}
|
||||||
|
|
||||||
//字典查询单位名称
|
//字典查询单位名称
|
||||||
public String getCompany(String yljg){
|
public String getCompany(String yljg){
|
||||||
if(yljg == null || yljg.equals(""))return getCompany();
|
if(yljg == null || yljg.equals(""))return getCompany();
|
||||||
@ -130,6 +137,13 @@ public class CommonUtil {
|
|||||||
}}
|
}}
|
||||||
return comDictMapper.getComDictIdByName(zdlb,zdmc);
|
return comDictMapper.getComDictIdByName(zdlb,zdmc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取本院设置全局参数yq=HISOPT
|
||||||
|
* @param xxdh
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public String getHISOPT(String xxdh){return getComOptValue("HISOPT",xxdh);}
|
||||||
public String getComOptValue(String yq,String xxdh){
|
public String getComOptValue(String yq,String xxdh){
|
||||||
ComOpt comOpt =getOptCache(yq,xxdh);
|
ComOpt comOpt =getOptCache(yq,xxdh);
|
||||||
if(comOpt != null) {
|
if(comOpt != null) {
|
||||||
|
|||||||
@ -0,0 +1,41 @@
|
|||||||
|
<?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.LabInstrMapper">
|
||||||
|
|
||||||
|
<select id="getLabInstrAll" resultType="com.czlis.common.core.domain.entity.lis.LabInstr">
|
||||||
|
select * from lab_instr
|
||||||
|
</select>
|
||||||
|
<select id="getLabInstr" resultType="com.czlis.common.core.domain.entity.lis.LabInstr">
|
||||||
|
select * from lab_instr where yq=#{yq}
|
||||||
|
</select>
|
||||||
|
<select id="getYqmc" resultType="String">
|
||||||
|
select yqmc from lab_instr where yq=#{yq}
|
||||||
|
</select>
|
||||||
|
<select id="getBgdh" resultType="String">
|
||||||
|
select bgdh from lab_instr where yq=#{yq}
|
||||||
|
</select>
|
||||||
|
<select id="getYqdl" resultType="String">
|
||||||
|
select yqdl from lab_instr where yq=#{yq}
|
||||||
|
</select>
|
||||||
|
<select id="getLisgroup" resultType="String">
|
||||||
|
select lisgroup from lab_instr where yq=#{yq}
|
||||||
|
</select>
|
||||||
|
<select id="getLabInstrList" resultType="com.czlis.common.core.domain.entity.lis.LabInstr" parameterType="com.czlis.common.core.domain.entity.lis.LabInstr">
|
||||||
|
select * from lab_instr
|
||||||
|
<where>
|
||||||
|
<if test="yq != null and yq !=''">and yq = #{yq}</if>
|
||||||
|
<if test="yqmc != null and yqmc !=''">and yqmc = #{yqmc}</if>
|
||||||
|
<if test="zcm != null and zcm !=''">and zcm = #{zcm}</if>
|
||||||
|
<if test="yqdl != null and yqdl !=''">and yqdl = #{yqdl}</if>
|
||||||
|
<if test="lisgroup != null and lisgroup !=''">and lisgroup = #{lisgroup}</if>
|
||||||
|
<if test="yljg != null and yljg !=''">and yljg = #{yljg}</if>
|
||||||
|
<if test="useflag != null and useflag !=''">and useflag = #{useflag}</if>
|
||||||
|
<if test="instrid != null and instrid !=''">and instrid = #{instrid}</if>
|
||||||
|
<if test="bgdh != null and bgdh !=''">and bgdh = #{bgdh}</if>
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</mapper>
|
||||||
@ -3,16 +3,18 @@ package com.czlis.liswork.controller.work;
|
|||||||
import com.czlis.common.core.controller.BaseController;
|
import com.czlis.common.core.controller.BaseController;
|
||||||
import com.czlis.common.core.domain.Result;
|
import com.czlis.common.core.domain.Result;
|
||||||
import com.czlis.common.core.domain.entity.lis.LabPat;
|
import com.czlis.common.core.domain.entity.lis.LabPat;
|
||||||
|
import com.czlis.common.utils.ServletUtils;
|
||||||
import com.czlis.liswork.service.LisWorkOperService;
|
import com.czlis.liswork.service.LisWorkOperService;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
|
import java.text.ParseException;
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.Map;
|
||||||
|
@Slf4j
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/lisworkoper")
|
@RequestMapping("/lisworkoper")
|
||||||
public class LisWorkOperController extends BaseController {
|
public class LisWorkOperController extends BaseController {
|
||||||
@ -46,9 +48,12 @@ public class LisWorkOperController extends BaseController {
|
|||||||
* @param hdys 核对医生
|
* @param hdys 核对医生
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@ApiOperation("修改病人信息")
|
@ApiOperation("审核报告")
|
||||||
@PostMapping("/check2")
|
@GetMapping("/check2")
|
||||||
public Result check2(Date jyrq, String yq, String ybh,String hdys){
|
public Result check21( Date jyrq, String yq, String ybh, String hdys){
|
||||||
|
log.info("yq:{}", yq);
|
||||||
|
hdys="lis";
|
||||||
|
|
||||||
return lisWorkOperService.check2(jyrq, yq, ybh, hdys);
|
return lisWorkOperService.check2(jyrq, yq, ybh, hdys);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
package com.czlis.liswork.mapper;
|
package com.czlis.liswork.mapper;
|
||||||
|
|
||||||
|
import com.czlis.common.core.domain.entity.lis.LabPat;
|
||||||
import com.czlis.liswork.pojo.DTO.ResultCalcDTO;
|
import com.czlis.liswork.pojo.DTO.ResultCalcDTO;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
@ -9,10 +10,13 @@ import java.util.Map;
|
|||||||
public interface LisWorkOperMapper {
|
public interface LisWorkOperMapper {
|
||||||
Long checkReqClass(@Param("sqh") String sqh,@Param("yq") String yq);
|
Long checkReqClass(@Param("sqh") String sqh,@Param("yq") String yq);
|
||||||
String selectSqxmdh(String sqh);
|
String selectSqxmdh(String sqh);
|
||||||
String selectYqdl(String yq);
|
|
||||||
void sp_setrefs(Map<String,Object> map);
|
void sp_setrefs(Map<String,Object> map);
|
||||||
void updatelabresultsqxmdhall(@Param("jyrq") Date jyrq,@Param("yq") String yq,@Param("ybh") String ybh,@Param("sqxmdh") String sqxmdh);
|
void updatelabresultsqxmdhall(@Param("jyrq") Date jyrq,@Param("yq") String yq,@Param("ybh") String ybh,@Param("sqxmdh") String sqxmdh);
|
||||||
void updatelabresultsqxmdh(@Param("jyrq") Date jyrq,@Param("yq") String yq,@Param("ybh") String ybh,@Param("sqh") String sqh);
|
void updatelabresultsqxmdh(@Param("jyrq") Date jyrq,@Param("yq") String yq,@Param("ybh") String ybh,@Param("sqh") String sqh);
|
||||||
List<ResultCalcDTO> getResultCalc(@Param("jyrq") Date jyrq, @Param("yq") String yq, @Param("ybh") String ybh);
|
List<ResultCalcDTO> getResultCalc(@Param("jyrq") Date jyrq, @Param("yq") String yq, @Param("ybh") String ybh);
|
||||||
Integer getLimitCount(Map<String,Object> map);
|
Integer getLimitCount(Map<String,Object> map);
|
||||||
|
Integer checkresultsqxmdh(@Param("jyrq") Date jyrq,@Param("yq") String yq,@Param("ybh") String ybh,@Param("sqh") String sqh);
|
||||||
|
Integer checkresultwxh(@Param("jyrq") Date jyrq, @Param("yq") String yq, @Param("ybh") String ybh);
|
||||||
|
LabPat checkdublereport(@Param("sqh") String sqh, @Param("ybh") String ybh);
|
||||||
|
LabPat checkyqdublereport(@Param("sqh") String sqh,@Param("yq") String yq, @Param("ybh") String ybh);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,14 +2,18 @@ package com.czlis.liswork.service.impl;
|
|||||||
|
|
||||||
|
|
||||||
import com.czlis.common.core.domain.entity.lis.*;
|
import com.czlis.common.core.domain.entity.lis.*;
|
||||||
|
import com.czlis.common.utils.ServletUtils;
|
||||||
import com.czlis.common.utils.StringUtils;
|
import com.czlis.common.utils.StringUtils;
|
||||||
|
import com.czlis.common.utils.ip.IpUtils;
|
||||||
import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants;
|
import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants;
|
||||||
import com.czlis.common.core.domain.Result;
|
import com.czlis.common.core.domain.Result;
|
||||||
|
import com.czlis.interfaceCommon.constants.ReportStatusConstants;
|
||||||
import com.czlis.interfaceCommon.constants.SampleStatusConstants;
|
import com.czlis.interfaceCommon.constants.SampleStatusConstants;
|
||||||
import com.czlis.interfaceCommon.mapper.LabReqdetailMapper;
|
import com.czlis.interfaceCommon.mapper.LabReqdetailMapper;
|
||||||
import com.czlis.interfaceCommon.mapper.LabReqmainMapper;
|
import com.czlis.interfaceCommon.mapper.LabReqmainMapper;
|
||||||
import com.czlis.interfaceCommon.pojo.inter.DayMessage;
|
import com.czlis.interfaceCommon.pojo.inter.DayMessage;
|
||||||
import com.czlis.interfaceCommon.pojo.inter.GetReqInterface;
|
import com.czlis.interfaceCommon.pojo.inter.GetReqInterface;
|
||||||
|
import com.czlis.interfaceCommon.pojo.inter.SetReport;
|
||||||
import com.czlis.interfaceCommon.pojo.inter.SetReqStatus;
|
import com.czlis.interfaceCommon.pojo.inter.SetReqStatus;
|
||||||
import com.czlis.interfaceCommon.utils.*;
|
import com.czlis.interfaceCommon.utils.*;
|
||||||
import com.czlis.liswork.mapper.LisWorkOperMapper;
|
import com.czlis.liswork.mapper.LisWorkOperMapper;
|
||||||
@ -18,6 +22,7 @@ import com.czlis.liswork.pojo.DTO.ResultCalcDTO;
|
|||||||
import com.czlis.liswork.service.LisWorkOperService;
|
import com.czlis.liswork.service.LisWorkOperService;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.time.DateFormatUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@ -41,8 +46,9 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
LabReqmainMapper labReqmainMapper;
|
LabReqmainMapper labReqmainMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
LabReqdetailMapper labReqdetailMapper;
|
LabReqdetailMapper labReqdetailMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Result newPatInfo(Date jyrq,String ybh, String sqh, String yq, Long userId) {
|
public Result newPatInfo(Date jyrq, String ybh, String sqh, String yq, Long userId) {
|
||||||
|
|
||||||
LabReqmain labReqmainOne = commonUtil.getLabReqmainOne(sqh);
|
LabReqmain labReqmainOne = commonUtil.getLabReqmainOne(sqh);
|
||||||
if (labReqmainOne == null) {
|
if (labReqmainOne == null) {
|
||||||
@ -58,15 +64,15 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.GETREQINTERFACE, getReqInterface);
|
lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.GETREQINTERFACE, getReqInterface);
|
||||||
labReqmainOne = commonUtil.getLabReqmainOne(sqh);
|
labReqmainOne = commonUtil.getLabReqmainOne(sqh);
|
||||||
}
|
}
|
||||||
if(labReqmainOne == null) return new Result("-1","没有获取到申请单信息!");
|
if (labReqmainOne == null) return new Result("-1", "没有获取到申请单信息!");
|
||||||
String zt = labReqmainOne.getZt().trim();
|
String zt = labReqmainOne.getZt().trim();
|
||||||
//2.校验信息
|
//2.校验信息
|
||||||
//校验状态信息
|
//校验状态信息
|
||||||
Result result1 = checkZT(sqh, yq, zt);
|
Result result1 = checkZT(sqh, yq, zt);
|
||||||
if(!result1.getCode().equals("0")) return result1;
|
if (!result1.getCode().equals("0")) return result1;
|
||||||
//校验条码类别
|
//校验条码类别
|
||||||
Result result2 = checkReqClass(sqh, yq, labReqmainOne.getBgddh());
|
Result result2 = checkReqClass(sqh, yq, labReqmainOne.getBgddh());
|
||||||
if(!result2.getCode().equals("0")) return result2;
|
if (!result2.getCode().equals("0")) return result2;
|
||||||
|
|
||||||
//3.调用his上机接口,
|
//3.调用his上机接口,
|
||||||
SetReqStatus setReqStatus = new SetReqStatus();
|
SetReqStatus setReqStatus = new SetReqStatus();
|
||||||
@ -75,7 +81,7 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
setReqStatus.setUserid(userId.toString());
|
setReqStatus.setUserid(userId.toString());
|
||||||
setReqStatus.setStatus(SampleStatusConstants.SIGNFOR);
|
setReqStatus.setStatus(SampleStatusConstants.SIGNFOR);
|
||||||
Result result = lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.SETREQSTATUS, setReqStatus);
|
Result result = lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.SETREQSTATUS, setReqStatus);
|
||||||
if(!result.getCode().equals("0")) return result;
|
if (!result.getCode().equals("0")) return result;
|
||||||
|
|
||||||
//4.获取病人信息
|
//4.获取病人信息
|
||||||
DayMessage dayMessage = new DayMessage();
|
DayMessage dayMessage = new DayMessage();
|
||||||
@ -83,7 +89,7 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
dayMessage.setYljg("1");
|
dayMessage.setYljg("1");
|
||||||
dayMessage.setUserid(userId.toString());
|
dayMessage.setUserid(userId.toString());
|
||||||
dayMessage.setMsgid(LisinterfaceNameConstants.DAYMESSAGE_GETPATIENT);
|
dayMessage.setMsgid(LisinterfaceNameConstants.DAYMESSAGE_GETPATIENT);
|
||||||
String val = labReqmainOne.getBrdh()+"|"+labReqmainOne.getBrly()+"|"; //这里有个医疗机构的,没有传,要考虑
|
String val = labReqmainOne.getBrdh() + "|" + labReqmainOne.getBrly() + "|"; //这里有个医疗机构的,没有传,要考虑
|
||||||
dayMessage.setMsg(val);
|
dayMessage.setMsg(val);
|
||||||
|
|
||||||
//5.保存数据
|
//5.保存数据
|
||||||
@ -93,7 +99,7 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
//6.写日志
|
//6.写日志
|
||||||
|
|
||||||
|
|
||||||
return new Result("0","");
|
return new Result("0", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -101,58 +107,58 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Result checkZT(String sqh,String yq,String zt){
|
private Result checkZT(String sqh, String yq, String zt) {
|
||||||
if(zt.equals("9")) return new Result("-1","当前条码已经作废,不允许上机!");
|
if (zt.equals("9")) return new Result("-1", "当前条码已经作废,不允许上机!");
|
||||||
String SP_GETTOWREQOK = commonUtil.getComOptValue("HISOPT", "SP_GETTOWREQOK"); //申请单禁止重复上机
|
String SP_GETTOWREQOK = commonUtil.getComOptValue("HISOPT", "SP_GETTOWREQOK"); //申请单禁止重复上机
|
||||||
String SP_GETTOWREQOKYQ = commonUtil.getComOptValue("HISOPT", "SP_GETTOWREQOKYQ");//申请单禁止同仪器重复上机
|
String SP_GETTOWREQOKYQ = commonUtil.getComOptValue("HISOPT", "SP_GETTOWREQOKYQ");//申请单禁止同仪器重复上机
|
||||||
if(zt.equals("2")){
|
if (zt.equals("2")) {
|
||||||
if(SP_GETTOWREQOK.equals("1")) return new Result("-1","当前条码已经上机!");
|
if (SP_GETTOWREQOK.equals("1")) return new Result("-1", "当前条码已经上机!");
|
||||||
if(SP_GETTOWREQOKYQ.equals("1")){
|
if (SP_GETTOWREQOKYQ.equals("1")) {
|
||||||
List<LabPat> labPatList = commonUtil.getLabPatListBySqh(sqh);
|
List<LabPat> labPatList = commonUtil.getLabPatListBySqh(sqh);
|
||||||
for (LabPat labPat : labPatList) {
|
for (LabPat labPat : labPatList) {
|
||||||
String yq1 = labPat.getYq();
|
String yq1 = labPat.getYq();
|
||||||
if(yq.equals(yq1)) return new Result("-1","该条码已经在当前仪器上机,不允许重复上机!");
|
if (yq.equals(yq1)) return new Result("-1", "该条码已经在当前仪器上机,不允许重复上机!");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return new Result("0","校验成功!");
|
return new Result("0", "校验成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
private Result checkReqClass(String sqh,String yq,String bgddh){
|
private Result checkReqClass(String sqh, String yq, String bgddh) {
|
||||||
String value = commonUtil.getComOptValue(yq, "chkreqclass");
|
String value = commonUtil.getComOptValue(yq, "chkreqclass");
|
||||||
if(!value.equals("1")) return new Result("0","");
|
if (!value.equals("1")) return new Result("0", "");
|
||||||
LabInstrvsreqclass labInstrvsreqclass = new LabInstrvsreqclass();
|
LabInstrvsreqclass labInstrvsreqclass = new LabInstrvsreqclass();
|
||||||
labInstrvsreqclass.setYq(yq);
|
labInstrvsreqclass.setYq(yq);
|
||||||
List<LabInstrvsreqclass> labInstrvsreqclassList = labInstrvsreqclassMapper.getLabInstrvsreqclassList(labInstrvsreqclass);
|
List<LabInstrvsreqclass> labInstrvsreqclassList = labInstrvsreqclassMapper.getLabInstrvsreqclassList(labInstrvsreqclass);
|
||||||
if(labInstrvsreqclassList.size() > 0){
|
if (labInstrvsreqclassList.size() > 0) {
|
||||||
List<LabInstrvsreqclass> collect = labInstrvsreqclassList.stream().filter(labInstrvsreqclass1 -> labInstrvsreqclass1.getBgddh().equals(bgddh)).collect(Collectors.toList());
|
List<LabInstrvsreqclass> collect = labInstrvsreqclassList.stream().filter(labInstrvsreqclass1 -> labInstrvsreqclass1.getBgddh().equals(bgddh)).collect(Collectors.toList());
|
||||||
List<LabInstrvsreqclass> collect1 = labInstrvsreqclassList.stream().filter(labInstrvsreqclass1 -> labInstrvsreqclass1.getBgddh().equals("MZ_" + bgddh)).collect(Collectors.toList());
|
List<LabInstrvsreqclass> collect1 = labInstrvsreqclassList.stream().filter(labInstrvsreqclass1 -> labInstrvsreqclass1.getBgddh().equals("MZ_" + bgddh)).collect(Collectors.toList());
|
||||||
if(collect.size() > 0) return new Result("0","");
|
if (collect.size() > 0) return new Result("0", "");
|
||||||
if(collect1.size() > 0) return new Result("0","");
|
if (collect1.size() > 0) return new Result("0", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
Long count = lisWorkOperMapper.checkReqClass(sqh, yq);
|
Long count = lisWorkOperMapper.checkReqClass(sqh, yq);
|
||||||
if(count > 0) {
|
if (count > 0) {
|
||||||
return new Result("0","");
|
return new Result("0", "");
|
||||||
}else{
|
} else {
|
||||||
return new Result("1","");
|
return new Result("1", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Result saveReqInfo(String userId,String sqh,LabReqmain labReqmain,String yq,Date jyrq,String ybh){
|
public Result saveReqInfo(String userId, String sqh, LabReqmain labReqmain, String yq, Date jyrq, String ybh) {
|
||||||
//修改状态和时间
|
//修改状态和时间
|
||||||
updateLabReqmainZT(userId,sqh);
|
updateLabReqmainZT(userId, sqh);
|
||||||
//保存lab_pat表信息
|
//保存lab_pat表信息
|
||||||
LabPat labPat = new LabPat();
|
LabPat labPat = new LabPat();
|
||||||
labPat.setJyrq(commonUtil.getCurrentTime());
|
labPat.setJyrq(commonUtil.getCurrentTime());
|
||||||
labPat.setYq(yq);
|
labPat.setYq(yq);
|
||||||
labPat.setYbh(ybh);
|
labPat.setYbh(ybh);
|
||||||
labPat.setYblx(commonUtil.getComDictIdByName("BT",labReqmain.getYblx()));
|
labPat.setYblx(commonUtil.getComDictIdByName("BT", labReqmain.getYblx()));
|
||||||
labPat.setKsdh(commonUtil.getComDictIdByName("DP",labReqmain.getKsdh()));
|
labPat.setKsdh(commonUtil.getComDictIdByName("DP", labReqmain.getKsdh()));
|
||||||
labPat.setSjys(userId);
|
labPat.setSjys(userId);
|
||||||
labPat.setBrdh(labReqmain.getBrdh());
|
labPat.setBrdh(labReqmain.getBrdh());
|
||||||
labPat.setBrxm(labReqmain.getBrxm());
|
labPat.setBrxm(labReqmain.getBrxm());
|
||||||
@ -169,7 +175,7 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
labPat.setJgbz("0");
|
labPat.setJgbz("0");
|
||||||
labPat.setZd(labReqmain.getZd());
|
labPat.setZd(labReqmain.getZd());
|
||||||
labPat.setCyrq(labReqmain.getCysj());
|
labPat.setCyrq(labReqmain.getCysj());
|
||||||
labPat.setJymd(LisUtil.substringByGbkWidth(labReqmain.getJymd(),0,50));
|
labPat.setJymd(LisUtil.substringByGbkWidth(labReqmain.getJymd(), 0, 50));
|
||||||
labPat.setLastuser(userId);
|
labPat.setLastuser(userId);
|
||||||
labPat.setLastdt(commonUtil.getCurrentTime());
|
labPat.setLastdt(commonUtil.getCurrentTime());
|
||||||
labPat.setShcs(0);
|
labPat.setShcs(0);
|
||||||
@ -179,161 +185,290 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
labPat.setAddr(labReqmain.getAddr());
|
labPat.setAddr(labReqmain.getAddr());
|
||||||
labPat.setLstd(labReqmain.getLstd());
|
labPat.setLstd(labReqmain.getLstd());
|
||||||
commonUtil.insertLabPat(labPat);
|
commonUtil.insertLabPat(labPat);
|
||||||
return new Result("0","保存成功!");
|
return new Result("0", "保存成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void updateLabReqmainZT(String userId,String sqh){
|
public void updateLabReqmainZT(String userId, String sqh) {
|
||||||
Map<String, Object> map = new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
map.put("userId",userId);
|
map.put("userId", userId);
|
||||||
map.put("sqh",sqh);
|
map.put("sqh", sqh);
|
||||||
labReqmainMapper.updateLabReqmainZT(map);
|
labReqmainMapper.updateLabReqmainZT(map);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审核报告单全流程
|
* 审核报告单全流程
|
||||||
|
*
|
||||||
* @param jyrq
|
* @param jyrq
|
||||||
* @param yq
|
* @param yq
|
||||||
* @param ybh
|
* @param ybh
|
||||||
* @param hdys
|
* @param hdys
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Result check2(Date jyrq, String yq, String ybh, String hdys){
|
public Result check2(Date jyrq, String yq, String ybh, String hdys) {
|
||||||
|
if (hdys == null || "".equals(hdys)) new Result("-1", "审核者为空,无法审核!");
|
||||||
|
//入参通过GET推送时使用ServletUtils.getParameterToInt获取
|
||||||
|
//入参通过POSTJSON时使用JsonParamUtils.getParameterToInt获取
|
||||||
|
int problemId = ServletUtils.getParameterToInt("problemId", 0);
|
||||||
|
|
||||||
//1,审核权限校验
|
//1,审核权限校验
|
||||||
if(!commonUtil.getUserPower(yq,hdys,20))return new Result("-1","当前核对者无权对本仪器报告审核!");
|
if (!commonUtil.getUserPower(yq, hdys, 20)) return new Result("-1", "当前核对者无权对本仪器报告审核!");
|
||||||
//2:数据合法性校验
|
//2:数据合法性校验
|
||||||
Result result=beforecheck2(jyrq, yq, ybh, hdys);
|
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||||
if("0".equals(result.getCode()))return result;
|
Result result = beforecheck2(labPat, hdys, problemId);
|
||||||
//3:数据完整性校验
|
if ("0".equals(result.getCode())) return result;
|
||||||
result= saveallresult(jyrq, yq, ybh);
|
//3:数据完整保存
|
||||||
if("0".equals(result.getCode()))return result;
|
saveallresult(jyrq, yq, ybh);
|
||||||
|
|
||||||
//4:CA请求业务的处理
|
//4:CA请求业务的处理
|
||||||
//Result result=addCA(jyrq, yq, ybh, hdys);
|
//Result result=addCA(jyrq, yq, ybh, hdys);
|
||||||
//if("0".equals(result.getCode()))return result;
|
//if("0".equals(result.getCode()))return result;
|
||||||
//5:数据状态修改,异步上传接口作业创建
|
//5:数据状态修改,异步上传接口作业创建
|
||||||
//Result result=aftercheck2(jyrq, yq, ybh, hdys);
|
Result result1 = aftercheck2(jyrq, yq, ybh, hdys);
|
||||||
//if("0".equals(result.getCode()))return result;
|
if ("0".equals(result1.getCode())) return result1;
|
||||||
return new Result("0","保存成功!");
|
return new Result("0", "保存成功!");
|
||||||
}
|
}
|
||||||
public Result beforecheck2(Date jyrq, String yq, String ybh, String hdys){
|
|
||||||
if(hdys==null || "".equals(hdys) ) new Result("-1","审核者为空,无法审核!");
|
public Result beforecheck2(Date jyrq, String yq, String ybh, String hdys) {
|
||||||
LabPat labPat=commonUtil.getLabPatOne(jyrq, yq, ybh);
|
int problemId = ServletUtils.getParameterToInt("problemId", 0);
|
||||||
if(labPat==null)return new Result("-1","病人信息为空禁止审核!");
|
if (hdys == null || "".equals(hdys)) new Result("-1", "审核者为空,无法审核!");
|
||||||
String jgbz=labPat.getJgbz();
|
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||||
if("2".equals(jgbz)) new Result("0","保存成功!");
|
return beforecheck2(labPat, hdys, problemId);
|
||||||
if("5".equals(jgbz)) return new Result("-1","已锁定报告禁止审核!");
|
}
|
||||||
if(!"1".equals(jgbz)){
|
|
||||||
String f_check1=commonUtil.getComOptValue(yq,"f_check1");
|
private Result beforecheck2(LabPat labPat, String hdys, Integer problemId) {
|
||||||
if("1".equals(f_check1)) return new Result("-1","审核前必须先初审!");
|
if (hdys == null || "".equals(hdys)) new Result("-1", "审核者为空,无法审核!");
|
||||||
|
Date jyrq = labPat.getJyrq();
|
||||||
|
String yq = labPat.getYq();
|
||||||
|
String ybh = labPat.getYbh();
|
||||||
|
if (labPat == null) return new Result("-1", "病人信息为空禁止审核!");
|
||||||
|
String jgbz = labPat.getJgbz();
|
||||||
|
if ("2".equals(jgbz)) new Result("0", "保存成功!");
|
||||||
|
if ("5".equals(jgbz)) return new Result("-1", "已锁定报告禁止审核!");
|
||||||
|
if (!"1".equals(jgbz)) {
|
||||||
|
String f_check1 = commonUtil.getComOptValue(yq, "f_check1");
|
||||||
|
if ("1".equals(f_check1)) return new Result("-1", "审核前必须先初审!");
|
||||||
}
|
}
|
||||||
String brxm=labPat.getBrxm();
|
String limit_brly = commonUtil.getHISOPT("limit_brly");
|
||||||
if(brxm==null || "".equals(brxm) ) new Result("-1","姓名为空禁止审核!");
|
String brly = labPat.getBrly();
|
||||||
List<LabResult> labResultList =commonUtil.getLabResultList(jyrq, yq, ybh);
|
if ("1".equals(limit_brly) && (brly == null || "".equals(brly)))
|
||||||
if(labResultList==null)return new Result("-1","结果为空禁止审核!");
|
return new Result("-1", "病人类型为空,禁止审核!");
|
||||||
|
String limit_yblx = commonUtil.getHISOPT("limit_yblx");
|
||||||
|
String yblx = labPat.getYblx();
|
||||||
|
if ("1".equals(limit_yblx) && (yblx == null || "".equals(yblx)))
|
||||||
|
return new Result("-1", "样本类型为空,禁止审核!");
|
||||||
|
String limit_brxm = commonUtil.getHISOPT("limit_brxm");
|
||||||
|
String brxm = labPat.getBrxm();
|
||||||
|
if ("1".equals(limit_brxm) && (brxm == null || "".equals(brxm)))
|
||||||
|
return new Result("-1", "病人姓名为空,禁止审核!");
|
||||||
|
if ((brxm == null || "".equals(brxm)) && problemId < 1) new Result("5", "姓名为空,你确定要审核吗?", 1);
|
||||||
|
String limit_ksdh = commonUtil.getHISOPT("limit_ksdh");
|
||||||
|
String ksdh = labPat.getKsdh();
|
||||||
|
if ("1".equals(limit_ksdh) && (ksdh == null || "".equals(ksdh)))
|
||||||
|
return new Result("-1", "科室单位为空,禁止审核!");
|
||||||
|
String limit_patno = commonUtil.getHISOPT("limit_patno");
|
||||||
|
String brdh = labPat.getBrdh();
|
||||||
|
String brlyname = commonUtil.getComDictNameById("PT", brly);
|
||||||
|
if ("1".equals(limit_patno) && (brdh == null || "".equals(brdh))) {
|
||||||
|
if (!"质控".equals(brlyname)) return new Result("-1", "病历号不能为空,禁止审核!");
|
||||||
|
}
|
||||||
|
String limit_brpatno = commonUtil.getHISOPT("limit_brpatno");
|
||||||
|
if ("1".equals(limit_brpatno) && (brdh == null || "".equals(brdh))) {
|
||||||
|
if ("1".equals(brly) || "3".equals(brly)) return new Result("-1", "门诊住院的病历号不能为空,禁止审核!");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<LabResult> labResultList = commonUtil.getLabResultList(jyrq, yq, ybh);
|
||||||
|
if (labResultList == null) return new Result("-1", "结果为空禁止审核!");
|
||||||
for (LabResult labResult : labResultList) {
|
for (LabResult labResult : labResultList) {
|
||||||
String csjg=labResult.getCsjg();
|
String csjg = labResult.getCsjg();
|
||||||
if ("未做".equals(csjg)) {
|
if ("未做".equals(csjg)) {
|
||||||
return new Result("-1","还有结果为“未做”的项目,不可审核!");
|
return new Result("-1", "还有结果为“未做”的项目,不可审核!");
|
||||||
}
|
}
|
||||||
if(csjg!=null ) {
|
if (csjg != null) {
|
||||||
if(csjg.contains("ERR"))return new Result("-1","有结果错误,不可审核!");
|
if (csjg.contains("ERR")) return new Result("-1", "有结果错误,不可审核!");
|
||||||
if(csjg.contains("需稀释"))return new Result("-1","有结果需稀释,不可审核!");
|
if (csjg.contains("需稀释")) return new Result("-1", "有结果需稀释,不可审核!");
|
||||||
if(csjg.contains("需复做"))return new Result("-1","有结果需复做,不可审核!");
|
if (csjg.contains("需复做")) return new Result("-1", "有结果需复做,不可审核!");
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return new Result("0","保存成功!");
|
if (problemId < 2) {
|
||||||
|
//多做结果判断
|
||||||
|
String otherresultmsg = commonUtil.getComOptValue(yq, "otherresultmsg");
|
||||||
|
if ("1".equals(otherresultmsg)) {
|
||||||
|
String yqdl = commonUtil.getYqdl(yq);
|
||||||
|
if (!"细菌仪".equals(yqdl)) {
|
||||||
|
int nullcount = lisWorkOperMapper.checkresultsqxmdh(jyrq, yq, ybh, labPat.getSqh());
|
||||||
|
if (nullcount > 0) return new Result("5", "结果有多做的项目,是否审核?", 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String limit_jgwxh4 = commonUtil.getHISOPT("limit_jgwxh4");
|
||||||
|
if ("1".equals(limit_jgwxh4)) {
|
||||||
|
int wxh = lisWorkOperMapper.checkresultwxh(jyrq, yq, ybh);
|
||||||
|
if (wxh > 0) return new Result("-1", "有结果为****禁止审核!");
|
||||||
|
}
|
||||||
|
String sqh = labPat.getSqh();
|
||||||
|
if (sqh == null || "".equals(sqh)) {
|
||||||
|
if (!"质控".equals(brlyname)) {
|
||||||
|
if ("1".equals(commonUtil.getHISOPT("sp_dublereport"))) {
|
||||||
|
LabPat labPat0 = lisWorkOperMapper.checkdublereport(sqh, ybh);
|
||||||
|
if(labPat0 !=null){
|
||||||
|
String yqmc=commonUtil.getYqmc(yq);
|
||||||
|
String msg="该申请单已经发过结果了,禁止审核!\r\n日期:"+commonUtil.getDateString(jyrq)+",仪器:"+yqmc+",样本号:"+ybh;
|
||||||
|
return new Result("-1", msg);
|
||||||
|
}
|
||||||
|
} else if ("1".equals(commonUtil.getHISOPT("sp_yqdublereport"))) {
|
||||||
|
LabPat labPat0 = lisWorkOperMapper.checkyqdublereport(sqh,yq, ybh);
|
||||||
|
if(labPat0 !=null){
|
||||||
|
String yqmc=commonUtil.getYqmc(yq);
|
||||||
|
String msg="该申请单已经发过结果了,禁止审核!\r\n日期:"+commonUtil.getDateString(jyrq)+",仪器:"+yqmc+",样本号:"+ybh;
|
||||||
|
return new Result("-1", msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//调用his报告接口,检查外部接口对审核前的定制需求
|
||||||
|
SetReport setReport = new SetReport();
|
||||||
|
setReport.setIp(IpUtils.getIpAddr());
|
||||||
|
setReport.setJyrq(DateFormatUtils.format(jyrq, "yyyy-MM-dd"));
|
||||||
|
setReport.setYq(yq.trim());
|
||||||
|
setReport.setYbh(ybh);
|
||||||
|
setReport.setUserid(hdys);
|
||||||
|
setReport.setStatus(LisinterfaceNameConstants.REPORTSTART);
|
||||||
|
Result result = lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.SETREPORT, setReport);
|
||||||
|
if (result.getCode().equals("5")) {
|
||||||
|
if (problemId < 3) {
|
||||||
|
return new Result(result.getCode(), result.getMsg(), 3);
|
||||||
|
}
|
||||||
|
return new Result("0", "保存成功!");
|
||||||
|
}
|
||||||
|
if (!result.getCode().equals("0")) return result;
|
||||||
|
return new Result("0", "保存成功!");
|
||||||
|
}
|
||||||
|
|
||||||
|
public Result aftercheck2(Date jyrq, String yq, String ybh, String hdys) {
|
||||||
|
//调用his报告接口,完成报告同时调用外部接口任务
|
||||||
|
SetReport setReport = new SetReport();
|
||||||
|
setReport.setIp(IpUtils.getIpAddr());
|
||||||
|
setReport.setJyrq(DateFormatUtils.format(jyrq, "yyyy-MM-dd"));
|
||||||
|
setReport.setYq(yq.trim());
|
||||||
|
setReport.setYbh(ybh);
|
||||||
|
setReport.setUserid(hdys);
|
||||||
|
setReport.setStatus(LisinterfaceNameConstants.REPORTEND);
|
||||||
|
Result result = lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.SETREPORT, setReport);
|
||||||
|
|
||||||
|
return new Result("0", "保存成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 保存所有结果的修正值,涉及:空结果清除,计算项目添加,添加单位,添加申请项目编码,参考值重新计算更新,结果标志重新计算更新,危急值标志计算更新
|
* 保存所有结果的修正值,涉及:空结果清除,计算项目添加,添加单位,添加申请项目编码,参考值重新计算更新,结果标志重新计算更新,危急值标志计算更新
|
||||||
|
*
|
||||||
* @param jyrq
|
* @param jyrq
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Result saveallresult(Date jyrq, String yq, String ybh){
|
public Result saveallresult(Date jyrq, String yq, String ybh) {
|
||||||
|
//查询病人信息
|
||||||
|
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||||
|
saveallresult(labPat);
|
||||||
|
return new Result("0", "保存成功!");
|
||||||
|
}
|
||||||
|
|
||||||
|
//内部使用
|
||||||
|
private void saveallresult(LabPat labPat) {
|
||||||
|
Date jyrq = labPat.getJyrq();
|
||||||
|
String yq = labPat.getYq();
|
||||||
|
String ybh = labPat.getYbh();
|
||||||
//清除空白结果
|
//清除空白结果
|
||||||
String keepnodataitem=commonUtil.getComOptValue(yq,"keepnodataitem");
|
String keepnodataitem = commonUtil.getComOptValue(yq, "keepnodataitem");
|
||||||
if(!"1".equals(keepnodataitem)){
|
if (!"1".equals(keepnodataitem)) {
|
||||||
commonUtil.delNullLabResult(jyrq, yq, ybh);
|
commonUtil.delNullLabResult(jyrq, yq, ybh);
|
||||||
}
|
}
|
||||||
//查询病人信息
|
|
||||||
LabPat labPat=commonUtil.getLabPatOne(jyrq, yq, ybh);
|
|
||||||
//计算项目更新
|
//计算项目更新
|
||||||
calcsample(labPat);
|
calcsample(labPat);
|
||||||
//保存最新参考值结果标志
|
//保存最新参考值结果标志
|
||||||
saverefs(labPat);
|
saverefs(labPat);
|
||||||
//补写结果表申请单项目编号
|
//补写结果表申请单项目编号
|
||||||
setItemSqxmdh(jyrq, yq, ybh,labPat.getSqh());
|
String sqh = labPat.getYbh();
|
||||||
return new Result("0","保存成功!");
|
if (sqh != null && !"".equals(sqh)) setItemSqxmdh(jyrq, yq, ybh, sqh);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 结果表补充申请单项目代码
|
* 结果表补充申请单项目代码
|
||||||
|
*
|
||||||
* @param jyrq
|
* @param jyrq
|
||||||
* @param yq
|
* @param yq
|
||||||
* @param ybh
|
* @param ybh
|
||||||
*/
|
*/
|
||||||
public void setItemSqxmdh(Date jyrq, String yq, String ybh){
|
public void setItemSqxmdh(Date jyrq, String yq, String ybh) {
|
||||||
String sqh=commonUtil.getSqhByKey(jyrq,yq,ybh);
|
String sqh = commonUtil.getSqhByKey(jyrq, yq, ybh);
|
||||||
if (sqh==null || "".equals(sqh)) {}else{
|
if (sqh == null || "".equals(sqh)) {
|
||||||
setItemSqxmdh(jyrq, yq, ybh,sqh);
|
} else {
|
||||||
|
setItemSqxmdh(jyrq, yq, ybh, sqh);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//内部使用
|
//内部使用
|
||||||
private void setItemSqxmdh(Date jyrq, String yq, String ybh, String sqh){
|
private void setItemSqxmdh(Date jyrq, String yq, String ybh, String sqh) {
|
||||||
if (sqh==null || "".equals(sqh)) {}else{
|
if (sqh == null || "".equals(sqh)) {
|
||||||
int sl=labReqdetailMapper.getCountByKey(sqh);
|
} else {
|
||||||
if(sl==1){
|
int sl = labReqdetailMapper.getCountByKey(sqh);
|
||||||
String sqxmdh=lisWorkOperMapper.selectSqxmdh(sqh);
|
if (sl == 1) {
|
||||||
lisWorkOperMapper.updatelabresultsqxmdhall(jyrq,yq,ybh,sqxmdh);
|
String sqxmdh = lisWorkOperMapper.selectSqxmdh(sqh);
|
||||||
}else{
|
lisWorkOperMapper.updatelabresultsqxmdhall(jyrq, yq, ybh, sqxmdh);
|
||||||
lisWorkOperMapper.updatelabresultsqxmdh(jyrq,yq,ybh,sqh);
|
} else {
|
||||||
|
lisWorkOperMapper.updatelabresultsqxmdh(jyrq, yq, ybh, sqh);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算项目增加及重新计算
|
* 计算项目增加及重新计算
|
||||||
|
*
|
||||||
* @param jyrq
|
* @param jyrq
|
||||||
* @param yq
|
* @param yq
|
||||||
* @param ybh
|
* @param ybh
|
||||||
*/
|
*/
|
||||||
public Result calcsample(Date jyrq, String yq, String ybh){
|
public Result calcsample(Date jyrq, String yq, String ybh) {
|
||||||
LabPat labPat=commonUtil.getLabPatOne(jyrq, yq, ybh);
|
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||||
calcsample(labPat);
|
calcsample(labPat);
|
||||||
return new Result("0","保存成功!");
|
return new Result("0", "保存成功!");
|
||||||
}
|
}
|
||||||
|
|
||||||
//内部使用
|
//内部使用
|
||||||
private void calcsample(LabPat labPat){
|
private void calcsample(LabPat labPat) {
|
||||||
Date jyrq=labPat.getJyrq();
|
Date jyrq = labPat.getJyrq();
|
||||||
String yq=labPat.getYq();
|
String yq = labPat.getYq();
|
||||||
String ybh=labPat.getYbh();
|
String ybh = labPat.getYbh();
|
||||||
List<ResultCalcDTO> resultCalcDTO=lisWorkOperMapper.getResultCalc(jyrq,yq,ybh);
|
List<ResultCalcDTO> resultCalcDTO = lisWorkOperMapper.getResultCalc(jyrq, yq, ybh);
|
||||||
String xmdhold="";
|
String xmdhold = "";
|
||||||
for (ResultCalcDTO resultCalc : resultCalcDTO) {
|
for (ResultCalcDTO resultCalc : resultCalcDTO) {
|
||||||
String jsgs=resultCalc.getJsgs();
|
String jsgs = resultCalc.getJsgs();
|
||||||
String xmdh= resultCalc.getJsxm();
|
String xmdh = resultCalc.getJsxm();
|
||||||
if(!xmdhold.equals(xmdh)) {
|
if (!xmdhold.equals(xmdh)) {
|
||||||
xmdhold = xmdh;
|
xmdhold = xmdh;
|
||||||
String sex=labPat.getBrxb().trim();
|
String sex = labPat.getBrxb().trim();
|
||||||
if( "1".equals(sex))sex="男";
|
if ("1".equals(sex)) sex = "男";
|
||||||
if( "2".equals(sex))sex="女";
|
if ("2".equals(sex)) sex = "女";
|
||||||
double age = AgeUtils.getDecimalAge(AgeUtils.getBirthDateByAge(labPat.getNl(), labPat.getNldw()));
|
double age = AgeUtils.getDecimalAge(AgeUtils.getBirthDateByAge(labPat.getNl(), labPat.getNldw()));
|
||||||
Map<String, String> variables = new HashMap<>();
|
Map<String, String> variables = new HashMap<>();
|
||||||
variables.put("SEX", sex); // 示例值
|
variables.put("SEX", sex); // 示例值
|
||||||
variables.put("AGE", String.valueOf(age));
|
variables.put("AGE", String.valueOf(age));
|
||||||
String result=CalcUtils.getValueFromCalc(jsgs,variables);
|
String result = CalcUtils.getValueFromCalc(jsgs, variables);
|
||||||
if (result != null && !result.trim().isEmpty()) {
|
if (result != null && !result.trim().isEmpty()) {
|
||||||
//插入结果值
|
//插入结果值
|
||||||
LabResult labResult=commonUtil.getLabResult(jyrq,yq,ybh,xmdh);
|
LabResult labResult = commonUtil.getLabResult(jyrq, yq, ybh, xmdh);
|
||||||
if(labResult==null){
|
if (labResult == null) {
|
||||||
labResult=new LabResult();
|
labResult = new LabResult();
|
||||||
labResult.setJyrq(jyrq);
|
labResult.setJyrq(jyrq);
|
||||||
labResult.setYq(yq);
|
labResult.setYq(yq);
|
||||||
labResult.setYbh(ybh);
|
labResult.setYbh(ybh);
|
||||||
labResult.setXmdh(xmdh);
|
labResult.setXmdh(xmdh);
|
||||||
labResult.setCsjg(result);
|
labResult.setCsjg(result);
|
||||||
commonUtil.insertLabResult(labResult);
|
commonUtil.insertLabResult(labResult);
|
||||||
}else{
|
} else {
|
||||||
labResult.setCsjg(result);
|
labResult.setCsjg(result);
|
||||||
commonUtil.updateLabResult(labResult);
|
commonUtil.updateLabResult(labResult);
|
||||||
}
|
}
|
||||||
@ -341,30 +476,34 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算项目参考值结果异常标志
|
* 计算项目参考值结果异常标志
|
||||||
|
*
|
||||||
* @param jyrq
|
* @param jyrq
|
||||||
* @param yq
|
* @param yq
|
||||||
* @param ybh
|
* @param ybh
|
||||||
*/
|
*/
|
||||||
public Result saverefs(Date jyrq, String yq, String ybh){
|
public Result saverefs(Date jyrq, String yq, String ybh) {
|
||||||
LabPat labPat=commonUtil.getLabPatOne(jyrq, yq, ybh);
|
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||||
saverefs(labPat);
|
saverefs(labPat);
|
||||||
return new Result("0","保存成功!");
|
return new Result("0", "保存成功!");
|
||||||
}
|
}
|
||||||
|
//内部使用
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 计算项目参考值结果异常标志(内部使用)
|
* 计算项目参考值结果异常标志(内部使用)
|
||||||
|
*
|
||||||
* @param labPat
|
* @param labPat
|
||||||
* @return 返回值0正常,1有危急值明细存在
|
* @return 返回值0正常, 1有危急值明细存在
|
||||||
*/
|
*/
|
||||||
private int saverefs(LabPat labPat){
|
private int saverefs(LabPat labPat) {
|
||||||
Date jyrq=labPat.getJyrq();
|
Date jyrq = labPat.getJyrq();
|
||||||
String yq=labPat.getYq();
|
String yq = labPat.getYq();
|
||||||
String ybh=labPat.getYbh();
|
String ybh = labPat.getYbh();
|
||||||
String yqdl=lisWorkOperMapper.selectYqdl(yq);
|
String yqdl = commonUtil.getYqdl(yq);
|
||||||
boolean lb_setbj=true,lb_wjz=false;
|
boolean lb_setbj = true, lb_wjz = false;
|
||||||
if(!"细菌仪".equals(yqdl)) {
|
if (!"细菌仪".equals(yqdl)) {
|
||||||
Map<String, Object> map = new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
map.put("jyrq", jyrq);
|
map.put("jyrq", jyrq);
|
||||||
map.put("yq", yq);
|
map.put("yq", yq);
|
||||||
@ -376,84 +515,86 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
String retCode = String.valueOf(map.get("retcode"));
|
String retCode = String.valueOf(map.get("retcode"));
|
||||||
String retMsg = String.valueOf(map.get("retmsg"));
|
String retMsg = String.valueOf(map.get("retmsg"));
|
||||||
log.info("调用存储过程{}返回值:{},{}", "sp_setrefs", retCode, retMsg);
|
log.info("调用存储过程{}返回值:{},{}", "sp_setrefs", retCode, retMsg);
|
||||||
if (retCode == null || "".equals(retCode) || "-1".equals(retCode)) lb_setbj=false;
|
if (retCode == null || "".equals(retCode) || "-1".equals(retCode)) lb_setbj = false;
|
||||||
List<LabResult> labResultList=commonUtil.getLabResultList(jyrq, yq, ybh);
|
List<LabResult> labResultList = commonUtil.getLabResultList(jyrq, yq, ybh);
|
||||||
for (LabResult labResult : labResultList) {
|
for (LabResult labResult : labResultList) {
|
||||||
String csjg=labResult.getCsjg();
|
String csjg = labResult.getCsjg();
|
||||||
boolean lb_nummode=LisUtil.isTureNumber(csjg);
|
boolean lb_nummode = LisUtil.isTureNumber(csjg);
|
||||||
String ygzq = labResult.getYgzq();
|
String ygzq = labResult.getYgzq();
|
||||||
String ygzd = labResult.getYgzd();
|
String ygzd = labResult.getYgzd();
|
||||||
//当结果为数值并且与周期诊断无关,计算存储过程保存成功后,只进行危急值判断
|
//当结果为数值并且与周期诊断无关,计算存储过程保存成功后,只进行危急值判断
|
||||||
if(lb_nummode && lb_setbj && !"Y".equals(ygzd) && !"Y".equals(ygzq)){
|
if (lb_nummode && lb_setbj && !"Y".equals(ygzd) && !"Y".equals(ygzq)) {
|
||||||
int wjz=alarmcondition(labPat,labResult);
|
int wjz = alarmcondition(labPat, labResult);
|
||||||
if(wjz!=-1){//危急值标识特殊判断存在时优先使用特殊结果
|
if (wjz != -1) {//危急值标识特殊判断存在时优先使用特殊结果
|
||||||
String resultalarmflag=labResult.getAlarmFlag();
|
String resultalarmflag = labResult.getAlarmFlag();
|
||||||
if(("".equals(resultalarmflag) && lb_wjz)) {
|
if (("".equals(resultalarmflag) && lb_wjz)) {
|
||||||
String jgbz=labResult.getJgbz();
|
String jgbz = labResult.getJgbz();
|
||||||
if(jgbz==null ||!"L".equals(jgbz)) jgbz="H";
|
if (jgbz == null || !"L".equals(jgbz)) jgbz = "H";
|
||||||
labResult.setAlarmFlag(jgbz);
|
labResult.setAlarmFlag(jgbz);
|
||||||
commonUtil.updateLabResult(labResult);
|
commonUtil.updateLabResult(labResult);
|
||||||
}else if(!"".equals(resultalarmflag) && !lb_wjz){
|
} else if (!"".equals(resultalarmflag) && !lb_wjz) {
|
||||||
labResult.setAlarmFlag("");
|
labResult.setAlarmFlag("");
|
||||||
commonUtil.updateLabResult(labResult);
|
commonUtil.updateLabResult(labResult);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
String resultalarmflag1=labResult.getAlarmFlag();
|
String resultalarmflag1 = labResult.getAlarmFlag();
|
||||||
if(!"".equals(resultalarmflag1) && resultalarmflag1!=null)lb_wjz=true;
|
if (!"".equals(resultalarmflag1) && resultalarmflag1 != null) lb_wjz = true;
|
||||||
}else {
|
} else {
|
||||||
int wjz = setrefs( labPat, labResult);
|
int wjz = setrefs(labPat, labResult);
|
||||||
if (wjz == 1) lb_wjz = true;
|
if (wjz == 1) lb_wjz = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//危急值标识去除原则
|
//危急值标识去除原则
|
||||||
String brxm=labPat.getBrxm();
|
String brxm = labPat.getBrxm();
|
||||||
if(brxm.contains("质控")||brxm.contains("复查")||brxm.contains("QC")||brxm.contains("qc")||brxm.contains("软化水")||brxm.contains("锅炉水")){
|
if (brxm.contains("质控") || brxm.contains("复查") || brxm.contains("QC") || brxm.contains("qc") || brxm.contains("软化水") || brxm.contains("锅炉水")) {
|
||||||
lb_wjz=false;
|
lb_wjz = false;
|
||||||
};
|
}
|
||||||
String brly=labPat.getBrly();
|
;
|
||||||
brly=commonUtil.getComDictNameById("PT",brly);
|
String brly = labPat.getBrly();
|
||||||
if(brly.contains("质控"))lb_wjz=false;
|
brly = commonUtil.getComDictNameById("PT", brly);
|
||||||
String ksdh=labPat.getKsdh();
|
if (brly.contains("质控")) lb_wjz = false;
|
||||||
ksdh=commonUtil.getComDictNameById("DP",ksdh);
|
String ksdh = labPat.getKsdh();
|
||||||
if(ksdh.contains("检验科"))lb_wjz=false;
|
ksdh = commonUtil.getComDictNameById("DP", ksdh);
|
||||||
|
if (ksdh.contains("检验科")) lb_wjz = false;
|
||||||
//同步主表危急值标识
|
//同步主表危急值标识
|
||||||
String alarmflag=labPat.getAlarmflag();
|
String alarmflag = labPat.getAlarmflag();
|
||||||
if(("1".equals(alarmflag) && !lb_wjz)){
|
if (("1".equals(alarmflag) && !lb_wjz)) {
|
||||||
labPat.setAlarmflag("1");
|
labPat.setAlarmflag("1");
|
||||||
commonUtil.updateLabPat(labPat);
|
commonUtil.updateLabPat(labPat);
|
||||||
}else if(("".equals(alarmflag)||alarmflag==null) && lb_wjz){
|
} else if (("".equals(alarmflag) || alarmflag == null) && lb_wjz) {
|
||||||
labPat.setAlarmflag("");
|
labPat.setAlarmflag("");
|
||||||
commonUtil.updateLabPat(labPat);
|
commonUtil.updateLabPat(labPat);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 明细结果计算参考值异常标志危急值标志并更新
|
* 明细结果计算参考值异常标志危急值标志并更新
|
||||||
|
*
|
||||||
* @param labPat
|
* @param labPat
|
||||||
* @param labResult
|
* @param labResult
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
private int setrefs(LabPat labPat,LabResult labResult){
|
private int setrefs(LabPat labPat, LabResult labResult) {
|
||||||
String yq=labPat.getYq();
|
String yq = labPat.getYq();
|
||||||
String resultflag="M",wjzflag="";
|
String resultflag = "M", wjzflag = "";
|
||||||
int wjz=0;
|
int wjz = 0;
|
||||||
String xmdh=labResult.getXmdh();
|
String xmdh = labResult.getXmdh();
|
||||||
String csjg=labResult.getCsjg();
|
String csjg = labResult.getCsjg();
|
||||||
if (csjg == null || csjg.trim().isEmpty()) return 0;
|
if (csjg == null || csjg.trim().isEmpty()) return 0;
|
||||||
String csjgnew=LisUtil.getOverNumber(csjg.trim());
|
String csjgnew = LisUtil.getOverNumber(csjg.trim());
|
||||||
boolean lb_nummode=LisUtil.isNumber(csjgnew);
|
boolean lb_nummode = LisUtil.isNumber(csjgnew);
|
||||||
//当结果为数值时计算上下限
|
//当结果为数值时计算上下限
|
||||||
if(lb_nummode) {
|
if (lb_nummode) {
|
||||||
XmInfo xmInfo = commonUtil.getXmInfo(yq, xmdh);
|
XmInfo xmInfo = commonUtil.getXmInfo(yq, xmdh);
|
||||||
String dw = xmInfo.getDw();
|
String dw = xmInfo.getDw();
|
||||||
String refs = xmInfo.getDyckz();
|
String refs = xmInfo.getDyckz();
|
||||||
Double ckxx = xmInfo.getCkxx();
|
Double ckxx = xmInfo.getCkxx();
|
||||||
Double cksx = xmInfo.getCksx();
|
Double cksx = xmInfo.getCksx();
|
||||||
Double llimit=xmInfo.getLlimit();
|
Double llimit = xmInfo.getLlimit();
|
||||||
Double hlimit=xmInfo.getHlimit();
|
Double hlimit = xmInfo.getHlimit();
|
||||||
String ygxb = xmInfo.getYgxb();
|
String ygxb = xmInfo.getYgxb();
|
||||||
String ygnl = xmInfo.getYgnl();
|
String ygnl = xmInfo.getYgnl();
|
||||||
String ygbb = xmInfo.getYgbb();
|
String ygbb = xmInfo.getYgbb();
|
||||||
@ -498,42 +639,43 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
map.put("slzq", slzq);
|
map.put("slzq", slzq);
|
||||||
xmRef = commonUtil.getXmRefValue(map);
|
xmRef = commonUtil.getXmRefValue(map);
|
||||||
}
|
}
|
||||||
if(xmRef !=null){
|
if (xmRef != null) {
|
||||||
ckxx=xmRef.getCkxx();
|
ckxx = xmRef.getCkxx();
|
||||||
cksx=xmRef.getCksx();
|
cksx = xmRef.getCksx();
|
||||||
refs=xmRef.getDyck();
|
refs = xmRef.getDyck();
|
||||||
Double alterxx=xmRef.getAlterxx();
|
Double alterxx = xmRef.getAlterxx();
|
||||||
Double altersx=xmRef.getAltersx();
|
Double altersx = xmRef.getAltersx();
|
||||||
if(alterxx != null)llimit=alterxx;
|
if (alterxx != null) llimit = alterxx;
|
||||||
if(altersx != null)hlimit=altersx;
|
if (altersx != null) hlimit = altersx;
|
||||||
}
|
}
|
||||||
if(lb_nummode){
|
if (lb_nummode) {
|
||||||
//数值型结果判断
|
//数值型结果判断
|
||||||
Double csjgnum = Double.valueOf(csjgnew);
|
Double csjgnum = Double.valueOf(csjgnew);
|
||||||
if(ckxx != null)if(csjgnum<ckxx)resultflag="L";
|
if (ckxx != null) if (csjgnum < ckxx) resultflag = "L";
|
||||||
if(cksx != null)if(csjgnum>cksx)resultflag="H";
|
if (cksx != null) if (csjgnum > cksx) resultflag = "H";
|
||||||
int wjzf=alarmcondition(labPat,labResult);
|
int wjzf = alarmcondition(labPat, labResult);
|
||||||
if(wjzf==-1) {
|
if (wjzf == -1) {
|
||||||
if(llimit != null)if(csjgnum<llimit)wjzflag="L";
|
if (llimit != null) if (csjgnum < llimit) wjzflag = "L";
|
||||||
if(hlimit != null)if(csjgnum>hlimit)wjzflag="H";
|
if (hlimit != null) if (csjgnum > hlimit) wjzflag = "H";
|
||||||
}else if(wjzf==1) {
|
} else if (wjzf == 1) {
|
||||||
wjzflag=resultflag;
|
wjzflag = resultflag;
|
||||||
}
|
}
|
||||||
if(!"".equals(wjzflag))wjz=1;
|
if (!"".equals(wjzflag)) wjz = 1;
|
||||||
}else{
|
} else {
|
||||||
//文字型结果判断
|
//文字型结果判断
|
||||||
String jgbzold=labResult.getJgbz();
|
String jgbzold = labResult.getJgbz();
|
||||||
String lmtflag =getitemlmtflag(yq,xmdh,csjg);
|
String lmtflag = getitemlmtflag(yq, xmdh, csjg);
|
||||||
if("P".equals(jgbzold) && (csjg.indexOf("阳")>=0 || csjg.indexOf("+")>=0 || csjg.indexOf(":")>=0 ) && (lmtflag == null || lmtflag.trim().isEmpty())) lmtflag="P";
|
if ("P".equals(jgbzold) && (csjg.indexOf("阳") >= 0 || csjg.indexOf("+") >= 0 || csjg.indexOf(":") >= 0) && (lmtflag == null || lmtflag.trim().isEmpty()))
|
||||||
resultflag=lmtflag;
|
lmtflag = "P";
|
||||||
if("J".equals(lmtflag))wjzflag = "H";
|
resultflag = lmtflag;
|
||||||
|
if ("J".equals(lmtflag)) wjzflag = "H";
|
||||||
}
|
}
|
||||||
int wjzf=alarmcondition(labPat,labResult);
|
int wjzf = alarmcondition(labPat, labResult);
|
||||||
if(wjzf==1) wjzflag="H";//满足特定危机值条件
|
if (wjzf == 1) wjzflag = "H";//满足特定危机值条件
|
||||||
if(wjzf==0) wjzflag="";//存在特定危机值条件,但不满足不提示
|
if (wjzf == 0) wjzflag = "";//存在特定危机值条件,但不满足不提示
|
||||||
//小数保留位数计算
|
//小数保留位数计算
|
||||||
Integer xsws= xmInfo.getXsws();
|
Integer xsws = xmInfo.getXsws();
|
||||||
if(xsws>=0) csjg=LisUtil.round(csjg,xsws);
|
if (xsws >= 0) csjg = LisUtil.round(csjg, xsws);
|
||||||
labResult.setCsjg(csjg);
|
labResult.setCsjg(csjg);
|
||||||
labResult.setDw(dw);
|
labResult.setDw(dw);
|
||||||
labResult.setRefs(refs);
|
labResult.setRefs(refs);
|
||||||
@ -543,99 +685,102 @@ public class LisWorkOperServiceImpl implements LisWorkOperService {
|
|||||||
|
|
||||||
commonUtil.updateLabResult(labResult);
|
commonUtil.updateLabResult(labResult);
|
||||||
}
|
}
|
||||||
if(!"".equals(wjzflag))wjz=1;
|
if (!"".equals(wjzflag)) wjz = 1;
|
||||||
return wjz;
|
return wjz;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*特定条件危急值判断
|
* 特定条件危急值判断
|
||||||
|
*
|
||||||
* @param labPat
|
* @param labPat
|
||||||
* @param labResult
|
* @param labResult
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
private int alarmcondition(LabPat labPat,LabResult labResult){
|
private int alarmcondition(LabPat labPat, LabResult labResult) {
|
||||||
boolean lb_fcb=false,lb_hasval=false;
|
boolean lb_fcb = false, lb_hasval = false;
|
||||||
String csjg=labResult.getCsjg();
|
String csjg = labResult.getCsjg();
|
||||||
if (csjg == null || csjg.trim().isEmpty()) return -1;
|
if (csjg == null || csjg.trim().isEmpty()) return -1;
|
||||||
String yq=labPat.getYq();
|
String yq = labPat.getYq();
|
||||||
String xmdh=labResult.getXmdh();
|
String xmdh = labResult.getXmdh();
|
||||||
List<XmAlarmdetail> getXmAlarmdetail=commonUtil.getXmAlarmdetail(yq,xmdh);
|
List<XmAlarmdetail> getXmAlarmdetail = commonUtil.getXmAlarmdetail(yq, xmdh);
|
||||||
if(getXmAlarmdetail==null)return -1;
|
if (getXmAlarmdetail == null) return -1;
|
||||||
String brxm="";
|
String brxm = "";
|
||||||
String brdh="";
|
String brdh = "";
|
||||||
String ksdh=labPat.getKsdh();
|
String ksdh = labPat.getKsdh();
|
||||||
String ksdh1=commonUtil.getComDictIdByName("BT",ksdh);
|
String ksdh1 = commonUtil.getComDictIdByName("BT", ksdh);
|
||||||
if (ksdh1 != null && !ksdh1.trim().isEmpty()) ksdh=ksdh1;
|
if (ksdh1 != null && !ksdh1.trim().isEmpty()) ksdh = ksdh1;
|
||||||
String ybzt=labPat.getYbzt();
|
String ybzt = labPat.getYbzt();
|
||||||
String ybzt1=commonUtil.getComDictIdByName("ST",ybzt);
|
String ybzt1 = commonUtil.getComDictIdByName("ST", ybzt);
|
||||||
if (ybzt1 != null && !ybzt1.trim().isEmpty()) ybzt=ybzt1;
|
if (ybzt1 != null && !ybzt1.trim().isEmpty()) ybzt = ybzt1;
|
||||||
String zd=labPat.getZd();
|
String zd = labPat.getZd();
|
||||||
for(XmAlarmdetail xmAlarmdetail :getXmAlarmdetail){
|
for (XmAlarmdetail xmAlarmdetail : getXmAlarmdetail) {
|
||||||
String samplecondition=xmAlarmdetail.getSamplecondition();
|
String samplecondition = xmAlarmdetail.getSamplecondition();
|
||||||
lb_fcb=false;
|
lb_fcb = false;
|
||||||
if (samplecondition.toLowerCase().contains("[初报]")) {
|
if (samplecondition.toLowerCase().contains("[初报]")) {
|
||||||
Map<String,Object> map=new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
map.put("xmdh", xmdh);
|
map.put("xmdh", xmdh);
|
||||||
map.put("jyrq", labPat.getJyrq());
|
map.put("jyrq", labPat.getJyrq());
|
||||||
if (samplecondition.toLowerCase().contains("brxm"))brxm=labPat.getBrxm();
|
if (samplecondition.toLowerCase().contains("brxm")) brxm = labPat.getBrxm();
|
||||||
if (samplecondition.toLowerCase().contains("brdh"))brdh=labPat.getBrdh();
|
if (samplecondition.toLowerCase().contains("brdh")) brdh = labPat.getBrdh();
|
||||||
map.put("brxm", brxm);
|
map.put("brxm", brxm);
|
||||||
map.put("brdh", brdh);
|
map.put("brdh", brdh);
|
||||||
int limitcount=lisWorkOperMapper.getLimitCount(map);
|
int limitcount = lisWorkOperMapper.getLimitCount(map);
|
||||||
if(limitcount>0)lb_fcb=true;
|
if (limitcount > 0) lb_fcb = true;
|
||||||
samplecondition = samplecondition.replace("'brxm'", "1");
|
samplecondition = samplecondition.replace("'brxm'", "1");
|
||||||
samplecondition = samplecondition.replace("'brdh'", "1");
|
samplecondition = samplecondition.replace("'brdh'", "1");
|
||||||
samplecondition = samplecondition.replace("[初报]", "[CB]");
|
samplecondition = samplecondition.replace("[初报]", "[CB]");
|
||||||
}
|
}
|
||||||
|
|
||||||
labPat.setYblx(commonUtil.getComDictIdByName("BT",labPat.getYblx()));
|
labPat.setYblx(commonUtil.getComDictIdByName("BT", labPat.getYblx()));
|
||||||
labPat.setKsdh(commonUtil.getComDictIdByName("DP",labPat.getKsdh()));
|
labPat.setKsdh(commonUtil.getComDictIdByName("DP", labPat.getKsdh()));
|
||||||
samplecondition=samplecondition.replace("[科室]", "[DEPT]");
|
samplecondition = samplecondition.replace("[科室]", "[DEPT]");
|
||||||
samplecondition=samplecondition.replace("[诊断]", "[DIAG]");
|
samplecondition = samplecondition.replace("[诊断]", "[DIAG]");
|
||||||
samplecondition=samplecondition.replace("[样本状态]", "[YBZT]");
|
samplecondition = samplecondition.replace("[样本状态]", "[YBZT]");
|
||||||
Map<String, String> variables = new HashMap<>();
|
Map<String, String> variables = new HashMap<>();
|
||||||
variables.put("ZB", "1");
|
variables.put("ZB", "1");
|
||||||
variables.put("DEPT", ksdh);
|
variables.put("DEPT", ksdh);
|
||||||
variables.put("DIAG", zd);
|
variables.put("DIAG", zd);
|
||||||
variables.put("YBZT", ybzt);
|
variables.put("YBZT", ybzt);
|
||||||
samplecondition="if((" + samplecondition + ") ,1,0)";
|
samplecondition = "if((" + samplecondition + ") ,1,0)";
|
||||||
String result=CalcUtils.getValueFromCalc(samplecondition,variables);
|
String result = CalcUtils.getValueFromCalc(samplecondition, variables);
|
||||||
if("1".equals( result)){
|
if ("1".equals(result)) {
|
||||||
if(lb_fcb)return 0;
|
if (lb_fcb) return 0;
|
||||||
lb_hasval=true;
|
lb_hasval = true;
|
||||||
String resultcondition = xmAlarmdetail.getResultcondition();
|
String resultcondition = xmAlarmdetail.getResultcondition();
|
||||||
resultcondition=resultcondition.replace("[结果]", "[RESULT]");
|
resultcondition = resultcondition.replace("[结果]", "[RESULT]");
|
||||||
Map<String, String> variables1 = new HashMap<>();
|
Map<String, String> variables1 = new HashMap<>();
|
||||||
variables1.put("RESULT", csjg);
|
variables1.put("RESULT", csjg);
|
||||||
resultcondition="if((" + resultcondition + ") ,1,0)";
|
resultcondition = "if((" + resultcondition + ") ,1,0)";
|
||||||
String result1=CalcUtils.getValueFromCalc(resultcondition,variables1);
|
String result1 = CalcUtils.getValueFromCalc(resultcondition, variables1);
|
||||||
if("1".equals( result1))return 1;
|
if ("1".equals(result1)) return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if( lb_hasval)return 0;
|
if (lb_hasval) return 0;
|
||||||
else return -1;
|
else return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取常用取值结果标志
|
* 获取常用取值结果标志
|
||||||
|
*
|
||||||
* @param yq
|
* @param yq
|
||||||
* @param xmdh
|
* @param xmdh
|
||||||
* @param csjg
|
* @param csjg
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public String getitemlmtflag(String yq,String xmdh,String csjg){
|
public String getitemlmtflag(String yq, String xmdh, String csjg) {
|
||||||
String jgbz="";
|
String jgbz = "";
|
||||||
if (csjg == null || csjg.isEmpty()) {
|
if (csjg == null || csjg.isEmpty()) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
String csjg1="",csjg2="";
|
String csjg1 = "", csjg2 = "";
|
||||||
java.util.regex.Pattern pattern = java.util.regex.Pattern.compile("\\((.*?)\\)");
|
java.util.regex.Pattern pattern = java.util.regex.Pattern.compile("\\((.*?)\\)");
|
||||||
java.util.regex.Matcher matcher = pattern.matcher(csjg);
|
java.util.regex.Matcher matcher = pattern.matcher(csjg);
|
||||||
if (matcher.find()) {
|
if (matcher.find()) {
|
||||||
csjg1=matcher.group(1);
|
csjg1 = matcher.group(1);
|
||||||
}
|
}
|
||||||
int index = csjg.indexOf(",");
|
int index = csjg.indexOf(",");
|
||||||
if(index == -1)csjg2= StringUtils.substring(csjg,index+1);
|
if (index == -1) csjg2 = StringUtils.substring(csjg, index + 1);
|
||||||
jgbz=commonUtil.getXmRefJgbz(yq,xmdh,csjg,csjg1,csjg2);
|
jgbz = commonUtil.getXmRefJgbz(yq, xmdh, csjg, csjg1, csjg2);
|
||||||
if (jgbz == null) {
|
if (jgbz == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,15 +4,30 @@
|
|||||||
<mapper namespace="com.czlis.liswork.mapper.LisWorkOperMapper">
|
<mapper namespace="com.czlis.liswork.mapper.LisWorkOperMapper">
|
||||||
|
|
||||||
<select id="checkReqClass" resultType="Long">
|
<select id="checkReqClass" resultType="Long">
|
||||||
select COUNT(*) from xm_feeinstr,lab_reqdetail
|
select COUNT(1) from xm_feeinstr,lab_reqdetail
|
||||||
where lab_reqdetail.sqxmdh=xm_feeinstr.sfxmdh
|
where lab_reqdetail.sqxmdh=xm_feeinstr.sfxmdh
|
||||||
and lab_reqdetail.sqh=#{sqh} and xm_feeinstr.yq=#{yq};
|
and lab_reqdetail.sqh=#{sqh} and xm_feeinstr.yq=#{yq};
|
||||||
</select>
|
</select>
|
||||||
<select id="selectSqxmdh" resultType="String">
|
<select id="selectSqxmdh" resultType="String">
|
||||||
select sqxmdh from lab_reqdetail where lab_reqdetail.sqh=#{sqh}
|
select sqxmdh from lab_reqdetail where lab_reqdetail.sqh=#{sqh}
|
||||||
</select>
|
</select>
|
||||||
<select id="selectYqdl" resultType="String">
|
<select id="checkresultsqxmdh" resultType="Integer">
|
||||||
select yqdl from lab_instr where lab_instr.yq=#{yq}
|
select count(1) from lab_result a join xm_info on a.yq=xm_info.yq and a.xmdh=xm_info.xmdh and xm_info.jsxm != 'Y' AND xm_info.dylx='1'
|
||||||
|
where a.xmdh not in (select b.xmdh from xm_reqitem_vs_reportitem b ,lab_reqdetail c where b.sqxmdh=c.sqxmdh and b.yq=a.yq and c.sqh=#{sqh})
|
||||||
|
and a.yq=#{yq} and a.ybh=#{ybh} and a.jyrq=#{jyrq} AND a.xmdh NOT LIKE 'GLU%'
|
||||||
|
|
||||||
|
</select>
|
||||||
|
<select id="checkresultwxh" resultType="Integer">
|
||||||
|
select count(1) from lab_result,xm_info
|
||||||
|
where lab_result.yq = xm_info.yq and lab_result.xmdh = xm_info.xmdh and
|
||||||
|
lab_result.yq =#{yq} And lab_result.jyrq =#{jyrq} And lab_result.ybh =#{ybh} and (lab_result.csjg='****')
|
||||||
|
|
||||||
|
</select>
|
||||||
|
<select id="checkdublereport" resultType="com.czlis.common.core.domain.entity.lis.LabPat">
|
||||||
|
select top 1 jyrq,yq,ybh from lab_pat where jgbz='2' and sqh=#{sqh} and ybh !=#{ybh}
|
||||||
|
</select>
|
||||||
|
<select id="checkyqdublereport" resultType="com.czlis.common.core.domain.entity.lis.LabPat">
|
||||||
|
select top 1 jyrq,yq,ybh from lab_pat where jgbz='2' and sqh=#{sqh} and yq=#{yq} and ybh !=#{ybh}
|
||||||
</select>
|
</select>
|
||||||
<update id="updatelabresultsqxmdhall">
|
<update id="updatelabresultsqxmdhall">
|
||||||
update lab_result set sqxmdh=#{sqxmdh} where yq=#{yq} and jyrq=#{jyrq} and ybh=#{ybh};
|
update lab_result set sqxmdh=#{sqxmdh} where yq=#{yq} and jyrq=#{jyrq} and ybh=#{ybh};
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user