From 1a983833a7af79d5ab224fedc627b737e955e9d7 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 12 二月 2025 15:32:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
business/src/main/java/com/ycl/domain/form/TaskSuperviseForm.java | 47 +++++++++
business/src/main/java/com/ycl/domain/json/SuperviseData.java | 52 ++++++++++
business/src/main/java/com/ycl/event/event/TaskLogEvent.java | 13 ++
business/src/main/java/com/ycl/event/listener/ProcessLogEventListener.java | 3
business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java | 109 ++++++++++++++-------
business/src/main/java/com/ycl/controller/ProjectProcessController.java | 11 +
business/src/main/java/com/ycl/service/ProjectProcessService.java | 7
common/src/main/java/com/ycl/common/enums/business/SuperviseTypeEnum.java | 31 ++++++
common/src/main/java/com/ycl/common/enums/business/ProcessLogEventTypeEnum.java | 1
9 files changed, 227 insertions(+), 47 deletions(-)
diff --git a/business/src/main/java/com/ycl/controller/ProjectProcessController.java b/business/src/main/java/com/ycl/controller/ProjectProcessController.java
index ac00f25..8ee4e96 100644
--- a/business/src/main/java/com/ycl/controller/ProjectProcessController.java
+++ b/business/src/main/java/com/ycl/controller/ProjectProcessController.java
@@ -2,9 +2,7 @@
import com.ycl.common.group.Update;
import com.ycl.common.group.Add;
-import com.ycl.domain.form.RejectTaskForm;
-import com.ycl.domain.form.TaskDelegationForm;
-import com.ycl.domain.form.TaskJumpForm;
+import com.ycl.domain.form.*;
import com.ycl.domain.query.TaskQuery;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -20,7 +18,6 @@
import io.swagger.annotations.ApiOperation;
import com.ycl.service.ProjectProcessService;
import com.ycl.common.base.Result;
-import com.ycl.domain.form.ProjectProcessForm;
import com.ycl.domain.query.ProjectProcessQuery;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
@@ -116,4 +113,10 @@
}
+ @PostMapping("/detail/task/supervise")
+ @ApiOperation(value = "鐫e姙", notes = "鐫e姙")
+// @PreAuthorize("@ss.hasPermi('projectProcess:detail')")
+ public Result taskSupervise(@Validated @RequestBody TaskSuperviseForm form) {
+ return projectProcessService.taskSupervise(form);
+ }
}
diff --git a/business/src/main/java/com/ycl/domain/form/TaskSuperviseForm.java b/business/src/main/java/com/ycl/domain/form/TaskSuperviseForm.java
new file mode 100644
index 0000000..2b3fd8d
--- /dev/null
+++ b/business/src/main/java/com/ycl/domain/form/TaskSuperviseForm.java
@@ -0,0 +1,47 @@
+package com.ycl.domain.form;
+
+import com.ycl.common.enums.business.HandlerTypeEnum;
+import com.ycl.common.enums.business.SuperviseTypeEnum;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+
+/**
+ * 鐫e姙琛ㄥ崟
+ *
+ * @author锛歺p
+ * @date锛�2024/12/13 13:51
+ */
+@Data
+@ApiModel("鐫e姙琛ㄥ崟")
+public class TaskSuperviseForm {
+
+ /**
+ * 褰撳墠浠诲姟id
+ *
+ */
+ @NotBlank(message = "浠诲姟id涓嶈兘涓虹┖")
+ private String taskId;
+
+ @ApiModelProperty("椤圭洰id锛岀敤浜庝繚瀛樻棩蹇�")
+ private Long projectId;
+
+ @ApiModelProperty("娴佺▼瀹炰緥id锛岀敤浜庝繚瀛樻棩蹇�")
+ private String processInsId;
+
+ @ApiModelProperty("鎺ユ敹浜�")
+ private List<String> receiverIds;
+
+ @ApiModelProperty("鎺ユ敹浜虹被鍨�")
+ private HandlerTypeEnum receiverType;
+
+ @ApiModelProperty("娑堟伅绫诲瀷")
+ private SuperviseTypeEnum superviseType;
+
+ @ApiModelProperty("鍐呭")
+ @NotBlank(message = "鐫e姙鍐呭涓嶈兘涓虹┖")
+ private String content;
+}
diff --git a/business/src/main/java/com/ycl/domain/json/SuperviseData.java b/business/src/main/java/com/ycl/domain/json/SuperviseData.java
new file mode 100644
index 0000000..8cf0313
--- /dev/null
+++ b/business/src/main/java/com/ycl/domain/json/SuperviseData.java
@@ -0,0 +1,52 @@
+package com.ycl.domain.json;
+
+import com.ycl.common.enums.business.HandlerTypeEnum;
+import com.ycl.common.enums.business.SuperviseTypeEnum;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 浠诲姟鐫e姙鐨刯son鏃ュ織鏁版嵁
+ *
+ * @author锛歺p
+ * @date锛�2025/1/2 14:39
+ */
+@Data
+public class SuperviseData {
+
+ /**
+ * 鍙戦�佷汉
+ */
+ private String senderId;
+
+ /**
+ * 鍙戦�佷汉绫诲瀷
+ */
+ private HandlerTypeEnum senderType;
+
+ /**
+ * 鎺ユ敹浜�
+ */
+ private List<String> receiverIds;
+
+ /**
+ * 鎺ユ敹浜虹被鍨�
+ */
+ private HandlerTypeEnum receiverType;
+
+ /**
+ * 娑堟伅绫诲瀷鏄� 鐫e姙 or 鍥炲
+ */
+ private SuperviseTypeEnum superviseType;
+ /**
+ * 娑堟伅鍐呭
+ */
+ private String content;
+
+ /**
+ * 鍒涘缓鏃堕棿
+ */
+ private Date createTime;
+}
diff --git a/business/src/main/java/com/ycl/event/event/TaskLogEvent.java b/business/src/main/java/com/ycl/event/event/TaskLogEvent.java
index 076c8dd..dc3e3a4 100644
--- a/business/src/main/java/com/ycl/event/event/TaskLogEvent.java
+++ b/business/src/main/java/com/ycl/event/event/TaskLogEvent.java
@@ -15,7 +15,14 @@
@Getter
@Setter
public class TaskLogEvent extends ApplicationEvent {
-
+ /**
+ * id
+ */
+ private Long id;
+ /**
+ * 鐢ㄦ埛id
+ */
+ private Long userId;
/**
* 椤圭洰id
*/
@@ -51,8 +58,10 @@
* @param taskId 浠诲姟id
* @param otherData 鍏跺畠鏁版嵁
*/
- public TaskLogEvent(Object source, Long projectId, String processInsId, String taskId, ProcessLogEventTypeEnum eventType, Object otherData) {
+ public TaskLogEvent(Object source,Long id,Long userId, Long projectId, String processInsId, String taskId, ProcessLogEventTypeEnum eventType, Object otherData) {
super(source);
+ this.id = id;
+ this.userId = userId;
this.projectId = projectId;
this.processInsId = processInsId;
this.eventType = eventType;
diff --git a/business/src/main/java/com/ycl/event/listener/ProcessLogEventListener.java b/business/src/main/java/com/ycl/event/listener/ProcessLogEventListener.java
index 28531eb..fdf577e 100644
--- a/business/src/main/java/com/ycl/event/listener/ProcessLogEventListener.java
+++ b/business/src/main/java/com/ycl/event/listener/ProcessLogEventListener.java
@@ -30,6 +30,7 @@
@EventListener(classes = {TaskLogEvent.class})
public void delegate(TaskLogEvent event) {
ProcessLog log = new ProcessLog();
+ if(event.getId()!=null) log.setId(event.getId());
log.setEventType(event.getEventType());
log.setProcessInsId(event.getProcessInsId());
log.setProjectId(event.getProjectId());
@@ -38,7 +39,7 @@
if (Objects.nonNull(event.getOtherData())) {
log.setEventDataJson(JSON.toJSONString(event.getOtherData()));
}
- processLogService.save(log);
+ processLogService.saveOrUpdate(log);
}
diff --git a/business/src/main/java/com/ycl/service/ProjectProcessService.java b/business/src/main/java/com/ycl/service/ProjectProcessService.java
index 18c0eb6..facc624 100644
--- a/business/src/main/java/com/ycl/service/ProjectProcessService.java
+++ b/business/src/main/java/com/ycl/service/ProjectProcessService.java
@@ -3,10 +3,7 @@
import com.ycl.domain.entity.ProjectProcess;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycl.common.base.Result;
-import com.ycl.domain.form.ProjectProcessForm;
-import com.ycl.domain.form.RejectTaskForm;
-import com.ycl.domain.form.TaskDelegationForm;
-import com.ycl.domain.form.TaskJumpForm;
+import com.ycl.domain.form.*;
import com.ycl.domain.query.ProjectProcessQuery;
import com.ycl.domain.query.TaskQuery;
import com.ycl.domain.vo.CustomerTaskVO;
@@ -107,4 +104,6 @@
* @return
*/
Result taskJump(TaskJumpForm form);
+
+ Result taskSupervise(TaskSuperviseForm form);
}
diff --git a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
index ae7c9b0..6f84aa6 100644
--- a/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
+++ b/business/src/main/java/com/ycl/service/impl/ProjectProcessServiceImpl.java
@@ -1,7 +1,10 @@
package com.ycl.service.impl;
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
@@ -12,27 +15,24 @@
import com.ycl.common.core.domain.entity.SysUser;
import com.ycl.common.enums.business.HandlerTypeEnum;
import com.ycl.common.enums.business.ProcessLogEventTypeEnum;
+import com.ycl.common.enums.business.SuperviseTypeEnum;
import com.ycl.common.enums.business.TaskStatusEnum;
import com.ycl.common.utils.SecurityUtils;
import com.ycl.constant.TaskTypeConstant;
-import com.ycl.domain.entity.ProcessCoding;
-import com.ycl.domain.entity.ProjectInfo;
-import com.ycl.domain.entity.ProjectProcess;
-import com.ycl.domain.entity.SysForm;
+import com.ycl.domain.entity.*;
import com.ycl.domain.form.TaskDelegationForm;
import com.ycl.domain.form.TaskJumpForm;
+import com.ycl.domain.form.TaskSuperviseForm;
import com.ycl.domain.json.DelegateData;
import com.ycl.domain.json.JumpData;
+import com.ycl.domain.json.SuperviseData;
import com.ycl.domain.vo.CustomerTaskVO;
import com.ycl.domain.vo.IndexCustomerTaskVO;
import com.ycl.domain.vo.ProjectProcessDetailVO;
import com.ycl.event.event.TaskLogEvent;
import com.ycl.mapper.ProjectInfoMapper;
import com.ycl.mapper.ProjectProcessMapper;
-import com.ycl.service.IFlowTaskService;
-import com.ycl.service.ISysFormService;
-import com.ycl.service.ProcessCodingService;
-import com.ycl.service.ProjectProcessService;
+import com.ycl.service.*;
import com.ycl.common.base.Result;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.domain.form.ProjectProcessForm;
@@ -93,6 +93,7 @@
private final ProcessCodingService processCodingService;
private final ApplicationEventPublisher publisher;
private final ISysDeptService deptService;
+ private final ProcessLogService processLogService;
/**
* 鍒嗛〉鏌ヨ
@@ -210,7 +211,7 @@
identityService.setAuthenticatedUserId(sysUser.getUserId().toString());
variables.put(ProcessConstants.PROCESS_INITIATOR, sysUser.getUserId());
//娴嬭瘯瀹圭己
- variables.put("miss",true);
+ variables.put("miss", true);
// 灏嗚椤圭洰鐨勭敵璇蜂汉锛堜笟涓绘柟锛変綔涓烘祦绋嬩腑鏌愪簺鐜妭鐨勫鐞嗕汉
variables.put(ProcessConstants.DATA_LAUNCH, "dept:" + createBy);
ProcessInstance processInstance = runtimeService.startProcessInstanceById(processDefId, projectId + "", variables);
@@ -316,7 +317,7 @@
if (StringUtils.isNotBlank(taskName)) {
taskQuery.processDefinitionNameLike(taskName);
}
- if (! SecurityUtils.getLoginUser().getUser().isAdmin()) {
+ if (!SecurityUtils.getLoginUser().getUser().isAdmin()) {
taskQuery
.or()
.taskCandidateGroupIn(taskCommonService.getCurrentUserGroups())
@@ -610,7 +611,7 @@
jsonData.setAfterHandlerIds(afterHandlerIds);
jsonData.setAfterHandlerType(form.getPeopleType());
// 鍙戝竷杞姙浜嬩欢
- publisher.publishEvent(new TaskLogEvent(this, form.getProjectId(), form.getProcessInsId(), task.getId(), ProcessLogEventTypeEnum.DELEGATE, jsonData));
+ publisher.publishEvent(new TaskLogEvent(this, null,SecurityUtils.getUserId(), form.getProjectId(), form.getProcessInsId(), task.getId(), ProcessLogEventTypeEnum.DELEGATE, jsonData));
return Result.ok("杞姙鎴愬姛");
}
@@ -621,7 +622,7 @@
Task task = taskService.createTaskQuery().taskId(form.getTaskId()).processInstanceId(form.getProcessInsId()).singleResult();
if (Objects.nonNull(task)) {
// 娣诲姞璺宠繃鏃ュ織
- publisher.publishEvent(new TaskLogEvent(this, form.getProjectId(), form.getProcessInsId(), form.getTaskId(), ProcessLogEventTypeEnum.JUMP, new JumpData(form.getDesc())));
+ publisher.publishEvent(new TaskLogEvent(this, null,SecurityUtils.getUserId(), form.getProjectId(), form.getProcessInsId(), form.getTaskId(), ProcessLogEventTypeEnum.JUMP, new JumpData(form.getDesc())));
// 鏌ュ嚭璇ヤ换鍔$粦瀹氱殑琛ㄥ崟
Map<String, Object> data = new HashMap<>(1);
@@ -634,6 +635,37 @@
// 瀹屾垚浠诲姟
flowTaskService.completeSubmitForm(form.getTaskId(), data);
}
+ return Result.ok("鎿嶄綔鎴愬姛");
+ }
+
+ @Override
+ public Result taskSupervise(TaskSuperviseForm form) {
+ SuperviseData jsonData = new SuperviseData();
+ jsonData.setCreateTime(new Date());
+ jsonData.setContent(form.getContent());
+ jsonData.setSenderId(SecurityUtils.getUserId() + "");
+ jsonData.setSenderType(HandlerTypeEnum.USER);
+ jsonData.setReceiverIds(form.getReceiverIds());
+ jsonData.setReceiverType(form.getReceiverType());
+ jsonData.setSuperviseType(form.getSuperviseType());
+ QueryWrapper<ProcessLog> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("task_id", form.getTaskId());
+ queryWrapper.eq("event_type", ProcessLogEventTypeEnum.SUPERVISE);
+ queryWrapper.eq("process_ins_id", form.getProcessInsId());
+ //鏌ヨ鐫e姙鏃ュ織
+ ProcessLog processLog = processLogService.getOne(queryWrapper);
+ List<SuperviseData> dataList;
+ if (processLog != null) {
+ String eventDataJson = processLog.getEventDataJson();
+ dataList = JSONArray.parseArray(eventDataJson, SuperviseData.class);
+ } else {
+ processLog = new ProcessLog();
+ processLog.setUserId(SecurityUtils.getUserId());
+ dataList = new ArrayList<>();
+ }
+ dataList.add(jsonData);
+ //娣诲姞鐫e姙鏃ュ織
+ publisher.publishEvent(new TaskLogEvent(this, processLog.getId(), processLog.getUserId(), form.getProjectId(), form.getProcessInsId(), form.getTaskId(), ProcessLogEventTypeEnum.SUPERVISE, dataList));
return Result.ok("鎿嶄綔鎴愬姛");
}
@@ -672,7 +704,7 @@
/**
* 鑾峰彇鎵�鏈変换鍔�
*
- * @param projectId 椤圭洰id
+ * @param projectId 椤圭洰id
* @param processDefinitionId 娴佺▼杩愯id
* @param processInsId 娴佺▼瀹炰緥id
* @param pageNum
@@ -758,8 +790,7 @@
if (groupId.contains(ProcessConstants.DATA_LAUNCH)) {
vo.setHandlerType(HandlerTypeEnum.DEPT);
this.varYzReview(vo, projectId, processInsId, HandlerTypeEnum.DEPT);
- }
- else if (groupId.startsWith("dept")) { // 閮ㄩ棬鐨刬d鏄姞浜嗗墠缂�鐨勫锛歞ept:1
+ } else if (groupId.startsWith("dept")) { // 閮ㄩ棬鐨刬d鏄姞浜嗗墠缂�鐨勫锛歞ept:1
vo.setHandlerType(HandlerTypeEnum.DEPT);
String[] split = groupId.split(":");
if (split.length > 1) {
@@ -820,7 +851,7 @@
/**
* 鏌ヨ宸插畬鎴愮殑娴佺▼鐨勪换鍔′俊鎭�
*
- * @param userTasks 浠诲姟鑺傜偣鍒楄〃
+ * @param userTasks 浠诲姟鑺傜偣鍒楄〃
* @param processInsId 娴佺▼瀹炰緥id
* @param processDefId 娴佺▼瀹氫箟id
* @return
@@ -867,8 +898,8 @@
/**
* 璁剧疆杩愯鏃朵换鍔$殑淇℃伅
*
- * @param task 浠诲姟
- * @param taskVO 浠诲姟vo
+ * @param task 浠诲姟
+ * @param taskVO 浠诲姟vo
* @param projectId 椤圭洰id
*/
private void setRuntimeTaskInfo(Task task, CustomerTaskVO taskVO, Long projectId) {
@@ -1003,8 +1034,8 @@
* 鏌ヨ鎸夋椂瀹屾垚鐨勪换鍔�
*
* @param processDefinitionId 娴佺▼瀹氫箟id
- * @param processInsId 娴佺▼瀹炰緥id
- * @param taskName 浠诲姟鍚嶇О--鎼滅储鏉′欢
+ * @param processInsId 娴佺▼瀹炰緥id
+ * @param taskName 浠诲姟鍚嶇О--鎼滅储鏉′欢
* @param pageNum
* @param pageSize
* @param result
@@ -1190,10 +1221,10 @@
/**
* 鏌ヨ瓒呮椂鐨勪换鍔�
*
- * @param projectId 椤圭洰id
+ * @param projectId 椤圭洰id
* @param processDefinitionId 娴佺▼瀹氫箟id
- * @param processInsId 娴佺▼瀹炰緥id
- * @param taskName 浠诲姟鍚嶇О--鎼滅储鏉′欢
+ * @param processInsId 娴佺▼瀹炰緥id
+ * @param taskName 浠诲姟鍚嶇О--鎼滅储鏉′欢
* @param pageNum
* @param pageSize
* @param result
@@ -1303,10 +1334,10 @@
/**
* 鏌ヨ鍗冲皢瓒呮椂鐨勪换鍔�
*
- * @param projectId 椤圭洰id
+ * @param projectId 椤圭洰id
* @param processDefinitionId 娴佺▼瀹氫箟id
- * @param processInsId 娴佺▼瀹炰緥id
- * @param taskName 浠诲姟鍚嶇О--鎼滅储鏉′欢
+ * @param processInsId 娴佺▼瀹炰緥id
+ * @param taskName 浠诲姟鍚嶇О--鎼滅储鏉′欢
* @param pageNum
* @param pageSize
* @param result
@@ -1378,7 +1409,7 @@
/**
* 鏌ヨ鍓╀綑浜嬮」锛堟湭寮�濮嬬殑浠诲姟锛�
*
- * @param projectId 椤圭洰id
+ * @param projectId 椤圭洰id
* @param processDefinitionId
* @param processInsId
* @param taskName
@@ -1424,7 +1455,6 @@
List<UserTask> userTasks = allUserTaskElement.subList(startNum, end);
-
// 鍒ゆ柇浠诲姟鐘舵�侊紝鏋勫缓vo
List<CustomerTaskVO> vos = new ArrayList<>(48);
for (UserTask userTask : userTasks) {
@@ -1464,8 +1494,7 @@
if (groupId.contains(ProcessConstants.DATA_LAUNCH)) {
vo.setHandlerType(HandlerTypeEnum.DEPT);
this.varYzReview(vo, projectId, processInsId, HandlerTypeEnum.DEPT);
- }
- else if (groupId.startsWith("dept")) { // 閮ㄩ棬鐨刬d鏄姞浜嗗墠缂�鐨勫锛歞ept:1
+ } else if (groupId.startsWith("dept")) { // 閮ㄩ棬鐨刬d鏄姞浜嗗墠缂�鐨勫锛歞ept:1
vo.setHandlerType(HandlerTypeEnum.DEPT);
String[] split = groupId.split(":");
if (split.length > 1) {
@@ -1590,7 +1619,7 @@
if (TaskStatusEnum.TODO.equals(taskVO.getTaskStatus())) {
List<IdentityLink> identityLinksForTask = taskService.getIdentityLinksForTask(taskVO.getTaskId());
for (IdentityLink identityLink : identityLinksForTask) {
- if (StringUtils.isBlank(((IdentityLinkEntityImpl)identityLink).getId())) {
+ if (StringUtils.isBlank(((IdentityLinkEntityImpl) identityLink).getId())) {
continue;
}
// 缁戝畾鐨勬槸鐢ㄦ埛锛屾煡鍑虹敤鎴峰鍚嶃�侀儴闂�
@@ -1685,7 +1714,7 @@
.orderByHistoricTaskInstanceStartTime()
.desc()
.list(); // 涔嬫墍浠ョ敤list鏄洜涓哄鏋滄煇涓换鍔¤椹冲洖杩囷紝涓斿鏋滆浠诲姟鍐嶆鎵ц鏃朵細鏈夊鏉℃暟鎹紝鍙栨渶鏂扮殑涓�鏉�
- if (! CollectionUtils.isEmpty(historicTaskInstances)) {
+ if (!CollectionUtils.isEmpty(historicTaskInstances)) {
// 瀹為檯棰嗗彇杩欎釜浠诲姟鐨勪汉锛屼篃灏辨槸澶勭悊浜�
String assignee = historicTaskInstances.get(0).getAssignee();
SysUser startUser = sysUserService.selectUserById(Long.parseLong(assignee));
@@ -1698,10 +1727,18 @@
taskVO.setPromoterName("鏆傛棤");
taskVO.setPromoterUnitName("鏆傛棤");
} else {
- taskVO.setPromoterId(userList.stream().map(user -> { return user.getUserId() + ""; }).collect(Collectors.joining("銆�")));
- taskVO.setPromoterName(userList.stream().map(user -> { return user.getNickName(); }).collect(Collectors.joining("銆�")));
- taskVO.setPromoterUnitId(userList.stream().filter(user -> Objects.nonNull(user.getDept())).map(user -> { return user.getDept().getDeptId() + "";}).collect(Collectors.joining("銆�")));
- taskVO.setPromoterUnitName(userList.stream().filter(user -> Objects.nonNull(user.getDept())).map(user -> { return user.getDept().getDeptName() + "";}).collect(Collectors.joining("銆�")));
+ taskVO.setPromoterId(userList.stream().map(user -> {
+ return user.getUserId() + "";
+ }).collect(Collectors.joining("銆�")));
+ taskVO.setPromoterName(userList.stream().map(user -> {
+ return user.getNickName();
+ }).collect(Collectors.joining("銆�")));
+ taskVO.setPromoterUnitId(userList.stream().filter(user -> Objects.nonNull(user.getDept())).map(user -> {
+ return user.getDept().getDeptId() + "";
+ }).collect(Collectors.joining("銆�")));
+ taskVO.setPromoterUnitName(userList.stream().filter(user -> Objects.nonNull(user.getDept())).map(user -> {
+ return user.getDept().getDeptName() + "";
+ }).collect(Collectors.joining("銆�")));
}
}
diff --git a/common/src/main/java/com/ycl/common/enums/business/ProcessLogEventTypeEnum.java b/common/src/main/java/com/ycl/common/enums/business/ProcessLogEventTypeEnum.java
index 28957be..05b7a08 100644
--- a/common/src/main/java/com/ycl/common/enums/business/ProcessLogEventTypeEnum.java
+++ b/common/src/main/java/com/ycl/common/enums/business/ProcessLogEventTypeEnum.java
@@ -17,6 +17,7 @@
FINISHED("FINISHED", "瀹屾垚"),
TEAM_WORK("TEAM_WORK", "鍗忓悓鍔炵悊"),
JUMP("JUMP", "璺宠繃"),
+ SUPERVISE("SUPERVISE", "鐫e姙"),
;
diff --git a/common/src/main/java/com/ycl/common/enums/business/SuperviseTypeEnum.java b/common/src/main/java/com/ycl/common/enums/business/SuperviseTypeEnum.java
new file mode 100644
index 0000000..c94ec9c
--- /dev/null
+++ b/common/src/main/java/com/ycl/common/enums/business/SuperviseTypeEnum.java
@@ -0,0 +1,31 @@
+package com.ycl.common.enums.business;
+
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.fasterxml.jackson.annotation.JsonValue;
+import lombok.Getter;
+
+/**
+ * 鐫e姙绫诲瀷 鐫e姙 or 鍥炲
+ *
+ * @author锛歺p
+ * @date锛�2024/11/29 11:13
+ */
+@Getter
+public enum SuperviseTypeEnum {
+
+ SUPERVISE("SUPERVISE", "鐫e姙"),
+ REPLY("REPLY", "鍥炲"),
+ ;
+
+ @EnumValue
+ @JsonValue
+ private final String value;
+
+
+ private final String desc;
+
+ SuperviseTypeEnum(String value, String desc) {
+ this.value = value;
+ this.desc = desc;
+ }
+}
--
Gitblit v1.8.0