This commit is contained in:
tangw 2026-01-22 18:19:02 +08:00
parent 1c5faa38cc
commit 40970b0b69
9 changed files with 126 additions and 12 deletions

View File

@ -2,6 +2,7 @@ package com.czlis.liswork.controller.qc;
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.QcSample;
import com.czlis.common.core.domain.entity.lis.QcVal; import com.czlis.common.core.domain.entity.lis.QcVal;
import com.czlis.liswork.service.QcStatService; import com.czlis.liswork.service.QcStatService;
import com.czlis.liswork.service.QcValService; import com.czlis.liswork.service.QcValService;
@ -9,10 +10,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; 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.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@ -22,10 +20,29 @@ import org.springframework.web.bind.annotation.RestController;
public class QcStatController extends BaseController { public class QcStatController extends BaseController {
@Autowired @Autowired
private QcStatService qcStatService; private QcStatService qcStatService;
@ApiOperation("查询质控数据") @ApiOperation("查询月质控数据")
@GetMapping("/getmonthst") @GetMapping("/getmonthst")
public Result getmonthst(QcVal qcVal) { public Result getmonthst(QcVal qcVal) {
return qcStatService.queryMonthst(qcVal); return qcStatService.queryMonthst(qcVal);
} }
@ApiOperation("查询月失控情况总结")
@GetMapping("/getmonthskzj")
public Result queryMonthskzj(QcSample qcSample) {
return qcStatService.queryMonthskzj(qcSample);
}
@ApiOperation("查询月室内质控小结")
@GetMapping("/getmonthpj")
public Result queryMonthpj(QcSample qcSample) {
return qcStatService.queryMonthpj(qcSample);
}
@ApiOperation("保存月失控情况总结")
@PostMapping("/savemonthskzj")
public Result saveMonthskzj(@RequestBody QcSample qcSample) {
return qcStatService.saveMonthskzj(qcSample);
}
@ApiOperation("保存月室内质控小结")
@PostMapping("/savemonthpj")
public Result saveMonthpj(@RequestBody QcSample qcSample) {
return qcStatService.saveMonthpj(qcSample);
}
} }

View File

@ -1,5 +1,6 @@
package com.czlis.liswork.controller.xtwh; package com.czlis.liswork.controller.xtwh;
import com.czlis.common.annotation.Anonymous;
import com.czlis.common.annotation.Log; import com.czlis.common.annotation.Log;
import com.czlis.common.core.controller.BaseController; import com.czlis.common.core.controller.BaseController;
import com.czlis.common.core.domain.AjaxResult; import com.czlis.common.core.domain.AjaxResult;
@ -39,9 +40,16 @@ public class ComLocalconfigController extends BaseController {
List<ComConfigDict> posts = ComLocalconfigService.getComLocalconfigdef(); List<ComConfigDict> posts = ComLocalconfigService.getComLocalconfigdef();
return success(posts); return success(posts);
} }
@Anonymous
@ApiOperation("获取本地默认参数列表")
@GetMapping("/getconfig")
public AjaxResult getconfig(String configCode) {
return success(ComLocalconfigService.getLocalconfig(configCode));
}
/** /**
* 修改本地参数 * 修改本地参数
*/ */
@Anonymous
@ApiOperation("修改本地参数") @ApiOperation("修改本地参数")
@Log(title = "修改本地参数", businessType = BusinessType.UPDATE) @Log(title = "修改本地参数", businessType = BusinessType.UPDATE)
@PutMapping @PutMapping

View File

@ -11,4 +11,6 @@ public interface QcStatMapper {
List<QcMonthstDTO> queryMonthst(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph); List<QcMonthstDTO> queryMonthst(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph);
List<QcMonthstDTO> queryMonthst2(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph); List<QcMonthstDTO> queryMonthst2(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph);
List<QcMonthstDTO> queryMonthst3(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph); List<QcMonthstDTO> queryMonthst3(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph);
List<Map<String,Object>> queryMonthskzj(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph);
List<Map<String,Object>> queryMonthpj(@Param("yq") String yq , @Param("zkrq") Date zkrq, @Param("zkph") String zkph);
} }

View File

@ -55,4 +55,10 @@ public class QcMonthstDTO {
private Integer cnt3; private Integer cnt3;
@ApiModelProperty(value = "标准CV%") @ApiModelProperty(value = "标准CV%")
private BigDecimal qccv; private BigDecimal qccv;
@ApiModelProperty(value = "浓度")
private String ld;
@ApiModelProperty(value = "失控率")
private String skl;
@ApiModelProperty(value = "处理率")
private String cll;
} }

View File

@ -8,6 +8,7 @@ import java.util.Map;
public interface ComLocalconfigService { public interface ComLocalconfigService {
List<ComConfigDict> getComLocalconfigList(); List<ComConfigDict> getComLocalconfigList();
ComConfigDict getLocalconfig(String configCode);
List<ComConfigDict> getComLocalconfigdef(); List<ComConfigDict> getComLocalconfigdef();
int updateComLocalconfig(ComConfigDict comConfigDict); int updateComLocalconfig(ComConfigDict comConfigDict);
int updateComLocalconfigALL(List<ComConfigDict> list); int updateComLocalconfigALL(List<ComConfigDict> list);

View File

@ -2,10 +2,15 @@ package com.czlis.liswork.service;
import com.czlis.common.core.domain.Result; import com.czlis.common.core.domain.Result;
import com.czlis.common.core.domain.entity.lis.QcSample;
import com.czlis.common.core.domain.entity.lis.QcVal; import com.czlis.common.core.domain.entity.lis.QcVal;
import java.util.Date; import java.util.Date;
public interface QcStatService { public interface QcStatService {
Result queryMonthst(QcVal qcVal); Result queryMonthst(QcVal qcVal);
Result queryMonthskzj(QcSample qcSample);
Result queryMonthpj(QcSample qcSample);
Result saveMonthskzj(QcSample qcSample);
Result saveMonthpj(QcSample qcSample);
} }

View File

@ -1,12 +1,16 @@
package com.czlis.liswork.service.impl.qc; package com.czlis.liswork.service.impl.qc;
import com.czlis.common.core.domain.Result; import com.czlis.common.core.domain.Result;
import com.czlis.common.core.domain.entity.lis.QcSample;
import com.czlis.common.core.domain.entity.lis.QcVal; import com.czlis.common.core.domain.entity.lis.QcVal;
import com.czlis.common.utils.SecurityUtils;
import com.czlis.liswork.mapper.QcSampleMapper;
import com.czlis.liswork.mapper.QcStatMapper; import com.czlis.liswork.mapper.QcStatMapper;
import com.czlis.liswork.pojo.DTO.QcMonthstDTO; import com.czlis.liswork.pojo.DTO.QcMonthstDTO;
import com.czlis.liswork.service.QcStatService; import com.czlis.liswork.service.QcStatService;
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 java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -14,6 +18,8 @@ import java.util.Optional;
@Service @Service
public class QcStatServiceImpl implements QcStatService { public class QcStatServiceImpl implements QcStatService {
@Autowired
private QcSampleMapper qcSampleMapper;
@Autowired @Autowired
private QcStatMapper qcStatMapper; private QcStatMapper qcStatMapper;
@Override @Override
@ -42,4 +48,60 @@ public class QcStatServiceImpl implements QcStatService {
} }
return new Result("0","成功",monthst); return new Result("0","成功",monthst);
} }
@Override
public Result queryMonthskzj(QcSample qcSample){
qcSample.setXmdh("_skxj_");
QcSample qcSample0 =qcSampleMapper.queryOne(qcSample);
return new Result("0","成功",qcSample0.getBz1());
}
@Override
public Result queryMonthpj(QcSample qcSample){
qcSample.setXmdh("_pj_");
QcSample qcSample0 =qcSampleMapper.queryOne(qcSample);
return new Result("0","成功",qcSample0.getBz1());
}
@Transactional(rollbackFor = Exception.class)
@Override
public Result saveMonthskzj(QcSample qcSample){
String yhdh = SecurityUtils.getLoginUser().getUsername();
qcSample.setXmdh("_skxj_");
qcSample.setBc(yhdh);
QcSample qcSample0 =qcSampleMapper.queryOne(qcSample);
if(qcSample0==null) {
String bz1=qcSample.getBz1();
if(bz1!=null&&!"".equals(bz1)) {
qcSampleMapper.insert(qcSample);
}
}else{
String bz1=qcSample.getBz1();
if(bz1==null||"".equals(bz1)) {
qcSampleMapper.delete(qcSample);
}else {
qcSampleMapper.update(qcSample);
}
}
return new Result("0","成功");
}
@Transactional(rollbackFor = Exception.class)
@Override
public Result saveMonthpj(QcSample qcSample){
String yhdh = SecurityUtils.getLoginUser().getUsername();
qcSample.setXmdh("_pj_");
qcSample.setBc(yhdh);
QcSample qcSample0 =qcSampleMapper.queryOne(qcSample);
if(qcSample0==null) {
String bz1=qcSample.getBz1();
if(bz1!=null&&!"".equals(bz1)) {
qcSampleMapper.insert(qcSample);
}
}else{
String bz1=qcSample.getBz1();
if(bz1==null||"".equals(bz1)) {
qcSampleMapper.delete(qcSample);
}else {
qcSampleMapper.update(qcSample);
}
}
return new Result("0","成功");
}
} }

View File

@ -133,12 +133,16 @@ public class ComLocalconfigServiceImpl implements ComLocalconfigService {
} }
return 0; return 0;
} }
@Override
public ComConfigDict getLocalconfig(String configCode){
List<ComConfigDict> list=getComLocalconfigList();
if (list.isEmpty()) return null;
return list.stream().filter(ss->ss.getConfigCode().equals(configCode)).findFirst().orElse(null);
}
@Override @Override
public List<ComConfigDict> getComLocalconfigList() { public List<ComConfigDict> getComLocalconfigList() {
return getComLocalconfigList(getLocalid()); return getComLocalconfigList(getLocalid());
} }
public List<ComConfigDict> getComLocalconfigList(String smac) { public List<ComConfigDict> getComLocalconfigList(String smac) {
ComConfigDict post = new ComConfigDict(); ComConfigDict post = new ComConfigDict();
post.setConfigType("LOCAL"); post.setConfigType("LOCAL");
@ -158,9 +162,9 @@ public class ComLocalconfigServiceImpl implements ComLocalconfigService {
} }
} }
}else{ }else{
for (ComConfigDict comConfigDict : list) { // for (ComConfigDict comConfigDict : list) {
comConfigDict.setConfigDefvalue(null); // comConfigDict.setConfigDefvalue(null);
} // }
} }
return list; return list;
} }

View File

@ -13,7 +13,8 @@
cast(STDEV(zkjg) as decimal(12, 3)) sd1, cast(STDEV(zkjg) as decimal(12, 3)) sd1,
cast(100*STDEV(zkjg)/avg(zkjg) as decimal(12, 3)) as cv1, cast(100*STDEV(zkjg)/avg(zkjg) as decimal(12, 3)) as cv1,
max(qc_sample.zkpph) as zkpph, max(qc_sample.zkpph) as zkpph,
max(isnull(qc_sample.qccv,xm_info.qccv)) as qccv max(isnull(qc_sample.qccv,xm_info.qccv)) as qccv,
max(qc_sample.ld) as ld
FROM qc_val join xm_info on xm_info.yq=qc_val.yq and xm_info.xmdh=qc_val.xmdh FROM qc_val join xm_info on xm_info.yq=qc_val.yq and xm_info.xmdh=qc_val.xmdh
join qc_sample on qc_sample.yq=qc_val.yq and qc_sample.xmdh=qc_val.xmdh and qc_sample.zkph=qc_val.zkph join qc_sample on qc_sample.yq=qc_val.yq and qc_sample.xmdh=qc_val.xmdh and qc_sample.zkph=qc_val.zkph
and qc_sample.ksrq=(select max(ksrq) from qc_sample x where x.yq=qc_val.yq and x.xmdh=qc_val.xmdh and x.zkph=qc_val.zkph and qc_val.zkrq>=x.ksrq) and qc_sample.ksrq=(select max(ksrq) from qc_sample x where x.yq=qc_val.yq and x.xmdh=qc_val.xmdh and x.zkph=qc_val.zkph and qc_val.zkrq>=x.ksrq)
@ -41,4 +42,12 @@
and qc_val.yq=#{yq} and qc_val.zkph=#{zkph} and qc_val.yq=#{yq} and qc_val.zkph=#{zkph}
group by qc_val.yq,qc_val.zkph,qc_val.xmdh group by qc_val.yq,qc_val.zkph,qc_val.xmdh
</select> </select>
<select id="queryMonthskzj" resultType="String">
select bz1 FROM qc_val where ksrq=convert(datetime,convert(char(8),#{zkrq},120)+'01') and xmdh='_skxj_'
and qc_val.yq=#{yq} and qc_val.zkph=#{zkph}
</select>
<select id="queryMonthpj" resultType="String">
select bz1 FROM qc_val where ksrq=convert(datetime,convert(char(8),#{zkrq},120)+'01') and xmdh='_pj_'
and qc_val.yq=#{yq} and qc_val.zkph=#{zkph}
</select>
</mapper> </mapper>