123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 |
- package com.persagy.proxy.adm.service;
- import java.util.List;
- import java.util.Map;
- import java.util.Set;
- import com.alibaba.fastjson.JSONObject;
- import com.fasterxml.jackson.core.JsonProcessingException;
- import com.fasterxml.jackson.databind.node.ObjectNode;
- import com.persagy.dmp.basic.model.QueryCriteria;
- import com.persagy.dmp.define.entity.GraphDefine;
- import com.persagy.dmp.define.entity.ObjectInfoDefine;
- import com.persagy.dmp.define.entity.ObjectTypeDefine;
- import com.persagy.dmp.define.entity.RelationDefine;
- import com.persagy.dmp.digital.entity.ObjectRelation;
- /**
- * 报表/模板下载
- *
- * @version 1.0.0
- * @company persagy
- * @author zhangqiankun
- * @date 2021年8月31日 下午4:42:51
- */
- public interface IRelationReportService {
-
- /**
- * 获取class类型定义数据
- *
- * @param groupCode
- * @param projectId
- * @param classCode
- * @param objTypes
- * @param ascOrder
- * @return
- */
- List<ObjectTypeDefine> queryClassList(String groupCode, String projectId, String classCode, Set<String> objTypes, String ascOrder);
-
- /**
- * 根据信息点统计对象个数
- *
- * @param groupCode
- * @param classCodes
- * @param objTypes
- * @param groups
- * @return
- */
- List<Map<String,Object>> queryObjectCountByObjInfos(String groupCode, Set<String> classCodes, Set<String> objTypes, List<String> groups);
-
- /**
- * 根据条件查询对应的图类型数据
- *
- * @param groupCode
- * @param projectId
- * @param graphCode
- */
- List<GraphDefine> getGraphDefine(String groupCode, String projectId, String graphCode);
-
- /**
- * 根据条件查询对应的边类型数据
- *
- * @param groupCode
- * @param projectId
- * @param graphCode
- * @param relCode
- */
- List<RelationDefine> getRelationDefine(String groupCode, String projectId, String graphCode, String relCode);
- /**
- * 获取所有的项目计算二级树数据
- *
- * @param groupCode
- * @param projectId
- * @return
- */
- List<JSONObject> getAllRelationProjectCalTree(String groupCode, String projectId);
-
- /**
- * 获取所有的项目计算数据
- *
- * @param queryCriteria
- * @param groupCode
- * @param projectId
- * @return
- */
- List<JSONObject> getAllRelationProjectCal(QueryCriteria queryCriteria, String groupCode, String projectId);
-
- /**
- * 获取项目计算关系
- *
- * @param groupCode
- * @param projectId
- * @param relType ADM-类型
- * @return
- */
- JSONObject getRelationProjectCal(String groupCode, String projectId, String relType);
-
- /**
- * 获取项目计算关系
- *
- * @param groupCode
- * @param projectId
- * @param graphCode
- * @param relCode
- * @param zoneType
- * @return
- */
- ObjectNode getRelationProjectCal(String groupCode, String projectId, String graphCode, String relCode, String zoneType);
-
- /**
- * 统计某类型下的关系数量
- *
- * @param groupCode
- * @param projectId
- * @param graphCode
- * @param relCode
- * @param zoneType 业务分区类型
- */
- long countRelationObject(String groupCode, String projectId, String graphCode, String relCode, String zoneType);
-
- /**
- * 统计某类型下的对象数量
- *
- * @param groupCode
- * @param projectId
- * @param classCode
- * @param objType
- * @return
- */
- long countObject(String groupCode, String projectId, String classCode, String objType);
-
- /**
- * 获取指定对象信息
- *
- * @param groupCode
- * @param projectId
- * @param id
- * @return 不会返回null
- */
- ObjectNode getObjectNode(String groupCode, String projectId, String id);
-
- /**
- * 获取指定对象信息
- * <p>定制接口,不建议兼容额外的处理方案</p>
- *
- * @param groupCode
- * @param projectId
- * @param objType
- * @param code ADM-中的code类型,请参考{@link com.persagy.proxy.adm.strategy.relationdata.QueryRelationObjectStrategy#OBJNAME_2_TYPE}
- * @param value 属性值
- * @return
- */
- List<ObjectNode> findObjectNodes(String groupCode, String projectId, String objType, String code, String value);
-
- /**
- * 获取对象,通过关系对象的id和rel_code
- *
- * @param groupCode
- * @param projectId
- * @param graphCode
- * @param relCode
- * @param objFrom 与objTo不可同时存在
- * @param objTo 与objFrom不可同时存在
- * @return 不会返回null
- */
- ObjectNode getObjectByCodeAndId(String groupCode, String projectId, String graphCode, String relCode, String objFrom, String objTo);
-
- /**
- * 获取原始的对象数据
- *
- * @param groupCode
- * @param projectId
- * @param id
- * @param classCode
- * @param objType
- * @param ascOrder
- * @return
- */
- List<ObjectNode> queryObjects(String groupCode, String projectId, String id, String classCode, String objType, String ascOrder);
-
- /**
- * 获取原始的对象关系数据
- *
- * @param groupCode
- * @param projectId
- * @param graphCode
- * @param relCode
- * @return
- */
- List<ObjectRelation> findRelationObjects(String groupCode, String projectId, String graphCode, String relCode);
-
- /**
- * 查询信息点定义
- *
- * @param groupCode
- * @param projectId
- * @param classCodes
- * @param code
- * @param category
- * @return
- */
- List<ObjectInfoDefine> queryFunidList(String groupCode, String projectId, Set<String> classCodes, String code, String category);
- /**
- * 查询关系总览(空表,先插入)
- * @param content: 模糊查询卡片名称关键字
- */
- JSONObject overview(String content) throws JsonProcessingException;
-
- /**
- * 初始化项目关系计算数据
- *
- * @param groupCode: 集团编码
- * @param projectId: 项目id
- * @return
- */
- boolean createRelationProjectCal(String groupCode, String projectId) throws JsonProcessingException;
- }
|