尝试让打印的Word文件里带换行符 + 解耦布鲁氏的两种检测类型硬编码问题 + 平板类型检出阳性自动增一个试管类型检验逻辑解耦

dev
swj 3 years ago
parent c817448719
commit 6f30bb1ade
  1. 21
      lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/EntrustServiceImpl.java
  2. 26
      lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/ExamineResultServiceImpl.java

@ -1192,7 +1192,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
// result.put("12", examineWay.getOperation());
result.put("12", examineResult.getOperateContent().replace("$", "\n"));
if (examineBasis != null) {
result.put("13", examineBasis.getContent().replace("$", "\n"));
result.put("13", examineBasis.getContent().replace("$", "(char)11"));
}
String path = sysClient.getParamValue("electronic_signature_real_path").getData();
// 检测人
@ -1244,25 +1244,26 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
result.put("17", s1);
}
// position1
// 如果是布鲁氏检测
if ("2".equals(byId.getInputMode())) {
// 如果是布鲁氏检测 (列排单+式和列排多+式)
if ("2".equals(byId.getInputMode()) || "6".equals(byId.getInputMode())) {
List<ExamineTemplate2Excel> list = JSON.parseArray(examineResult.getExamineDataArr(), ExamineTemplate2Excel.class);
// 阴性数量
// 阴性数量
long yin = list.stream().filter((ExamineTemplate2Excel e) -> "阴性".equals(e.getResult())).count();
long yang = list.stream().filter((ExamineTemplate2Excel e) -> "阳性".equals(e.getResult())).count();
ExamineTemplate2Excel examineTemplate2Excel1 = new ExamineTemplate2Excel();
examineTemplate2Excel1.setExperieNum("阴性数量");
examineTemplate2Excel1.setValue(String.valueOf(yin));
list.add(examineTemplate2Excel1);
// 阳性数量
long yang = list.stream().filter((ExamineTemplate2Excel e) -> "阳性".equals(e.getResult())).count();
ExamineTemplate2Excel examineTemplate2Excel2 = new ExamineTemplate2Excel();
examineTemplate2Excel2.setExperieNum("阳性数量");
examineTemplate2Excel2.setValue(String.valueOf(yang));
list.add(examineTemplate2Excel2);
// 可疑数量
long keyi = list.stream().filter((ExamineTemplate2Excel e) -> "可疑".equals(e.getResult())).count();
if (keyi > 0) {
// 如果是平板的,只有阴性和阳性,如果是试管的才有可疑
if ("6".equals(byId.getInputMode())) {
long keyi = list.stream().filter((ExamineTemplate2Excel e) -> "可疑".equals(e.getResult())).count();
ExamineTemplate2Excel examineTemplate2Excel3 = new ExamineTemplate2Excel();
examineTemplate2Excel3.setExperieNum("可疑数量");
examineTemplate2Excel3.setValue(String.valueOf(keyi));

@ -1,5 +1,6 @@
package org.springblade.lims.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.nacos.common.utils.CollectionUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@ -7,7 +8,9 @@ import lombok.AllArgsConstructor;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.CollectionUtil;
import org.springblade.lims.entry.*;
import org.springblade.lims.excel.PCR2Excel;
import org.springblade.lims.mapper.ExamineResultMapper;
import org.springblade.lims.service.*;
import org.springblade.resource.enums.SysTypeEnum;
@ -18,6 +21,7 @@ import org.springblade.system.user.feign.IUserClient;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import springfox.documentation.spring.web.json.Json;
import java.io.*;
import java.util.*;
@ -140,16 +144,26 @@ public class ExamineResultServiceImpl extends BaseServiceImpl<ExamineResultMappe
else {
// 上次检测结果为阳性的数据
String[] split = examineResult.getPositiveNum().split(",");
// 新增一条检测
// 新增一条 布病试管凝集 的检验
Examine examine = BeanUtil.copy(byId, Examine.class);
examine.setId(null);
examine.setExperieNum(examineResult.getPositiveNum());
examine.setSimpleCount(split.length);
// TODO 硬编码了
// 布鲁氏杆菌抗体检测(试管凝集微量法)
examine.setExamineItemId(1549665733973581825L);
// 试管凝集微量法
examine.setExamineWayId(1549665999024234498L);
QueryWrapper<ExamineItem> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("input_mode", "6");
List<ExamineItem> list = examineItemService.list(queryWrapper);
if (CollectionUtil.isNotEmpty(list) && list.get(0) != null) {
// 布鲁氏杆菌抗体检测(试管凝集微量法)
ExamineItem examineItem = list.get(0);
examine.setExamineItemId(examineItem.getId());
String wayAndBasis = examineItem.getWayAndBasis();
List<WayAndBasis> wayAndBaseList = JSON.parseArray(wayAndBasis, WayAndBasis.class);
if (CollectionUtil.isNotEmpty(wayAndBaseList) && wayAndBaseList.get(0) != null) {
WayAndBasis wayAndBasis1 = wayAndBaseList.get(0);
examine.setExamineWayId(Long.valueOf(wayAndBasis1.getExamineWayId()));
examine.setExamineBasisId(Long.valueOf(wayAndBasis1.getExamineBasisId()));
}
}
examine.setIsFinished("-1");
examineService.save(examine);
// 新增一条记录

Loading…
Cancel
Save