Przeglądaj źródła

feat: 增加表、字段查询方法

huangzqa 2 lat temu
rodzic
commit
42f6d8b042

+ 42 - 0
dcuc-app-api/src/main/java/com/dragoninfo/dcuc/app/facade/sub/IAppDataItemInfoFacade.java

@@ -0,0 +1,42 @@
+package com.dragoninfo.dcuc.app.facade.sub;
+
+import com.dragoninfo.dcuc.app.vo.AppDataItemInfoRespVO;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author huangzqa
+ * @date 2022/10/3
+ */
+@FeignClient(name = "dcuc-app", path = "/dcuc/app/appDataItemInfoFacade")
+public interface IAppDataItemInfoFacade {
+
+    /**
+     * 搜索查询列表
+     *
+     * @param searchDTO 搜索条件
+     * @return 集合
+     */
+    @PostMapping("searchList")
+    List<AppDataItemInfoRespVO> searchList(@RequestBody SearchDTO searchDTO);
+
+    /**
+     * 根据表ID查询数据项信息
+     *
+     * @param tableId 表ID
+     * @return 数据项信息
+     */
+    @GetMapping("selectByTableId")
+    AppDataItemInfoRespVO selectByTableId(@RequestParam("tableId") String tableId);
+
+}

+ 41 - 0
dcuc-app-api/src/main/java/com/dragoninfo/dcuc/app/facade/sub/IAppDataResourceInfoFacade.java

@@ -0,0 +1,41 @@
+package com.dragoninfo.dcuc.app.facade.sub;
+
+import com.dragoninfo.dcuc.app.vo.AppDataResourceInfoRespVO;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.List;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author huangzqa
+ * @date 2022/10/3
+ */
+@FeignClient(name = "dcuc-app", path = "/dcuc/app/appDataResourceInfoFacade")
+public interface IAppDataResourceInfoFacade {
+    /**
+     * 根据查询条件查询列表
+     *
+     * @param searchDTO 查询条件
+     * @return 数据资源列表
+     */
+    @PostMapping("searchList")
+    List<AppDataResourceInfoRespVO> searchList(@RequestBody SearchDTO searchDTO);
+
+    /**
+     * 根据数据资源标识符查询数据资源
+     *
+     * @param resourceCode 数据资源标识符
+     * @return 数据资源
+     */
+    @GetMapping("findByResourceCode")
+    AppDataResourceInfoRespVO findByResourceCode(@RequestParam("resourceCode") String resourceCode);
+
+}

+ 111 - 0
dcuc-app-model/src/main/java/com/dragoninfo/dcuc/app/vo/AppDataItemInfoRespVO.java

@@ -0,0 +1,111 @@
+package com.dragoninfo.dcuc.app.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author huangzqa
+ * @date 2022/10/3
+ */
+@Data
+public class AppDataItemInfoRespVO {
+    /**
+     * 编号
+     */
+    private String id;
+    /**
+     * 数据资源ID
+     */
+    private String resourceTableId;
+    /**
+     * 数据项ID
+     */
+    private String columnId;
+    /**
+     * 字段英文名称
+     */
+    private String columnCode;
+    /**
+     * 字段中文名称
+     */
+    private String columnName;
+    /**
+     * 字段分类代码
+     */
+    private String columnClassify;
+    /**
+     * 字段分类名称
+     */
+    private String columnClassifyName;
+    /**
+     * 数据安全级别代码
+     */
+    private String dataSecurityLevel;
+    /**
+     * 数据安全级别名称
+     */
+    private String dataSecurityLevelName;
+    /**
+     * 数据项编号
+     */
+    private String dataItemNo;
+    /**
+     * 数据项标识符
+     */
+    private String dataItemCode;
+    /**
+     * 数据项类型代码
+     */
+    private String dataSourceItemType;
+    /**
+     * 数据项类型名称
+     */
+    private String dataSourceItemTypeName;
+    /**
+     * 数据元内部标识符
+     */
+    private String dataElementCode;
+    /**
+     * 数据项集数据项编号
+     */
+    private String standardDataItemNo;
+    /**
+     * 数据项集数据项中文名
+     */
+    private String standardDataItemName;
+    /**
+     * 数据项集数据项英文名
+     */
+    private String standardDataItemCode;
+    /**
+     * 数据项集数据项数据类型
+     */
+    private String standardDataItemType;
+    /**
+     * 数据项集数据项数据长度
+     */
+    private String standardDataItemLength;
+    /**
+     * 备注
+     */
+    private String remark;
+    /**
+     * 是否失效,true/false
+     */
+    private String invalidStatus;
+    /**
+     * 注册时间,格式:yyyy-MM-dd HH:mm:ss
+     */
+    private Date columnRegisterTime;
+    /**
+     * 更新时间,格式:yyyy-MM-dd HH:mm:ss
+     */
+    private Date columnUpdateTime;
+}

+ 187 - 0
dcuc-app-model/src/main/java/com/dragoninfo/dcuc/app/vo/AppDataResourceInfoRespVO.java

@@ -0,0 +1,187 @@
+package com.dragoninfo.dcuc.app.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author huangzqa
+ * @date 2022/10/3
+ */
+@Data
+public class AppDataResourceInfoRespVO {
+    /**
+     * 编号
+     */
+    private String id;
+    /**
+     * 数据对象ID
+     */
+    private String dataObjectId;
+    /**
+     * 数据资源标识符
+     */
+    private String resourceCode;
+    /**
+     * 资源名称
+     */
+    private String resourceName;
+    /**
+     * 数据资源版本号
+     */
+    private String resourceVersion;
+    /**
+     * 数据资源描述
+     */
+    private String resourceDescription;
+    /**
+     * 数据对象英文名
+     */
+    private String tableCode;
+    /**
+     * 数据对象中文名
+     */
+    private String tableName;
+    /**
+     * 数据资源目录编号
+     */
+    private String catalogCod;
+    /**
+     * 应用系统编号
+     */
+    private String applicationCode;
+    /**
+     * 应用系统名称
+     */
+    private String applicationCodeName;
+    /**
+     * 一级数据来源编号
+     */
+    private String dataSourceOneCode;
+    /**
+     * 一级数据来源名称
+     */
+    private String dataSourceOneName;
+    /**
+     * 二级数据来源编号
+     */
+    private String dataSourceTwoCode;
+    /**
+     * 二级数据来源名称
+     */
+    private String dataSourceTwoName;
+    /**
+     * 数据分级代码
+     */
+    private String dataClassification;
+    /**
+     * 数据分级名称
+     */
+    private String dataClassificationName;
+    /**
+     * 标准数据项集编码
+     */
+    private String standardDataCode;
+    /**
+     * 标准数据项集名称
+     */
+    private String standardDataName;
+    /**
+     * 数据组织一级分类代码
+     */
+    private String dataClassifyOneCode;
+    /**
+     * 数据组织一级分类名称
+     */
+    private String dataClassifyOneName;
+    /**
+     * 数据组织二级分类代码
+     */
+    private String dataClassifyTwoCode;
+    /**
+     * 数据组织二级分类名称
+     */
+    private String dataClassifyTwoName;
+    /**
+     * 数据标签1代码
+     */
+    private String dataLabelOneCode;
+    /**
+     * 数据标签1名称
+     */
+    private String dataLabelOneName;
+    /**
+     * 数据标签2代码
+     */
+    private String dataLabelTwoCode;
+    /**
+     * 数据标签2名称
+     */
+    private String dataLabelTwoName;
+    /**
+     * 数据标签3代码
+     */
+    private String dataLabelThreeCode;
+    /**
+     * 数据标签3名称
+     */
+    private String dataLabelThreeName;
+    /**
+     * 数据标签4代码
+     */
+    private String dataLabelFourCode;
+    /**
+     * 数据标签4名称
+     */
+    private String dataLabelFourName;
+    /**
+     * 数据标签5代码
+     */
+    private String dataLabelFiveCode;
+    /**
+     * 数据标签5名称
+     */
+    private String dataLabelFiveName;
+    /**
+     * 数据资源服务编号
+     */
+    private String resourceServiceCode;
+    /**
+     * 资源状态代码
+     */
+    private String resourceStatus;
+    /**
+     * 资源状态名称1启动0停用2注销
+     */
+    private String resourceStatusName;
+    /**
+     * 注册时间,格式:yyyy-MM-dd HH:mm:ss
+     */
+    private Date resourceRegisterTime;
+    /**
+     * 更新时间,格式:yyyy-MM-dd HH:mm:ss
+     */
+    private Date resourceUpdateTime;
+    /**
+     * 数据资源事权单位编号
+     */
+    private String authorityDeptCode;
+    /**
+     * 数据资源事权单位名称
+     */
+    private String authorityDeptName;
+    /**
+     * 数据资源管理单位编号
+     */
+    private String manageDeptCode;
+    /**
+     * 数据资源管理单位名称
+     */
+    private String manageDeptName;
+}

+ 2 - 2
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/business/impl/DataCatalogBusinessImpl.java

@@ -91,9 +91,9 @@ public class DataCatalogBusinessImpl implements IDataCatalogBusiness {
                 List<AppDataItemInfo> updateDataItemInfoList = new ArrayList<>();
 
                 for (DataResourceInfoDTO dataResourceInfoDTO : dataList) {
-                    String dataObjectId = dataResourceInfoDTO.getDataObjectId();
+                    String resourceCode = dataResourceInfoDTO.getResourceCode();
 
-                    AppDataResourceInfo appDataResourceInfo = appDataResourceInfoService.selectByDataObjectId(dataObjectId);
+                    AppDataResourceInfo appDataResourceInfo = appDataResourceInfoService.findByResourceCode(resourceCode);
                     if (appDataResourceInfo == null) {
                         appDataResourceInfo = dataResourceInfoDTO.parseToAppDataResourceInfo();
                         String uuid = UUIDUtils.getUUID();

+ 55 - 0
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/facade/sub/AppDataItemInfoFacade.java

@@ -0,0 +1,55 @@
+package com.dragoninfo.dcuc.app.facade.sub;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.dragoninfo.dcuc.app.entity.sub.AppDataItemInfo;
+import com.dragoninfo.dcuc.app.entity.sub.AppDataResourceInfo;
+import com.dragoninfo.dcuc.app.service.sub.IAppDataItemInfoService;
+import com.dragoninfo.dcuc.app.vo.AppDataItemInfoRespVO;
+import com.dragoninfo.dcuc.app.vo.AppDataResourceInfoRespVO;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import com.dragonsoft.duceap.core.search.Searchable;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author huangzqa
+ * @date 2022/10/3
+ */
+@RestController
+@RequestMapping(value = "/dcuc/app/appDataItemInfoFacade")
+public class AppDataItemInfoFacade implements IAppDataItemInfoFacade {
+
+    @Autowired
+    private IAppDataItemInfoService appDataItemInfoService;
+
+    @Override
+    public List<AppDataItemInfoRespVO> searchList(SearchDTO searchDTO) {
+        List<AppDataItemInfo> dataItemInfoList = appDataItemInfoService.searchList(Searchable.toSearchable(searchDTO));
+        List<AppDataItemInfoRespVO> respVOList = new ArrayList<>(dataItemInfoList.size());
+        for (AppDataItemInfo appDataItemInfo : dataItemInfoList) {
+            AppDataItemInfoRespVO respVO = new AppDataItemInfoRespVO();
+            BeanUtil.copyProperties(appDataItemInfo, respVO);
+            respVOList.add(respVO);
+        }
+        return respVOList;
+    }
+
+    @Override
+    public AppDataItemInfoRespVO selectByTableId(String tableId) {
+        AppDataItemInfo appDataItemInfo = appDataItemInfoService.selectByTableId(tableId);
+        if (appDataItemInfo == null) {
+            return null;
+        }
+        AppDataItemInfoRespVO respVO = new AppDataItemInfoRespVO();
+        BeanUtil.copyProperties(appDataItemInfo, respVO);
+        return respVO;
+    }
+}

+ 53 - 0
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/facade/sub/AppDataResourceInfoFacade.java

@@ -0,0 +1,53 @@
+package com.dragoninfo.dcuc.app.facade.sub;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.dragoninfo.dcuc.app.entity.sub.AppDataResourceInfo;
+import com.dragoninfo.dcuc.app.service.sub.IAppDataResourceInfoService;
+import com.dragoninfo.dcuc.app.vo.AppDataResourceInfoRespVO;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import com.dragonsoft.duceap.core.search.Searchable;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author huangzqa
+ * @date 2022/10/3
+ */
+@RestController
+@RequestMapping(value = "/dcuc/app/appDataResourceInfoFacade")
+public class AppDataResourceInfoFacade implements IAppDataResourceInfoFacade {
+
+    @Autowired
+    private IAppDataResourceInfoService appDataResourceInfoService;
+
+    @Override
+    public List<AppDataResourceInfoRespVO> searchList(SearchDTO searchDTO) {
+        List<AppDataResourceInfo> resourceInfoList = appDataResourceInfoService.searchList(Searchable.toSearchable(searchDTO));
+        List<AppDataResourceInfoRespVO> respVOList = new ArrayList<>(resourceInfoList.size());
+        for (AppDataResourceInfo appDataResourceInfo : resourceInfoList) {
+            AppDataResourceInfoRespVO appDataResourceInfoRespVO = new AppDataResourceInfoRespVO();
+            BeanUtil.copyProperties(appDataResourceInfo, appDataResourceInfoRespVO);
+            respVOList.add(appDataResourceInfoRespVO);
+        }
+        return respVOList;
+    }
+
+    @Override
+    public AppDataResourceInfoRespVO findByResourceCode(String resourceCode) {
+        AppDataResourceInfo appDataResourceInfo = appDataResourceInfoService.findByResourceCode(resourceCode);
+        if (appDataResourceInfo == null) {
+            return null;
+        }
+        AppDataResourceInfoRespVO appDataResourceInfoRespVO = new AppDataResourceInfoRespVO();
+        BeanUtil.copyProperties(appDataResourceInfo, appDataResourceInfoRespVO);
+        return appDataResourceInfoRespVO;
+    }
+}

+ 26 - 2
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/service/sub/IAppDataItemInfoService.java

@@ -1,6 +1,13 @@
 package com.dragoninfo.dcuc.app.service.sub;
 
 import com.dragoninfo.dcuc.app.entity.sub.AppDataItemInfo;
+import com.dragoninfo.dcuc.app.vo.AppDataItemInfoRespVO;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import com.dragonsoft.duceap.core.search.Searchable;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import java.util.List;
 
@@ -29,10 +36,10 @@ public interface IAppDataItemInfoService {
     /**
      * 根据字段ID查询
      *
-     * @param columnId 字段ID
+     * @param dataItemNo 数据项标识
      * @return 字段信息
      */
-    AppDataItemInfo selectByDataItemNo(String columnId);
+    AppDataItemInfo selectByDataItemNo(String dataItemNo);
 
     /**
      * 更新所有
@@ -40,4 +47,21 @@ public interface IAppDataItemInfoService {
      * @param updateDataItemInfoList 集合
      */
     void updateAll(List<AppDataItemInfo> updateDataItemInfoList);
+
+    /**
+     * 搜索查询列表
+     *
+     * @param searchable 搜索条件
+     * @return 集合
+     */
+    List<AppDataItemInfo> searchList(Searchable searchable);
+
+    /**
+     * 根据表ID查询数据项信息
+     *
+     * @param tableId 表ID
+     * @return 数据项信息
+     */
+    AppDataItemInfo selectByTableId(String tableId);
+
 }

+ 23 - 7
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/service/sub/IAppDataResourceInfoService.java

@@ -1,6 +1,13 @@
 package com.dragoninfo.dcuc.app.service.sub;
 
 import com.dragoninfo.dcuc.app.entity.sub.AppDataResourceInfo;
+import com.dragoninfo.dcuc.app.vo.AppDataResourceInfoRespVO;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import com.dragonsoft.duceap.core.search.Searchable;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import java.util.List;
 
@@ -26,17 +33,26 @@ public interface IAppDataResourceInfoService {
     void deleteAll();
 
     /**
-     * 根据数据对象ID 查询是否存在
+     * 更新所有
      *
-     * @param dataObjectId 数据对象ID
-     * @return 数据资源信息
+     * @param updateResourceInfoList 集合
      */
-    AppDataResourceInfo selectByDataObjectId(String dataObjectId);
+    void updateAll(List<AppDataResourceInfo> updateResourceInfoList);
+
 
     /**
-     * 更新所有
+     * 根据查询条件查询列表
      *
-     * @param updateResourceInfoList 集合
+     * @param searchable 查询条件
+     * @return 数据资源列表
      */
-    void updateAll(List<AppDataResourceInfo> updateResourceInfoList);
+    List<AppDataResourceInfo> searchList(Searchable searchable);
+
+    /**
+     * 根据数据资源标识符查询数据资源
+     *
+     * @param resourceCode 数据资源标识符
+     * @return 数据资源
+     */
+    AppDataResourceInfo findByResourceCode(String resourceCode);
 }

+ 14 - 0
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/service/sub/impl/AppDataItemInfoServiceImpl.java

@@ -7,6 +7,8 @@ import com.dragoninfo.dcuc.app.entity.sub.AppDataItemInfo;
 import com.dragoninfo.dcuc.app.mapper.sub.AppDataItemInfoMapper;
 import com.dragoninfo.dcuc.app.service.sub.IAppDataItemInfoService;
 import com.dragoninfo.dcuc.app.service.sub.IAppDataResourceInfoService;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import com.dragonsoft.duceap.core.search.Searchable;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -55,4 +57,16 @@ public class AppDataItemInfoServiceImpl implements IAppDataItemInfoService {
             appDataItemInfoMapper.updateById(appDataItemInfo);
         }
     }
+
+    @Override
+    public List<AppDataItemInfo> searchList(Searchable searchable) {
+        return appDataItemInfoMapper.findBySearchable(searchable);
+    }
+
+    @Override
+    public AppDataItemInfo selectByTableId(String tableId) {
+        LambdaQueryWrapper<AppDataItemInfo> lambdaQueryWrapper = Wrappers.lambdaQuery();
+        lambdaQueryWrapper.eq(AppDataItemInfo::getResourceTableId, tableId);
+        return appDataItemInfoMapper.selectOne(lambdaQueryWrapper);
+    }
 }

+ 14 - 6
dcuc-app-service/src/main/java/com/dragoninfo/dcuc/app/service/sub/impl/AppDataResourceInfoServiceImpl.java

@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.dragoninfo.dcuc.app.entity.sub.AppDataResourceInfo;
 import com.dragoninfo.dcuc.app.mapper.sub.AppDataResourceInfoMapper;
 import com.dragoninfo.dcuc.app.service.sub.IAppDataResourceInfoService;
+import com.dragonsoft.duceap.base.entity.search.SearchDTO;
+import com.dragonsoft.duceap.core.search.Searchable;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -39,12 +41,6 @@ public class AppDataResourceInfoServiceImpl implements IAppDataResourceInfoServi
         appDataResourceInfoMapper.delete(Wrappers.emptyWrapper());
     }
 
-    @Override
-    public AppDataResourceInfo selectByDataObjectId(String dataObjectId) {
-        LambdaQueryWrapper<AppDataResourceInfo> queryWrapper = Wrappers.lambdaQuery();
-        queryWrapper.eq(AppDataResourceInfo::getDataObjectId, dataObjectId);
-        return appDataResourceInfoMapper.selectOne(queryWrapper);
-    }
 
     @Transactional(rollbackFor = Throwable.class)
     @Override
@@ -53,4 +49,16 @@ public class AppDataResourceInfoServiceImpl implements IAppDataResourceInfoServi
             appDataResourceInfoMapper.updateById(appDataResourceInfo);
         }
     }
+
+    @Override
+    public List<AppDataResourceInfo> searchList(Searchable searchable) {
+        return appDataResourceInfoMapper.findBySearchable(searchable);
+    }
+
+    @Override
+    public AppDataResourceInfo findByResourceCode(String resourceCode) {
+        LambdaQueryWrapper<AppDataResourceInfo> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(AppDataResourceInfo::getResourceCode, resourceCode);
+        return appDataResourceInfoMapper.selectOne(queryWrapper);
+    }
 }