Merge remote-tracking branch 'origin/dev_1.0.0' into dev_1.0.0

release_1.0.0
xueqingkun 11 months ago
commit f850986442

@ -24,10 +24,8 @@ import org.springframework.transaction.annotation.Transactional;
import java.time.Instant; import java.time.Instant;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.*;
import java.util.Comparator; import java.util.stream.Collectors;
import java.util.List;
import java.util.Optional;
@Slf4j @Slf4j
@Service @Service
@ -48,6 +46,10 @@ public class KnowledgeFlowServiceImpl implements KnowledgeFlowService {
private final KnowledgeService knowledgeService; private final KnowledgeService knowledgeService;
private final SystemUserService systemUserService;
private final SystemDeptService systemDeptService;
@Override @Override
public IPage<KnowledgeFlowResVO> queryKnowledgeFlowPage(Integer processStatus, String title, String publishDeptId, String baseId, public IPage<KnowledgeFlowResVO> queryKnowledgeFlowPage(Integer processStatus, String title, String publishDeptId, String baseId,
String submittedDeptId, Instant flowType, String submittedDeptId, Instant flowType,
@ -244,24 +246,37 @@ public class KnowledgeFlowServiceImpl implements KnowledgeFlowService {
public List<KnowledgeFlowRecordResVO> queryKnowledgeFlowRecord(String knowledgeId, String flowId) { public List<KnowledgeFlowRecordResVO> queryKnowledgeFlowRecord(String knowledgeId, String flowId) {
List<KnowledgeFlowRecord> list = knowledgeFlowRecordService.lambdaQuery().eq(KnowledgeFlowRecord::getKnowledgeId, knowledgeId) List<KnowledgeFlowRecord> list = knowledgeFlowRecordService.lambdaQuery().eq(KnowledgeFlowRecord::getKnowledgeId, knowledgeId)
.eq(StrUtil.isNotBlank(flowId), KnowledgeFlowRecord::getFlowId, flowId).list(); .eq(StrUtil.isNotBlank(flowId), KnowledgeFlowRecord::getFlowId, flowId).list();
List<KnowledgeFlowRecordResVO> list1 = list.stream().sorted(Comparator.comparingInt(KnowledgeFlowRecord::getFlowRuleOrder)).map(knowledgeFlowRecord -> { // 根据时间进行排序
List<KnowledgeFlowRecordResVO> result = list.stream().map(knowledgeFlowRecord -> {
KnowledgeFlowRecordResVO node = new KnowledgeFlowRecordResVO(); KnowledgeFlowRecordResVO node = new KnowledgeFlowRecordResVO();
node.setKnowledgeId(knowledgeFlowRecord.getKnowledgeId()); node.setKnowledgeId(knowledgeFlowRecord.getKnowledgeId());
node.setProcessName(knowledgeFlowRecord.getProcessName()); node.setProcessName(knowledgeFlowRecord.getProcessName());
node.setRemark(knowledgeFlowRecord.getRemark()); node.setRemark(knowledgeFlowRecord.getRemark());
// 判断 node.setProcessOrder(knowledgeFlowRecord.getFlowRuleOrder());
node.setProcessTime(knowledgeFlowRecord.getProcessTime()); // 判断是不是发起的,如果是发起的,那么process的是发起人.否则是审批人
// node.setProcessUserId(); if (1 == knowledgeFlowRecord.getType()) {
// node.setProcessDeptId(); node.setProcessTime(knowledgeFlowRecord.getCreateTime());
// node.setProcessUserName(); node.setProcessUserId(knowledgeFlowRecord.getSubmitUserId());
// node.setProcessDeptName(); node.setProcessDeptId(knowledgeFlowRecord.getSubmitDeptId());
// node.setProcessOrder(); } else {
node.setProcessTime(knowledgeFlowRecord.getProcessTime());
node.setProcessUserId(knowledgeFlowRecord.getProcessUserId());
node.setProcessDeptId(knowledgeFlowRecord.getProcessDeptId());
}
return node; return node;
}).toList(); }).sorted(Comparator.comparing(KnowledgeFlowRecordResVO::getProcessTime)).toList();
return null; // 然后把人名和部门名进行转换
Set<String> userIdSet = result.stream().map(KnowledgeFlowRecordResVO::getProcessUserId).collect(Collectors.toSet());
List<SystemUser> systemUsers = systemUserService.listByIds(userIdSet);
Map<String, String> userNameMap = systemUsers.stream().collect(Collectors.toMap(SystemUser::getId, SystemUser::getUsername));
Set<String> deptIdSet = result.stream().map(KnowledgeFlowRecordResVO::getProcessDeptId).collect(Collectors.toSet());
List<SystemDept> systemDeptList = systemDeptService.listByIds(deptIdSet);
Map<String, String> deptNameMap = systemDeptList.stream().collect(Collectors.toMap(SystemDept::getId, SystemDept::getDeptName));
result.forEach(node -> {
node.setProcessUserName(userNameMap.getOrDefault(node.getProcessUserId(), "未知用户"));
node.setProcessDeptName(deptNameMap.getOrDefault(node.getProcessDeptId(), "未知部门"));
});
return result;
} }
} }

@ -107,7 +107,7 @@ public class KnowledgeFlowRecord implements Serializable {
* *
*/ */
@TableField(fill = FieldFill.INSERT) @TableField(fill = FieldFill.INSERT)
private Date createTime; private LocalDateTime createTime;
/** /**
* *
@ -119,7 +119,7 @@ public class KnowledgeFlowRecord implements Serializable {
* *
*/ */
@TableField(fill = FieldFill.INSERT_UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime; private LocalDateTime updateTime;
@TableField(exist = false) @TableField(exist = false)
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

Loading…
Cancel
Save