Commit de47a08a by “zcwang”

add: 创建待办

parent 8503b981
...@@ -38,6 +38,7 @@ import com.netease.mail.yanxuan.change.biz.service.ChangeFlowExecService; ...@@ -38,6 +38,7 @@ import com.netease.mail.yanxuan.change.biz.service.ChangeFlowExecService;
import com.netease.mail.yanxuan.change.biz.service.ChangeFlowService; import com.netease.mail.yanxuan.change.biz.service.ChangeFlowService;
import com.netease.mail.yanxuan.change.biz.service.change.ChangeConfigService; import com.netease.mail.yanxuan.change.biz.service.change.ChangeConfigService;
import com.netease.mail.yanxuan.change.biz.service.change.ChangeTypeService; import com.netease.mail.yanxuan.change.biz.service.change.ChangeTypeService;
import com.netease.mail.yanxuan.change.biz.service.rpc.TodoService;
import com.netease.mail.yanxuan.change.common.bean.CommonConstants; import com.netease.mail.yanxuan.change.common.bean.CommonConstants;
import com.netease.mail.yanxuan.change.common.bean.RequestLocalBean; import com.netease.mail.yanxuan.change.common.bean.RequestLocalBean;
import com.netease.mail.yanxuan.change.common.bean.ResponseCode; import com.netease.mail.yanxuan.change.common.bean.ResponseCode;
...@@ -49,7 +50,6 @@ import com.netease.mail.yanxuan.change.common.enums.ChangeSubjectEnum; ...@@ -49,7 +50,6 @@ import com.netease.mail.yanxuan.change.common.enums.ChangeSubjectEnum;
import com.netease.mail.yanxuan.change.common.enums.FlowOperationTypeEnum; import com.netease.mail.yanxuan.change.common.enums.FlowOperationTypeEnum;
import com.netease.mail.yanxuan.change.common.enums.FlowxOperationEnum; import com.netease.mail.yanxuan.change.common.enums.FlowxOperationEnum;
import com.netease.mail.yanxuan.change.common.enums.NeedFileEnum; import com.netease.mail.yanxuan.change.common.enums.NeedFileEnum;
import com.netease.mail.yanxuan.change.common.enums.SupplierTodoTaskTypeEnum;
import com.netease.mail.yanxuan.change.common.util.DateUtils; import com.netease.mail.yanxuan.change.common.util.DateUtils;
import com.netease.mail.yanxuan.change.dal.entity.ChangeConfig; import com.netease.mail.yanxuan.change.dal.entity.ChangeConfig;
import com.netease.mail.yanxuan.change.dal.entity.ChangeExecRecord; import com.netease.mail.yanxuan.change.dal.entity.ChangeExecRecord;
...@@ -74,8 +74,6 @@ import com.netease.mail.yanxuan.change.dal.meta.model.vo.PageVO; ...@@ -74,8 +74,6 @@ import com.netease.mail.yanxuan.change.dal.meta.model.vo.PageVO;
import com.netease.mail.yanxuan.change.integration.excel.ChangeFlowExcelDTO; import com.netease.mail.yanxuan.change.integration.excel.ChangeFlowExcelDTO;
import com.netease.mail.yanxuan.change.integration.flow.FlowRpcService; import com.netease.mail.yanxuan.change.integration.flow.FlowRpcService;
import com.netease.mail.yanxuan.change.integration.todo.TaskCreateDTO; import com.netease.mail.yanxuan.change.integration.todo.TaskCreateDTO;
import com.netease.mail.yanxuan.change.integration.todo.TaskCreateParamVO;
import com.netease.mail.yanxuan.change.integration.todo.TodoRpcService;
import com.netease.yanxuan.flowx.sdk.meta.controller.communal.AjaxResponse; import com.netease.yanxuan.flowx.sdk.meta.controller.communal.AjaxResponse;
import com.netease.yanxuan.flowx.sdk.meta.dto.base.FlowDataDTO; import com.netease.yanxuan.flowx.sdk.meta.dto.base.FlowDataDTO;
import com.netease.yanxuan.flowx.sdk.meta.dto.base.UserReachDTO; import com.netease.yanxuan.flowx.sdk.meta.dto.base.UserReachDTO;
...@@ -121,7 +119,7 @@ public class ChangeFlowBiz { ...@@ -121,7 +119,7 @@ public class ChangeFlowBiz {
private ChangeRecordMapper changeRecordMapper; private ChangeRecordMapper changeRecordMapper;
@Autowired @Autowired
private TodoRpcService todoRpcService; private TodoService todoService;
public String createAndSubmit(ChangeFlowCreateReq changeFlowCreateReq) { public String createAndSubmit(ChangeFlowCreateReq changeFlowCreateReq) {
...@@ -172,7 +170,9 @@ public class ChangeFlowBiz { ...@@ -172,7 +170,9 @@ public class ChangeFlowBiz {
changeFiles.forEach(file->changeFileService.saveRecord(file)); changeFiles.forEach(file->changeFileService.saveRecord(file));
} }
// 创建代办 // 创建代办
createTodoTask(changeRecord); TaskCreateDTO todoTask = todoService.createTodoTask(changeRecord);
changeRecord.setTodoId(todoTask.getId());
changeFlowService.updateRecord(changeRecord);
// 如果发起人=变更负责人 // 如果发起人=变更负责人
if (changeCommander.equals(uid)) { if (changeCommander.equals(uid)) {
log.debug("[createAndSubmit] changeCommander:{}, uid:{}", changeCommander, uid); log.debug("[createAndSubmit] changeCommander:{}, uid:{}", changeCommander, uid);
...@@ -192,39 +192,7 @@ public class ChangeFlowBiz { ...@@ -192,39 +192,7 @@ public class ChangeFlowBiz {
return flowId; return flowId;
} }
/**
* 创建代办
* @param entity
*/
public void createTodoTask(ChangeRecord entity) {
String changeCommander = entity.getChangeCommander();
if (StringUtils.isNotEmpty(changeCommander)) {
String flowId = String.valueOf(entity.getFlowId());
Map<String, Object> businessContent = new HashMap<>();
businessContent.put("nodeTitle", entity.getChangeContent());
businessContent.put("taskFlowId", flowId);
businessContent.put("newFlow", flowId);
TaskCreateParamVO taskCreateParamVO = new TaskCreateParamVO();
taskCreateParamVO.setBusinessKey(flowId);
taskCreateParamVO.setContent(JSON.toJSONString(businessContent));
taskCreateParamVO.setProduct(CommonConstants.FLOWX_PRODUCT);
taskCreateParamVO.setTaskCreator(changeCommander);
taskCreateParamVO.setTaskHandler(changeCommander);
taskCreateParamVO.setTaskHandlerName(changeCommander);
taskCreateParamVO.setTaskTitle("测试");
taskCreateParamVO.setTaskTypeKey(SupplierTodoTaskTypeEnum.QC_CHANGE.getValue());
TaskCreateDTO taskCreateDTO;
AjaxResponse<TaskCreateDTO> taskCreateResponse = todoRpcService.create(taskCreateParamVO);
if (ResponseCodeEnum.SUCCESS.getCode() == taskCreateResponse.getCode()) {
taskCreateDTO = taskCreateResponse.getData();
log.info("[createTodoTask] taskCreateDTO={}", JSON.toJSONString(taskCreateDTO));
} else {
log.error("[createTodoTask] create todo failed, param={}, errMsg={}", JSON.toJSONString(taskCreateParamVO),
JSON.toJSONString(taskCreateResponse));
throw ExceptionFactory.createBiz(ResponseCode.CREATE_TODO_ERROR, "查询工单详情错误");
}
}
}
/** /**
* 完成代办 * 完成代办
......
/**
* @(#)TodoService.java, 2022/11/29.
* <p/>
* Copyright 2022 Netease, Inc. All rights reserved.
* NETEASE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package com.netease.mail.yanxuan.change.biz.service.rpc;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.alibaba.fastjson.JSON;
import com.netease.mail.yanxuan.change.biz.meta.exception.ExceptionFactory;
import com.netease.mail.yanxuan.change.common.bean.CommonConstants;
import com.netease.mail.yanxuan.change.common.bean.ResponseCode;
import com.netease.mail.yanxuan.change.common.bean.ResponseCodeEnum;
import com.netease.mail.yanxuan.change.common.enums.SupplierTodoTaskTypeEnum;
import com.netease.mail.yanxuan.change.dal.entity.ChangeRecord;
import com.netease.mail.yanxuan.change.integration.todo.TaskCreateDTO;
import com.netease.mail.yanxuan.change.integration.todo.TaskCreateParamVO;
import com.netease.mail.yanxuan.change.integration.todo.TodoRpcService;
import com.netease.yanxuan.flowx.sdk.meta.controller.communal.AjaxResponse;
import lombok.extern.slf4j.Slf4j;
/**
* @Author zcwang
* @Date 2022/11/29
*/
@Component
@Slf4j
public class TodoService {
@Autowired
private TodoRpcService todoRpcService;
/**
* 创建代办
* @param entity
*/
public TaskCreateDTO createTodoTask(ChangeRecord entity) {
String changeCommander = entity.getChangeCommander();
if (StringUtils.isNotEmpty(changeCommander)) {
String flowId = String.valueOf(entity.getFlowId());
Map<String, Object> businessContent = new HashMap<>();
businessContent.put("nodeTitle", entity.getChangeContent());
businessContent.put("taskFlowId", flowId);
businessContent.put("newFlow", flowId);
TaskCreateParamVO taskCreateParamVO = new TaskCreateParamVO();
taskCreateParamVO.setBusinessKey(flowId);
taskCreateParamVO.setContent(JSON.toJSONString(businessContent));
taskCreateParamVO.setProduct(CommonConstants.FLOWX_PRODUCT);
taskCreateParamVO.setTaskCreator(changeCommander);
taskCreateParamVO.setTaskHandler(changeCommander);
taskCreateParamVO.setTaskHandlerName(changeCommander);
taskCreateParamVO.setTaskTitle("测试");
taskCreateParamVO.setTaskTypeKey(SupplierTodoTaskTypeEnum.QC_CHANGE.getValue());
TaskCreateDTO taskCreateDTO;
AjaxResponse<TaskCreateDTO> taskCreateResponse = todoRpcService.create(taskCreateParamVO);
if (ResponseCodeEnum.SUCCESS.getCode() == taskCreateResponse.getCode()) {
taskCreateDTO = taskCreateResponse.getData();
log.info("[createTodoTask] taskCreateDTO={}", JSON.toJSONString(taskCreateDTO));
return taskCreateDTO;
} else {
log.error("[createTodoTask] create todo failed, param={}, errMsg={}", JSON.toJSONString(taskCreateParamVO),
JSON.toJSONString(taskCreateResponse));
throw ExceptionFactory.createBiz(ResponseCode.CREATE_TODO_ERROR, "查询工单详情错误");
}
}
}
}
\ No newline at end of file
...@@ -163,6 +163,11 @@ public class ChangeRecord { ...@@ -163,6 +163,11 @@ public class ChangeRecord {
private String creator; private String creator;
/** /**
* 待办id
*/
private Long todoId;
/**
* 创建时间 * 创建时间
*/ */
private Long createTime; private Long createTime;
......
...@@ -13,6 +13,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -13,6 +13,7 @@ import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.netease.mail.yanxuan.change.biz.biz.ChangeFlowBiz; import com.netease.mail.yanxuan.change.biz.biz.ChangeFlowBiz;
import com.netease.mail.yanxuan.change.biz.service.rpc.TodoService;
import com.netease.mail.yanxuan.change.common.bean.AjaxResult; import com.netease.mail.yanxuan.change.common.bean.AjaxResult;
import com.netease.mail.yanxuan.change.dal.entity.ChangeRecord; import com.netease.mail.yanxuan.change.dal.entity.ChangeRecord;
...@@ -28,19 +29,19 @@ import lombok.extern.slf4j.Slf4j; ...@@ -28,19 +29,19 @@ import lombok.extern.slf4j.Slf4j;
public class TestController { public class TestController {
@Autowired @Autowired
private ChangeFlowBiz changeFlowBiz; private TodoService todoService;
@PostMapping("/createToDo") @PostMapping("/createToDo")
public AjaxResult<Void> createTodoTask(ChangeRecord entity) { public AjaxResult<Void> createTodoTask(ChangeRecord entity) {
log.info("[createToDoTask] entity:{}", JSON.toJSONString(entity)); log.info("[createToDoTask] entity:{}", JSON.toJSONString(entity));
changeFlowBiz.createTodoTask(entity); todoService.createTodoTask(entity);
return AjaxResult.success(); return AjaxResult.success();
} }
@PostMapping("/finishToDo") @PostMapping("/finishToDo")
public AjaxResult<Void> finishTodoTask(ChangeRecord entity) { public AjaxResult<Void> finishTodoTask(ChangeRecord entity) {
log.info("[createToDoTask] entity:{}", JSON.toJSONString(entity)); log.info("[createToDoTask] entity:{}", JSON.toJSONString(entity));
changeFlowBiz.createTodoTask(entity); todoService.createTodoTask(entity);
return AjaxResult.success(); return AjaxResult.success();
} }
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment