From cb15256a648106ce0e5c64a303776c1d47704be7 Mon Sep 17 00:00:00 2001 From: sunhongfei01 Date: Thu, 11 Jul 2024 15:44:53 +0800 Subject: [PATCH 1/2] =?UTF-8?q?IDP=E5=90=8C=E6=AD=A5VO=E6=97=B6,=20?= =?UTF-8?q?=E8=8B=A5=E5=AD=90=E5=AF=B9=E8=B1=A1=E5=AD=98=E5=9C=A8,=20?= =?UTF-8?q?=E9=80=92=E5=BD=92=E5=90=8C=E6=AD=A5=E5=AD=90=E5=AF=B9=E8=B1=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../viewmodel/common/ConvertVoUtils.java | 57 +++++++++++++------ 1 file changed, 39 insertions(+), 18 deletions(-) diff --git a/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java b/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java index e79c0cd..9986328 100644 --- a/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java +++ b/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java @@ -1,3 +1,19 @@ +/* + * Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package com.inspur.edp.formserver.viewmodel.common; import com.inspur.edp.bef.bizentity.GspBizEntityObject; @@ -12,6 +28,7 @@ import com.inspur.edp.formserver.viewmodel.GspViewObject; import com.inspur.edp.formserver.viewmodel.collection.ViewObjectCollection; import com.inspur.edp.formserver.viewmodel.common.mapping.GspVoElementSourceType; import com.inspur.edp.formserver.viewmodel.common.mapping.GspVoObjectSourceType; +import io.iec.edp.caf.commons.utils.CollectionUtils; import java.util.ArrayList; import java.util.Iterator; @@ -47,17 +64,23 @@ public class ConvertVoUtils { dealObjectSelfInfo(bizObject, viewObject); //联动中处理 // dealModifyChildObjects(be,bizObject,viewObject); - dealAddChildObjects(bizObject, viewObject); + dealAddChildObjects(be, bizObject, viewObject); } - public static void dealAddChildObjects(GspBizEntityObject bizObject, GspViewObject viewObject) { - if (bizObject == null || bizObject.getContainChildObjects() == null || bizObject.getContainChildObjects().size() == 0) + public static void dealAddChildObjects(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { + if (bizObject == null || CollectionUtils.isEmpty(bizObject.getContainChildObjects())) return; GspObjectCollection beObjectCollection = bizObject.getContainChildObjects(); for (IGspCommonObject beObj : beObjectCollection) { - if (isExistBizChildObject(viewObject, beObj.getID())) + // VO中查询对应子对象 + GspViewObject gspViewObject = existBizChildObject(viewObject, beObj.getID()); + // 若存在对应子对象, 则递归同步 + if (gspViewObject != null) { + dealObject(be, (GspBizEntityObject) beObj, gspViewObject); continue; + } + // 子对象不存在则新增 IGspCommonObject newViewObject = ConvertUtils.toObject(beObj, viewObject.getMapping().getTargetMetadataPkgName(), viewObject.getMapping().getTargetMetadataId(), viewObject.getIDElement().getID(), GspVoObjectSourceType.BeObject); viewObject.getContainChildObjects().add(newViewObject); } @@ -65,19 +88,16 @@ public class ConvertVoUtils { } public static boolean isExistedBizObject(GspBusinessEntity be, String objId) { - GspBizEntityObject bizObj = (GspBizEntityObject) be.getNode(node -> node.getID().equals(objId)); - if (bizObj == null) - return false; - return true; + GspBizEntityObject bizObj = be.getNode(node -> node.getID().equals(objId)); + return bizObj != null; } public static GspBizEntityObject getBizObject(GspBusinessEntity be, String objId) { - GspBizEntityObject bizObj = (GspBizEntityObject) be.getNode(node -> node.getID().equals(objId)); - return bizObj; + return be.getNode(node -> node.getID().equals(objId)); } public static void dealModifyChildObjects(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { - if (viewObject.getContainChildObjects() == null || viewObject.getContainChildObjects().size() == 0) + if (viewObject == null || CollectionUtils.isEmpty(viewObject.getContainChildObjects())) return; ViewObjectCollection childObjList = viewObject.getContainChildObjects(); Iterator iterators = childObjList.iterator(); @@ -86,14 +106,14 @@ public class ConvertVoUtils { if (childObj.getIsVirtual()) { continue; } - String beChildObjId = ((GspViewObject) childObj).getMapping().getTargetObjId(); + String beChildObjId = childObj.getMapping().getTargetObjId(); if (!isExistedBizObject(be, beChildObjId)) { iterators.remove(); continue; } GspBizEntityObject childBizObject = getBizObject(be, beChildObjId); - dealObject(be, childBizObject, (GspViewObject) childObj); + dealObject(be, childBizObject, childObj); } } @@ -105,9 +125,10 @@ public class ConvertVoUtils { } public static void dealBeAddElements(GspBizEntityObject bizObject, GspViewObject viewObject) { - ArrayList bizElemens = bizObject.getContainElements().getAllItems(item -> item.getIsVirtual() == false); - if (bizElemens == null || bizElemens.size() == 0) + ArrayList bizElemens = bizObject.getContainElements().getAllItems(item -> !item.getIsVirtual()); + if (CollectionUtils.isEmpty(bizElemens)) { return; + } for (IGspCommonField beEle : bizElemens) { if (isExistBizElement(viewObject, beEle.getID())) continue; @@ -129,15 +150,15 @@ public class ConvertVoUtils { return false; } - public static boolean isExistBizChildObject(GspViewObject bizObject, String objectId) { + public static GspViewObject existBizChildObject(GspViewObject bizObject, String objectId) { ViewObjectCollection viewObjectCollection = bizObject.getContainChildObjects(); for (IGspCommonObject ele : viewObjectCollection) { String objectIdInView = ((GspViewObject) ele).getMapping().getTargetObjId(); if (objectId.equals(objectIdInView)) { - return true; + return (GspViewObject) ele; } } - return false; + return null; } public static void dealObjectBasicInfo(GspBizEntityObject bizObject, GspViewObject viewObject) { -- Gitee From 7315d5b02c3b6f0e4d99af5e520963cffa357868 Mon Sep 17 00:00:00 2001 From: sunhongfei01 Date: Thu, 11 Jul 2024 16:27:04 +0800 Subject: [PATCH 2/2] =?UTF-8?q?ConvertVoUtils=E9=83=A8=E5=88=86=E6=96=B9?= =?UTF-8?q?=E6=B3=95=E6=94=B9=E4=B8=BA=E7=A7=81=E6=9C=89private?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../viewmodel/common/ConvertVoUtils.java | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java b/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java index 9986328..6864c4e 100644 --- a/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java +++ b/view-object-model/src/main/java/com/inspur/edp/formserver/viewmodel/common/ConvertVoUtils.java @@ -56,7 +56,7 @@ public class ConvertVoUtils { utils.linkActions(model); } - public static void dealObject(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { + private static void dealObject(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { dealObjectBasicInfo(bizObject, viewObject); dealElements(be, bizObject, viewObject); @@ -68,13 +68,13 @@ public class ConvertVoUtils { } - public static void dealAddChildObjects(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { + private static void dealAddChildObjects(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { if (bizObject == null || CollectionUtils.isEmpty(bizObject.getContainChildObjects())) return; GspObjectCollection beObjectCollection = bizObject.getContainChildObjects(); for (IGspCommonObject beObj : beObjectCollection) { // VO中查询对应子对象 - GspViewObject gspViewObject = existBizChildObject(viewObject, beObj.getID()); + GspViewObject gspViewObject = getExistBizChildObject(viewObject, beObj.getID()); // 若存在对应子对象, 则递归同步 if (gspViewObject != null) { dealObject(be, (GspBizEntityObject) beObj, gspViewObject); @@ -87,16 +87,16 @@ public class ConvertVoUtils { } - public static boolean isExistedBizObject(GspBusinessEntity be, String objId) { + private static boolean isExistedBizObject(GspBusinessEntity be, String objId) { GspBizEntityObject bizObj = be.getNode(node -> node.getID().equals(objId)); return bizObj != null; } - public static GspBizEntityObject getBizObject(GspBusinessEntity be, String objId) { + private static GspBizEntityObject getBizObject(GspBusinessEntity be, String objId) { return be.getNode(node -> node.getID().equals(objId)); } - public static void dealModifyChildObjects(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { + private static void dealModifyChildObjects(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { if (viewObject == null || CollectionUtils.isEmpty(viewObject.getContainChildObjects())) return; ViewObjectCollection childObjList = viewObject.getContainChildObjects(); @@ -117,14 +117,14 @@ public class ConvertVoUtils { } } - public static void dealObjectSelfInfo(GspBizEntityObject bizObject, GspViewObject viewObject) { + private static void dealObjectSelfInfo(GspBizEntityObject bizObject, GspViewObject viewObject) { } - public static void dealElements(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { + private static void dealElements(GspBusinessEntity be, GspBizEntityObject bizObject, GspViewObject viewObject) { dealBeAddElements(bizObject, viewObject); } - public static void dealBeAddElements(GspBizEntityObject bizObject, GspViewObject viewObject) { + private static void dealBeAddElements(GspBizEntityObject bizObject, GspViewObject viewObject) { ArrayList bizElemens = bizObject.getContainElements().getAllItems(item -> !item.getIsVirtual()); if (CollectionUtils.isEmpty(bizElemens)) { return; @@ -139,7 +139,7 @@ public class ConvertVoUtils { } - public static boolean isExistBizElement(GspViewObject bizObject, String elementId) { + private static boolean isExistBizElement(GspViewObject bizObject, String elementId) { ArrayList list = bizObject.getAllElementList(false); for (IGspCommonElement ele : list) { String beIdInView = ((GspViewModelElement) ele).getMapping().getTargetElementId(); @@ -150,7 +150,7 @@ public class ConvertVoUtils { return false; } - public static GspViewObject existBizChildObject(GspViewObject bizObject, String objectId) { + private static GspViewObject getExistBizChildObject(GspViewObject bizObject, String objectId) { ViewObjectCollection viewObjectCollection = bizObject.getContainChildObjects(); for (IGspCommonObject ele : viewObjectCollection) { String objectIdInView = ((GspViewObject) ele).getMapping().getTargetObjId(); @@ -161,6 +161,6 @@ public class ConvertVoUtils { return null; } - public static void dealObjectBasicInfo(GspBizEntityObject bizObject, GspViewObject viewObject) { + private static void dealObjectBasicInfo(GspBizEntityObject bizObject, GspViewObject viewObject) { } } -- Gitee