waring
parent
e6542e7c5f
commit
b124a86f85
|
|
@ -98,6 +98,7 @@ public class EvalInternalReviewExecutor implements EvalInternalReviewApi {
|
|||
throw new BizException(ErrorCode.EVAL_PROJECT_ARCHIVED);
|
||||
}
|
||||
|
||||
// 修改数据是否存在
|
||||
EvalInternalReviewEntity entity = evalInternalReviewConvertor.applyConfirmCmd(cmd);
|
||||
EvalInternalReviewDO evalInternalReviewDO = null;
|
||||
if (cmd.getId() != null) {
|
||||
|
|
@ -108,6 +109,7 @@ public class EvalInternalReviewExecutor implements EvalInternalReviewApi {
|
|||
}
|
||||
}
|
||||
|
||||
// 是否签字完成
|
||||
if (cmd.getResultCode().equals(EvalReviewEnum.PASSED.getCode())) {
|
||||
if (evalInternalReviewDO == null) {
|
||||
throw new BizException(ASSIGN_SIGN_TASK);
|
||||
|
|
@ -142,6 +144,31 @@ public class EvalInternalReviewExecutor implements EvalInternalReviewApi {
|
|||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public SingleResponse<Void> assign(EvalInternalReviewAssignCmd cmd) {
|
||||
Long projectId = cmd.getProjectId();
|
||||
EvalProjectEntity project = evalProjectNodeSupport.requireProject(projectId);
|
||||
// 判断项目是否归档
|
||||
if (project.getArchiveFlag() != null && project.getArchiveFlag() == 1) {
|
||||
throw new BizException(ErrorCode.EVAL_PROJECT_ARCHIVED);
|
||||
}
|
||||
EvalInternalReviewEntity entity = evalInternalReviewGateway.getByProjectId(projectId, project.getOrgId());
|
||||
if (entity == null) {
|
||||
// 没有数据则新增,并下发签字任务
|
||||
entity = new EvalInternalReviewEntity();
|
||||
entity.setOrgId(project.getOrgId());
|
||||
entity.setProjectId(projectId);
|
||||
entity.setStatusCode(1);
|
||||
entity.setReviewerSignatureTaskStatus(SignatureTaskStatusEnum.DISPATCHED.getCode());
|
||||
evalInternalReviewGateway.save(entity);
|
||||
} else {
|
||||
// 已存在数据,若已下发则提示不要重复下发
|
||||
if (SignatureTaskStatusEnum.DISPATCHED.getCode().equals(entity.getReviewerSignatureTaskStatus())) {
|
||||
throw new BizException(ErrorCode.SIGN_TASK_ALREADY_DISPATCHED);
|
||||
}
|
||||
entity.setReviewerSignatureTaskStatus(SignatureTaskStatusEnum.DISPATCHED.getCode());
|
||||
evalInternalReviewGateway.modify(entity);
|
||||
}
|
||||
|
||||
// todo 保存任务
|
||||
return SingleResponse.success();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,41 @@
|
|||
package org.qinan.safetyeval.domain.constant;
|
||||
|
||||
/**
|
||||
* 审核签字任务状态枚举
|
||||
*
|
||||
* @author safety-eval
|
||||
*/
|
||||
public enum SignatureTaskStatusEnum {
|
||||
|
||||
DISPATCHED("dispatched", "下发"),
|
||||
NON_DISPATCHED("non_dispatched", "未下发"),
|
||||
COMPLETED("completed", "已完成");
|
||||
|
||||
private final String code;
|
||||
private final String name;
|
||||
|
||||
SignatureTaskStatusEnum(String code, String name) {
|
||||
this.code = code;
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public static SignatureTaskStatusEnum ofCode(String code) {
|
||||
if (code == null) {
|
||||
return null;
|
||||
}
|
||||
for (SignatureTaskStatusEnum item : values()) {
|
||||
if (item.code.equals(code)) {
|
||||
return item;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -119,6 +119,7 @@ public enum ErrorCode {
|
|||
*/
|
||||
ASSIGN_SIGN_TASK("04-02-001", "请先下发签字任务"),
|
||||
SIGN_TASK_NOT_COMPLETE("04-02-002", "签字任务未完成"),
|
||||
SIGN_TASK_ALREADY_DISPATCHED("04-02-003", "签字任务已下发,请勿重复下发"),
|
||||
|
||||
// gbs
|
||||
GBS_USER_ERROR("04-01-001", "gbs用户未登录"),
|
||||
|
|
|
|||
Loading…
Reference in New Issue