Browse Source

feat: 历史记录加上departLevel

master
parent
commit
9285c08d5b
  1. 8
      src/main/java/com/biutag/supervision/pojo/entity/NegativeHistory.java
  2. 10
      src/main/java/com/biutag/supervision/service/NegativeService.java

8
src/main/java/com/biutag/supervision/pojo/entity/NegativeHistory.java

@ -51,4 +51,12 @@ public class NegativeHistory {
// 节点耗时(剔除节假日的秒数) // 节点耗时(剔除节假日的秒数)
private Long duration; private Long duration;
@TableField(exist = false)
private String departId;
@TableField(exist = false)
// 部门level
private Integer departLevel;
} }

10
src/main/java/com/biutag/supervision/service/NegativeService.java

@ -134,11 +134,19 @@ public class NegativeService extends ServiceImpl<NegativeMapper, Negative> {
if (StrUtil.isNotBlank(vo.getProblemSourcesCode())) { if (StrUtil.isNotBlank(vo.getProblemSourcesCode())) {
vo.setFileClasses(fileClassService.list(vo.getProblemSourcesCode())); vo.setFileClasses(fileClassService.list(vo.getProblemSourcesCode()));
} }
// 计算每个节点的用时(剔除节假日) // 计算每个节点的用时(剔除节假日),并回填部门ID 最多十几条记录 对性能影响不大,直接查
for (int i = 0; i < flows.size(); i++) { for (int i = 0; i < flows.size(); i++) {
LocalDateTime currentTime = flows.get(i).getCrtTime(); LocalDateTime currentTime = flows.get(i).getCrtTime();
LocalDateTime previousTime = i == 0 ? negative.getCrtTime() : flows.get(i - 1).getCrtTime(); LocalDateTime previousTime = i == 0 ? negative.getCrtTime() : flows.get(i - 1).getCrtTime();
flows.get(i).setDuration(TimeUtil.calculateWorkdayDuration(previousTime, currentTime)); flows.get(i).setDuration(TimeUtil.calculateWorkdayDuration(previousTime, currentTime));
if (StrUtil.isNotBlank(flows.get(i).getDepartName())) {
String departName = flows.get(i).getDepartName();
SupDepart depart = departService.getOne(new LambdaQueryWrapper<SupDepart>().and(wrapper -> wrapper.eq(SupDepart::getName, departName).or().eq(SupDepart::getShortName, departName)).last("LIMIT 1"));
if (Objects.nonNull(depart)) {
flows.get(i).setDepartId(depart.getId());
flows.get(i).setDepartLevel(depart.getLevel());
}
}
} }
NegativeDetail detail = new NegativeDetail() NegativeDetail detail = new NegativeDetail()
.setNegative(vo) .setNegative(vo)

Loading…
Cancel
Save