|
@@ -1941,8 +1941,13 @@ private Page<WmTask> getReviewTaskPage(WmSupervisionDto.OnTaskSupervisionPage qu
|
|
|
}
|
|
|
|
|
|
// 执行任务监察
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public Boolean doTaskSupervision(WmSupervisionDto.OnTaskSupervision resource, HnqzUser operator) {
|
|
|
|
|
|
+ if (!resource.getSupervision() && StrUtil.isBlankOrUndefined(resource.getRemarks())) {
|
|
|
+ throw new BizException("监督意见不能为空");
|
|
|
+ }
|
|
|
+
|
|
|
// 监察任务是否有监察记录
|
|
|
WmTaskSupervision supervision =
|
|
|
taskSupervisionService.getSupervisionByTaskId(resource.getTaskId());
|
|
@@ -1962,8 +1967,13 @@ private Page<WmTask> getReviewTaskPage(WmSupervisionDto.OnTaskSupervisionPage qu
|
|
|
|
|
|
resource.setRemarks(remarks);
|
|
|
|
|
|
- taskSupervisionAdviceService.createAdvice(
|
|
|
- supervision.getSupervisionId(), resource, supervision.getRemarks(), operator);
|
|
|
+ try {
|
|
|
+ taskSupervisionAdviceService.createAdvice(
|
|
|
+ supervision.getSupervisionId(), resource, supervision.getRemarks(), operator);
|
|
|
+ } catch (DataIntegrityViolationException e) {
|
|
|
+ log.warn("创建监督意见冲突: " + supervision.getSupervisionId().toString());
|
|
|
+ throw new BizException("创建监督意见冲突", e);
|
|
|
+ }
|
|
|
|
|
|
taskSupervisionService.updateSupervision(
|
|
|
supervision.getSupervisionId(), supervision.getRemarks(), modifiable, supervision.getSupervisionResult(), operator);
|
|
@@ -1978,8 +1988,13 @@ private Page<WmTask> getReviewTaskPage(WmSupervisionDto.OnTaskSupervisionPage qu
|
|
|
taskSupervisionService.updateSupervision(
|
|
|
supervision.getSupervisionId(), remarks, modifiable, resource.getSupervision(), operator);
|
|
|
// 监督员advice作为历史保留
|
|
|
- taskSupervisionAdviceService.createAdvice(
|
|
|
- supervision.getSupervisionId(), resource, null, operator);
|
|
|
+ try {
|
|
|
+ taskSupervisionAdviceService.createAdvice(
|
|
|
+ supervision.getSupervisionId(), resource, null, operator);
|
|
|
+ } catch (DataIntegrityViolationException e) {
|
|
|
+ log.warn("创建监督意见冲突: " + supervision.getSupervisionId().toString());
|
|
|
+ throw new BizException("创建监督意见冲突", e);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -1995,7 +2010,7 @@ private Page<WmTask> getReviewTaskPage(WmSupervisionDto.OnTaskSupervisionPage qu
|
|
|
taskSupervisionAdviceService.createAdvice(
|
|
|
sup.getSupervisionId(), resource, null, operator);
|
|
|
} catch(DataIntegrityViolationException e) {
|
|
|
- throw new BizException("任务已被监督:" + resource.getTaskId().toString());
|
|
|
+ throw new BizException("当前任务已存在监督记录,请刷新页面:" + resource.getTaskId().toString());
|
|
|
}
|
|
|
// 更新监督结果
|
|
|
packageStatusService.updateSupervisionFlag(resource.getPkgId());
|