diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/OtherDraftUserVO.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/OtherDraftUserVO.java index 2748c20c..12466f19 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/OtherDraftUserVO.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/entity/vo/OtherDraftUserVO.java @@ -40,6 +40,9 @@ public class OtherDraftUserVO { @ApiModelProperty(value = "1:不能操作显示/2:可以上传并且将起草人改为‘我’/3:可以上传起草人字段维持不变") private String operateType; + @ApiModelProperty(value = "绑定的taskId") + private String taskId; + public String getISODeadlineTime() { SimpleDateFormat isoFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); return isoFormat.format(this.deadline); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java index e5a2cd1d..e76db80f 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esRevision/service/impl/EsRevisionServiceImpl.java @@ -305,17 +305,30 @@ public class EsRevisionServiceImpl extends ServiceImpl {o.setOperateType(null);}); for (OtherDraftUserVO o : otherDraftUserVOS) { - if (o.getUser().equals(curUserId)) { - o.setOperateType(OperateTypeEnum.UPLOAD_AND_CHANGE_DRAFT_USER.getValue()); + if (findFlag) { + o.setOperateType(OperateTypeEnum.CANNOT_OPERATE.getValue()); continue; } if (o.getUser().equals(userId)) { - o.setOperateType(OperateTypeEnum.UPLOAD.getValue()); - continue; + if (StrUtil.isBlank(o.getTaskId())) { + o.setOperateType(OperateTypeEnum.UPLOAD.getValue()); + o.setTaskId(taskId); + findFlag = true; + } else { + if (!taskId.equals(o.getTaskId())) { + o.setOperateType(OperateTypeEnum.CANNOT_OPERATE.getValue()); + } + } + } else { + o.setOperateType(OperateTypeEnum.CANNOT_OPERATE.getValue()); } - o.setOperateType(OperateTypeEnum.CANNOT_OPERATE.getValue()); } + data.setOtherDraftUserVOS(otherDraftUserVOS); + data.setOtherDrafterUploadFileJson(otherDraftUserVOS); + updateById(data); break; case CONTACT_USER_DISTRIBUTE: if (pass) {