Merge remote-tracking branch 'origin/dev-tmp1' into dev-tmp1
commit
b7510bd4fd
|
|
@ -116,7 +116,7 @@ public class ClassManagementServiceImpl extends ServiceImpl<ClassManagementMappe
|
|||
if (entity.getShuffleQuestions() == null) {
|
||||
entity.setShuffleQuestions(0);
|
||||
}
|
||||
entity.setClassCode("C" + entity.getId());
|
||||
entity.setClassCode("C" + UUID.randomUUID().toString().replace("-", ""));
|
||||
this.save(entity);
|
||||
return entity.getId();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -344,9 +344,11 @@ public class EvalProjectExecutor implements EvalProjectApi {
|
|||
|
||||
@Override
|
||||
public SingleResponse<EvalProjectCO> update(EvalProjectAddCmd cmd) {
|
||||
evalProjectDomainService.assertControlledNumberUnique(cmd.getControlledNumber(), cmd.getId());
|
||||
evalProjectMapper.update(new LambdaUpdateWrapper<EvalProjectDO>()
|
||||
.eq(EvalProjectDO::getId, cmd.getId())
|
||||
.set(EvalProjectDO::getParticipantsJson, JSON.toJSONString(cmd.getParticipants())));
|
||||
.set(EvalProjectDO::getParticipantsJson, JSON.toJSONString(cmd.getParticipants()))
|
||||
.set(EvalProjectDO::getControlledNumber, cmd.getControlledNumber()));
|
||||
return SingleResponse.success(null);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -23,6 +23,9 @@ public class EvalProjectCO {
|
|||
@ApiModelProperty("项目编号")
|
||||
private String projectNo;
|
||||
|
||||
@ApiModelProperty("受控编号")
|
||||
private String controlledNumber;
|
||||
|
||||
@ApiModelProperty("项目名称")
|
||||
private String projectName;
|
||||
|
||||
|
|
|
|||
|
|
@ -21,6 +21,9 @@ public class EvalProjectAddCmd {
|
|||
@ApiModelProperty(value = "项目名称", required = true)
|
||||
private String projectName;
|
||||
|
||||
@ApiModelProperty("受控编号")
|
||||
private String controlledNumber;
|
||||
|
||||
@NotBlank(message = "评价类型不能为空")
|
||||
@ApiModelProperty(value = "评价类型编码:PRE/ACCEPT/STATUS", required = true, example = "PRE")
|
||||
private String evalTypeCode;
|
||||
|
|
|
|||
|
|
@ -12,6 +12,8 @@ public class EvalProjectEntity {
|
|||
private Long orgId;
|
||||
private Long customerId;
|
||||
private String projectNo;
|
||||
/** 受控编号 */
|
||||
private String controlledNumber;
|
||||
private String projectName;
|
||||
private String evalTypeCode;
|
||||
private String customerContactName;
|
||||
|
|
|
|||
|
|
@ -162,6 +162,7 @@ public enum ErrorCode {
|
|||
EVAL_PROJECT_NO_GENERATE_FAILED("06-02-002", "项目编号生成失败"),
|
||||
EVAL_PROJECT_CANCELLED("06-02-003", "项目已作废不可修改"),
|
||||
EVAL_PROJECT_ARCHIVED("06-02-004", "项目已归档不可修改"),
|
||||
EVAL_PROJECT_CONTROLLED_NUMBER_DUPLICATE("06-02-005", "受控编号已存在"),
|
||||
|
||||
// ---- 八节点与签字(phase2 P2) ----
|
||||
EVAL_NODE_FORBIDDEN("06-05-001", "无权限操作该节点"),
|
||||
|
|
|
|||
|
|
@ -23,4 +23,6 @@ public interface EvalProjectGateway {
|
|||
long countByOrgIdAndProgressStatus(Long orgId, String progressStatus);
|
||||
|
||||
void editProjectNode(Long projectId, String val);
|
||||
|
||||
EvalProjectEntity findByControlledNumber(String controlledNumber);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import org.qinan.safetyeval.domain.gateway.EvalProjectGateway;
|
|||
import org.qinan.safetyeval.domain.query.EvalProjectQuery;
|
||||
import org.qinan.safetyeval.domain.query.PageResult;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
|
|
@ -25,9 +26,20 @@ public class EvalProjectDomainService {
|
|||
if (entity.getArchiveFlag() == null) {
|
||||
entity.setArchiveFlag(0);
|
||||
}
|
||||
assertControlledNumberUnique(entity.getControlledNumber(), null);
|
||||
return evalProjectGateway.save(entity);
|
||||
}
|
||||
|
||||
public void assertControlledNumberUnique(String controlledNumber, Long excludeId) {
|
||||
if (!StringUtils.hasText(controlledNumber)) {
|
||||
return;
|
||||
}
|
||||
EvalProjectEntity found = evalProjectGateway.findByControlledNumber(controlledNumber);
|
||||
if (found != null && (excludeId == null || !excludeId.equals(found.getId()))) {
|
||||
throw new BizException(ErrorCode.EVAL_PROJECT_CONTROLLED_NUMBER_DUPLICATE);
|
||||
}
|
||||
}
|
||||
|
||||
public EvalProjectEntity get(Long id) {
|
||||
EvalProjectEntity existing = evalProjectGateway.get(id);
|
||||
if (existing == null) {
|
||||
|
|
|
|||
|
|
@ -14,6 +14,8 @@ public class EvalProjectDO {
|
|||
private Long orgId;
|
||||
private Long customerId;
|
||||
private String projectNo;
|
||||
/** 受控编号 */
|
||||
private String controlledNumber;
|
||||
private String projectName;
|
||||
private String evalTypeCode;
|
||||
private String customerContactName;
|
||||
|
|
|
|||
|
|
@ -129,6 +129,19 @@ public class EvalProjectGatewayImpl implements EvalProjectGateway {
|
|||
return evalProjectMapper.selectCount(wrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public EvalProjectEntity findByControlledNumber(String controlledNumber) {
|
||||
if (!StringUtils.hasText(controlledNumber)) {
|
||||
return null;
|
||||
}
|
||||
LambdaQueryWrapper<EvalProjectDO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(EvalProjectDO::getDeleteEnum, "false")
|
||||
.eq(EvalProjectDO::getControlledNumber, controlledNumber.trim())
|
||||
.last("limit 1");
|
||||
EvalProjectDO dataObject = evalProjectMapper.selectOne(wrapper);
|
||||
return dataObject == null ? null : evalProjectDoConvertor.convertDoToE(dataObject);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void editProjectNode(Long projectId, String val) {
|
||||
EvalProjectDO evalProjectDO = evalProjectMapper.selectById(projectId);
|
||||
|
|
|
|||
Loading…
Reference in New Issue