diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java index 0cc405a7..462eab8f 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java @@ -36,6 +36,8 @@ import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import java.util.*; +import java.util.function.Consumer; +import java.util.function.Function; @Slf4j @Service @@ -152,6 +154,27 @@ public class ActFlowCommonService { return processApprovalRecordService.getByTaskId(taskId); } + public void setListAttribute(String instanceId, String variableName, Consumer> setter, Function> converter) { + Object value = runtimeService.getVariable(instanceId, variableName); + if (value != null) { + setter.accept(converter.apply(value)); + } + } + + public void setStringAttribute(String instanceId, String variableName, Consumer setter, Function converter) { + Object value = runtimeService.getVariable(instanceId, variableName); + if (value != null) { + setter.accept(converter.apply(value)); + } + } + + public void setStringBooleanAttribute(String instanceId, String variableName, Consumer setter, Function converter) { + Object value = runtimeService.getVariable(instanceId, variableName); + if (value != null) { + setter.accept(converter.apply(value)); + } + } + /** * 完成提交任务 */ diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java index 6b91b827..a3eb88dd 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java @@ -52,8 +52,6 @@ import javax.annotation.Resource; import java.io.IOException; import java.io.InputStream; import java.util.*; -import java.util.function.Consumer; -import java.util.function.Function; import java.util.stream.Collectors; import static com.jero.modules.activiti.common.ActivitiCommon.*; @@ -223,11 +221,6 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl scc.setCountersignUser(String.join(",", (List) v)), v -> (List) v); -// setListAttribute(mainInstanceId, MANAGER, scc::setManager, Object::toString); -// setListAttribute(mainInstanceId, SENIOR_MANAGER, scc::setSeniorManager, Object::toString); - } - - private void setListAttribute(String instanceId, String variableName, Consumer> setter, Function> converter) { - Object value = runtimeService.getVariable(instanceId, variableName); - if (value != null) { - setter.accept(converter.apply(value)); - } - } - - private void setStringAttribute(String instanceId, String variableName, Consumer setter, Function converter) { - Object value = runtimeService.getVariable(instanceId, variableName); - if (value != null) { - setter.accept(converter.apply(value)); - } + actFlowCommonService.setStringBooleanAttribute(mainInstanceId, DISTRIBUTE, scc::setDistributeFlag, value -> (boolean) value ? YesOrNoEnum.YES.getValue() : YesOrNoEnum.NO.getValue()); + actFlowCommonService.setStringAttribute(mainInstanceId, DEPT_USER, scc::setDeptUser, Object::toString); + actFlowCommonService.setStringAttribute(mainInstanceId, MAIN_CHECK_USER, scc::setMainCheckUser, Object::toString); + actFlowCommonService.setListAttribute(mainInstanceId, COUNTERSIGN_USER_LIST, v -> scc.setCountersignUser(String.join(",", v)), v -> (List) v); + actFlowCommonService.setListAttribute(mainInstanceId, MANAGER_LIST, v -> scc.setManager(String.join(",", v)), v -> (List) v); + actFlowCommonService.setListAttribute(mainInstanceId, SENIOR_MANAGER_LIST, v -> scc.setSeniorManager(String.join(",", v)), v -> (List) v); } private void setDesignerEngineerEvaluationHandleData(ProcessSccVO processSccVO, String mainInstanceId, String processInstanceId) {