From 1877865b0bb7c85d71c6899aef35d333a157692f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=A3=95=E8=B4=A2?= Date: Tue, 12 Sep 2023 15:20:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=87=E7=BA=A72.0.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mdp/form/service/FormDataService.java | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/mdp-form/src/main/java/com/mdp/form/service/FormDataService.java b/mdp-form/src/main/java/com/mdp/form/service/FormDataService.java index 51c3899..fe102de 100644 --- a/mdp-form/src/main/java/com/mdp/form/service/FormDataService.java +++ b/mdp-form/src/main/java/com/mdp/form/service/FormDataService.java @@ -293,13 +293,16 @@ public class FormDataService extends BaseService { if(FormUtil.TASK_COMPLETED_FORM_DATA_UPDATE.equals(eventName) || FormUtil.TASK_COMPLETED.equals(eventName)) { Map formDatasMap=( Map) flowVars.get("formData"); - if(formDatasMap!=null) { + if(formDatasMap!=null && !formDatasMap.isEmpty()) { FormDataVo formDataOrigin=BaseUtils.fromMap(formDatasMap, FormDataVo.class); String fieldIds= (String) flowVars.get(FormUtil.NEED_UPDATE_FORM_DATA_FIELD_ID_LIST); FormDefVo formDefVo=this.formFieldService.getFormFieldFromCache(formId); boolean needUpdateBizKey=false; Map needUpdateFormDataMap=new HashMap<>(); - if(ObjectTools.isNotEmpty(fieldIds)) { + if(ObjectTools.isEmpty(fieldIds)||"all".equalsIgnoreCase(fieldIds)){ + needUpdateFormDataMap.putAll(formDatasMap); + }else if(!"none".equalsIgnoreCase(fieldIds)) { + for (String fieldId : fieldIds.split(",")) { Object value=formDatasMap.get(fieldId); needUpdateFormDataMap.put(fieldId, value); @@ -307,15 +310,15 @@ public class FormDataService extends BaseService { needUpdateBizKey=true; } } - }else{ - needUpdateFormDataMap.putAll(formDatasMap); } - String bizKey=this.createBizKey(formDefVo.getFormFields(), formDataOrigin); - if(needUpdateBizKey){ - needUpdateFormDataMap.put("bizKey", bizKey); + if(!needUpdateFormDataMap.isEmpty()){ + String bizKey=this.createBizKey(formDefVo.getFormFields(), formDataOrigin); + if(needUpdateBizKey){ + needUpdateFormDataMap.put("bizKey", bizKey); + } + this.updateSomeFieldsByFormDataId(needUpdateFormDataMap); } - needUpdateFormDataMap.put("procInstId", procInstId); - this.updateSomeFieldsByFormDataId(needUpdateFormDataMap); + } }else {