Commit 933e7902 by “zcwang”

modify: 取消变更

parent 1532953a
...@@ -62,8 +62,8 @@ CREATE TABLE `TB_YX_QC_CHANGE_RECORD` ...@@ -62,8 +62,8 @@ CREATE TABLE `TB_YX_QC_CHANGE_RECORD`
`change_profit` int(11) NOT NULL DEFAULT '0' COMMENT '变更收益', `change_profit` int(11) NOT NULL DEFAULT '0' COMMENT '变更收益',
`change_profit_desc` varchar(550) NOT NULL DEFAULT '' COMMENT '变更收益说明', `change_profit_desc` varchar(550) NOT NULL DEFAULT '' COMMENT '变更收益说明',
`change_confirm_result_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '变更结果确认时间', `change_confirm_result_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '变更结果确认时间',
`state` int(2) NOT NULL DEFAULT '0' COMMENT '工单状态', `state` int(2) NOT NULL DEFAULT '0' COMMENT '工单状态,1进行中,2取消完结,3延期,4正常完结',
`is_cancel` int(2) NOT NULL DEFAULT '0' COMMENT '是否被取消', `cancel_reason` varchar(550) NOT NULL DEFAULT '' COMMENT '取消原因',
`change_result` int(2) NOT NULL DEFAULT '0' COMMENT '变更结论', `change_result` int(2) NOT NULL DEFAULT '0' COMMENT '变更结论',
`create_source` int(2) NOT NULL DEFAULT '0' COMMENT '创建端(普通or同舟)', `create_source` int(2) NOT NULL DEFAULT '0' COMMENT '创建端(普通or同舟)',
`create_supplier` varchar(20) NOT NULL DEFAULT '' COMMENT '创建人所属供应商(同舟创建)', `create_supplier` varchar(20) NOT NULL DEFAULT '' COMMENT '创建人所属供应商(同舟创建)',
......
...@@ -24,7 +24,6 @@ import com.netease.mail.yanxuan.change.biz.meta.exception.ExceptionFactory; ...@@ -24,7 +24,6 @@ import com.netease.mail.yanxuan.change.biz.meta.exception.ExceptionFactory;
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.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.ResponseCode; 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.bean.ResponseCodeEnum;
import com.netease.mail.yanxuan.change.common.enums.ChangeFlowEnum; import com.netease.mail.yanxuan.change.common.enums.ChangeFlowEnum;
...@@ -35,8 +34,9 @@ import com.netease.mail.yanxuan.change.common.enums.FlowxOperationEnum; ...@@ -35,8 +34,9 @@ import com.netease.mail.yanxuan.change.common.enums.FlowxOperationEnum;
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.ChangeRecord; import com.netease.mail.yanxuan.change.dal.entity.ChangeRecord;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeExecConfigReq; import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeExecConfigReq;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowCancelReq;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowCreateReq; import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowCreateReq;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowReq; import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowSubmitReq;
import com.netease.mail.yanxuan.change.integration.flow.FlowRpcService; import com.netease.mail.yanxuan.change.integration.flow.FlowRpcService;
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;
...@@ -67,12 +67,10 @@ public class ChangeFlowBiz { ...@@ -67,12 +67,10 @@ public class ChangeFlowBiz {
public String createAndSubmit(ChangeFlowCreateReq changeFlowCreateReq) { public String createAndSubmit(ChangeFlowCreateReq changeFlowCreateReq) {
// String uid = RequestLocalBean.getUid(); // String uid = RequestLocalBean.getUid();
String uid = "1"; String uid = "x@mesg.com";
// String userName = RequestLocalBean.getName(); // String userName = RequestLocalBean.getName();
String userName = "x@mesg.com";
// 校验变更主体 // 校验变更主体
Boolean containsChangeSubject = ChangeSubjectEnum.getByType(changeFlowCreateReq.getChangeSubject()); checkSubject(changeFlowCreateReq);
Assert.isTrue(containsChangeSubject, "变更主体不存在");
// 检验是否需要资料 // 检验是否需要资料
// ChangeConfig changeConfig = changeConfigService.queryChangeConfig(changeFlowCreateReq.getSonChangeClassId()); // ChangeConfig changeConfig = changeConfigService.queryChangeConfig(changeFlowCreateReq.getSonChangeClassId());
// Assert.notNull(changeConfig, "二级变更类型不存在"); // Assert.notNull(changeConfig, "二级变更类型不存在");
...@@ -83,19 +81,18 @@ public class ChangeFlowBiz { ...@@ -83,19 +81,18 @@ public class ChangeFlowBiz {
// 变更行动项不可为空,最多20项 // 变更行动项不可为空,最多20项
Assert.isTrue(changeFlowCreateReq.getChangeExecProject().size() <= appConfig.getChangeExecLimit(), Assert.isTrue(changeFlowCreateReq.getChangeExecProject().size() <= appConfig.getChangeExecLimit(),
"变更行动方案配置数超限"); "变更行动方案配置数超限");
// 结束时间不可晚于第二天定时任务执行时间 // 结束时间不可晚于第二天定时任务执行时间
Long tomorrowSpecificTime = DateUtils.getTomorrowSpecificTime("09:00:00"); Long tomorrowSpecificTime = DateUtils.getTomorrowSpecificTime("09:00:00");
Assert.isTrue(changeFlowCreateReq.getChangeConfirmResultTime() >= tomorrowSpecificTime, "时间不可晚于下次执行时间"); Assert.isTrue(changeFlowCreateReq.getChangeConfirmResultTime() >= tomorrowSpecificTime, "时间不可晚于下次执行时间");
Map<String, Object> content = new HashMap<>(10); Map<String, Object> content = new HashMap<>(10);
content.put("createUserName", userName); content.put("createUserName", uid);
content.put("createUser", uid); content.put("createUser", uid);
content.put("createTime", System.currentTimeMillis()); content.put("createTime", System.currentTimeMillis());
content.put("updateTime", System.currentTimeMillis()); content.put("updateTime", System.currentTimeMillis());
content.put(CommonConstants.FLOW_OPERATION_KEY, FlowOperationTypeEnum.PASS.getValue()); content.put(CommonConstants.FLOW_OPERATION_KEY, FlowOperationTypeEnum.PASS.getValue());
// 组装工单创建数据 // 组装工单创建数据
FlowCreateReqDTO flowCreateReqDTO = buildFlowCreateReqDTO(ChangeFlowEnum.CHANGE_FLOW_START.getTopoId(), uid, FlowCreateReqDTO flowCreateReqDTO = buildFlowCreateReqDTO(ChangeFlowEnum.CHANGE_FLOW_START.getTopoId(), uid,
userName, JSON.toJSONString(content), FlowxOperationEnum.CREATE.getName()); JSON.toJSONString(content), FlowxOperationEnum.CREATE.getName());
// 创建工单 // 创建工单
String flowId = createFlow(flowCreateReqDTO); String flowId = createFlow(flowCreateReqDTO);
// 查询工单详情 // 查询工单详情
...@@ -110,7 +107,7 @@ public class ChangeFlowBiz { ...@@ -110,7 +107,7 @@ public class ChangeFlowBiz {
// 如果发起人=变更负责人 // 如果发起人=变更负责人
if (true) { if (true) {
List<String> nextNodeIdList = submitFlow(flowId, flowDataDTO, uid, userName, List<String> nextNodeIdList = submitFlow(flowId, flowDataDTO, uid,
ChangeFlowEnum.CHANGE_FLOW_START.getTopoId(), JSON.toJSONString(content)); ChangeFlowEnum.CHANGE_FLOW_START.getTopoId(), JSON.toJSONString(content));
if (CollectionUtils.isEmpty(nextNodeIdList)) { if (CollectionUtils.isEmpty(nextNodeIdList)) {
throw ExceptionFactory.createBiz(ResponseCode.SUBMIT_FLOW_ERROR, "首次提交节点失败"); throw ExceptionFactory.createBiz(ResponseCode.SUBMIT_FLOW_ERROR, "首次提交节点失败");
...@@ -120,6 +117,23 @@ public class ChangeFlowBiz { ...@@ -120,6 +117,23 @@ public class ChangeFlowBiz {
return flowId; return flowId;
} }
private void checkSubject(ChangeFlowCreateReq changeFlowCreateReq) {
ChangeSubjectEnum type = ChangeSubjectEnum.getByType(changeFlowCreateReq.getChangeSubject());
Assert.notNull(type, "变更主体不存在");
switch (type) {
case PRODUCT:
Assert.isTrue(StringUtils.isNotBlank(changeFlowCreateReq.getChangeItems()), " 变更商品不可为空");
break;
case SUPPLIER:
Assert.isTrue(StringUtils.isNotBlank(changeFlowCreateReq.getChangeSupplier()), " 变更供应商不可为空");
break;
case OTHER:
break;
default:
throw ExceptionFactory.createBiz(ResponseCode.CHANGE_SUBJECT_ERROR, "变更主体类型错误");
}
}
private FlowDataDTO flowDetail(String flowId) { private FlowDataDTO flowDetail(String flowId) {
// 查询工单详情,根据详情提交 // 查询工单详情,根据详情提交
FlowDataDTO flowDataDTO; FlowDataDTO flowDataDTO;
...@@ -135,24 +149,22 @@ public class ChangeFlowBiz { ...@@ -135,24 +149,22 @@ public class ChangeFlowBiz {
return flowDataDTO; return flowDataDTO;
} }
private FlowCreateReqDTO buildFlowCreateReqDTO(String topoId, String uid, String userName, String content, private FlowCreateReqDTO buildFlowCreateReqDTO(String topoId, String uid, String content, String operateResult) {
String operateResult) {
FlowCreateReqDTO flowCreateReqDTO = new FlowCreateReqDTO(); FlowCreateReqDTO flowCreateReqDTO = new FlowCreateReqDTO();
flowCreateReqDTO.setTopoId(topoId); flowCreateReqDTO.setTopoId(topoId);
flowCreateReqDTO.setUid(uid); flowCreateReqDTO.setUid(uid);
flowCreateReqDTO.setUserName(userName); flowCreateReqDTO.setUserName(uid);
flowCreateReqDTO.setOperateResult(operateResult); flowCreateReqDTO.setOperateResult(operateResult);
flowCreateReqDTO.setWorkOrderId(StringUtils.joinWith("-", topoId, UUID.randomUUID().toString())); flowCreateReqDTO.setWorkOrderId(StringUtils.joinWith("-", topoId, UUID.randomUUID().toString()));
return flowCreateReqDTO; return flowCreateReqDTO;
} }
private List<String> submitFlow(String flowId, FlowDataDTO flowDataDTO, String uid, String userName, String topoId, private List<String> submitFlow(String flowId, FlowDataDTO flowDataDTO, String uid, String topoId, String content) {
String content) {
NodeSubmitReqDTO nodeSubmitReqDTO = new NodeSubmitReqDTO(); NodeSubmitReqDTO nodeSubmitReqDTO = new NodeSubmitReqDTO();
nodeSubmitReqDTO.setFlowId(flowId); nodeSubmitReqDTO.setFlowId(flowId);
nodeSubmitReqDTO.setNodeId(flowDataDTO.getFlowMeta().getCurrNodeDataList().get(0).getNodeId()); nodeSubmitReqDTO.setNodeId(flowDataDTO.getFlowMeta().getCurrNodeDataList().get(0).getNodeId());
nodeSubmitReqDTO.setUid(uid); nodeSubmitReqDTO.setUid(uid);
nodeSubmitReqDTO.setUserName(userName); nodeSubmitReqDTO.setUserName(uid);
nodeSubmitReqDTO.setTopoId(topoId); nodeSubmitReqDTO.setTopoId(topoId);
nodeSubmitReqDTO.setContent(content); nodeSubmitReqDTO.setContent(content);
nodeSubmitReqDTO.setOperateResult(FlowxOperationEnum.SUBMIT.getName()); nodeSubmitReqDTO.setOperateResult(FlowxOperationEnum.SUBMIT.getName());
...@@ -178,7 +190,8 @@ public class ChangeFlowBiz { ...@@ -178,7 +190,8 @@ public class ChangeFlowBiz {
private String createFlow(FlowCreateReqDTO flowCreateReqDTO) { private String createFlow(FlowCreateReqDTO flowCreateReqDTO) {
// 先创建工单,创建完成后直接提交 // 先创建工单,创建完成后直接提交
log.info("[createFlow] flowCreateReqDTO={}", flowCreateReqDTO); log.info("[createFlow] flowCreateReqDTO={}", flowCreateReqDTO);
AjaxResponse<String> flowCreateResponse = flowRpcService.create(CommonConstants.FLOWX_PRODUCT, flowCreateReqDTO); AjaxResponse<String> flowCreateResponse = flowRpcService.create(CommonConstants.FLOWX_PRODUCT,
flowCreateReqDTO);
String flowId; String flowId;
if (ResponseCodeEnum.SUCCESS.getCode() == flowCreateResponse.getCode()) { if (ResponseCodeEnum.SUCCESS.getCode() == flowCreateResponse.getCode()) {
flowId = flowCreateResponse.getData(); flowId = flowCreateResponse.getData();
...@@ -191,7 +204,8 @@ public class ChangeFlowBiz { ...@@ -191,7 +204,8 @@ public class ChangeFlowBiz {
return flowId; return flowId;
} }
private ChangeRecord buildRecord(String flowId, String nodeId, ChangeFlowCreateReq changeFlowCreateReq, String changeCommander) { private ChangeRecord buildRecord(String flowId, String nodeId, ChangeFlowCreateReq changeFlowCreateReq,
String changeCommander) {
ChangeRecord changeRecord = new ChangeRecord(); ChangeRecord changeRecord = new ChangeRecord();
changeRecord.setFlowId(Long.parseLong(flowId)); changeRecord.setFlowId(Long.parseLong(flowId));
changeRecord.setFlowNode(nodeId); changeRecord.setFlowNode(nodeId);
...@@ -199,15 +213,16 @@ public class ChangeFlowBiz { ...@@ -199,15 +213,16 @@ public class ChangeFlowBiz {
changeRecord.setParentChangeClassId(changeFlowCreateReq.getParentChangeClassId()); changeRecord.setParentChangeClassId(changeFlowCreateReq.getParentChangeClassId());
changeRecord.setSonChangeClassId(changeFlowCreateReq.getSonChangeClassId()); changeRecord.setSonChangeClassId(changeFlowCreateReq.getSonChangeClassId());
changeRecord.setChangeLevel(changeFlowCreateReq.getChangeLevel()); changeRecord.setChangeLevel(changeFlowCreateReq.getChangeLevel());
// todo: 查询负责人 changeRecord.setChangeCommander(changeCommander);
changeRecord.setChangeCommander("");
changeRecord.setChangeDepartment(changeFlowCreateReq.getChangeDepartment()); changeRecord.setChangeDepartment(changeFlowCreateReq.getChangeDepartment());
List<ChangeExecConfigReq> changeExecProject = changeFlowCreateReq.getChangeExecProject(); List<ChangeExecConfigReq> changeExecProject = changeFlowCreateReq.getChangeExecProject();
List<String> execDepartmentList = changeExecProject.stream().map(ChangeExecConfigReq::getChangeExecDepartment) List<String> execDepartmentList = changeExecProject.stream().map(ChangeExecConfigReq::getChangeExecDepartment)
.collect(Collectors.toList()); .collect(Collectors.toList());
changeRecord.setParticipateChangeExecDepartment(JSON.toJSONString(execDepartmentList)); changeRecord.setParticipateChangeExecDepartment(JSON.toJSONString(execDepartmentList));
// todo: 当变更类型是商品时有值 if (ChangeSubjectEnum.PRODUCT.getType().equals(changeFlowCreateReq.getChangeSubject())) {
// 当变更类型是商品时有值
changeRecord.setChangeItem(changeFlowCreateReq.getChangeItems()); changeRecord.setChangeItem(changeFlowCreateReq.getChangeItems());
}
// todo: 当变更类型是供应商时有效 // todo: 当变更类型是供应商时有效
changeRecord.setChangeSupplier(changeFlowCreateReq.getChangeSupplier()); changeRecord.setChangeSupplier(changeFlowCreateReq.getChangeSupplier());
changeRecord.setChangeReason(changeFlowCreateReq.getChangeReason()); changeRecord.setChangeReason(changeFlowCreateReq.getChangeReason());
...@@ -226,20 +241,19 @@ public class ChangeFlowBiz { ...@@ -226,20 +241,19 @@ public class ChangeFlowBiz {
return changeRecord; return changeRecord;
} }
public String submit(ChangeFlowReq changeFlowReq) { public String submit(ChangeFlowSubmitReq changeFlowSubmitReq) {
log.info("[submit] changeFlowReq:{}", JSON.toJSONString(changeFlowReq)); log.info("[submitFlow] changeFlowReq:{}", JSON.toJSONString(changeFlowSubmitReq));
Long flowId = changeFlowReq.getFlowId(); Long flowId = changeFlowSubmitReq.getFlowId();
// 查询工单有效性 // 查询工单有效性
ChangeRecord changeRecord = changeFlowService.getByFlowId(flowId); ChangeRecord changeRecord = changeFlowService.getByFlowId(flowId);
if (changeRecord == null) { if (changeRecord == null) {
throw ExceptionFactory.createBiz(ResponseCode.ERROR_FLOW_ID, "工单id不存在"); throw ExceptionFactory.createBiz(ResponseCode.ERROR_FLOW_ID, "工单id不存在");
} }
if (!changeRecord.getFlowNode().equals(changeFlowReq.getCurrentNodeId())) { if (!changeRecord.getFlowNode().equals(changeFlowSubmitReq.getCurrentNodeId())) {
throw ExceptionFactory.createBiz(ResponseCode.NODE_ERROR, "工单已流转至其他节点"); throw ExceptionFactory.createBiz(ResponseCode.NODE_ERROR, "工单已流转至其他节点");
} }
// todo:检验操作权限 // todo:检验操作权限
// String uid = RequestLocalBean.getUid(); // String uid = RequestLocalBean.getUid();
String userName = RequestLocalBean.getName();
String uid = "1"; String uid = "1";
String changeCommander = changeRecord.getChangeCommander(); String changeCommander = changeRecord.getChangeCommander();
if (!uid.equals(changeCommander)) { if (!uid.equals(changeCommander)) {
...@@ -251,11 +265,16 @@ public class ChangeFlowBiz { ...@@ -251,11 +265,16 @@ public class ChangeFlowBiz {
Map<String, Object> content = new HashMap<>(CommonConstants.INIT_HASH_MAP_SIZE); Map<String, Object> content = new HashMap<>(CommonConstants.INIT_HASH_MAP_SIZE);
content.put("updateTime", System.currentTimeMillis()); content.put("updateTime", System.currentTimeMillis());
content.put(CommonConstants.FLOW_OPERATION_KEY, FlowOperationTypeEnum.PASS.getValue()); content.put(CommonConstants.FLOW_OPERATION_KEY, FlowOperationTypeEnum.PASS.getValue());
List<String> nextNodeList = this.submitFlow(flowId.toString(), flowDataDTO, uid, userName, List<String> nextNodeList = this.submitFlow(flowId.toString(), flowDataDTO, uid,
ChangeFlowEnum.CHANGE_FLOW_SUBMIT.getTopoId(), JSON.toJSONString(content)); ChangeFlowEnum.CHANGE_FLOW_SUBMIT.getTopoId(), JSON.toJSONString(content));
if (CollectionUtils.isEmpty(nextNodeList)) { if (CollectionUtils.isEmpty(nextNodeList)) {
return ChangeFlowEnum.END.getNodeId(); return ChangeFlowEnum.END.getNodeId();
} }
return nextNodeList.get(0); return nextNodeList.get(0);
} }
public Boolean cancel(ChangeFlowCancelReq req) {
log.info("[cancel] req:{}", JSON.toJSONString(req));
return false;
}
} }
...@@ -120,30 +120,14 @@ public enum ResponseCode { ...@@ -120,30 +120,14 @@ public enum ResponseCode {
NO_GOOD_TASK(802, "不是商品任务"), NO_GOOD_TASK(802, "不是商品任务"),
//----------10xx-----------
CREATE_FLOW_ERROR(1001, "创建工单错误"), CREATE_FLOW_ERROR(1001, "创建工单错误"),
DETAIL_FLOW_ERROR(1002, "查询工单详情错误"), DETAIL_FLOW_ERROR(1002, "查询工单详情错误"),
SUBMIT_FLOW_ERROR(1002, "提交工单错误"), SUBMIT_FLOW_ERROR(1002, "提交工单错误"),
ERROR_FLOW_ID(1003, "工单id不存在"), ERROR_FLOW_ID(1003, "工单id不存在"),
NODE_ERROR(1004, "工单已流转至其他节点"), NODE_ERROR(1004, "工单已流转至其他节点"),
NO_AUTH(1005, "没有当前节点操作权限"), NO_AUTH(1005, "没有当前节点操作权限"),
CHANGE_SUBJECT_ERROR(1006, "变更主体类型错误"),
//----------10xx-----------
NO_DATA(1007, "无数据"),
STEP_NOT_ENOUGH(1008, "步数不足"),
ALREADY_DO(1009, "已完成"),
NOT_FINISH(1011, "未完成"),
FINISH_GUIDE(1012, "完成新手奖励"),
RECEIVE_GUIDE(1013, "完成新手奖励"),
NOT_IN_DMP(1014, "未命中DMP分组"),
NOT_BIND_PHONE(1015, "未绑定手机号"),
/**
* 名字已经被使用
*/
NAME_EXIST(2000, "NAME_IS_USED"),
/** /**
* 无权限 * 无权限
......
...@@ -13,8 +13,9 @@ package com.netease.mail.yanxuan.change.common.enums; ...@@ -13,8 +13,9 @@ package com.netease.mail.yanxuan.change.common.enums;
public enum ChangeStatusEnum { public enum ChangeStatusEnum {
IN(1, "进行中"), IN(1, "进行中"),
CANCEL(2, "取消"), CANCEL(2, "取消完结"),
END(3, "完结"); DELAY(3, "延期"),
END(4, "完结");
private Integer status; private Integer status;
......
...@@ -34,13 +34,13 @@ public enum ChangeSubjectEnum { ...@@ -34,13 +34,13 @@ public enum ChangeSubjectEnum {
return desc; return desc;
} }
public static Boolean getByType(Integer type) { public static ChangeSubjectEnum getByType(Integer type) {
for (ChangeSubjectEnum value : ChangeSubjectEnum.values()) { for (ChangeSubjectEnum value : ChangeSubjectEnum.values()) {
if (value.getType().equals(type)) { if (value.getType().equals(type)) {
return true; return value;
} }
} }
return false; return null;
} }
public static ChangeSubjectEnum getChangeSubjectEnum(Integer id){ public static ChangeSubjectEnum getChangeSubjectEnum(Integer id){
......
...@@ -128,7 +128,7 @@ public class ChangeRecord { ...@@ -128,7 +128,7 @@ public class ChangeRecord {
private Integer state; private Integer state;
/** /**
* 是否被取消 * 取消原因
*/ */
private String cancelReason; private String cancelReason;
......
/**
* @(#)ChangeFlowCancelReq.java, 2022/11/21.
* <p/>
* Copyright 2022 Netease, Inc. All rights reserved.
* NETEASE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package com.netease.mail.yanxuan.change.dal.meta.model.req;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import lombok.Data;
/**
* @Author zcwang
* @Date 2022/11/21
*/
@Data
public class ChangeFlowCancelReq {
/**
* 工单id
*/
@NotNull(message = "工单id不能为空")
private Long flowId;
@NotBlank(message = "取消原因不能为空")
@Size(max = 200, message = "取消原因限制200字")
private String cancelReason;
}
\ No newline at end of file
...@@ -86,8 +86,9 @@ public class ChangeFlowCreateReq { ...@@ -86,8 +86,9 @@ public class ChangeFlowCreateReq {
private List<ChangeFlowFile> files; private List<ChangeFlowFile> files;
/** /**
* 变更潜在风险 * 变更潜在风险描述
*/ */
@NotBlank(message = "变更潜在风险描述不能为空")
private String changeRiskDesc; private String changeRiskDesc;
/** /**
......
...@@ -19,7 +19,7 @@ import lombok.Data; ...@@ -19,7 +19,7 @@ import lombok.Data;
* @Date 2022/11/14 * @Date 2022/11/14
*/ */
@Data @Data
public class ChangeFlowReq { public class ChangeFlowSubmitReq {
/** /**
* 工单id * 工单id
......
...@@ -6,8 +6,6 @@ ...@@ -6,8 +6,6 @@
*/ */
package com.netease.mail.yanxuan.change.web.controller; package com.netease.mail.yanxuan.change.web.controller;
import java.util.List;
import javax.validation.Valid; import javax.validation.Valid;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -22,8 +20,9 @@ import com.netease.mail.yanxuan.change.biz.biz.ChangeFlowBiz; ...@@ -22,8 +20,9 @@ import com.netease.mail.yanxuan.change.biz.biz.ChangeFlowBiz;
import com.netease.mail.yanxuan.change.biz.config.TitleConfig; import com.netease.mail.yanxuan.change.biz.config.TitleConfig;
import com.netease.mail.yanxuan.change.common.bean.AjaxResult; import com.netease.mail.yanxuan.change.common.bean.AjaxResult;
import com.netease.mail.yanxuan.change.biz.service.ChangeFlowService; import com.netease.mail.yanxuan.change.biz.service.ChangeFlowService;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowCancelReq;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowCreateReq; import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowCreateReq;
import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowReq; import com.netease.mail.yanxuan.change.dal.meta.model.req.ChangeFlowSubmitReq;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -71,7 +70,7 @@ public class ChangeFlowController { ...@@ -71,7 +70,7 @@ public class ChangeFlowController {
} }
/** /**
* 发起变更,自动跳转到第一个节点 * 发起变更,如果发起人=审核人,自动跳转到第一个节点
* @return * @return
*/ */
@PostMapping("/create") @PostMapping("/create")
...@@ -85,8 +84,8 @@ public class ChangeFlowController { ...@@ -85,8 +84,8 @@ public class ChangeFlowController {
* @return * @return
*/ */
@PostMapping("/submit") @PostMapping("/submit")
public AjaxResult<String> submit(@RequestBody @Valid ChangeFlowReq changeFlowReq) { public AjaxResult<String> submit(@RequestBody @Valid ChangeFlowSubmitReq changeFlowSubmitReq) {
return AjaxResult.success(changeFlowBiz.submit(changeFlowReq)); return AjaxResult.success(changeFlowBiz.submit(changeFlowSubmitReq));
} }
/** /**
...@@ -103,9 +102,8 @@ public class ChangeFlowController { ...@@ -103,9 +102,8 @@ public class ChangeFlowController {
* @return * @return
*/ */
@GetMapping("/cancel") @GetMapping("/cancel")
public AjaxResult<Void> cancel() { public AjaxResult<Boolean> cancel(@RequestBody @Valid ChangeFlowCancelReq changeFlowCancelReq) {
return AjaxResult.success(changeFlowBiz.cancel(changeFlowCancelReq));
return AjaxResult.success();
} }
/** /**
......
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