From f6a4aa0175b3ac16b0af6e8f1a40deb9e5d451ea Mon Sep 17 00:00:00 2001 From: tangw Date: Thu, 15 Jan 2026 11:52:55 +0800 Subject: [PATCH] QC --- .../core/domain/entity/lis/QcBatchno.java | 4 + .../common/core/domain/entity/lis/QcVal.java | 2 + .../controller/system/SysLoginController.java | 3 + .../controller/qc/QcBatchnoController.java | 4 +- .../controller/qc/QcValController.java | 26 ++++ .../com/czlis/liswork/mapper/QcValMapper.java | 4 + .../czlis/liswork/service/QcValService.java | 7 ++ .../service/impl/qc/QcBatchnoServiceImpl.java | 13 +- .../service/impl/qc/QcValServiceImpl.java | 113 +++++++++++++++++- .../main/resources/mapper/QcBatchnoMapper.xml | 3 +- .../src/main/resources/mapper/QcValMapper.xml | 55 ++++++++- 11 files changed, 222 insertions(+), 12 deletions(-) diff --git a/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcBatchno.java b/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcBatchno.java index 51a0079..e99ea70 100644 --- a/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcBatchno.java +++ b/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcBatchno.java @@ -1,5 +1,6 @@ package com.czlis.common.core.domain.entity.lis; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -13,9 +14,12 @@ public class QcBatchno { private String yq; private String zkpph; private String zkph; + @JsonFormat(pattern = "yyyy-MM-dd") private Date startda; private String conc; + @JsonFormat(pattern = "yyyy-MM-dd") private Date expiredt; + @JsonFormat(pattern = "yyyy-MM-dd") private Date endda; private String useflag; private String qcsrc; diff --git a/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcVal.java b/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcVal.java index 6f6c766..44ab75d 100644 --- a/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcVal.java +++ b/lis-common/src/main/java/com/czlis/common/core/domain/entity/lis/QcVal.java @@ -1,5 +1,6 @@ package com.czlis.common.core.domain.entity.lis; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -13,6 +14,7 @@ import java.util.Date; public class QcVal { private Integer qcValid; private String yq; + @JsonFormat(pattern = "yyyy-MM-dd") private Date zkrq; private String xmdh; private String zkph; diff --git a/lis-system/src/main/java/com/czlis/system/web/controller/system/SysLoginController.java b/lis-system/src/main/java/com/czlis/system/web/controller/system/SysLoginController.java index 8d96398..bffafcf 100644 --- a/lis-system/src/main/java/com/czlis/system/web/controller/system/SysLoginController.java +++ b/lis-system/src/main/java/com/czlis/system/web/controller/system/SysLoginController.java @@ -2,6 +2,7 @@ package com.czlis.system.web.controller.system; import com.czlis.common.constant.Constants; import com.czlis.common.core.domain.AjaxResult; +import com.czlis.common.core.domain.entity.SysLoginParam; import com.czlis.common.core.domain.entity.SysMenu; import com.czlis.common.core.domain.entity.SysUser; import com.czlis.common.core.domain.model.LoginBody; @@ -77,6 +78,8 @@ public class SysLoginController { loginUser.setPermissions(permissions); tokenService.refreshToken(loginUser); } + SysLoginParam sysLoginParam=loginUser.getSysLoginParam(); + user.setSysLoginParam(sysLoginParam); AjaxResult ajax = AjaxResult.success(); ajax.put("user", user); ajax.put("roles", roles); diff --git a/liswork/src/main/java/com/czlis/liswork/controller/qc/QcBatchnoController.java b/liswork/src/main/java/com/czlis/liswork/controller/qc/QcBatchnoController.java index aac12ed..c134d1f 100644 --- a/liswork/src/main/java/com/czlis/liswork/controller/qc/QcBatchnoController.java +++ b/liswork/src/main/java/com/czlis/liswork/controller/qc/QcBatchnoController.java @@ -41,12 +41,12 @@ public class QcBatchnoController extends BaseController { } @ApiOperation("新增质控批号") @PostMapping("/addBatchno") - public Result addBatchno(QcBatchno qcBatchno) { + public Result addBatchno(@RequestBody QcBatchno qcBatchno) { return qcBatchnoService.addBatchno(qcBatchno); } @ApiOperation("修改质控批号") @PostMapping("/updateBatchno") - public Result updateBatchno(QcBatchno qcBatchno) { + public Result updateBatchno(@RequestBody QcBatchno qcBatchno) { return qcBatchnoService.updateBatchno(qcBatchno); } @ApiOperation("获取项目列表") diff --git a/liswork/src/main/java/com/czlis/liswork/controller/qc/QcValController.java b/liswork/src/main/java/com/czlis/liswork/controller/qc/QcValController.java index 3112211..5459543 100644 --- a/liswork/src/main/java/com/czlis/liswork/controller/qc/QcValController.java +++ b/liswork/src/main/java/com/czlis/liswork/controller/qc/QcValController.java @@ -14,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; +import java.util.Map; @RestController @RequestMapping("/qc") @@ -28,9 +29,34 @@ public class QcValController extends BaseController { List qcValList = qcValService.queryList(qcVal); return new Result("0","获取数据成功!",qcValList); } + @ApiOperation("按查询质控数据(当天所有项目)") + @GetMapping("/getqcvalitem") + public Result getqcvalitem(QcVal qcVal) { + return qcValService.getqcvalitem(qcVal); + } + @ApiOperation("查询质控数据(单项目一个月)") + @GetMapping("/getqcvalmonth") + public Result getqcvalmonth(QcVal qcVal) { + return qcValService.getqcvalmonth(qcVal); + } @ApiOperation("保存质控数据") @PostMapping("/saveqcval") public Result saveQcVal(@RequestBody List qcVal){ return qcValService.saveQcVal(qcVal); } + @ApiOperation("保存质控数据(当天所有项目)") + @PostMapping("/saveqcvalmonth") + public Result saveQcValmonth(@RequestBody Map qcVal){ + return qcValService.saveQcValmonth(qcVal); + } + @ApiOperation("保存质控数据(单项目一个月)") + @PostMapping("/saveqcvalitem") + public Result saveQcValitem(@RequestBody List> qcVal){ + return qcValService.saveQcValitem(qcVal); + } + @ApiOperation("获取质控项目") + @GetMapping("/queryitem") + public Result queryitem(String yq){ + return qcValService.queryitem(yq); + } } diff --git a/liswork/src/main/java/com/czlis/liswork/mapper/QcValMapper.java b/liswork/src/main/java/com/czlis/liswork/mapper/QcValMapper.java index 9ae3078..551944d 100644 --- a/liswork/src/main/java/com/czlis/liswork/mapper/QcValMapper.java +++ b/liswork/src/main/java/com/czlis/liswork/mapper/QcValMapper.java @@ -3,6 +3,7 @@ package com.czlis.liswork.mapper; import com.czlis.common.core.domain.entity.lis.QcVal; import java.util.List; +import java.util.Map; public interface QcValMapper { void insert(QcVal qcVal); @@ -12,4 +13,7 @@ public interface QcValMapper { QcVal queryById(Integer qcValid); QcVal queryOne(QcVal qcVal); List query(QcVal qcVal); + List> queryvalmonth(QcVal qcVal); + List> queryvalitem(QcVal qcVal); + List> queryitem(String yq); } diff --git a/liswork/src/main/java/com/czlis/liswork/service/QcValService.java b/liswork/src/main/java/com/czlis/liswork/service/QcValService.java index 2d9cc9a..7a118b3 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/QcValService.java +++ b/liswork/src/main/java/com/czlis/liswork/service/QcValService.java @@ -2,10 +2,17 @@ package com.czlis.liswork.service; import com.czlis.common.core.domain.Result; import com.czlis.common.core.domain.entity.lis.QcVal; +import org.springframework.web.bind.annotation.RequestBody; import java.util.List; +import java.util.Map; public interface QcValService { List queryList(QcVal qcVal); + Result getqcvalitem(QcVal qcVal); + Result getqcvalmonth(QcVal qcVal); Result saveQcVal(List qcValList); + Result saveQcValmonth(Map qcVal); + Result saveQcValitem(List> qcVal); + Result queryitem(String yq); } diff --git a/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcBatchnoServiceImpl.java b/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcBatchnoServiceImpl.java index 4176be5..c4c329e 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcBatchnoServiceImpl.java +++ b/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcBatchnoServiceImpl.java @@ -11,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.Date; import java.util.List; import java.util.Map; @@ -80,11 +81,19 @@ public class QcBatchnoServiceImpl implements QcBatchnoService { } @Transactional(rollbackFor = Exception.class) @Override - public Result saveQcSample(List qcSampleList0) { - List qcSampleList=qcSampleList0.stream().filter(ss->ss.getZkbz()!=null&&!"".equals(ss.getZkbz())).collect(Collectors.toList()); + public Result saveQcSample(List qcSampleList) { if(qcSampleList != null && !qcSampleList.isEmpty()){ for (QcSample qcSample : qcSampleList) { + Date ksrq=qcSample.getKsrq(); + if(ksrq!=null) continue; QcSample qcSample1 = qcSampleMapper.queryOne(qcSample); + BigDecimal zkbz= qcSample.getZkbz(); + if(zkbz==null) { + if(qcSample1 != null){ + qcSampleMapper.delete(qcSample); + } + continue; + } if(qcSample1 == null){ qcSampleMapper.insert(qcSample); }else{ diff --git a/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcValServiceImpl.java b/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcValServiceImpl.java index e334042..10b860b 100644 --- a/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcValServiceImpl.java +++ b/liswork/src/main/java/com/czlis/liswork/service/impl/qc/QcValServiceImpl.java @@ -2,6 +2,10 @@ package com.czlis.liswork.service.impl.qc; import com.czlis.common.core.domain.Result; import com.czlis.common.core.domain.entity.lis.QcVal; +import com.czlis.common.utils.DateUtils; +import com.czlis.common.utils.SecurityUtils; +import com.czlis.interfaceCommon.utils.LisUtil; +import com.czlis.liswork.mapper.QcBatchnoMapper; import com.czlis.liswork.mapper.QcValMapper; import com.czlis.liswork.service.QcValService; import org.springframework.beans.factory.annotation.Autowired; @@ -9,7 +13,8 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; @Service public class QcValServiceImpl implements QcValService { @@ -19,6 +24,10 @@ public class QcValServiceImpl implements QcValService { public List queryList(QcVal qcVal){ return qcValMapper.query(qcVal); } + @Override + public Result queryitem(String yq){ + return new Result("0","保存数据成功!",qcValMapper.queryitem(yq)); + } @Transactional(rollbackFor = Exception.class) @Override public Result saveQcVal(List qcValList) { @@ -42,4 +51,106 @@ public class QcValServiceImpl implements QcValService { } return new Result("0","保存数据成功!"); } + @Override + public Result getqcvalitem(QcVal qcVal){ + Map map=new HashMap<>(); + List> qcVallist= qcValMapper.queryvalitem(qcVal); + if(qcVallist!=null && qcVallist.size()>0){ + for (int i = 0; i <7; i++) { + Long cs=i+1L; + map.put("cs"+String.valueOf(cs), qcVallist.stream().filter(maptemp -> (Long) maptemp.get("cs") == cs).collect(Collectors.toList())); + } + } + return new Result("0","成功!",map); + } + @Override + public Result getqcvalmonth(QcVal qcVal){ + Map map=new HashMap<>(); + List> qcVallist= qcValMapper.queryvalmonth(qcVal); + if(qcVallist!=null && qcVallist.size()>0){ + for (int i = 0; i <7; i++) { + Long cs=i+1L; + map.put("cs"+String.valueOf(cs), qcVallist.stream().filter(maptemp -> (Long) maptemp.get("cs") == cs).collect(Collectors.toList())); + } + } + return new Result("0","成功!",map); + } + @Transactional(rollbackFor = Exception.class) + @Override + public Result saveQcValmonth(Map map){ + for (int i = 0; i <31; i++) { + Long cs=i+1L; + String xh="cs"+cs; + if (!map.containsKey(xh))continue; + List> qcVallist=(List)map.get(xh); + if(qcVallist!=null && qcVallist.size()>0){ + for (int j = 0; j 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()); + } + } + } + + return new Result("0","保存数据成功!"); + } + @Transactional(rollbackFor = Exception.class) + @Override + public Result saveQcValitem(List> 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())); + List qcValall=qcValMapper.query(qcVal0); + for (int j = 0; j 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=(String)map0.get(xh); + if(!LisUtil.isNumber(zkjg))continue; + Optional qcvalfind= qcValall.stream().filter(aa ->aa.getCs()==cs0).findAny(); + QcVal qcVal1=new QcVal(); + if(qcvalfind.isPresent())qcVal1=qcvalfind.get(); + if (zkjg==null){ + if (qcVal1 != null) { + qcValMapper.deleteById(qcVal1.getQcValid()); + } + }else { + if (qcVal1 == null) { + qcVal1.setYq(yq); + qcVal1.setZkph(zkph); + qcVal1.setZkrq(zkrq); + qcVal1.setXmdh(xmdh); + qcVal1.setCs(cs0); + qcVal1.setYhdh(yhdh); + qcVal1.setInputdt(new Date()); + qcValMapper.insert(qcVal1); + } else { + BigDecimal zkjgs = new BigDecimal(zkjg); + qcVal1.setZkjg(zkjgs); + qcVal1.setYhdh(yhdh); + qcVal1.setInputdt(new Date()); + qcValMapper.update(qcVal1); + } + } + } + } + } + return new Result("0","保存数据成功!"); + } + + public int qcmodifylog(){ + return 0; + } } diff --git a/liswork/src/main/resources/mapper/QcBatchnoMapper.xml b/liswork/src/main/resources/mapper/QcBatchnoMapper.xml index 8fde289..1b39423 100644 --- a/liswork/src/main/resources/mapper/QcBatchnoMapper.xml +++ b/liswork/src/main/resources/mapper/QcBatchnoMapper.xml @@ -3,7 +3,7 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > @@ -12,7 +12,6 @@ update qc_batchno SET startda = #{startda}, conc = #{conc}, - conc = #{conc}, expiredt = #{expiredt}, endda = #{endda}, useflag = #{useflag}, diff --git a/liswork/src/main/resources/mapper/QcValMapper.xml b/liswork/src/main/resources/mapper/QcValMapper.xml index 4208781..7f8ca2a 100644 --- a/liswork/src/main/resources/mapper/QcValMapper.xml +++ b/liswork/src/main/resources/mapper/QcValMapper.xml @@ -67,7 +67,7 @@ delete from qc_val where yq = #{yq} and - + and zkrq = #{zkrq} @@ -76,7 +76,7 @@ and zkph = #{zkph} - + and cs = #{cs} @@ -93,7 +93,7 @@ - + + +