This commit is contained in:
tangw 2026-01-16 11:34:30 +08:00
parent 0b799b44d7
commit c6013d774e
5 changed files with 85 additions and 16 deletions

View File

@ -46,7 +46,7 @@ public class QcValController extends BaseController {
}
@ApiOperation("保存质控数据(单项目一个月)")
@PostMapping("/saveqcvalmonth")
public Result saveQcValmonth(@RequestBody Map<String,Object> qcVal){
public Result saveQcValmonth(@RequestBody List<Map<String,Object>> qcVal){
return qcValService.saveQcValmonth(qcVal);
}
@ApiOperation("保存质控数据(当天所有项目)")

View File

@ -14,6 +14,7 @@ public interface QcValMapper {
QcVal queryById(Long qc_valid);
QcVal queryOne(QcVal qcVal);
List<QcVal> query(QcVal qcVal);
List<QcVal> querymonth(QcVal qcVal);
List<Map<String,Object>> queryvalmonth(QcVal qcVal);
List<Map<String,Object>> queryvalitem(QcVal qcVal);
List<Map<String,Object>> queryitem(String yq);

View File

@ -12,7 +12,7 @@ public interface QcValService {
Result getqcvalitem(QcVal qcVal);
Result getqcvalmonth(QcVal qcVal);
Result saveQcVal(List<QcVal> qcValList);
Result saveQcValmonth(Map<String,Object> qcVal);
Result saveQcValmonth(List<Map<String,Object>> qcVal);
Result saveQcValitem(List<Map<String,Object>> qcVal);
Result queryitem(String yq);
}

View File

@ -62,23 +62,71 @@ public class QcValServiceImpl implements QcValService {
}
@Transactional(rollbackFor = Exception.class)
@Override
public Result saveQcValmonth(Map<String,Object> map){
for (int i = 0; i <31; i++) {
Long cs=i+1L;
String xh="cs"+cs;
if (!map.containsKey(xh))continue;
List<Map<String,Object>> qcVallist=(List)map.get(xh);
if(qcVallist!=null && qcVallist.size()>0){
for (int j = 0; j <qcVallist.size(); j++) {
Map<String,Object> map0=qcVallist.get(j);
String yq=map0.get("yq").toString();
String xmdh=map0.get("xmdh").toString();
String zkph=map0.get("zkph").toString();
Date zkrq= DateUtils.dateTime("yyy-mm-dd",map0.get("zkph").toString());
public Result saveQcValmonth(List<Map<String,Object>> qcVallist){
String yhdh = SecurityUtils.getLoginUser().getUsername();
if(qcVallist!=null && qcVallist.size()>0){
QcVal qcVal0=new QcVal();
qcVal0.setYq(qcVallist.get(0).get("yq").toString());
qcVal0.setZkph(qcVallist.get(0).get("zkph").toString());
qcVal0.setZkrq(DateUtils.dateTime("yyy-MM-dd",qcVallist.get(0).get("zkrq").toString()));
qcVal0.setXmdh(qcVallist.get(0).get("xmdh").toString());
List<QcVal> qcValall=qcValMapper.querymonth(qcVal0);
for (int j = 0; j <qcVallist.size(); j++) {
Map<String,Object> map0=qcVallist.get(j);
String yq=map0.get("yq").toString();
String xmdh=map0.get("xmdh").toString();
String zkph=map0.get("zkph").toString();
Date zkrq= DateUtils.dateTime("yyy-MM-dd",map0.get("zkrq").toString());
for (int i = 0; i <7; i++) {
Long cs=i+1L;
Integer cs0=i+1;
String xh="cs"+cs;
if (!map0.containsKey(xh))continue;
String zkjg=map0.get(xh).toString();
QcVal qcVal1=null;
if(qcValall!=null&&qcValall.size()>0) {
Optional<QcVal> qcvalfind = qcValall.stream().filter(aa -> aa.getCs() == cs0 && zkrq.equals(aa.getZkrq())).findAny();
if (qcvalfind.isPresent()) qcVal1 = qcvalfind.get();
}
// log.info("qcVal1:",qcVal1);
if (zkjg==null||"".equals(zkjg)){
if (qcVal1 != null) {
qcValMapper.deleteById(qcVal1.getQc_valid());
String logdata="质控结果删除: 项目 ["+qcVal1.getXmdh()+"] 结果 "+qcVal1.getZkjg()+"!";
qcmodifylog(qcVal1,"1",logdata);
}
}else {
if(!LisUtil.isNumber(zkjg))continue;
if (qcVal1 == null) {
qcVal1=new QcVal();
qcVal1.setYq(yq);
qcVal1.setZkph(zkph);
qcVal1.setZkrq(zkrq);
qcVal1.setXmdh(xmdh);
qcVal1.setCs(cs0);
qcVal1.setYhdh(yhdh);
qcVal1.setInputdt(new Date());
BigDecimal zkjgs = new BigDecimal(zkjg);
qcVal1.setZkjg(zkjgs);
qcValMapper.insert(qcVal1);
} else {
// log.info("qcVal1:",qcVal1);
// log.info("getQcValid:",qcVal1.getQc_valid());
BigDecimal zkjgs = new BigDecimal(zkjg);
BigDecimal zkjg0 = qcVal1.getZkjg();
if (zkjgs != zkjg0) {
qcVal1.setZkjg(zkjgs);
qcVal1.setYhdh(yhdh);
qcVal1.setInputdt(new Date());
qcValMapper.update(qcVal1);
String logdata = "质控结果修改: 项目 ["+qcVal1.getXmdh()+"] 结果: "+zkjg0+" 修改为: "+zkjgs+" !";
qcmodifylog(qcVal1, "2", logdata);
}
}
}
}
}
}
return new Result("0","保存数据成功!");
}
@Transactional(rollbackFor = Exception.class)

View File

@ -110,6 +110,26 @@
</if>
</where>
</select>
<select id="querymonth" resultType="com.czlis.common.core.domain.entity.lis.QcVal">
select * from qc_val
<where>
<if test="zkrq != null ">
and convert(char(8),zkrq,120) = convert(char(8),#{zkrq} ,120)
</if>
<if test="yq != null and yq != ''">
and yq = #{yq}
</if>
<if test="xmdh != null and xmdh != ''">
and xmdh = #{xmdh}
</if>
<if test="zkph != null and zkph != ''">
and zkph = #{zkph}
</if>
<if test="cs != null ">
and cs = #{cs}
</if>
</where>
</select>
<select id="queryitem" resultType="map">
SELECT xm_info.yq,
xm_info.xmdh,