Commit ae196541 by 王志超

feat: 同舟端首次提交不需要填写行动项中的变更完成时间

parent f698c0b9
Pipeline #87980 passed with stages
in 1 minute 29 seconds
...@@ -56,10 +56,11 @@ public class ChangeExecRecordBiz { ...@@ -56,10 +56,11 @@ public class ChangeExecRecordBiz {
/** /**
* 校验行动项的必填字段 * 校验行动项的必填字段
* *
* @param changeExecProjectList 行动项列表 * @param changeExecProjectList 行动项列表
* @param checkTime
*/ */
public void validateChangeExecProjectRequiredFields(List<ChangeExecConfigReq> changeExecProjectList) { public void validateChangeExecProjectRequiredFields(List<ChangeExecConfigReq> changeExecProjectList, boolean checkTime) {
if (CollectionUtils.isEmpty(changeExecProjectList)) { if (CollectionUtils.isEmpty(changeExecProjectList)) {
return; return;
} }
...@@ -74,7 +75,7 @@ public class ChangeExecRecordBiz { ...@@ -74,7 +75,7 @@ public class ChangeExecRecordBiz {
if (StringUtils.isBlank(c.getChangeExecProject())) { if (StringUtils.isBlank(c.getChangeExecProject())) {
throw ExceptionFactory.createBiz(ResponseCode.BAD_REQUEST, "行动项中行动项内容不能为空"); throw ExceptionFactory.createBiz(ResponseCode.BAD_REQUEST, "行动项中行动项内容不能为空");
} }
if (c.getChangeExecFinishTime() == null || c.getChangeExecFinishTime() <= 0) { if (checkTime && (c.getChangeExecFinishTime() == null || c.getChangeExecFinishTime() <= 0)) {
throw ExceptionFactory.createBiz(ResponseCode.BAD_REQUEST, "行动项中变更完成时间不能为空"); throw ExceptionFactory.createBiz(ResponseCode.BAD_REQUEST, "行动项中变更完成时间不能为空");
} }
}); });
......
...@@ -25,7 +25,6 @@ import org.apache.poi.ss.usermodel.Workbook; ...@@ -25,7 +25,6 @@ import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
...@@ -259,8 +258,9 @@ public class ChangeFlowBiz { ...@@ -259,8 +258,9 @@ public class ChangeFlowBiz {
} }
Assert.isTrue(changeExecProject.size() <= appConfig.getChangeExecLimit(), Assert.isTrue(changeExecProject.size() <= appConfig.getChangeExecLimit(),
"变更行动方案配置数超限"); "变更行动方案配置数超限");
// 校验每个行动项的必填字段 // 校验每个行动项的必填字段,首次提交,其他端不会自动提交,行动实践非必填
changeExecRecordBiz.validateChangeExecProjectRequiredFields(changeExecProject); boolean tongzhouCreateSource = CreateSourceEnum.TONG_ZHOU.getType().equals(changeFlowCreateReq.getCreateSource());
changeExecRecordBiz.validateChangeExecProjectRequiredFields(changeExecProject, !tongzhouCreateSource);
// 校验变更行动方案中是否有重复的变更行动人 // 校验变更行动方案中是否有重复的变更行动人
validateDuplicateChangeExecUser(changeExecProject); validateDuplicateChangeExecUser(changeExecProject);
// 结束时间不可晚于第二天定时任务执行时间 // 结束时间不可晚于第二天定时任务执行时间
...@@ -649,7 +649,7 @@ public class ChangeFlowBiz { ...@@ -649,7 +649,7 @@ public class ChangeFlowBiz {
throw ExceptionFactory.createBiz(ResponseCode.BAD_REQUEST, "变更行动方案配置数超限"); throw ExceptionFactory.createBiz(ResponseCode.BAD_REQUEST, "变更行动方案配置数超限");
} }
// 校验每个行动项的必填字段 // 校验每个行动项的必填字段
changeExecRecordBiz.validateChangeExecProjectRequiredFields(changeExecProjectList); changeExecRecordBiz.validateChangeExecProjectRequiredFields(changeExecProjectList, true);
// 校验变更行动方案中是否有重复的变更行动人 // 校验变更行动方案中是否有重复的变更行动人
validateDuplicateChangeExecUser(changeExecProjectList); validateDuplicateChangeExecUser(changeExecProjectList);
changeRecord.setParentChangeClassId(changeFlowSubmitReq.getParentChangeClassId()); changeRecord.setParentChangeClassId(changeFlowSubmitReq.getParentChangeClassId());
......
...@@ -286,7 +286,7 @@ public class ChangeSubFlowBiz { ...@@ -286,7 +286,7 @@ public class ChangeSubFlowBiz {
}); });
// 校验所有行动项的必填字段(使用公共方法) // 校验所有行动项的必填字段(使用公共方法)
changeExecRecordBiz.validateChangeExecProjectRequiredFields(changeExecProjectList); changeExecRecordBiz.validateChangeExecProjectRequiredFields(changeExecProjectList, true);
// 删除子单下所有行动项 // 删除子单下所有行动项
changeFlowExecService.deleteBySubFlowRecordId(subFlowRecord.getId()); changeFlowExecService.deleteBySubFlowRecordId(subFlowRecord.getId());
......
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