Browse Source

综合查询详情页面显示会签人和会签单位二级

master
buaixuexideshitongxue 3 weeks ago
parent
commit
90dd18c76c
  1. 18
      src/main/java/com/biutag/supervision/pojo/entity/NegativeCountersign.java
  2. 50
      src/main/java/com/biutag/supervision/service/NegativeService.java

18
src/main/java/com/biutag/supervision/pojo/entity/NegativeCountersign.java

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
@ -59,4 +60,21 @@ public class NegativeCountersign {
private String state; private String state;
@Schema(description = "会签人姓名")
@TableField(exist = false)
private String signUserName;
@Schema(description = "会签人账号")
@TableField(exist = false)
private String signUserAccount;
@Schema(description = "会签时间")
@TableField(exist = false)
private String signTime;
@TableField(exist = false)
@Schema(description = "加上父级部门名字")
private String departPName;
} }

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

@ -1,6 +1,7 @@
package com.biutag.supervision.service; package com.biutag.supervision.service;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
@ -18,6 +19,7 @@ import com.biutag.supervision.constants.enums.*;
import com.biutag.supervision.flow.FlowService; import com.biutag.supervision.flow.FlowService;
import com.biutag.supervision.mapper.NegativeMapper; import com.biutag.supervision.mapper.NegativeMapper;
import com.biutag.supervision.pojo.domain.Blame; import com.biutag.supervision.pojo.domain.Blame;
import com.biutag.supervision.pojo.domain.CountersignApply;
import com.biutag.supervision.pojo.domain.NegativeDetail; import com.biutag.supervision.pojo.domain.NegativeDetail;
import com.biutag.supervision.pojo.domain.NegativeVo; import com.biutag.supervision.pojo.domain.NegativeVo;
import com.biutag.supervision.pojo.dto.ActionDto; import com.biutag.supervision.pojo.dto.ActionDto;
@ -37,10 +39,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.Date; import java.util.*;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -169,6 +168,7 @@ public class NegativeService extends ServiceImpl<NegativeMapper, Negative> {
} }
// 单位会签 // 单位会签
detail.setCountersignApplys(countersignApplyService.list(id)); detail.setCountersignApplys(countersignApplyService.list(id));
enrichCountersignsWithHistory(detail);
return detail; return detail;
} }
@ -383,6 +383,7 @@ public class NegativeService extends ServiceImpl<NegativeMapper, Negative> {
/** /**
* 生成样本源头编号 * 生成样本源头编号
*
* @param problemSourcesCode * @param problemSourcesCode
* @return * @return
*/ */
@ -420,4 +421,45 @@ public class NegativeService extends ServiceImpl<NegativeMapper, Negative> {
return true; return true;
} }
private void enrichCountersignsWithHistory(NegativeDetail detail) {
List<NegativeHistory> histories = detail.getActionHistory();
List<CountersignApply> applys = detail.getCountersignApplys();
if (CollUtil.isEmpty(histories) || CollUtil.isEmpty(applys)) {
return;
}
// 1. 按部门
Map<String, NegativeHistory> countersignHistoryMap = new HashMap<>();
for (NegativeHistory history : histories) {
if ("提交会签".equals(history.getActionName()) && StrUtil.isNotBlank(history.getDepartName())) {
countersignHistoryMap.put(history.getDepartName(), history);
}
}
if (countersignHistoryMap.isEmpty()) {
return;
}
// 2. 回填会签人信息 校验部门
for (CountersignApply apply : applys) {
List<NegativeCountersign> countersigns = apply.getCountersigns();
if (CollUtil.isEmpty(countersigns)) {
continue;
}
for (NegativeCountersign countersign : countersigns) {
NegativeHistory history = countersignHistoryMap.get(countersign.getDepartName());
if (history != null) {
countersign.setSignUserName(history.getCrtName());
countersign.setSignUserAccount(history.getCrtUserName());
countersign.setSignTime(history.getCrtTime().toString());
}
String departId = countersign.getDepartId();
SupDepart byId = departService.getById(departId);
if (3==byId.getLevel()){
SupDepart byPid = departService.getById(byId.getPid());
String frontShortName = byPid.getShortName();
String backedShortName = byId.getShortName();
countersign.setDepartPName(frontShortName+"/"+backedShortName);
}
}
}
}
} }

Loading…
Cancel
Save