批量审核
This commit is contained in:
parent
eecd3519a4
commit
ae30c9855c
@ -1,10 +1,9 @@
|
|||||||
package com.czlis.interfaceCommon.utils;
|
package com.czlis.interfaceCommon.utils;
|
||||||
|
|
||||||
import com.czlis.common.core.domain.Result;
|
import com.czlis.common.core.domain.Result;
|
||||||
import com.czlis.common.core.domain.entity.lis.LabCheckrules;
|
import com.czlis.common.core.domain.entity.lis.*;
|
||||||
import com.czlis.common.core.domain.entity.lis.LabPat;
|
|
||||||
import com.czlis.common.core.domain.entity.lis.LabResult;
|
|
||||||
import com.czlis.interfaceCommon.constants.ComLogConstants;
|
import com.czlis.interfaceCommon.constants.ComLogConstants;
|
||||||
|
import com.czlis.interfaceCommon.constants.LabPatConstants;
|
||||||
import com.czlis.interfaceCommon.constants.LabReqmainConstants;
|
import com.czlis.interfaceCommon.constants.LabReqmainConstants;
|
||||||
import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants;
|
import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants;
|
||||||
import com.czlis.interfaceCommon.mapper.LabCheckrulesMapper;
|
import com.czlis.interfaceCommon.mapper.LabCheckrulesMapper;
|
||||||
@ -413,5 +412,94 @@ public class LisWorkUtils extends LisWorkconfirm {
|
|||||||
return params;
|
return params;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 撤销审核报告单全流程
|
||||||
|
*
|
||||||
|
* @param jyrq
|
||||||
|
* @param yq
|
||||||
|
* @param ybh
|
||||||
|
* @param yhdh
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Result batchUnConfirm(Date jyrq, String yq, String ybh, String yhdh) {
|
||||||
|
if (yhdh == null || yhdh.isEmpty()) return new Result("-1", "操作者为空,无法解除审核!");
|
||||||
|
LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh);
|
||||||
|
//1,解除审核权限校验
|
||||||
|
if (!commonUtil.getUserPower(yq, yhdh, 10)) return new Result("-1", "当前操作者无权对本仪器报告解除审核!");
|
||||||
|
//2:数据合法性校验
|
||||||
|
String jgbz = labPat.getJgbz();
|
||||||
|
if (!"2".equals(jgbz)) return new Result("-1", "报告未审核,不需解除!");
|
||||||
|
String unconfirmlog = commonUtil.getComOptValue(yq, "unconfirmlog");
|
||||||
|
if ("1".equals(unconfirmlog)) {
|
||||||
|
return new Result("-1", "请填写解除审核原因!");
|
||||||
|
}
|
||||||
|
|
||||||
|
//调用his报告接口,完成报告同时调用外部接口任务
|
||||||
|
SetReport setReport = new SetReport();
|
||||||
|
setReport.setIp(getIP());
|
||||||
|
setReport.setJyrq(DateFormatUtils.format(jyrq, "yyyy-MM-dd"));
|
||||||
|
setReport.setYq(yq.trim());
|
||||||
|
setReport.setYbh(ybh);
|
||||||
|
setReport.setUserid(yhdh);
|
||||||
|
setReport.setStatus(LisinterfaceNameConstants.REPORTCANCAL);
|
||||||
|
Result result = lisInterfaceUtil.invokeLisInterface(LisinterfaceNameConstants.SETREPORT, setReport);
|
||||||
|
if (result.getCode().equals("5")) {
|
||||||
|
return new Result(result.getCode(), result.getMsg());
|
||||||
|
}
|
||||||
|
if (!result.getCode().equals("0")) return result;
|
||||||
|
|
||||||
|
String sqh = labPat.getSqh();
|
||||||
|
LabReqmain labReqmain = commonUtil.getLabReqmainOne(sqh);
|
||||||
|
if (labReqmain != null) {
|
||||||
|
String zt = labReqmain.getZt();
|
||||||
|
if (!LabReqmainConstants.CANCAL.equals(zt)) {
|
||||||
|
labReqmain.setConfirmer("");
|
||||||
|
labReqmain.setConfirmtime(null);
|
||||||
|
if (LabReqmainConstants.CONFIRM.equals(zt)) {
|
||||||
|
labReqmain.setZt(LabReqmainConstants.SIGNFOR);
|
||||||
|
labReqmain.setConfirmer("");
|
||||||
|
labReqmain.setConfirmtime(null);
|
||||||
|
commonUtil.updateLabReqmain(labReqmain);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String msg = "取消成功!";
|
||||||
|
String sp_rebackreport = commonUtil.getHISOPT("sp_rebackreport");
|
||||||
|
if ("1".equals(sp_rebackreport)) {
|
||||||
|
if ("1".equals(labPat.getDybz())) {
|
||||||
|
msg = msg + LisUtil.LINE_SEPARATOR + "此报告为已打印报告,注意考虑是否追回";
|
||||||
|
}
|
||||||
|
LabPatwarning labPatwarning = commonUtil.getLabPatwarning(jyrq, yq, ybh);
|
||||||
|
if (labPatwarning != null) {
|
||||||
|
Date tzsj = labPatwarning.getTzsj();
|
||||||
|
long sjc = LisUtil.relativeMinute(tzsj);
|
||||||
|
if (sjc > 10) {
|
||||||
|
return new Result("-1", "此报告已发布危急值结果,并且时间超过10分钟了!" + LisUtil.LINE_SEPARATOR + "请输入撤回报告组长代号和密码");
|
||||||
|
}
|
||||||
|
|
||||||
|
//权限不足,撤回报告失败组长权限单独接口校验
|
||||||
|
int ll_qxz = lisWorkUtilsMapper.getQXZ(yhdh);
|
||||||
|
if (ll_qxz <= 0) {
|
||||||
|
return new Result("-1", "权限不足,撤回报告失败!");
|
||||||
|
}
|
||||||
|
|
||||||
|
commonUtil.deleteLabPatwarning(jyrq, yq, ybh);
|
||||||
|
commonUtil.deleteLabResultwarning(jyrq, yq, ybh);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
commonUtil.deleteLabReqreportPdffile(jyrq, yq, ybh);
|
||||||
|
labPat.setFslx("");
|
||||||
|
labPat.setJgbz(LabPatConstants.DEFAULT);
|
||||||
|
commonUtil.updateLabPat(labPat);
|
||||||
|
String logdata = commonUtil.getLisPatlogbz(jyrq, yq, ybh);
|
||||||
|
setComLog(jyrq, yq, ybh, yhdh, ComLogConstants.LG_UCK, logdata);
|
||||||
|
setpatLog(jyrq, yq, ybh, yhdh);
|
||||||
|
if (sqh != null) {
|
||||||
|
setlabReqsteplog(sqh, LabReqmainConstants.START, yhdh);
|
||||||
|
}
|
||||||
|
if (!"取消成功!".equals(msg)) return new Result("3", msg);
|
||||||
|
return new Result("0", msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -37,4 +37,10 @@ public class BatchCheckController {
|
|||||||
return batchCheckService.checkData(batchCheckDTOList);
|
return batchCheckService.checkData(batchCheckDTOList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation("取消审核条码")
|
||||||
|
@PostMapping("/unCheckData")
|
||||||
|
public Result unCheckData(@RequestBody List<BatchCheckDataDTO> batchCheckDataDTOList){
|
||||||
|
return batchCheckService.unChekData(batchCheckDataDTOList);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,7 +4,8 @@ import com.czlis.common.core.domain.entity.lis.LabPat;
|
|||||||
import com.czlis.liswork.pojo.DTO.BatchCheckDTO;
|
import com.czlis.liswork.pojo.DTO.BatchCheckDTO;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
public interface BatchCheckMapper {
|
public interface BatchCheckMapper {
|
||||||
List<LabPat> queryData(BatchCheckDTO batchCheckDTO);
|
List<Map<String,Object>> queryData(BatchCheckDTO batchCheckDTO);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,4 +10,6 @@ public interface BatchCheckService {
|
|||||||
Result queryData(BatchCheckDTO batchCheckDTO);
|
Result queryData(BatchCheckDTO batchCheckDTO);
|
||||||
|
|
||||||
Result checkData(List<BatchCheckDataDTO> batchCheckDTOList);
|
Result checkData(List<BatchCheckDataDTO> batchCheckDTOList);
|
||||||
|
|
||||||
|
Result unChekData(List<BatchCheckDataDTO> batchCheckDataDTO);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,7 +3,14 @@ package com.czlis.liswork.service.impl.work;
|
|||||||
|
|
||||||
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.core.domain.entity.lis.LabPatwarning;
|
||||||
|
import com.czlis.common.core.domain.entity.lis.LabReqmain;
|
||||||
import com.czlis.common.core.domain.entity.lis.LabResult;
|
import com.czlis.common.core.domain.entity.lis.LabResult;
|
||||||
|
import com.czlis.interfaceCommon.constants.ComLogConstants;
|
||||||
|
import com.czlis.interfaceCommon.constants.LabPatConstants;
|
||||||
|
import com.czlis.interfaceCommon.constants.LabReqmainConstants;
|
||||||
|
import com.czlis.interfaceCommon.constants.LisinterfaceNameConstants;
|
||||||
|
import com.czlis.interfaceCommon.pojo.inter.SetReport;
|
||||||
import com.czlis.interfaceCommon.utils.CommonUtil;
|
import com.czlis.interfaceCommon.utils.CommonUtil;
|
||||||
import com.czlis.interfaceCommon.utils.LisUtil;
|
import com.czlis.interfaceCommon.utils.LisUtil;
|
||||||
import com.czlis.interfaceCommon.utils.LisWorkUtils;
|
import com.czlis.interfaceCommon.utils.LisWorkUtils;
|
||||||
@ -12,11 +19,13 @@ import com.czlis.liswork.pojo.DTO.BatchCheckDTO;
|
|||||||
import com.czlis.liswork.pojo.DTO.work.BatchCheckDataDTO;
|
import com.czlis.liswork.pojo.DTO.work.BatchCheckDataDTO;
|
||||||
import com.czlis.liswork.service.BatchCheckService;
|
import com.czlis.liswork.service.BatchCheckService;
|
||||||
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 java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@ -37,7 +46,7 @@ public class BatchCheckServiceImpl implements BatchCheckService {
|
|||||||
if (jyrq1 == null) return new Result("-1", "检验日期不能为空!");
|
if (jyrq1 == null) return new Result("-1", "检验日期不能为空!");
|
||||||
if (jyrq2 == null) return new Result("-1", "检验日期不能为空!");
|
if (jyrq2 == null) return new Result("-1", "检验日期不能为空!");
|
||||||
if(yq == null) return new Result("-1","仪器不能为空!");
|
if(yq == null) return new Result("-1","仪器不能为空!");
|
||||||
List<LabPat> labPatList = batchCheckMapper.queryData(batchCheckDTO);
|
List<Map<String,Object>> labPatList = batchCheckMapper.queryData(batchCheckDTO);
|
||||||
return new Result("0", "获取数据成功!", labPatList);
|
return new Result("0", "获取数据成功!", labPatList);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -77,6 +86,32 @@ public class BatchCheckServiceImpl implements BatchCheckService {
|
|||||||
|
|
||||||
//审核失败个数
|
//审核失败个数
|
||||||
int i1 = batchCheckDTOList.size() - i;
|
int i1 = batchCheckDTOList.size() - i;
|
||||||
return new Result("1", "执行成功:" + i + "个,失败:" + i1 + "个,\r\n" + errText);
|
return new Result("1", "批量审核执行成功:" + i + "个,失败:" + i1 + "个,\r\n" + errText);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Result unChekData(List<BatchCheckDataDTO> batchCheckDataDTOList) {
|
||||||
|
String errText = "";
|
||||||
|
int i = 0;
|
||||||
|
for (BatchCheckDataDTO batchCheckDataDTO : batchCheckDataDTOList) {
|
||||||
|
Date jyrq = batchCheckDataDTO.getJyrq();
|
||||||
|
if(jyrq == null) continue;
|
||||||
|
String yq = batchCheckDataDTO.getYq();
|
||||||
|
if(yq == null) continue;
|
||||||
|
String ybh = batchCheckDataDTO.getYbh();
|
||||||
|
if(ybh == null) continue;
|
||||||
|
String userId = batchCheckDataDTO.getUserId();
|
||||||
|
Result result = lisWorkUtils.batchUnConfirm(jyrq, yq, ybh, userId);
|
||||||
|
if(!result.getCode().equals("0")) {
|
||||||
|
errText = "取消审核失败:" + result.getMsg() + "\r\n";
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
//审核失败个数
|
||||||
|
int i1 = batchCheckDataDTOList.size() - i;
|
||||||
|
return new Result("1", "批量取消审核执行成功:" + i + "个,失败:" + i1 + "个,\r\n" + errText);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,9 +2,14 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||||
<mapper namespace="com.czlis.liswork.mapper.work.BatchCheckMapper">
|
<mapper namespace="com.czlis.liswork.mapper.work.BatchCheckMapper">
|
||||||
<select id="queryData" resultType="com.czlis.common.core.domain.entity.lis.LabPat">
|
<select id="queryData" resultType="map">
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
select * from lab_pat where jyrq >= #{jyrq1} and jyrq <= #{jyrq2} and yq = #{yq}
|
select *,
|
||||||
|
(select yqmc from lab_instr where lab_pat.yq = yq) as yqmc,
|
||||||
|
(select yhxm from com_usr where yhdh = lab_pat.yhdh) as yhdhmc,
|
||||||
|
(select yhxm from com_usr where yhdh = lab_pat.hdys) as hdysmc,
|
||||||
|
(select yhxm from com_usr where yhdh = lab_pat.confirmer) as confirmermc
|
||||||
|
from lab_pat where jyrq >= #{jyrq1} and jyrq <= #{jyrq2} and yq = #{yq}
|
||||||
]]>
|
]]>
|
||||||
<if test="ybh1 != null and ybh1 != ''">and ( CASE WHEN ybh NOT LIKE '%[^0-9]%' THEN CAST(ybh AS bigint) ELSE 0 END) between #{ybh1} and #{ybh2}</if>
|
<if test="ybh1 != null and ybh1 != ''">and ( CASE WHEN ybh NOT LIKE '%[^0-9]%' THEN CAST(ybh AS bigint) ELSE 0 END) between #{ybh1} and #{ybh2}</if>
|
||||||
<if test="ksdh != null and ksdh != ''">and ksdh = #{ksdh}</if>
|
<if test="ksdh != null and ksdh != ''">and ksdh = #{ksdh}</if>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user