隐性原始编号排序

dev
litao 3 years ago
parent 4c7ea6a52b
commit be75dda9dd
  1. 32
      lab-service/lab-lims/src/main/java/org/springblade/lims/service/impl/EntrustServiceImpl.java

@ -6,7 +6,6 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.nacos.common.utils.CollectionUtils; import com.alibaba.nacos.common.utils.CollectionUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.models.auth.In;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import org.apache.commons.lang3.RandomUtils; import org.apache.commons.lang3.RandomUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@ -671,30 +670,31 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
// 1.生成坐标(给每一个数据单元赋予坐标) // 1.生成坐标(给每一个数据单元赋予坐标)
// 1.1.根据原始编号分组 // 1.1.根据原始编号分组
Map<String, List<ExamineResultVo>> collect = resultList.stream().collect(Collectors.groupingBy(ExamineResultVo::getOriginalNum)); // Map<String, List<ExamineResultVo>> collect = resultList.stream().collect(Collectors.groupingBy(ExamineResultVo::getOriginalNum));
Map<String, List<ExamineResultVo>> collect = resultList.stream().collect(Collectors.groupingBy(ExamineResultVo::getRecessiveNum));
Set<String> keys = collect.keySet(); Set<String> keys = collect.keySet();
List<String> originalNumList = new ArrayList<>(); List<String> recessiveNumList = new ArrayList<>();
originalNumList.addAll(keys); recessiveNumList.addAll(keys);
// TODO 排序方式不对,现在是:1,10,11,12...,会有中文的情况 // TODO 排序方式不对,现在是:1,10,11,12...,会有中文的情况
Collections.sort(originalNumList); // Collections.sort(originalNumList);
// Collections.sort(recessiveNumList, new Comparator<String>() { Collections.sort(recessiveNumList, new Comparator<String>() {
// @Override @Override
// public int compare(String o1, String o2) { public int compare(String o1, String o2) {
// Integer expirNum1 = Integer.valueOf(o1); Integer expirNum1 = Integer.valueOf(o1);
// Integer expirNum2 = Integer.valueOf(o2); Integer expirNum2 = Integer.valueOf(o2);
// return expirNum1 - expirNum2; return expirNum1 - expirNum2;
// } }
// }); });
// 循环分组后的数据给到每个单元的的值 (例如:2-1-3) // 循环分组后的数据给到每个单元的的值 (例如:2-1-3)
// 定义行数 // 定义行数
int rowCount = 0; int rowCount = 0;
for (String originalNum : originalNumList) { for (String originalNum : recessiveNumList) {
List<ExamineResultVo> everyResultUnit = collect.get(originalNum);
Map<String, String> row = new HashMap<>(); Map<String, String> row = new HashMap<>();
row.put("originalNum", originalNum); row.put("originalNum", everyResultUnit.get(0).getOriginalNum());
rowCount ++; rowCount ++;
List<ExamineResultVo> everyResultUnit = collect.get(originalNum);
// 对检测按照index分组 // 对检测按照index分组
Map<Integer, List<ExamineResultVo>> voGroupByIndex = everyResultUnit.stream().collect(Collectors.groupingBy(ExamineResultVo::getIndex)); Map<Integer, List<ExamineResultVo>> voGroupByIndex = everyResultUnit.stream().collect(Collectors.groupingBy(ExamineResultVo::getIndex));

Loading…
Cancel
Save