|
@@ -8,9 +8,14 @@ import com.persagy.dmp.basic.model.QueryCriteria;
|
|
|
import com.persagy.dmp.basic.utils.JsonNodeUtils;
|
|
|
import com.persagy.dmp.common.constant.ResponseCode;
|
|
|
import com.persagy.dmp.common.model.entity.BaseEntity;
|
|
|
+import com.persagy.dmp.define.client.DigitalGraphDefineFacade;
|
|
|
+import com.persagy.dmp.define.client.DigitalRelationDefineFacade;
|
|
|
+import com.persagy.dmp.define.entity.GraphDefine;
|
|
|
+import com.persagy.dmp.define.entity.RelationDefine;
|
|
|
import com.persagy.dmp.digital.client.DigitalRelationFacade;
|
|
|
import com.persagy.dmp.digital.entity.ObjectRelation;
|
|
|
import com.persagy.dmp.rwd.migrate.entity.SyncData;
|
|
|
+import com.persagy.proxy.adm.constant.AdmCommonConstant;
|
|
|
import com.persagy.proxy.adm.request.AdmResponse;
|
|
|
import com.persagy.proxy.common.entity.InstanceUrlParam;
|
|
|
import com.persagy.proxy.migration.constant.MiGrationRelCode;
|
|
@@ -230,6 +235,7 @@ public class ObjectRelationMigration extends MigrationAbstractServiceImpl<Object
|
|
|
dataMigrationExcels.addAll(processDataForExcel(updateData, MigrationType.UPDATE.getCode()));
|
|
|
}
|
|
|
}
|
|
|
+ processExcelDatas(context.getGroupCode(),context.getProjectId(), dataMigrationExcels);
|
|
|
return dataMigrationExcels;
|
|
|
}
|
|
|
|
|
@@ -381,6 +387,8 @@ public class ObjectRelationMigration extends MigrationAbstractServiceImpl<Object
|
|
|
excel.setObjFrom(objectRelation.getObjFrom());
|
|
|
excel.setObjTo(objectRelation.getObjTo());
|
|
|
excel.setType(type);
|
|
|
+ excel.setCreateTime(objectRelation.getCreationTime().toString());
|
|
|
+ excel.setUpdateTime(objectRelation.getModifiedTime().toString());
|
|
|
dataMigrationExcels.add(excel);
|
|
|
}
|
|
|
return dataMigrationExcels;
|
|
@@ -417,4 +425,59 @@ public class ObjectRelationMigration extends MigrationAbstractServiceImpl<Object
|
|
|
}
|
|
|
return syncDataList;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ /***
|
|
|
+ * Description: 查询所有关系类型
|
|
|
+
|
|
|
+ * @return : java.util.Map<java.lang.String,com.persagy.dmp.define.entity.RelationDefine>
|
|
|
+ * @author : lijie
|
|
|
+ * @date :2021/10/15 11:22
|
|
|
+ * Update By lijie 2021/10/15 11:22
|
|
|
+ */
|
|
|
+ private Map<String, RelationDefine> queryAllRelationDefineMap(String groupCode, String projectId) {
|
|
|
+ List<RelationDefine> relationDefines = DigitalRelationDefineFacade.query(groupCode, projectId,
|
|
|
+ AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, new QueryCriteria());
|
|
|
+ if (CollUtil.isEmpty(relationDefines)){
|
|
|
+ return new HashMap<>();
|
|
|
+ }
|
|
|
+ return relationDefines.stream()
|
|
|
+ .collect(Collectors.toMap(relationDefine ->
|
|
|
+ relationDefine.getGraphCode() + StrUtil.DASHED + relationDefine.getCode(),
|
|
|
+ relationDefine -> relationDefine, (k1, k2) -> k1));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 将excel中的relcode graphCode 翻译成name组合
|
|
|
+ * @param groupCode
|
|
|
+ * @param projectId
|
|
|
+ * @param excelList
|
|
|
+ */
|
|
|
+ private void processExcelDatas(String groupCode, String projectId, List<DataMigrationExcel> excelList){
|
|
|
+ // 1.获取所有的一级,二级图类型定义
|
|
|
+ QueryCriteria parentCriteria = new QueryCriteria();
|
|
|
+ List<GraphDefine> graphDefines = DigitalGraphDefineFacade.query(groupCode, projectId,
|
|
|
+ AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, parentCriteria);
|
|
|
+ if (!CollUtil.isEmpty(graphDefines)){
|
|
|
+ // 2.查询所有的边类型定义
|
|
|
+ Map<String, RelationDefine> relationDefineMap = queryAllRelationDefineMap(groupCode,projectId);
|
|
|
+ Map<String, GraphDefine> graphDefineMap = CollUtil.fieldValueMap(graphDefines, "code");
|
|
|
+ for(DataMigrationExcel excel : excelList){
|
|
|
+ String code = excel.getCode();
|
|
|
+ if(StrUtil.isEmpty(code) || !code.contains(StrUtil.DASHED)){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ //excel.setCode(String.join(StrUtil.DASHED, objectRelation.getGraphCode(), objectRelation.getRelCode()));
|
|
|
+ String tempName = null;
|
|
|
+ String graphName = graphDefineMap.get(code.split(StrUtil.DASHED)[0]).getName();
|
|
|
+ String relName = relationDefineMap.get(code).getName();
|
|
|
+ if(StrUtil.isAllNotEmpty(graphName, relName)){
|
|
|
+ tempName = String.join(StrUtil.DASHED, graphName, relName);
|
|
|
+ }
|
|
|
+ excel.setName(tempName==null?"":tempName);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
}
|