diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabReqmainMapper.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabReqmainMapper.java index 482b525..b14c51b 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabReqmainMapper.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabReqmainMapper.java @@ -3,6 +3,7 @@ package com.czlis.interfaceCommon.mapper; import com.czlis.common.core.domain.entity.lis.LabReqmain; import org.apache.ibatis.annotations.Param; +import java.util.Date; import java.util.Map; public interface LabReqmainMapper { @@ -12,4 +13,5 @@ public interface LabReqmainMapper { int deleteLabReqmain(String sqh); void insertLabReqmain(LabReqmain labReqmain); int zxLabReqmain(@Param("sqh")String sqh,@Param("userId")String userId); + int QXLabReqmain(@Param("jyrq") Date jyrq, @Param("yq") String yq, @Param("ybh") String ybh); } diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMapper.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMapper.java index c3e26e4..82e3337 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMapper.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMapper.java @@ -11,6 +11,7 @@ public interface LabResultMapper { LabResult getLabResult(@Param("jyrq") Date jyrq, @Param("yq") String yq,@Param("ybh") String ybh,@Param("xmdh") String xmdh); int insertLabResult(LabResult labResult); int delLabResult(LabResult labResult); + int delLabResultAll(@Param("jyrq") Date jyrq, @Param("yq") String yq,@Param("ybh") String ybh); int updateLabResult(LabResult labResult); int delNullLabResult(@Param("jyrq") Date jyrq, @Param("yq") String yq, @Param("ybh") String ybh); List getLabResultWithSql(@Param("jyrq") Date jyrq, @Param("yq") String yq, @Param("ybh") String ybh,@Param("wheresql") String wheresql); diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMedMapper.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMedMapper.java index 81ade79..9d1e398 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMedMapper.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/mapper/LabResultMedMapper.java @@ -9,4 +9,6 @@ import java.util.List; public interface LabResultMedMapper { List getLabResultMed(@Param("jyrq")Date jyrq, @Param("yq")String yq, @Param("ybh")String ybh, @Param("xmdh")String xmdh); int getLabResultMedCount(@Param("jyrq")Date jyrq, @Param("yq")String yq, @Param("ybh")String ybh); + int delLabResultMed(@Param("jyrq")Date jyrq, @Param("yq")String yq, @Param("ybh")String ybh,@Param("xmdh")String xmdh); + int delLabResultMedAll(@Param("jyrq")Date jyrq, @Param("yq")String yq, @Param("ybh")String ybh); } diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/CommonUtil.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/CommonUtil.java index e54d975..377d718 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/CommonUtil.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/CommonUtil.java @@ -157,8 +157,8 @@ public class CommonUtil { } @Transactional(rollbackFor = Exception.class) - public int delLabPat(LabPat labPat) { - return labPatMapper.updateLabPat(labPat); + public int delLabPat(Date jyrq, String yq, String ybh) { + return labPatMapper.delLabPat(jyrq, yq,ybh); } @Transactional(rollbackFor = Exception.class) @@ -211,6 +211,10 @@ public class CommonUtil { public void zxLabReqmain(String sqh,String userId){ labReqmainMapper.zxLabReqmain(sqh,userId); } + @Transactional(rollbackFor = Exception.class) + public void QXLabReqmain(Date jyrq, String yq, String ybh){ + labReqmainMapper.QXLabReqmain(jyrq,yq,ybh); + } public List getLabReqsteplog(String sqh) { return labReqsteplogMapper.getLabReqsteplog(sqh); } @@ -253,7 +257,10 @@ public class CommonUtil { public int delLabResult(LabResult labResult) { return labResultMapper.delLabResult(labResult); } - + @Transactional(rollbackFor = Exception.class) + public int delLabResultAll(Date jyrq, String yq, String ybh) { + return labResultMapper.delLabResultAll(jyrq,yq,ybh); + } @Transactional(rollbackFor = Exception.class) public int delNullLabResult(Date jyrq, String yq, String ybh) { return labResultMapper.delNullLabResult(jyrq, yq, ybh); @@ -308,6 +315,17 @@ public class CommonUtil { public int getLabResultMedCount(Date jyrq, String yq, String ybh) { return labResultMedMapper.getLabResultMedCount(jyrq, yq, ybh); } + public List getLabResultMed(Date jyrq, String yq, String ybh,String xmdh){ + return labResultMedMapper.getLabResultMed(jyrq, yq, ybh,xmdh); + } + @Transactional(rollbackFor = Exception.class) + public void delLabResultMed(Date jyrq, String yq, String ybh,String xmdh) { + labResultMedMapper.delLabResultMed(jyrq, yq, ybh,xmdh); + } + @Transactional(rollbackFor = Exception.class) + public void delLabResultMedAll(Date jyrq, String yq, String ybh) { + labResultMedMapper.delLabResultMedAll(jyrq, yq, ybh); + } //=====项目字典查询========= public List getXmInfoList(String yq) { return xmInfoMapper.getXmInfoList(yq); diff --git a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java index 23869e9..9150371 100644 --- a/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java +++ b/lis-interfaceCommon/src/main/java/com/czlis/interfaceCommon/utils/LisWorkUtils.java @@ -1632,18 +1632,54 @@ public class LisWorkUtils { } /** - * 输入住院号获取病人信息 + * 删除样本 * * @param jyrq * @param yq * @param ybh - * @param value + * @param yhdh + * @param problemId * @return */ - private Result changePatbrdh(Date jyrq, String yq, String ybh, String value) { - LabPat labPat = commonUtil.getLabPatOne(jyrq, yq, ybh); - - return new Result("0", "保存成功", labPat); + public Result delsample(Date jyrq, String yq, String ybh, String yhdh, int problemId) { + String jgbz = commonUtil.getLabPatJgbz(jyrq, yq, ybh); + if ("2".equals(jgbz)) return new Result("-1", "结果已审核禁止删除!"); + if ("5".equals(jgbz)) return new Result("-1", "结果已锁定禁止删除!"); + // if ("1".equals(jgbz)) return new Result("-1", "结果已初审禁止删除!"); + //IF MessageBox("删除","你确定删除当前 " + ls_ybh + " 号标本?",question!,YesNo!,2) = 2 THEN RETURN 1 交给前端 + String yqdl=commonUtil.getYqdl(yq); + if("细菌仪".equals(yqdl)) { + String cbbgyq=commonUtil.getComOptValue(yq,"cbbgyq"); + if(cbbgyq!=null&&!"".equals(cbbgyq)) { + String is_instr_cbbg="CBBG"+cbbgyq; + String is_instr_ejbg="EJBG"+cbbgyq; + String jgbz0 = commonUtil.getLabPatJgbz(jyrq, is_instr_cbbg, ybh); + if(jgbz0!=null) { + if("2".equals(jgbz0)||"3".equals(jgbz0)){ + return new Result("1", "初步报告已经被审核,撤回前无法删除!"); + } + } + String jgbz1 = commonUtil.getLabPatJgbz(jyrq, is_instr_ejbg, ybh); + if(jgbz1!=null) { + if("2".equals(jgbz1)||"4".equals(jgbz1)){ + return new Result("1", "二级报告已经被审核,撤回前无法删除!"); + } + } + if(jgbz0!=null) delsample(jyrq, is_instr_cbbg, ybh); + if(jgbz1!=null) delsample(jyrq, is_instr_ejbg, ybh); + } + } + delsample(jyrq, yq, ybh); + setComLog(jyrq, yq, ybh,yhdh,ComLogConstants.LG_M,"删除整个样本"); + return new Result("0", "保存成功"); + } + private void delsample(Date jyrq, String yq, String ybh) { + commonUtil.delLabResultMedAll(jyrq, yq, ybh); + commonUtil.delLabResultAll(jyrq, yq, ybh); + commonUtil.deleteLabGraphAll(jyrq, yq, ybh); + commonUtil.deleteLabPatfee(jyrq, yq, ybh); + commonUtil.QXLabReqmain(jyrq, yq, ybh); + commonUtil.delLabPat(jyrq, yq, ybh); } public Result newresult(LabResult labResult) { @@ -1976,7 +2012,7 @@ public class LisWorkUtils { lisWorkUtils.setComLog(jyrq,yq,ybh,yhdh,ComLogConstants.LG_SJ,sqh); if(sqh!=null||"".equals(sqh))lisWorkUtils.setlabReqsteplog(sqh,LabReqmainConstants.START,yhdh); - return new Result("0", ""); + return new Result("0", "",labPat); } public LabPat loaddefault(LabPat labPat) { Date jyrq = labPat.getJyrq(); diff --git a/lis-interfaceCommon/src/main/resources/mapper/LabReqmainMapper.xml b/lis-interfaceCommon/src/main/resources/mapper/LabReqmainMapper.xml index 9b21afd..eeadd51 100644 --- a/lis-interfaceCommon/src/main/resources/mapper/LabReqmainMapper.xml +++ b/lis-interfaceCommon/src/main/resources/mapper/LabReqmainMapper.xml @@ -9,6 +9,10 @@ UPDATE lab_reqmain SET zt = '2', jsys = #{userId}, jssj =getdate() WHERE sqh = #{sqh} AND ('2'> zt or zt='8' or zxsj>jssj) + + update lab_reqmain set yqdh=null,sjsj=null FROM lab_pat,lab_reqmain WHERE jyrq = #{jyrq} AND yq =#{yq} AND ybh =#{ybh} + and lab_reqmain.sqh=lab_pat.sqh and lab_reqmain.yqdh=lab_pat.yq + delete from lab_reqmain where sqh = #{sqh} diff --git a/lis-interfaceCommon/src/main/resources/mapper/LabResultMapper.xml b/lis-interfaceCommon/src/main/resources/mapper/LabResultMapper.xml index 3e90a4c..ab77734 100644 --- a/lis-interfaceCommon/src/main/resources/mapper/LabResultMapper.xml +++ b/lis-interfaceCommon/src/main/resources/mapper/LabResultMapper.xml @@ -63,6 +63,12 @@ and ybh = #{ybh,jdbcType=VARCHAR} and xmdh = #{xmdh,jdbcType=VARCHAR} + + delete from lab_result + where jyrq = #{jyrq} + and yq = #{yq,jdbcType=CHAR} + and ybh = #{ybh,jdbcType=VARCHAR} + delete from lab_result where jyrq = #{jyrq} diff --git a/lis-interfaceCommon/src/main/resources/mapper/LabResultMedMapper.xml b/lis-interfaceCommon/src/main/resources/mapper/LabResultMedMapper.xml index 31dccf6..61bc65b 100644 --- a/lis-interfaceCommon/src/main/resources/mapper/LabResultMedMapper.xml +++ b/lis-interfaceCommon/src/main/resources/mapper/LabResultMedMapper.xml @@ -35,4 +35,17 @@ + + delete from lab_resultmed + where jyrq = #{jyrq} + and yq = #{yq,jdbcType=CHAR} + and ybh = #{ybh,jdbcType=VARCHAR} + and xmdh = #{xmdh,jdbcType=VARCHAR} + + + delete from lab_resultmed + where jyrq = #{jyrq} + and yq = #{yq,jdbcType=CHAR} + and ybh = #{ybh,jdbcType=VARCHAR} + \ No newline at end of file diff --git a/liswork/src/main/java/com/czlis/liswork/controller/work/LisWorkOperController.java b/liswork/src/main/java/com/czlis/liswork/controller/work/LisWorkOperController.java index 097fba7..56dcfc7 100644 --- a/liswork/src/main/java/com/czlis/liswork/controller/work/LisWorkOperController.java +++ b/liswork/src/main/java/com/czlis/liswork/controller/work/LisWorkOperController.java @@ -141,4 +141,12 @@ public class LisWorkOperController extends BaseController { return lisWorkOperService.reglimit(jyrq, yq, ybh, yhdh, qrr, phone, tzfs); } + @Log(title = "主界面",businessType = BusinessType.DELETE) + @ApiOperation("删除样本") + @GetMapping("/delsample") + public Result delsample(Date jyrq, String yq, String ybh) { + return lisWorkOperService.delsample(jyrq, yq, ybh); + } + + } diff --git a/liswork/src/main/java/com/czlis/liswork/service/LisWorkOperService.java b/liswork/src/main/java/com/czlis/liswork/service/LisWorkOperService.java index e49b89c..47e0e2b 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/LisWorkOperService.java +++ b/liswork/src/main/java/com/czlis/liswork/service/LisWorkOperService.java @@ -8,7 +8,7 @@ import java.util.Date; public interface LisWorkOperService { Result newPatInfo(Date jyrq, String ybh, String sqh, String yq); - + Result delsample(Date jyrq, String yq, String ybh); Result changePat(LabPat labPat); Result changePatColumn(Date jyrq, String yq, String ybh,String column,String value); Result changeresult(LabResult labResult); diff --git a/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkOperServiceImpl.java b/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkOperServiceImpl.java index 1b5ff64..4464a58 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkOperServiceImpl.java +++ b/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkOperServiceImpl.java @@ -46,6 +46,12 @@ public class LisWorkOperServiceImpl implements LisWorkOperService { return lisWorkUtils.newPatInfo(jyrq, ybh, sqh, yq, problemId); } @Override + public Result delsample(Date jyrq, String yq, String ybh){ + int problemId = ServletUtils.getParameterToInt("problemId", 0); + String yhdh=SecurityUtils.getLoginUser().getUsername(); + return lisWorkUtils.delsample(jyrq, yq, ybh,yhdh, problemId); + } + @Override public Result changePat(LabPat labPat) { int problemId = JsonParamUtils.getParameterToInt("problemId", 0); Date jyrq=labPat.getJyrq(); diff --git a/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkServiceImpl.java b/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkServiceImpl.java index 3f2cc29..115a767 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkServiceImpl.java +++ b/liswork/src/main/java/com/czlis/liswork/service/impl/LisWorkServiceImpl.java @@ -315,13 +315,16 @@ public class LisWorkServiceImpl implements LisWorkService { String xmdh=labResult.getXmdh(); String csjg=labResult.getCsjg(); if(csjg==null)csjg=""; - if(xmdh!=null&&"".equals(xmdh)) { + if(xmdh!=null&&!"".equals(xmdh)) { List labResultlog0 = labResultlog.stream().filter(rlog -> xmdh.equals(rlog.getXmdh())).collect(Collectors.toList()); if(labResultlog0.size()>0) { - String csjg0=labResultlog0.get(0).getCsjg(); - if(csjg0==null)csjg0=""; - if(!csjg.equals(csjg0)) { - labResult.setCp_modify(1); + for(LabResultlog labResultlog1 : labResultlog0) { + String csjg0 = labResultlog1.getCsjg(); + if (csjg0 == null) csjg0 = ""; + if (!csjg.equals(csjg0)) { + labResult.setCp_modify(1); + break; + } } } }