From 8415830374a51e3c1e3ddd3bc421b73768eb87b2 Mon Sep 17 00:00:00 2001 From: tangw Date: Tue, 3 Feb 2026 16:13:43 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=87=E6=9C=AC=E5=85=A8=E7=A8=8B=E7=9B=91?= =?UTF-8?q?=E6=8E=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/qc/QcGraphController.java | 2 +- .../work/WholeProcessController.java | 31 ++++ .../mapper/work/WholeProcessMapper.java | 9 + .../czlis/liswork/pojo/WholeProcessVO.java | 172 ++++++++++++++++++ .../liswork/service/WholeProcessService.java | 10 + .../service/impl/qc/QcGraphServiceImpl.java | 31 +++- .../impl/work/WholeProcessServiceImpl.java | 18 ++ .../resources/mapper/WholeProcessMapper.xml | 106 +++++++++++ 8 files changed, 377 insertions(+), 2 deletions(-) create mode 100644 liswork/src/main/java/com/czlis/liswork/controller/work/WholeProcessController.java create mode 100644 liswork/src/main/java/com/czlis/liswork/mapper/work/WholeProcessMapper.java create mode 100644 liswork/src/main/java/com/czlis/liswork/pojo/WholeProcessVO.java create mode 100644 liswork/src/main/java/com/czlis/liswork/service/WholeProcessService.java create mode 100644 liswork/src/main/java/com/czlis/liswork/service/impl/work/WholeProcessServiceImpl.java create mode 100644 liswork/src/main/resources/mapper/WholeProcessMapper.xml diff --git a/liswork/src/main/java/com/czlis/liswork/controller/qc/QcGraphController.java b/liswork/src/main/java/com/czlis/liswork/controller/qc/QcGraphController.java index f059f53..ff7f025 100644 --- a/liswork/src/main/java/com/czlis/liswork/controller/qc/QcGraphController.java +++ b/liswork/src/main/java/com/czlis/liswork/controller/qc/QcGraphController.java @@ -15,7 +15,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/qcgraph") @Slf4j -@Api(tags = "质控批号设置") +@Api(tags = "质控图") public class QcGraphController extends BaseController { @Autowired private QcGraphService qcGraphService; diff --git a/liswork/src/main/java/com/czlis/liswork/controller/work/WholeProcessController.java b/liswork/src/main/java/com/czlis/liswork/controller/work/WholeProcessController.java new file mode 100644 index 0000000..10ccbdd --- /dev/null +++ b/liswork/src/main/java/com/czlis/liswork/controller/work/WholeProcessController.java @@ -0,0 +1,31 @@ +package com.czlis.liswork.controller.work; + +import com.czlis.common.core.controller.BaseController; +import com.czlis.common.core.domain.ResultT; +import com.czlis.common.core.domain.entity.lis.view.LabReqmainVO; +import com.czlis.common.core.page.TableDataInfo; +import com.czlis.liswork.pojo.WholeProcessVO; +import com.czlis.liswork.service.WholeProcessService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/wholeprocess") +@Slf4j +@Api(tags = "标本全程监控") +public class WholeProcessController extends BaseController { + @Autowired + WholeProcessService whoProcessService; + @ApiOperation("查询申请单全程信息") + @GetMapping("/list") + public TableDataInfo getWholeProcess(WholeProcessVO whoProcessVO){ + startPage(); + return getDataTable(whoProcessService.getWholeProcess(whoProcessVO)); + } +} diff --git a/liswork/src/main/java/com/czlis/liswork/mapper/work/WholeProcessMapper.java b/liswork/src/main/java/com/czlis/liswork/mapper/work/WholeProcessMapper.java new file mode 100644 index 0000000..3b7891c --- /dev/null +++ b/liswork/src/main/java/com/czlis/liswork/mapper/work/WholeProcessMapper.java @@ -0,0 +1,9 @@ +package com.czlis.liswork.mapper.work; + +import com.czlis.liswork.pojo.WholeProcessVO; + +import java.util.List; + +public interface WholeProcessMapper { + List getWholeProcess(WholeProcessVO whoProcessVO); +} diff --git a/liswork/src/main/java/com/czlis/liswork/pojo/WholeProcessVO.java b/liswork/src/main/java/com/czlis/liswork/pojo/WholeProcessVO.java new file mode 100644 index 0000000..02cbe0c --- /dev/null +++ b/liswork/src/main/java/com/czlis/liswork/pojo/WholeProcessVO.java @@ -0,0 +1,172 @@ +package com.czlis.liswork.pojo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "WholeProcessVO", description = "标本全程监控查询输出") +@Data +public class WholeProcessVO { + @ApiModelProperty(value = "条码号") + private String sqh; + @ApiModelProperty(value = "科室") + private String ksdh; + @ApiModelProperty(value = "申请医生") + private String sqys; + @ApiModelProperty(value = "申请时间") + private Date sqsj; + @ApiModelProperty(value = "接收医生") + private String jsys; + @ApiModelProperty(value = "接收时间") + private Date jssj; + @ApiModelProperty(value = "状态") + private String zt; + @ApiModelProperty(value = "计价") + private String jjzt; + @ApiModelProperty(value = "病人类型") + private String brly; + @ApiModelProperty(value = "病人代号") + private String brdh; + @ApiModelProperty(value = "病人姓名") + private String brxm; + @ApiModelProperty(value = "性别") + private String brxb; + @ApiModelProperty(value = "出生日期") + private Date brsr; + @ApiModelProperty(value = "备注1") + private String bz1; + @ApiModelProperty(value = "备注2") + private String bz2; + @ApiModelProperty(value = "剔回原因") + private String bz3; + @ApiModelProperty(value = "急诊标志") + private String jzbz; + @ApiModelProperty(value = "床号") + private String ch; + @ApiModelProperty(value = "样本类型") + private String yblx; + @ApiModelProperty(value = "执行人") + private String zxys; + @ApiModelProperty(value = "执行时间") + private Date zxsj; + @ApiModelProperty(value = "申请单类别") + private String bgddh; + private Double costs; + private Integer nl; + private String nldw; + @ApiModelProperty(value = "诊断") + private String zd; + @ApiModelProperty(value = "采样时间") + private Date cysj; + @ApiModelProperty(value = "录入人") + private String inputman; + @ApiModelProperty(value = "批准人") + private String powerman; + @ApiModelProperty(value = "联系人") + private String contactman; + @ApiModelProperty(value = "采样人") + private String cyr; + @ApiModelProperty(value = "送检人") + private String bbsjr; + @ApiModelProperty(value = "送检时间") + private Date bbsjsj; + @ApiModelProperty(value = "是否销毁") + private String inzt; + @ApiModelProperty(value = "存放位置") + private String libpos; + @ApiModelProperty(value = "存放时间") + private Date inlibtime; + @ApiModelProperty(value = "存放人") + private String inlibman; + @ApiModelProperty(value = "销毁时间") + private Date outlibtime; + @ApiModelProperty(value = "销毁人") + private String outlibman; + @ApiModelProperty(value = "拒收标记") + private String refused; + @ApiModelProperty(value = "审核时间") + private Date confirmtime; + @ApiModelProperty(value = "审核人") + private String confirmer; + @ApiModelProperty(value = "医疗机构") + private String yljg; + @ApiModelProperty(value = "卡号") + private String kh; + @ApiModelProperty(value = "卡类型") + private String klx; + @ApiModelProperty(value = "检验目的") + private String jymd; + @ApiModelProperty(value = "身份证号") + private String sfzh; + @ApiModelProperty(value = "联系电话") + private String phone; + @ApiModelProperty(value = "家属电话") + private String phone1; + @ApiModelProperty(value = "上机仪器") + private String yqdh; + @ApiModelProperty(value = "上机时间") + private Date sjsj; + @ApiModelProperty(value = "地址") + private String addr; + @ApiModelProperty(value = "绿色通道") + private String lstd; + @ApiModelProperty(value = "生理周期") + private String slzq; + @ApiModelProperty(value = "采集量") + private String ybrl; + @ApiModelProperty(value = "签收机构") + private String qsyljg; + @ApiModelProperty(value = "采集部位") + private String cjbw; + @ApiModelProperty(value = "条码类别名称") + private String bgddhname; + @ApiModelProperty(value = "条码类别颜色") + private Integer bkcolor; + @ApiModelProperty(value = "采集说明") + private String sampletips; + private String brxbname; + private String zxysname; + private String bbsjrname; + private String ksname; + private String sqysname; + private String jsysname; + private String brlyname; + private String cyrname; + @ApiModelProperty(value = "申请时间起始") + private Date sqsj1; + @ApiModelProperty(value = "申请时间截止") + private Date sqsj2; + @ApiModelProperty(value = "签收时间起始") + private Date jssj1; + @ApiModelProperty(value = "签收时间截止") + private Date jssj2; + @ApiModelProperty(value = "接收TAT") + private Integer cp_cytojs; + @ApiModelProperty(value = "报告TAT") + private Integer cp_jstobg; + @ApiModelProperty(value = "接收规定TAT") + private Integer min1; + @ApiModelProperty(value = "报告规定TAT") + private Integer min2; + @ApiModelProperty(value = "明细序号") + private Integer xh; + @ApiModelProperty(value = "申请项目代号") + private String sqxmdh; + @ApiModelProperty(value = "申请项目名称") + private String sqxmmc; + @ApiModelProperty(value = "明细计价状态") + private String mxjjzt; + @ApiModelProperty(value = "单价") + private Double dj; + @ApiModelProperty(value = "数量") + private Double sl; + @ApiModelProperty(value = "明细备注1") + private String bz11; + @ApiModelProperty(value = "明细备注2") + private String bz22; +} diff --git a/liswork/src/main/java/com/czlis/liswork/service/WholeProcessService.java b/liswork/src/main/java/com/czlis/liswork/service/WholeProcessService.java new file mode 100644 index 0000000..c4ed001 --- /dev/null +++ b/liswork/src/main/java/com/czlis/liswork/service/WholeProcessService.java @@ -0,0 +1,10 @@ +package com.czlis.liswork.service; + +import com.czlis.common.core.domain.Result; +import com.czlis.liswork.pojo.WholeProcessVO; + +import java.util.List; + +public interface WholeProcessService { + List getWholeProcess(WholeProcessVO whoProcessVO); +} diff --git a/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcGraphServiceImpl.java b/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcGraphServiceImpl.java index 59a863e..93ff9bf 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcGraphServiceImpl.java +++ b/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcGraphServiceImpl.java @@ -9,7 +9,12 @@ import com.czlis.liswork.pojo.DTO.QcValDTO; import com.czlis.liswork.service.QcGraphService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import java.util.HashMap; import java.util.List; +import java.util.Map; +import java.util.Optional; + @Service public class QcGraphServiceImpl implements QcGraphService { @Autowired @@ -22,12 +27,36 @@ public class QcGraphServiceImpl implements QcGraphService { @Override public Result query(QcGraphParamDTO qcGraphParamDTO){ List QcValDTOList=qcGraphMapper.query(qcGraphParamDTO); - return new Result("0","成功",QcValDTOList); + List QcSamplelist=qcGraphMapper.queryhead(qcGraphParamDTO); + List QcSamplelist3=qcGraphMapper.queryhead3(qcGraphParamDTO); + for(QcMonthstDTO qcMonthstDTO:QcSamplelist){ + String xmdh=qcMonthstDTO.getXmdh(); + Optional monthst0=QcSamplelist3.stream().filter(ss->xmdh.equals(ss.getXmdh())).findAny(); + if(monthst0.isPresent()) { + qcMonthstDTO.setAvg3(monthst0.get().getAvg3()); + qcMonthstDTO.setCv3(monthst0.get().getCv3()); + qcMonthstDTO.setSd3(monthst0.get().getSd3()); + } + } + Map map=new HashMap<>(); + map.put("QcValList",QcValDTOList); + map.put("QcSamplelist",QcSamplelist); + return new Result("0","成功",map); } @Override public Result queryhead(QcGraphParamDTO qcGraphParamDTO){ List QcSamplelist=qcGraphMapper.queryhead(qcGraphParamDTO); + List QcSamplelist3=qcGraphMapper.queryhead3(qcGraphParamDTO); + for(QcMonthstDTO qcMonthstDTO:QcSamplelist){ + String xmdh=qcMonthstDTO.getXmdh(); + Optional monthst0=QcSamplelist3.stream().filter(ss->xmdh.equals(ss.getXmdh())).findAny(); + if(monthst0.isPresent()) { + qcMonthstDTO.setAvg3(monthst0.get().getAvg3()); + qcMonthstDTO.setCv3(monthst0.get().getCv3()); + qcMonthstDTO.setSd3(monthst0.get().getSd3()); + } + } return new Result("0","成功",QcSamplelist); } } diff --git a/liswork/src/main/java/com/czlis/liswork/service/impl/work/WholeProcessServiceImpl.java b/liswork/src/main/java/com/czlis/liswork/service/impl/work/WholeProcessServiceImpl.java new file mode 100644 index 0000000..9c80faa --- /dev/null +++ b/liswork/src/main/java/com/czlis/liswork/service/impl/work/WholeProcessServiceImpl.java @@ -0,0 +1,18 @@ +package com.czlis.liswork.service.impl.work; + +import com.czlis.liswork.mapper.work.WholeProcessMapper; +import com.czlis.liswork.pojo.WholeProcessVO; +import com.czlis.liswork.service.WholeProcessService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class WholeProcessServiceImpl implements WholeProcessService { + @Autowired + WholeProcessMapper wholeProcessMapper; + public List getWholeProcess(WholeProcessVO whoProcessVO){ + return wholeProcessMapper.getWholeProcess(whoProcessVO); + } +} diff --git a/liswork/src/main/resources/mapper/WholeProcessMapper.xml b/liswork/src/main/resources/mapper/WholeProcessMapper.xml new file mode 100644 index 0000000..ac5f442 --- /dev/null +++ b/liswork/src/main/resources/mapper/WholeProcessMapper.xml @@ -0,0 +1,106 @@ + + + + + + select a.*,b.sflbmc as bgddhname,b.sampletips,b.bkcolor, + (case rtrim(a.brxb) when '1' then '男' when '2' then '女' else '' end) as brxbname, + (select zdmc from com_dict where zdlb = 'SRD' AND zddh = a.sqys) as sqysname, + (select zdmc from com_dict where zdlb = 'SRD' AND zddh = a.bbsjr) as bbsjrname, + (select zdmc from com_dict where zdlb = 'SRD' AND zddh = a.zxys) as zxysname, + (select yhxm from com_usr where yhdh = a.jsys) as jsysname, + (select zdmc from com_dict where zdlb = 'DP' AND zddh = a.ksdh) as ksname, + (select zdmc from com_dict where zdlb = 'PT' AND zddh = a.brly) as brlyname, + (select zdmc from com_dict where zdlb = 'SRD' AND zddh = a.cyr) as cyrname, + (select zdmc from com_dict where zdlb = 'HOS' AND zddh = a.yljg) as yljgname, + isnull((select zdmc from com_dict where zdlb = 'HOS' AND zddh = a.yblx),a.yblx) as yblxname, + datediff(minute,a.cysj,a.jssj) as cp_cytojs, + datediff(minute,a.jssj,a.confirmtime) as cp_jstobg, + (select max(min1) from lab_tatctrl where (lab_tatctrl.jzbz='@' or (lab_tatctrl.jzbz='1' and a.jzbz='1') or (lab_tatctrl.jzbz='0' and isnull(a.jzbz,'') !='1')) and ( lab_tatctrl.yblx='@' or lab_tatctrl.yblx=a.yblx ) and lab_tatctrl.ruletype = '4' and lab_tatctrl.refcode=c.sqxmdh) as min1, + (select max(min2) from lab_tatctrl where (lab_tatctrl.jzbz='@' or (lab_tatctrl.jzbz='1' and a.jzbz='1') or (lab_tatctrl.jzbz='0' and isnull(a.jzbz,'') !='1')) and ( lab_tatctrl.yblx='@' or lab_tatctrl.yblx=a.yblx ) and lab_tatctrl.ruletype = '4' and lab_tatctrl.refcode=c.sqxmdh) as min2, + c.xh,c.sqxmdh,c.sqxmmc,c.jjzt as mxjjzt,c.dj,c.sl,c.bz1 as bz11,c.bz2 as bz22 + + from lab_reqmain a left join lab_feeitemclass b on (a.bgddh = b.sflbdh) + LEFT OUTER JOIN lab_reqdetail c ON a.sqh = c.sqh + + + + + \ No newline at end of file