Browse Source

实现第三种计算器:根据其他关系计算当前关系

lijie 3 years ago
parent
commit
0d05ba9f8f

+ 2 - 1
dmp-business/dmp-rwd/src/main/java/com/persagy/dmp/rwd/basic/constant/CalRuleTypeEnum.java

@@ -21,7 +21,8 @@ import java.util.stream.Collectors;
 public enum CalRuleTypeEnum {
 
     REL_CHAIN("1","relChainCalculateService"),
-    COORDINATE("2","coordinateCalculateService");
+    COORDINATE("2","coordinateCalculateService"),
+    REL_EXTEND("3","relExtendCalculateService");
 
     CalRuleTypeEnum(String index, String beanName) {
         this.index = index;

+ 22 - 0
dmp-business/dmp-rwd/src/main/java/com/persagy/dmp/rwd/basic/utils/DigitalCommonUtils.java

@@ -2,7 +2,9 @@ package com.persagy.dmp.rwd.basic.utils;
 
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.common.constant.CommonConstant;
+import com.persagy.dmp.common.helper.SpringHelper;
 import com.persagy.dmp.rwd.basic.constant.DigitalObjectType;
 import com.persagy.dmp.rwd.basic.constant.DigitalObjectTypeShort;
 
@@ -70,4 +72,24 @@ public class DigitalCommonUtils {
     public static String getDefaultGraphIdByGraphCode(String graphCode) {
         return StrUtil.format(CommonConstant.DEFAULT_GRAPH_ID_FORMAT,graphCode);
     }
+
+    /***
+     * Description: 计算分页参数
+     * @param requestData : 请求参数
+     * @return : void
+     * @author : lijie
+     * @date :2021/8/30 10:01
+     * Update By lijie 2021/8/30 10:01
+     */
+    public static void computePageParam(RequestData requestData) {
+        if (null==requestData.getPage()){
+            requestData.setPage(1L);
+        }
+        // 默认分页条数,防止大量查询
+        long defaultSize = SpringHelper.getLong(CommonConstant.QUERY_PAGE_SIZE_KEY, CommonConstant.QUERY_DEFAULT_PAGE_SIZE);
+        if (null==requestData.getSize() || requestData.getSize()>defaultSize){
+            requestData.setSize(defaultSize);
+        }
+        requestData.setSkip((requestData.getPage()-1)*requestData.getSize());
+    }
 }

+ 26 - 26
dmp-business/dmp-rwd/src/main/java/com/persagy/dmp/rwd/digital/service/impl/ObjectDigitalServiceImpl.java

@@ -199,7 +199,7 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
     @Override
     public CommonResult<List<ObjectDigital>> queryObjectListSuperiorId(RequestData requestData){
         // 1.计算分页参数
-        computePageParam(requestData);
+        DigitalCommonUtils.computePageParam(requestData);
         // 2.当只有项目id时不查询关系,直接根据项目id筛选所有对象
         if (StrUtil.isBlank(requestData.getBuildingId())
                 && StrUtil.isBlank(requestData.getFloorId())
@@ -223,7 +223,7 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
     @Override
     public CommonResult<List<ObjectDigital>> querySpaceListByFloorIdAndRoomFuncType(RequestData requestData) {
         // 1.计算分页参数
-        computePageParam(requestData);
+        DigitalCommonUtils.computePageParam(requestData);
         // 2.使用Fl2Sp关系查询楼层下的空间
         requestData.setRelCode(DigitalRelCode.FL_2_SP.getIndex());
         requestData.setObjType(DigitalObjectType.SPACE.getIndex());
@@ -242,7 +242,7 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
     @Override
     public CommonResult<List<ObjectDigital>> queryEquipListBySpaceIdAndClassCode(RequestData requestData) {
         // 1.计算分页参数
-        computePageParam(requestData);
+        DigitalCommonUtils.computePageParam(requestData);
         // 2.使用Eq2Sp关系查询楼层下的空间
         requestData.setRelCode(DigitalRelCode.EQ_2_SP.getIndex());
         requestData.setObjType(DigitalObjectType.EQUIPMENT.getIndex());
@@ -261,7 +261,7 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
     @Override
     public CommonResult<List<ObjectDigital>> queryEquipListByClassCode(RequestData requestData) {
         // 1.计算分页参数
-        computePageParam(requestData);
+        DigitalCommonUtils.computePageParam(requestData);
         // 2.使用Fl2Sp关系查询楼层下的空间
         requestData.setObjType(DigitalObjectType.EQUIPMENT.getIndex());
         List<List<ObjectDigital>> dataResult = objectDigitalMapper.queryEquipListByClassCode(requestData);
@@ -278,7 +278,7 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
     @Override
     public CommonResult<List<ObjectDigital>> queryEquipListBySystemId(RequestData requestData) {
         // 1.计算分页参数
-        computePageParam(requestData);
+        DigitalCommonUtils.computePageParam(requestData);
         // 2.使用Sy2Eq关系查询系统下的设备
         requestData.setRelId(requestData.getSystemId());
         requestData.setObjType(DigitalObjectType.EQUIPMENT.getIndex());
@@ -298,7 +298,7 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
     @Override
     public CommonResult<List<ObjectDigital>> querySpaceListByRoomFuncType(RequestData requestData) {
         // 1.计算分页参数
-        computePageParam(requestData);
+        DigitalCommonUtils.computePageParam(requestData);
         // 2.根据空间功能类型查询其下级空间功能类型
         List<CodeTableData> codeTableDatas = CodeTableDataFacade
                 .queryCodeTableDatasByParentCode(AppContext.getContext().getGroupCode(),
@@ -339,7 +339,7 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
     @Override
     public CommonResult<List<ObjectDigital>> queryObjectListByGraphCodeAndRelCode(RequestData requestData) {
         // 1.计算分页参数
-        computePageParam(requestData);
+        DigitalCommonUtils.computePageParam(requestData);
         List<List<ObjectDigital>> objList = objectDigitalMapper.queryObjectListByGraphCodeAndRelCode(requestData);
         return analysisQueryResultList(objList,requestData,false,false);
     }
@@ -423,25 +423,25 @@ public class ObjectDigitalServiceImpl extends ServiceImpl<ObjectDigitalMapper, O
         return ResultHelper.multi(objectDigitals,pageParam.getTotalCount());
     }
 
-    /***
-     * Description: 计算分页参数
-     * @param requestData : 请求参数
-     * @return : void
-     * @author : lijie
-     * @date :2021/8/30 10:01
-     * Update By lijie 2021/8/30 10:01
-     */
-    private void computePageParam(RequestData requestData) {
-        if (null==requestData.getPage()){
-            requestData.setPage(1L);
-        }
-        // 默认分页条数,防止大量查询
-        long defaultSize = SpringHelper.getLong(CommonConstant.QUERY_PAGE_SIZE_KEY, CommonConstant.QUERY_DEFAULT_PAGE_SIZE);
-        if (null==requestData.getSize() || requestData.getSize()>defaultSize){
-            requestData.setSize(defaultSize);
-        }
-        requestData.setSkip((requestData.getPage()-1)*requestData.getSize());
-    }
+//    /***
+//     * Description: 计算分页参数
+//     * @param requestData : 请求参数
+//     * @return : void
+//     * @author : lijie
+//     * @date :2021/8/30 10:01
+//     * Update By lijie 2021/8/30 10:01
+//     */
+//    private void computePageParam(RequestData requestData) {
+//        if (null==requestData.getPage()){
+//            requestData.setPage(1L);
+//        }
+//        // 默认分页条数,防止大量查询
+//        long defaultSize = SpringHelper.getLong(CommonConstant.QUERY_PAGE_SIZE_KEY, CommonConstant.QUERY_DEFAULT_PAGE_SIZE);
+//        if (null==requestData.getSize() || requestData.getSize()>defaultSize){
+//            requestData.setSize(defaultSize);
+//        }
+//        requestData.setSkip((requestData.getPage()-1)*requestData.getSize());
+//    }
 
     /***
      * Description: 根据对象id获取下级关系code数组

+ 192 - 0
dmp-business/dmp-rwd/src/main/java/com/persagy/dmp/rwd/digital/service/impl/RelExtendCalculateServiceImpl.java

@@ -0,0 +1,192 @@
+package com.persagy.dmp.rwd.digital.service.impl;
+
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.ArrayNode;
+import com.persagy.dmp.basic.dto.RelExtendCalDTO;
+import com.persagy.dmp.basic.dto.RelationCalRuleDTO;
+import com.persagy.dmp.basic.model.QueryCriteria;
+import com.persagy.dmp.basic.utils.QueryCriteriaHelper;
+import com.persagy.dmp.common.constant.CommonConstant;
+import com.persagy.dmp.common.helper.SpringHelper;
+import com.persagy.dmp.common.model.entity.BaseEntity;
+import com.persagy.dmp.define.entity.RelationDefine;
+import com.persagy.dmp.digital.entity.ObjectDigital;
+import com.persagy.dmp.digital.entity.ObjectRelation;
+import com.persagy.dmp.rwd.basic.utils.DigitalCommonUtils;
+import com.persagy.dmp.rwd.digital.domain.CalculatingDTO;
+import com.persagy.dmp.rwd.digital.service.CalculateService;
+import com.persagy.dmp.rwd.digital.service.IObjectDigitalService;
+import com.persagy.dmp.rwd.digital.service.IObjectRelationService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.integration.json.JsonToObjectTransformer;
+import org.springframework.stereotype.Service;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+/***
+ * Description: 通过继承某种关系生成的关系
+ * @author : lijie
+ * @date :2021/10/8 19:19
+ * Update By lijie 2021/10/8 19:19
+ */
+@Service
+@Slf4j
+@RequiredArgsConstructor
+public class RelExtendCalculateServiceImpl implements CalculateService {
+
+    private final IObjectDigitalService objectDigitalService;
+    private final IObjectRelationService objectRelationService;
+
+    /***
+     * Description: 通过继承某种关系计算关系
+     * @param calRule : 计算规则
+     * @param calculatingDTO : 参数
+     * @return : void
+     * @author : lijie
+     * @date :2021/9/8 17:14
+     * Update By lijie 2021/9/8 17:14
+     */
+    @Override
+    public void calculateRelation(RelationCalRuleDTO calRule, CalculatingDTO calculatingDTO) {
+        RelExtendCalDTO relExtendCal = calRule.getRelExtendCal();
+        // 1.根据对象类型查询对象,分页查询
+        QueryWrapper<ObjectDigital> queryWrapper = createCommonQueryWrapper(null,calculatingDTO);
+        QueryCriteriaHelper.toWrapper(queryWrapper,relExtendCal.getObjFilterObj(),ObjectDigital.class);
+        int count = objectDigitalService.count(queryWrapper);
+        if (count<=0){
+            return;
+        }
+        // 2.分页处理数据
+        long page=(count%CommonConstant.QUERY_DEFAULT_PAGE_SIZE==0)
+                ?(count/CommonConstant.QUERY_DEFAULT_PAGE_SIZE):(count/CommonConstant.QUERY_DEFAULT_PAGE_SIZE+1);
+        for (long i = 0; i < page; i++) {
+            // 2.1 根据分页查询数据
+            Page<ObjectDigital> pageInfo = new Page<>();
+            pageInfo.setCurrent(i);
+            pageInfo.setSize(CommonConstant.QUERY_DEFAULT_PAGE_SIZE);
+            Page<ObjectDigital> digitalPage = objectDigitalService.page(pageInfo, queryWrapper);
+            if (CollUtil.isEmpty(digitalPage.getRecords())){
+                continue;
+            }
+            List<ObjectDigital> records = digitalPage.getRecords();
+            // 2.2 根据对象id生成关系
+            generateRelationsByObjIds(records
+                    .stream()
+                    .map(BaseEntity::getId)
+                    .collect(Collectors.toSet()),
+                    calculatingDTO,
+                    relExtendCal);
+        }
+    }
+    /***
+     * Description:  根据对象id生成关系
+     * @param objIds : 对象id集合
+     * @param calculatingDTO : 请求参数对象
+     * @param relExtendCal : 关系定义计算器
+     * @return : void
+     * @author : lijie
+     * @date :2021/10/8 20:13
+     * Update By lijie 2021/10/8 20:13
+     */
+    private void generateRelationsByObjIds(Set<String> objIds, CalculatingDTO calculatingDTO,
+                                           RelExtendCalDTO relExtendCal) {
+        // 1.查询继承的关系
+        QueryCriteria relationFilterObj = relExtendCal.getRelationFilterObj();
+        QueryWrapper<ObjectRelation> queryWrapper = createCommonQueryWrapper(null,calculatingDTO);
+        QueryCriteriaHelper.toWrapper(queryWrapper,relationFilterObj,ObjectRelation.class);
+        if (relExtendCal.getObjSide()){
+            queryWrapper.in("relFrom",objIds);
+        }else {
+            queryWrapper.in("relTo",objIds);
+        }
+        List<ObjectRelation> queryObjectRelations = objectRelationService.list(queryWrapper);
+        if (CollUtil.isEmpty(queryObjectRelations)){
+            return;
+        }
+        // 2.根据继承关系生成关系对象
+        // 2.1 生成关系对象
+        List<ObjectRelation> objectRelations = new ArrayList<>();
+        for (ObjectRelation queryObjectRelation : queryObjectRelations) {
+            ObjectRelation objectRelation = new ObjectRelation();
+            objectRelation.setGroupCode(calculatingDTO.getGroupCode());
+            objectRelation.setProjectId(calculatingDTO.getProjectId());
+            objectRelation.setGraphId(DigitalCommonUtils.getDefaultGraphIdByGraphCode(calculatingDTO.getGraphCode()));
+            objectRelation.setGraphCode(calculatingDTO.getGraphCode());
+            objectRelation.setRelCode(calculatingDTO.getRelCode());
+            objectRelation.setObjFrom(queryObjectRelation.getObjFrom());
+            objectRelation.setObjTo(queryObjectRelation.getObjTo());
+            objectRelation.setRelValue(calculatingDTO.getRelValue());
+            objectRelation.setCreateApp(calculatingDTO.getAppId());
+            objectRelation.setUpdateApp(calculatingDTO.getAppId());
+            objectRelation.setCreator(calculatingDTO.getAccountId());
+            objectRelation.setModifier(calculatingDTO.getAccountId());
+            objectRelation.setValid(1);
+            objectRelations.add(objectRelation);
+        }
+        if (CollUtil.isNotEmpty(objectRelations)){
+            // 2.2 删除对应的关系对象
+            deleteRelDataByCondition(calculatingDTO,
+                    objectRelations.stream().map(ObjectRelation::getObjFrom).collect(Collectors.toSet()),
+                    objectRelations.stream().map(ObjectRelation::getObjTo).collect(Collectors.toSet()));
+            // 2.3 保存对象关系
+            objectRelationService.saveBatch(objectRelations);
+        }
+    }
+
+    /***
+     * Description: 根据请求参数和id集合删除关系
+     * @param calculatingDTO : 请求参数
+     * @param fromIds : 来源id集合
+     * @param toIds : 去向id集合
+     * @return : void
+     * @author : lijie
+     * @date :2021/9/11 16:13
+     * Update By lijie 2021/9/11 16:13
+     */
+    private void deleteRelDataByCondition(CalculatingDTO calculatingDTO, Set<String> fromIds, Set<String> toIds) {
+        fromIds.addAll(toIds);
+        QueryWrapper<ObjectRelation> queryWrapper = createCommonQueryWrapper(fromIds,calculatingDTO);
+        queryWrapper.eq(StrUtil.toUnderlineCase(ObjectRelation.GRAPH_CODE_HUM),calculatingDTO.getGraphCode());
+        queryWrapper.eq(StrUtil.toUnderlineCase(ObjectRelation.REL_CODE_HUM),calculatingDTO.getRelCode());
+        if (StrUtil.isNotBlank(calculatingDTO.getRelValue())){
+            queryWrapper.eq(StrUtil.toUnderlineCase(ObjectRelation.REL_VALUE_HUM),calculatingDTO.getRelValue());
+        }
+        objectRelationService.remove(queryWrapper);
+    }
+
+    /***
+     * Description: 创建通用查询条件对象
+     * @param ids : 对象id数组
+     * @param calculatingDTO : 请求参数
+     * @return : com.baomidou.mybatisplus.core.conditions.query.QueryWrapper<com.persagy.dmp.digital.entity.ObjectDigital>
+     * @author : lijie
+     * @date :2021/9/11 15:41
+     * Update By lijie 2021/9/11 15:41
+     */
+    private <T> QueryWrapper<T> createCommonQueryWrapper(Set<String> ids, CalculatingDTO calculatingDTO) {
+        QueryWrapper<T> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq(ObjectDigital.PROP_VALID,Boolean.TRUE);
+        if (CollUtil.isNotEmpty(ids)){
+            queryWrapper.in(ObjectDigital.PROP_ID,ids);
+        }
+        if (StrUtil.isNotBlank(calculatingDTO.getGroupCode())){
+            queryWrapper.eq(StrUtil.toUnderlineCase(CommonConstant.QUERY_GROUPCODE),calculatingDTO.getGroupCode());
+        }
+        if (StrUtil.isNotBlank(calculatingDTO.getProjectId())){
+            queryWrapper.eq(StrUtil.toUnderlineCase(CommonConstant.QUERY_PROJECTID),calculatingDTO.getProjectId());
+        }
+        return queryWrapper;
+    }
+}

+ 31 - 0
dmp-business/dmp-rwd/src/main/java/com/persagy/dmp/rwd/simple/controller/FloorController.java

@@ -0,0 +1,31 @@
+package com.persagy.dmp.rwd.simple.controller;
+
+import com.persagy.dmp.common.constant.CommonConstant;
+import com.persagy.dmp.common.model.response.CommonResult;
+import com.persagy.dmp.common.utils.ParamCheckUtil;
+import com.persagy.dmp.common.utils.ResultHelper;
+import com.persagy.dmp.digital.entity.ObjectDigital;
+import com.persagy.dmp.rwd.simple.service.FloorService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+import java.util.Map;
+
+/***
+ * Description: 简洁API - 楼层查询相关接口
+ * @author : lijie
+ * @date :2021/9/30 16:00
+ * Update By lijie 2021/9/30 16:00
+ */
+@Slf4j
+@RestController
+@RequestMapping("/api/object/floor")
+@RequiredArgsConstructor
+public class FloorController {
+
+}

+ 9 - 0
dmp-business/dmp-rwd/src/main/java/com/persagy/dmp/rwd/simple/service/FloorService.java

@@ -0,0 +1,9 @@
+package com.persagy.dmp.rwd.simple.service;
+/***
+ * Description: 楼层查询业务逻辑类
+ * @author : lijie
+ * @date :2021/9/30 16:20
+ * Update By lijie 2021/9/30 16:20
+ */
+public interface FloorService {
+}

+ 9 - 0
dmp-business/dmp-rwd/src/main/java/com/persagy/dmp/rwd/simple/service/impl/FloorServiceImpl.java

@@ -0,0 +1,9 @@
+package com.persagy.dmp.rwd.simple.service.impl;
+/***
+ * Description: 楼层查询业务逻辑处理类
+ * @author : lijie
+ * @date :2021/9/30 16:21
+ * Update By lijie 2021/9/30 16:21
+ */
+public class FloorServiceImpl {
+}

+ 26 - 0
dmp-comp/dmp-digital-starter/src/main/java/com/persagy/dmp/basic/dto/RelExtendCalDTO.java

@@ -0,0 +1,26 @@
+package com.persagy.dmp.basic.dto;
+
+import com.persagy.dmp.basic.model.QueryCriteria;
+import lombok.Data;
+
+/***
+ * Description: 通过关系继承计算关系的计算器
+ * @author : lijie
+ * @date :2021/10/8 19:36
+ * Update By lijie 2021/10/8 19:36
+ */
+@Data
+public class RelExtendCalDTO {
+    /**对象侧,true-objFrom侧的对象,false-objTo侧的对象*/
+    private Boolean objSide=true;
+    /**对象过滤条件*/
+    private QueryCriteria objFilterObj;
+    /**关系过滤条件*/
+    private QueryCriteria relationFilterObj;
+
+
+
+
+
+
+}

+ 3 - 1
dmp-comp/dmp-digital-starter/src/main/java/com/persagy/dmp/basic/dto/RelationCalRuleDTO.java

@@ -12,12 +12,14 @@ import java.util.List;
  */
 @Data
 public class RelationCalRuleDTO {
-    /**计算规则类型,1-通过关系链计算,2-通过平面图坐标计算*/
+    /**计算规则类型,1-通过关系链计算,2-通过平面图坐标计算,3-通过对象+已存在的关系数据进行计算*/
     private String calRuleType;
     /**计算规则类型为1时的关系计算链*/
     private List<RelationCalDTO> dependentRelChain;
     /**计算规则类型为2时的坐标计算信息点code*/
     private CoordinateCalInfo graphCalInfo;
+    /**计算规则类型为3时的计算器*/
+    private RelExtendCalDTO relExtendCal;
 
 
 

+ 90 - 0
dmp-comp/dmp-digital-starter/src/main/java/com/persagy/dmp/basic/dto/SimpleRequestData.java

@@ -0,0 +1,90 @@
+package com.persagy.dmp.basic.dto;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.baomidou.mybatisplus.core.metadata.OrderItem;
+import com.fasterxml.jackson.annotation.JsonAlias;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.persagy.dmp.basic.validations.QueryClassCodeVadition;
+import com.persagy.dmp.basic.validations.QueryFloorIdVadition;
+import com.persagy.dmp.basic.validations.QuerySpaceIdVadition;
+import com.persagy.dmp.basic.validations.QuerySystemIdVadition;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+import java.util.Set;
+
+/***
+ * @Description: 统一的请求体封装对象
+ * @author: lijie
+ * @Date:2020/7/9 10:35
+ * Update By lijie 2020/7/9 10:35
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class SimpleRequestData {
+
+    /**账号id*/
+    @JsonAlias({"user_id"})
+    @JsonProperty("userId")
+    @JSONField(name = "userId",alternateNames = {"user_id"})
+    private String userId;
+    /** 分页页码,从 1 开始 */
+    @JsonAlias({"page"})
+    @JsonProperty("page")
+    @JSONField(name = "page",alternateNames = {"page"})
+    private Long page;
+    /** 每页行数 */
+    @JsonAlias({"page_size","size","pageSize"})
+    @JsonProperty("size")
+    @JSONField(name = "size",alternateNames = {"page_size","size","pageSize"})
+    private Long size;
+    /** 筛选关键字,本地名称筛选 */
+    @JsonAlias({"keyword"})
+    @JsonProperty("keyword")
+    @JSONField(name = "keyword",alternateNames = {"keyword"})
+    private String keyword;
+    /** 集团编码 */
+    @JsonAlias({"group_code","groupCode"})
+    @JsonProperty("groupCode")
+    @JSONField(name = "groupCode",alternateNames = {"group_code","groupCode"})
+    private String groupCode;
+    /** 项目id */
+    @JsonAlias({"project_id","projectId"})
+    @JsonProperty("projectId")
+    @JSONField(name = "projectId",alternateNames = {"project_id","projectId"})
+    private String projectId;
+    /** 项目id数组 */
+    @JsonAlias({"project_ids","projectIds"})
+    @JsonProperty("projectIds")
+    @JSONField(name = "projectIds",alternateNames = {"project_ids","projectIds"})
+    private Set<String> projectIds;
+    /** 建筑id */
+    @JsonAlias({"building_id","buildingId"})
+    @JsonProperty("buildingId")
+    @JSONField(name = "buildingId",alternateNames = {"building_id","buildingId"})
+    private String buildingId;
+    /** 楼层id */
+    @JsonAlias({"floor_id","floorId"})
+    @JsonProperty("floorId")
+    @JSONField(name = "floorId",alternateNames = {"floor_id","floorId"})
+    @NotBlank(message = "缺少必填项:楼层id", groups = {QueryFloorIdVadition.class})
+    private String floorId;
+    /** 楼层id */
+    @JsonAlias({"space_id","spaceId"})
+    @JsonProperty("spaceId")
+    @JSONField(name = "spaceId",alternateNames = {"space_id","spaceId"})
+    @NotBlank(message = "缺少必填项:空间id", groups = {QuerySpaceIdVadition.class})
+    private String spaceId;
+    /** 系统id */
+    @JsonAlias({"system_id","systemId"})
+    @JsonProperty("systemId")
+    @JSONField(name = "systemId",alternateNames = {"system_id","systemId"})
+    @NotBlank(message = "缺少必填项:空间id", groups = {QuerySystemIdVadition.class})
+    private String systemId;
+}

+ 1 - 1
dmp-comp/dmp-digital-starter/src/main/java/com/persagy/dmp/digital/client/DigitalObjectSimpleClient.java

@@ -1,4 +1,4 @@
-package com.persagy.dmp.digital.client;
+package com.persagy.dmp.simple.client;
 
 import com.persagy.dmp.basic.config.DigitalFeignConfig;
 import com.persagy.dmp.basic.dto.RequestData;

+ 1 - 1
dmp-comp/dmp-digital-starter/src/main/java/com/persagy/dmp/digital/client/DigitalObjectSimpleFacade.java

@@ -1,4 +1,4 @@
-package com.persagy.dmp.digital.client;
+package com.persagy.dmp.simple.client;
 
 import cn.hutool.extra.spring.SpringUtil;
 import com.persagy.dmp.basic.dto.RequestData;