diff --git a/srt-cloud-data-governance/pom.xml b/srt-cloud-data-governance/pom.xml index 974b825..068eff2 100644 --- a/srt-cloud-data-governance/pom.xml +++ b/srt-cloud-data-governance/pom.xml @@ -12,31 +12,11 @@ jar - net.srt srt-cloud-api 2.0.0 - - org.mapstruct - mapstruct - 1.5.0.Beta1 - - - org.mapstruct - mapstruct-processor - 1.5.0.Beta1 - - - org.mapstruct - mapstruct-jdk8 - 1.5.0.Beta1 - org.springframework.boot @@ -48,24 +28,15 @@ 2.0.0 - net.srt - srt-cloud-dbswitch - 2.0.0 + org.springframework.cloud + spring-cloud-starter-bootstrap - - jsqlparser - com.github.jsqlparser - spring-boot-starter-logging org.springframework.boot - - org.springframework.cloud - spring-cloud-starter-bootstrap - com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery @@ -74,24 +45,33 @@ com.alibaba.cloud spring-cloud-starter-alibaba-nacos-config + + com.github.whvcse + easy-captcha + com.github.xiaoymin knife4j-springdoc-ui - org.quartz-scheduler - quartz + com.aliyun.oss + aliyun-sdk-oss - org.springframework.boot - spring-boot-starter-test - test - - - spring-boot-starter-logging - org.springframework.boot - - + com.qcloud + cos_api + + + com.qiniu + qiniu-java-sdk + + + com.huaweicloud + esdk-obs-java-bundle + + + io.minio + minio diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/DatastandardController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/DatastandardController.java index 8dfe1e7..5ea19c6 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/controller/DatastandardController.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/DatastandardController.java @@ -8,8 +8,10 @@ import net.srt.framework.common.page.PageResult; import net.srt.framework.common.utils.Result; import net.srt.query.StandardManagementQuery; import net.srt.service.DatastandardService; +import net.srt.vo.MetamodelPropertyVO; import net.srt.vo.StandardManagementVo; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -44,6 +46,7 @@ public class DatastandardController { return Result.ok(DatastandardConvert.INSTANCE.convert(entity)); } + @GetMapping("/table-code/list") @Operation(summary = "查询表编码") public Result> getTableCode(){ @@ -59,6 +62,23 @@ public class DatastandardController { return Result.ok(); } + @PutMapping + @Operation(summary = "修改") + public Result update(@RequestBody @Valid DatastandardEntity datastandardEntity){ + datastandardService.update1(datastandardEntity); + return Result.ok(); + } + + @DeleteMapping + @Operation(summary = "删除") + public Result delete(@RequestBody List idList) { + datastandardService.delete(idList); + return Result.ok(); + } + + + + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/MetadataCollectController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetadataCollectController.java new file mode 100644 index 0000000..cc9bfb2 --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetadataCollectController.java @@ -0,0 +1,16 @@ +package net.srt.controller; + +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.AllArgsConstructor; +import net.srt.service.MetadataCollectService; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("metadata-collect") +@Tag(name = "数据治理-元数据采集") +@AllArgsConstructor +public class MetadataCollectController { + private final MetadataCollectService metadataCollectService; + +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelController.java index 2ed2a7f..7786527 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelController.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelController.java @@ -21,14 +21,25 @@ import java.util.List; public class MetamodelController { private final MetamodelService metamodelService; + /** + * 获取元模型列表 + */ @GetMapping("list-tree") @Operation(summary = "获取元模型列表") public Result> listTree(){ + // 调用metamodelService的listTree方法获取元模型列表 List TreeNodeVos = metamodelService.listTree(); + // 将元模型列表返回给客户端 return Result.ok(TreeNodeVos); } + + /** + * 根据ID获取信息 + * @param id ID值 + * @return 信息的Result对象 + */ @GetMapping("{id}") @Operation(summary = "信息") public Result get(@PathVariable("id") Long id){ @@ -36,6 +47,13 @@ public class MetamodelController { return Result.ok(MetamodelConvert.INSTANCE.convert(entity)); } + + /** + * 保存功能 + * + * @param vo 要保存的信息 + * @return 保存结果 + */ @PostMapping @Operation(summary = "保存") public Result save(@RequestBody MetamodelVO vo){ @@ -43,6 +61,13 @@ public class MetamodelController { return Result.ok(); } + + /** + * 修改操作 + * + * @param vo 修改参数 + * @return 修改结果 + */ @PutMapping @Operation(summary = "修改") public Result update(@RequestBody MetamodelVO vo){ @@ -50,10 +75,17 @@ public class MetamodelController { return Result.ok(); } + + /** + * 根据指定的ID删除数据 + * @param id 要删除的数据的ID + * @return 删除结果 + */ @DeleteMapping("/{id}") @Operation(summary = "删除") public Result delete(@PathVariable Long id){ metamodelService.delete(id); return Result.ok(); } + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelPropertyController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelPropertyController.java index d6e9a5d..fedf12f 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelPropertyController.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetamodelPropertyController.java @@ -22,6 +22,11 @@ import java.util.List; public class MetamodelPropertyController { private final MetamodelPropertyService metamodelPropertyService; + /** + * 根据id获取属性列表 + * @param id 属性id + * @return 属性列表 + */ @GetMapping("/properties/{metaModelId}") @Operation(summary = "根据id获取属性列表") public Result> properties(@PathVariable Long id){ @@ -29,6 +34,12 @@ public class MetamodelPropertyController { return Result.ok(properties); } + + /** + * 分页查询属性 + * @param query 属性查询对象 + * @return 分页结果 + */ @GetMapping("page") @Operation(summary = "分页") public Result> page(@Valid MetamodelpropertyQuery query){ @@ -36,6 +47,13 @@ public class MetamodelPropertyController { return Result.ok(page); } + + /** + * 根据ID获取信息 + * + * @param id ID值 + * @return 信息的Result对象 + */ @GetMapping("/{id}") @Operation(summary = "信息") public Result get(@PathVariable("id") Long id){ @@ -43,6 +61,13 @@ public class MetamodelPropertyController { return Result.ok(MetamodelPropertyConvert.INSTANCE.convert(entity)); } + + /** + * 保存功能 + * + * @param vo 要保存的数据 + * @return 保存结果 + */ @PostMapping @Operation(summary = "保存") public Result save(@RequestBody MetamodelPropertyVO vo){ @@ -50,6 +75,13 @@ public class MetamodelPropertyController { return Result.ok(); } + + /** + * 修改 + * + * @param vo 要修改的数据 + * @return 修改结果 + */ @PutMapping @Operation(summary = "修改") public Result update(@RequestBody MetamodelPropertyVO vo){ @@ -57,10 +89,18 @@ public class MetamodelPropertyController { return Result.ok(); } + + /** + * 删除功能 + * + * @param idList 要删除的数据ID列表 + * @return 删除结果 + */ @DeleteMapping @Operation(summary = "删除") public Result delete(@RequestBody List idList){ metamodelPropertyService.delete(idList); return Result.ok(); } + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityRuleController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityRuleController.java index 87bd0b2..2e0fec1 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityRuleController.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityRuleController.java @@ -11,7 +11,6 @@ import net.srt.framework.common.utils.Result; import net.srt.query.QualityRuleQuery; import net.srt.service.QualityRuleService; import net.srt.vo.QualityRuleVo; -import oracle.ucp.proxy.annotation.Post; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/StandardController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/StandardController.java index 705e1db..954d424 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/controller/StandardController.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/StandardController.java @@ -2,16 +2,15 @@ package net.srt.controller; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import net.srt.entity.DatastandardEntity; import net.srt.entity.StandardEntity; import net.srt.framework.common.utils.BeanUtil; import net.srt.framework.common.utils.Result; import net.srt.framework.common.utils.TreeNodeVo; import net.srt.service.StandardService; +import net.srt.vo.StandardManagementVo; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -44,5 +43,24 @@ public class StandardController { return Result.ok(nodeVo); } + @PostMapping + @Operation(summary = "保存") + public Result save(@RequestBody StandardEntity standardEntity){ + standardService.save1(standardEntity); + return Result.ok(); + } + + @PutMapping + @Operation(summary = "修改") + public Result update(@RequestBody StandardEntity standardEntity){ + standardService.update1(standardEntity); + return Result.ok(); + } + @DeleteMapping("/id") + @Operation(summary = "删除") + public Result del(@PathVariable Long id){ + standardService.del(id); + return Result.ok(); + } } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/convert/DatastandardConvert.java b/srt-cloud-data-governance/src/main/java/net/srt/convert/DatastandardConvert.java new file mode 100644 index 0000000..374ff18 --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/convert/DatastandardConvert.java @@ -0,0 +1,26 @@ +package net.srt.convert; + +import net.srt.entity.DatastandardEntity; +import net.srt.vo.StandardManagementVo; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.convert + * @Author: jpz + * @CreateTime: 2023/12/20 19:50 + */ + +@Mapper +public interface DatastandardConvert { + DatastandardConvert INSTANCE = Mappers.getMapper(DatastandardConvert.class); + + + List convertList(List list); + + StandardManagementVo convert(DatastandardEntity entity); + +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityRuleConvert.java b/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityRuleConvert.java index 770d9a3..0f0b5b3 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityRuleConvert.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityRuleConvert.java @@ -4,7 +4,6 @@ import net.srt.entity.QualityQueryEntity; import net.srt.vo.QualityRuleVo; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; -import org.springframework.stereotype.Component; import java.util.List; @@ -16,6 +15,8 @@ import java.util.List; */ @Mapper public interface QualityRuleConvert { + + QualityRuleConvert INSTANCE = Mappers.getMapper(QualityRuleConvert.class); diff --git a/srt-cloud-data-governance/src/main/java/net/srt/dao/DatastandardDao.java b/srt-cloud-data-governance/src/main/java/net/srt/dao/DatastandardDao.java new file mode 100644 index 0000000..9e18dd1 --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/dao/DatastandardDao.java @@ -0,0 +1,15 @@ +package net.srt.dao; + +import net.srt.entity.DatastandardEntity; +import net.srt.framework.mybatis.dao.BaseDao; +import org.apache.ibatis.annotations.Mapper; + +/** + * @ClassName : DatastandardDao + * @Description : + * @Author : FJJ + * @Date: 2023-12-21 11:09 + */ +@Mapper +public interface DatastandardDao extends BaseDao { +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/dao/MetadataCollectDao.java b/srt-cloud-data-governance/src/main/java/net/srt/dao/MetadataCollectDao.java new file mode 100644 index 0000000..119a96e --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/dao/MetadataCollectDao.java @@ -0,0 +1,9 @@ +package net.srt.dao; + +import net.srt.entity.MetadataCollectEntity; +import net.srt.framework.mybatis.dao.BaseDao; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface MetadataCollectDao extends BaseDao { +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/dao/MetamodelPropertyDao.java b/srt-cloud-data-governance/src/main/java/net/srt/dao/MetamodelPropertyDao.java index 78fd2cd..053c6da 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/dao/MetamodelPropertyDao.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/dao/MetamodelPropertyDao.java @@ -2,7 +2,7 @@ package net.srt.dao; import net.srt.entity.MetamodelPropertyEntity; import net.srt.framework.mybatis.dao.BaseDao; -import org.mapstruct.Mapper; +import org.apache.ibatis.annotations.Mapper; @Mapper public interface MetamodelPropertyDao extends BaseDao { diff --git a/srt-cloud-data-governance/src/main/java/net/srt/dao/StandardDao.java b/srt-cloud-data-governance/src/main/java/net/srt/dao/StandardDao.java index b2dcb0f..adc6acc 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/dao/StandardDao.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/dao/StandardDao.java @@ -12,4 +12,5 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface StandardDao extends BaseMapper { + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/entity/DatastandardEntity.java b/srt-cloud-data-governance/src/main/java/net/srt/entity/DatastandardEntity.java new file mode 100644 index 0000000..cf01e07 --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/entity/DatastandardEntity.java @@ -0,0 +1,39 @@ +package net.srt.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import net.srt.framework.mybatis.entity.BaseEntity; + +/** + * @ClassName : DatastandardEntity + * @Description : + * @Author : FJJ + * @Date: 2023-12-21 11:09 + */ +@EqualsAndHashCode(callSuper = false) +@Data +@TableName("standard_management") +public class DatastandardEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + @TableId("id") + private Long id; + private Integer categoryId; + private String engName; + private String cnName; + private Integer codeNum; + private String dataType; + private Integer dataLength; + private Integer dataPrecision; + private Integer nullable; + private Integer standardCodeId; + private Integer type; + private String note; + private Integer projectId; + private Integer status; + private Integer version; + private Integer deleted; + private Integer ifStandardRel; + +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/entity/MetadataCollectEntity.java b/srt-cloud-data-governance/src/main/java/net/srt/entity/MetadataCollectEntity.java new file mode 100644 index 0000000..f556d7d --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/entity/MetadataCollectEntity.java @@ -0,0 +1,14 @@ +package net.srt.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import net.srt.framework.mybatis.entity.BaseEntity; + +@EqualsAndHashCode(callSuper = false) +@Data +@TableName("data_governance_metadata_collect") +public class MetadataCollectEntity extends BaseEntity { + +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/entity/MetamodelPropertyEntity.java b/srt-cloud-data-governance/src/main/java/net/srt/entity/MetamodelPropertyEntity.java index b474e78..a30e7e1 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/entity/MetamodelPropertyEntity.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/entity/MetamodelPropertyEntity.java @@ -3,11 +3,12 @@ package net.srt.entity; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import lombok.EqualsAndHashCode; +import net.srt.framework.mybatis.entity.BaseEntity; @EqualsAndHashCode(callSuper = false) @Data @TableName("data_governance_metamodel_property") -public class MetamodelPropertyEntity { +public class MetamodelPropertyEntity extends BaseEntity { /** * 元模型id diff --git a/srt-cloud-data-governance/src/main/java/net/srt/entity/QualityQueryEntity.java b/srt-cloud-data-governance/src/main/java/net/srt/entity/QualityQueryEntity.java index f205541..067eaae 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/entity/QualityQueryEntity.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/entity/QualityQueryEntity.java @@ -3,8 +3,11 @@ package net.srt.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler; +import lombok.AllArgsConstructor; import lombok.Data; import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; import net.srt.framework.mybatis.entity.BaseEntity; import net.srt.vo.QualityParam; @@ -16,9 +19,12 @@ import java.util.List; * @Author: jpz * @CreateTime: 2023/12/20 19:51 */ +@EqualsAndHashCode(callSuper = true) +@SuperBuilder @Data -@EqualsAndHashCode(callSuper = false) -@TableName(value = "data_governance_quality_rule",autoResultMap=true) +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "data_governance_quality_rule") public class QualityQueryEntity extends BaseEntity { /** * 名称 diff --git a/srt-cloud-data-governance/src/main/java/net/srt/entity/StandardEntity.java b/srt-cloud-data-governance/src/main/java/net/srt/entity/StandardEntity.java new file mode 100644 index 0000000..b13e9a4 --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/entity/StandardEntity.java @@ -0,0 +1,57 @@ +package net.srt.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; +import net.srt.framework.mybatis.entity.BaseEntity; + +/** + * 文件分组表 + * + * @author zrx 985134801@qq.com + * @since 1.0.0 2022-11-12 + */ +@EqualsAndHashCode(callSuper = true) +@SuperBuilder +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName("data_file_category") +public class StandardEntity extends BaseEntity { + + /** + * 父级id(顶级为0) + */ + private Long parentId; + + /** + * 分组名称 + */ + private String name; + + /** + * 分组序号 + */ + private Integer orderNo; + + /** + * 描述 + */ + private String description; + + /** + * 分组路径 + */ + private String path; + + private Integer type; + + /** + * 项目id + */ + private Long projectId; + +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/DatastandardService.java b/srt-cloud-data-governance/src/main/java/net/srt/service/DatastandardService.java new file mode 100644 index 0000000..300930a --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/DatastandardService.java @@ -0,0 +1,27 @@ +package net.srt.service; + +import net.srt.entity.DatastandardEntity; +import net.srt.framework.common.page.PageResult; +import net.srt.framework.mybatis.service.BaseService; +import net.srt.query.StandardManagementQuery; +import net.srt.vo.StandardManagementVo; +import org.mybatis.spring.annotation.MapperScan; + +import java.util.List; + +/** + * @ClassName : DatastandardService + * @Description : + * @Author : FJJ + * @Date: 2023-12-21 11:21 + */ +@MapperScan("net.srt.service.DatastandardService") +public interface DatastandardService extends BaseService { + PageResult page(StandardManagementQuery query); + + List getTableCode(); + + void update1(DatastandardEntity datastandardEntity); + + void delete(List idList); +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/MetadataCollectService.java b/srt-cloud-data-governance/src/main/java/net/srt/service/MetadataCollectService.java new file mode 100644 index 0000000..d894ed2 --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/MetadataCollectService.java @@ -0,0 +1,8 @@ +package net.srt.service; + +import net.srt.entity.MetadataCollectEntity; +import net.srt.framework.mybatis.service.BaseService; + +public interface MetadataCollectService extends BaseService { + +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/StandardService.java b/srt-cloud-data-governance/src/main/java/net/srt/service/StandardService.java index ee69e54..f099771 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/service/StandardService.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/StandardService.java @@ -15,4 +15,11 @@ import java.util.List; public interface StandardService extends BaseService { List listTree(); + + void save1(StandardEntity standardEntity); + + void update1(StandardEntity standardEntity); + + void del(Long id); + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/DatastandardServiceImpl.java b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/DatastandardServiceImpl.java new file mode 100644 index 0000000..67c390a --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/DatastandardServiceImpl.java @@ -0,0 +1,73 @@ +package net.srt.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.AllArgsConstructor; +import net.srt.convert.DatastandardConvert; +import net.srt.convert.MetamodelConvert; +import net.srt.dao.DatastandardDao; +import net.srt.entity.DatastandardEntity; +import net.srt.entity.MetamodelEntity; +import net.srt.framework.common.page.PageResult; +import net.srt.framework.mybatis.service.impl.BaseServiceImpl; +import net.srt.query.StandardManagementQuery; +import net.srt.service.DatastandardService; +import net.srt.vo.StandardManagementVo; +import org.springframework.stereotype.Service; +import srt.cloud.framework.dbswitch.common.util.StringUtil; + +import java.util.List; + +/** + * @ClassName : DatastandardServiceImpl + * @Description : + * @Author : FJJ + * @Date: 2023-12-21 11:21 + */ +@Service +@AllArgsConstructor +public class DatastandardServiceImpl extends BaseServiceImpl implements DatastandardService { + private final DatastandardDao datastandardDao; + @Override + public PageResult page(StandardManagementQuery query) { + IPage page = baseMapper.selectPage(getPage(query), getWrapper(query)); + return new PageResult<>(DatastandardConvert.INSTANCE.convertList(page.getRecords()), page.getTotal()); + } + + @Override + public List getTableCode() { + List list= datastandardDao.selectList(Wrappers.lambdaQuery()); + return list; + } + + @Override + public void update1(DatastandardEntity datastandardEntity) { + StandardManagementVo standardManagementVo=DatastandardConvert.INSTANCE.convert(datastandardEntity); + standardManagementVo.setProjectId(getProjectId()); + updateById(datastandardEntity); + } + + @Override + public void delete(List idList) { + removeByIds(idList); + //删除 + for (Long id : idList) { + LambdaQueryWrapper wrapper=Wrappers.lambdaQuery(); + wrapper.eq(DatastandardEntity::getCategoryId,id); + datastandardDao.delete(wrapper); + + } + } + + + private LambdaQueryWrapper getWrapper(StandardManagementQuery query) { + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + wrapper.like(StringUtil.isNotBlank(query.getCnName()), DatastandardEntity::getCnName, query.getCnName()); + wrapper.like(StringUtil.isNotBlank(query.getEngName()), DatastandardEntity::getEngName, query.getEngName()); + wrapper.eq(query.getCategoryId() != null, DatastandardEntity::getCategoryId, query.getCategoryId()); + dataScopeWithOrgId(wrapper); + return wrapper; + } + +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetadataCollectServiceImpl.java b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetadataCollectServiceImpl.java new file mode 100644 index 0000000..6e74a43 --- /dev/null +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetadataCollectServiceImpl.java @@ -0,0 +1,13 @@ +package net.srt.service.impl; + +import lombok.AllArgsConstructor; +import net.srt.dao.MetadataCollectDao; +import net.srt.entity.MetadataCollectEntity; +import net.srt.framework.mybatis.service.impl.BaseServiceImpl; +import net.srt.service.MetadataCollectService; +import org.springframework.stereotype.Service; + +@Service +@AllArgsConstructor +public class MetadataCollectServiceImpl extends BaseServiceImpl implements MetadataCollectService { +} diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelPropertyServiceImpl.java b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelPropertyServiceImpl.java index c7c125c..8479efd 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelPropertyServiceImpl.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelPropertyServiceImpl.java @@ -13,6 +13,7 @@ import net.srt.query.MetamodelpropertyQuery; import net.srt.service.MetamodelPropertyService; import net.srt.vo.MetamodelPropertyVO; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import srt.cloud.framework.dbswitch.common.util.StringUtil; import java.util.List; @@ -20,45 +21,92 @@ import java.util.List; @Service public class MetamodelPropertyServiceImpl extends BaseServiceImpl implements MetamodelPropertyService { + /** + * 根据元模型ID获取属性列表 + * + * @param id 元模型ID + * @return 属性列表 + */ @Override public List properties(Long id) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(MetamodelPropertyEntity::getMetamodelId, id).orderByAsc(MetamodelPropertyEntity::getOrderNo); + wrapper.eq(MetamodelPropertyEntity::getMetamodelId, id) + .orderByAsc(MetamodelPropertyEntity::getOrderNo); return MetamodelPropertyConvert.INSTANCE.convertList(baseMapper.selectList(wrapper)); } + + /** + * 分页查询元模型属性 + * + * @param query 查询条件 + * @return 分页结果 + */ @Override public PageResult page(MetamodelpropertyQuery query) { IPage page = baseMapper.selectPage(getPage(query), getWrapper(query)); - return new PageResult<>(MetamodelPropertyConvert.INSTANCE.convertList(page.getRecords()),page.getTotal()); + return new PageResult<>(MetamodelPropertyConvert.INSTANCE.convertList(page.getRecords()), page.getTotal()); } + + /** + * 生成LambdaQueryWrapper对象,用于查询元模型属性 + * @param query 元模型属性查询对象 + * @return LambdaQueryWrapper 查询对象 + */ private LambdaQueryWrapper getWrapper(MetamodelpropertyQuery query) { LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); wrapper.eq(MetamodelPropertyEntity::getMetamodelId, query.getMetamodelId()) - .like(StringUtil.isBlank(query.getName()),MetamodelPropertyEntity::getName,query.getName()) - .like(StringUtil.isBlank(query.getCode()),MetamodelPropertyEntity::getCode,query.getCode()) + .like(StringUtil.isNotBlank(query.getName()), MetamodelPropertyEntity::getName, query.getName()) + .like(StringUtil.isNotBlank(query.getCode()), MetamodelPropertyEntity::getCode, query.getCode()) .orderByAsc(MetamodelPropertyEntity::getOrderNo); return wrapper; } + @Override public void save(MetamodelPropertyVO vo) { + // 将MetamodelPropertyVO对象转换为MetamodelPropertyEntity对象 MetamodelPropertyEntity entity = MetamodelPropertyConvert.INSTANCE.convert(vo); + + // 设置Builtin为0 entity.setBuiltin(0); + + // 设置ProjectId为当前项目Id entity.setProjectId(getProjectId()); + + // 将MetamodelPropertyEntity对象插入数据库 baseMapper.insert(entity); } + @Override public void update(MetamodelPropertyVO vo) { + // 将MetamodelPropertyVO对象转换为MetamodelPropertyEntity对象 + MetamodelPropertyEntity entity = MetamodelPropertyConvert.INSTANCE.convert(vo); + // 设置Builtin为0 + entity.setBuiltin(0); + + // 设置ProjectId为当前项目Id + entity.setProjectId(getProjectId()); + + // 根据id更新MetamodelPropertyEntity对象信息 + updateById(entity); } + + /** + * 删除指定id列表的数据 + * + * @param idList 要删除的数据id列表 + */ @Override + @Transactional(rollbackFor = Exception.class) public void delete(List idList) { - + removeByIds(idList); } + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelServiceImpl.java b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelServiceImpl.java index 93f13d8..843d3de 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelServiceImpl.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/MetamodelServiceImpl.java @@ -17,6 +17,10 @@ import srt.cloud.framework.dbswitch.common.util.StringUtil; import java.util.List; @Service public class MetamodelServiceImpl extends BaseServiceImpl implements MetamodelService { + /** + * 重写父类方法,查询并返回当前项目下的元模型和公共的元模型的树结构列表 + * @return List 树结构列表 + */ @Override public List listTree() { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); @@ -25,65 +29,117 @@ public class MetamodelServiceImpl extends BaseServiceImpl dataGovernanceMetamodelEntities = baseMapper.selectList(wrapper); + + //将元模型实体列表转换为TreeNodeVo列表 List treeNodeVos = BeanUtil.copyListProperties(dataGovernanceMetamodelEntities, TreeNodeVo::new, (oldItem, newItem) -> { - newItem.setLabel(oldItem.getName()); - newItem.setValue(oldItem.getId()); - newItem.setDisabled(oldItem.getIfLeaf() == 1); + newItem.setLabel(oldItem.getName()); //设置树节点的显示文本 + newItem.setValue(oldItem.getId()); //设置树节点的值 + newItem.setDisabled(oldItem.getIfLeaf() == 1); //设置树节点是否禁用 if (newItem.getPath().contains("/")) { - newItem.setParentPath(newItem.getPath().substring(0, newItem.getPath().lastIndexOf("/"))); + newItem.setParentPath(newItem.getPath().substring(0, newItem.getPath().lastIndexOf("/"))); //设置树节点的父级路径 } }); + + //构建树结构 return BuildTreeUtils.buildTree(treeNodeVos); } + + /** + * 保存MetamodelVO对象 + * + * @param vo MetamodelVO对象 + */ @Override public void save(MetamodelVO vo) { + // 将MetamodelVO对象转换为MetamodelEntity对象 MetamodelEntity entity = MetamodelConvert.INSTANCE.convert(vo); - entity.setPath(recursionPath(entity,null)); + // 设置MetamodelEntity对象的路径 + entity.setPath(recursionPath(entity, null)); + // 设置MetamodelEntity对象的项目ID entity.setProjectId(getProjectId()); + // 设置MetamodelEntity对象的内置属性为0 entity.setBuiltin(0); + // 构建MetamodelEntity对象的字段 buildField(entity); + // 将MetamodelEntity对象插入数据库 baseMapper.insert(entity); } + @Override public void update(MetamodelVO vo) { + // 将 MetamodelVO 对象转换为 MetamodelEntity 对象 MetamodelEntity entity = MetamodelConvert.INSTANCE.convert(vo); - entity.setPath(recursionPath(entity,null)); + + // 设置 recursionPath 方法返回的路径为当前 entity 对象的路径 + entity.setPath(recursionPath(entity, null)); + + // 设置当前 entity 对象的项目 ID 为当前类实例的项目 ID entity.setProjectId(getProjectId()); + + // 设置当前 entity 对象的 builtin 属性为 0 entity.setBuiltin(0); + + // 构建当前 entity 对象的字段信息 buildField(entity); + + // 根据当前 entity 对象的 ID 更新实体信息 updateById(entity); } + @Override public void delete(Long id) { + // 创建一个LambdaQueryWrapper对象,用于构建查询条件 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(MetamodelEntity::getParentId,id).last("limit 1"); - if(baseMapper.selectOne(wrapper)!=null){ + // 设置查询条件,查找ParentId等于给定id的记录,一次只查询一条记录 + wrapper.eq(MetamodelEntity::getParentId, id).last("limit 1"); + // 如果根据查询条件查到的记录不为空,则抛出异常 + if (baseMapper.selectOne(wrapper) != null) { throw new ServerException("存在子节点,不可删除!"); } } + private void buildField(MetamodelEntity entity) { + // 根据实体类的ifLeaf属性判断该实体是叶子节点还是文件夹节点 if(entity.getIfLeaf() == 0){ + // 如果是叶子节点,则设置图标为模型图片 entity.setIcon("/src/assets/model.png"); }else { + // 如果是文件夹节点,则设置图标为文件夹图片 entity.setIcon("/src/assets/folder.png"); } } - private String recursionPath(MetamodelEntity metamodelEntity,String path){ + + /** + * 递归生成实体类的路径 + * @param metamodelEntity 实体类对象 + * @param path 当前路径 + * @return 生成的路径 + */ + private String recursionPath(MetamodelEntity metamodelEntity, String path){ + // 如果路径为空,则将路径设置为实体类的名称 if(StringUtil.isBlank(path)){ path = metamodelEntity.getName(); } + // 如果实体类的父ID不为0,即存在父类 if(metamodelEntity.getParentId()!=0){ + // 获取父类实体对象 MetamodelEntity parent = getById(metamodelEntity.getParentId()); + // 将父类名称加上斜杠以及当前路径,生成新的路径 path = parent.getName() + "/" + path; - return recursionPath(parent,path); + // 递归调用本方法,传入父类对象以及新的路径 + return recursionPath(parent, path); } + // 返回生成的路径 return path; } + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/StandardServiceImpl.java b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/StandardServiceImpl.java index e3e8fa9..73e455f 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/StandardServiceImpl.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/StandardServiceImpl.java @@ -13,6 +13,8 @@ import org.springframework.stereotype.Service; import java.util.List; +import static net.srt.framework.security.user.SecurityUser.getUserId; + /** * @ClassName : StandardServiceImpl * @Description : @@ -40,5 +42,45 @@ public class StandardServiceImpl extends BaseServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(StandardEntity::getParentId,id).last("limit 1"); + if(baseMapper.selectCount(wrapper)!=null){ + throw new RuntimeException("请先删除子节点"); + } + removeById(id); + //删除属性 + LambdaQueryWrapper wrapper1 = new LambdaQueryWrapper<>(); + wrapper1.eq(StandardEntity::getParentId,id); + baseMapper.delete(wrapper1); + + } + } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/vo/StandardManagementVo.java b/srt-cloud-data-governance/src/main/java/net/srt/vo/StandardManagementVo.java index ef6da78..b89861d 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/vo/StandardManagementVo.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/vo/StandardManagementVo.java @@ -32,7 +32,7 @@ public class StandardManagementVo implements Serializable { private Integer standardCodeId; private Integer type; private String note; - private Integer projectId; + private Long projectId; private Integer status; private Integer version; private Integer deleted; diff --git a/srt-cloud-data-service/.gitignore b/srt-cloud-data-service/.gitignore new file mode 100644 index 0000000..5ff6309 --- /dev/null +++ b/srt-cloud-data-service/.gitignore @@ -0,0 +1,38 @@ +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### IntelliJ IDEA ### +.idea/modules.xml +.idea/jarRepositories.xml +.idea/compiler.xml +.idea/libraries/ +*.iws +*.iml +*.ipr + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git a/srt-cloud-data-service/pom.xml b/srt-cloud-data-service/pom.xml new file mode 100644 index 0000000..f1b90b9 --- /dev/null +++ b/srt-cloud-data-service/pom.xml @@ -0,0 +1,220 @@ + + + 4.0.0 + + net.srt + srt-cloud + 2.0.0 + + + srt-cloud-data-service + + + 8 + 8 + UTF-8 + + + + + net.srt + srt-cloud-api + 2.0.0 + + + + org.springframework.boot + spring-boot-starter-log4j2 + + + net.srt + srt-cloud-mybatis + 2.0.0 + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + spring-boot-starter-logging + org.springframework.boot + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + com.github.whvcse + easy-captcha + + + com.github.xiaoymin + knife4j-springdoc-ui + + + com.aliyun.oss + aliyun-sdk-oss + + + com.qcloud + cos_api + + + com.qiniu + qiniu-java-sdk + + + com.huaweicloud + esdk-obs-java-bundle + + + io.minio + minio + + + + + + + + org.codehaus.mojo + appassembler-maven-plugin + 2.1.0 + + + + + generate-jsw-scripts + package + + generate-daemons + + + + + + + flat + + src/main/resources + true + + true + + conf + + lib + + bin + UTF-8 + logs + + + + ${project.artifactId} + net.srt.SystemApplication + + jsw + + + + jsw + + linux-x86-32 + linux-x86-64 + windows-x86-32 + windows-x86-64 + + + + configuration.directory.in.classpath.first + conf + + + wrapper.ping.timeout + 120 + + + set.default.REPO_DIR + lib + + + wrapper.logfile + logs/wrapper.log + + + + + + + + + -server + -Dfile.encoding=utf-8 + -Xms128m + -Xmx1024m + -XX:+PrintGCDetails + -XX:+PrintGCDateStamps + -Xloggc:logs/gc.log + + + + + + + net.srt.SystemApplication + ${project.artifactId} + + + + + + + + maven-assembly-plugin + + + ${project.parent.basedir}/assembly/assembly-win.xml + ${project.parent.basedir}/assembly/assembly-linux.xml + + + + + make-assembly + package + + single + + + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + + + + diff --git a/srt-cloud-data-service/src/main/java/net/srt/ServiceApplication.java b/srt-cloud-data-service/src/main/java/net/srt/ServiceApplication.java new file mode 100644 index 0000000..e8876e7 --- /dev/null +++ b/srt-cloud-data-service/src/main/java/net/srt/ServiceApplication.java @@ -0,0 +1,21 @@ +package net.srt; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.client.discovery.EnableDiscoveryClient; +import org.springframework.cloud.openfeign.EnableFeignClients; + +/** + * @ClassName : ${NAME} + * @Description : ${description} + * @Author : FJJ + * @Date: 2023-12-22 20:44 + */ +@EnableFeignClients +@EnableDiscoveryClient +@SpringBootApplication +public class ServiceApplication { + public static void main(String[] args) { + SpringApplication.run(ServiceApplication.class, args); + } +} diff --git a/srt-cloud-data-service/src/main/resources/auth.yml b/srt-cloud-data-service/src/main/resources/auth.yml new file mode 100644 index 0000000..82ec0d6 --- /dev/null +++ b/srt-cloud-data-service/src/main/resources/auth.yml @@ -0,0 +1,4 @@ +auth: + ignore_urls: + - /test + - /api/** diff --git a/srt-cloud-data-service/src/main/resources/bootstrap.yml b/srt-cloud-data-service/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..8cb2c5d --- /dev/null +++ b/srt-cloud-data-service/src/main/resources/bootstrap.yml @@ -0,0 +1,42 @@ +#数据集成 +server: + port: 8099 + +spring: + mvc: + servlet: + load-on-startup: 1 + application: + name: srt-cloud-data-service + profiles: + active: dev + cloud: + nacos: + discovery: + server-addr: 101.34.77.101:8848 + # 命名空间,默认:public + namespace: 09dff3e2-9790-4d4f-beb6-9baeb01ae040 + service: ${spring.application.name} + group: srt2.0 + config: + server-addr: ${spring.cloud.nacos.discovery.server-addr} + namespace: ${spring.cloud.nacos.discovery.namespace} + file-extension: yaml + # 指定配置 + extension-configs: + - data-id: datasource.yaml + refresh: true + servlet: + multipart: + max-request-size: 100MB + max-file-size: 1024MB +# feign 配置 +feign: + client: + config: + default: + connectTimeout: 60000 + readTimeout: 60000 + loggerLevel: basic + okhttp: + enabled: true diff --git a/srt-cloud-data-service/src/main/resources/log4j2.xml b/srt-cloud-data-service/src/main/resources/log4j2.xml new file mode 100644 index 0000000..14461eb --- /dev/null +++ b/srt-cloud-data-service/src/main/resources/log4j2.xml @@ -0,0 +1,48 @@ + + + + + ./logs/ + srt-cloud-system + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/srt-cloud-framework/srt-cloud-common/src/main/java/net/srt/framework/common/constant/Constant.java b/srt-cloud-framework/srt-cloud-common/src/main/java/net/srt/framework/common/constant/Constant.java index 50fcc05..c32b480 100644 --- a/srt-cloud-framework/srt-cloud-common/src/main/java/net/srt/framework/common/constant/Constant.java +++ b/srt-cloud-framework/srt-cloud-common/src/main/java/net/srt/framework/common/constant/Constant.java @@ -42,4 +42,6 @@ public interface Constant { * OK */ String OK = "OK"; + + String STATUS_NORMAL="0"; } diff --git a/srt-cloud-system/src/main/java/net/srt/system/convert/DatastandardConvert.java b/srt-cloud-system/src/main/java/net/srt/system/convert/DatastandardConvert.java new file mode 100644 index 0000000..688aa06 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/convert/DatastandardConvert.java @@ -0,0 +1,27 @@ +package net.srt.system.convert; + + +import net.srt.system.entity.DatastandardEntity; +import net.srt.system.vo.StandardManagementVo; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.convert + * @Author: jpz + * @CreateTime: 2023/12/20 19:50 + */ + +@Mapper +public interface DatastandardConvert { + DatastandardConvert INSTANCE = Mappers.getMapper(DatastandardConvert.class); + + + List convertList(List list); + + StandardManagementVo convert(DatastandardEntity entity); + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/convert/MetamodelConvert.java b/srt-cloud-system/src/main/java/net/srt/system/convert/MetamodelConvert.java new file mode 100644 index 0000000..12edfe6 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/convert/MetamodelConvert.java @@ -0,0 +1,19 @@ +package net.srt.system.convert; + + +import net.srt.system.entity.MetamodelEntity; +import net.srt.system.vo.MetamodelVO; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; +@Mapper +public interface MetamodelConvert { + MetamodelConvert INSTANCE = Mappers.getMapper(MetamodelConvert.class); + + MetamodelEntity convert(MetamodelVO vo); + + MetamodelVO convert(MetamodelEntity entity); + + List convertList(List list); +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/convert/MetamodelPropertyConvert.java b/srt-cloud-system/src/main/java/net/srt/system/convert/MetamodelPropertyConvert.java new file mode 100644 index 0000000..691e038 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/convert/MetamodelPropertyConvert.java @@ -0,0 +1,21 @@ +package net.srt.system.convert; + + +import net.srt.system.entity.MetamodelPropertyEntity; +import net.srt.system.vo.MetamodelPropertyVO; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +@Mapper +public interface MetamodelPropertyConvert { + MetamodelPropertyConvert INSTANCE = Mappers.getMapper(MetamodelPropertyConvert.class); + + MetamodelPropertyEntity convert(MetamodelPropertyVO vo); + + MetamodelPropertyVO convert(MetamodelPropertyEntity entity); + + List convertList(List list); + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/convert/QualityRuleConvert.java b/srt-cloud-system/src/main/java/net/srt/system/convert/QualityRuleConvert.java new file mode 100644 index 0000000..02d7d72 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/convert/QualityRuleConvert.java @@ -0,0 +1,28 @@ +package net.srt.system.convert; + + +import net.srt.system.entity.QualityQueryEntity; +import net.srt.system.vo.QualityRuleVo; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.convert + * @Author: jpz + * @CreateTime: 2023/12/20 19:50 + */ +@Mapper +public interface QualityRuleConvert { + + + QualityRuleConvert INSTANCE = Mappers.getMapper(QualityRuleConvert.class); + + + List convertList(List list); + + QualityQueryEntity conver(QualityRuleVo vo); + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/convert/QualityTaskConvert.java b/srt-cloud-system/src/main/java/net/srt/system/convert/QualityTaskConvert.java new file mode 100644 index 0000000..06a18cd --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/convert/QualityTaskConvert.java @@ -0,0 +1,26 @@ +package net.srt.system.convert; + + +import net.srt.system.entity.QualityTaskEntity; +import net.srt.system.vo.QualityTaskVo; +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.convert + * @Author: jpz + * @CreateTime: 2023/12/21 11:42 + */ +@Mapper +public interface QualityTaskConvert { + + + QualityTaskConvert INSTANCE = Mappers.getMapper(QualityTaskConvert.class); + + List covertList(List list); + + QualityTaskVo covert(QualityTaskEntity entity); +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/entity/DatastandardEntity.java b/srt-cloud-system/src/main/java/net/srt/system/entity/DatastandardEntity.java new file mode 100644 index 0000000..39fd083 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/entity/DatastandardEntity.java @@ -0,0 +1,39 @@ +package net.srt.system.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import net.srt.framework.mybatis.entity.BaseEntity; + +/** + * @ClassName : DatastandardEntity + * @Description : + * @Author : FJJ + * @Date: 2023-12-21 11:09 + */ +@EqualsAndHashCode(callSuper = false) +@Data +@TableName("standard_management") +public class DatastandardEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + @TableId("id") + private Long id; + private Integer categoryId; + private String engName; + private String cnName; + private Integer codeNum; + private String dataType; + private Integer dataLength; + private Integer dataPrecision; + private Integer nullable; + private Integer standardCodeId; + private Integer type; + private String note; + private Integer projectId; + private Integer status; + private Integer version; + private Integer deleted; + private Integer ifStandardRel; + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/entity/MetamodelEntity.java b/srt-cloud-system/src/main/java/net/srt/system/entity/MetamodelEntity.java new file mode 100644 index 0000000..b14cd61 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/entity/MetamodelEntity.java @@ -0,0 +1,64 @@ +package net.srt.system.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import net.srt.framework.mybatis.entity.BaseEntity; + +@EqualsAndHashCode(callSuper = false) +@Data +@TableName("data_governance_metamodel") +public class MetamodelEntity extends BaseEntity { + + /** + * 父id(顶级为0) + */ + private Long parentId; + + /** + * 名称 + */ + private String name; + + /** + * 代码 + */ + private String code; + + /** + * 路径 + */ + private String path; + + /** + * 是否内置元模型 0-否,1-是 + */ + private Integer builtin; + + /** + * 图标 + */ + private String icon; + + /** + * 是否是目录 0-否 1-是 + */ + private Integer ifLeaf; + + /** + * 描述 + */ + private String description; + + /** + * 项目id(租户id) + */ + private Long projectId; + + + private Integer orderNo; + + + + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/entity/MetamodelPropertyEntity.java b/srt-cloud-system/src/main/java/net/srt/system/entity/MetamodelPropertyEntity.java new file mode 100644 index 0000000..b8d5dc5 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/entity/MetamodelPropertyEntity.java @@ -0,0 +1,71 @@ +package net.srt.system.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import net.srt.framework.mybatis.entity.BaseEntity; + +@EqualsAndHashCode(callSuper = false) +@Data +@TableName("data_governance_metamodel_property") +public class MetamodelPropertyEntity extends BaseEntity { + + /** + * 元模型id + */ + private Integer metamodelId; + + /** + * 属性名称 + */ + private String name; + + /** + * 属性代码 + */ + private String code; + + /** + * 数据类型 1-数字 2-字符串 + */ + private Integer dataType; + + /** + * 数据长度 + */ + private Integer dataLength; + + /** + * 输入控件,1-文本框 + */ + private Integer inputType; + + /** + * 允许为空 0-否 1-是 + */ + private Integer nullable; + + /** + * 是否内置 0-否 1-是 + */ + private Integer builtin; + + /** + * 项目id(租户id) + */ + private Long projectId; + + /** + * 注释 + */ + private String comment; + + /** + * 序号 + */ + private Integer orderNo; + + + + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/entity/QualityQueryEntity.java b/srt-cloud-system/src/main/java/net/srt/system/entity/QualityQueryEntity.java new file mode 100644 index 0000000..81cd991 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/entity/QualityQueryEntity.java @@ -0,0 +1,61 @@ +package net.srt.system.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; +import net.srt.framework.mybatis.entity.BaseEntity; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.entity + * @Author: jpz + * @CreateTime: 2023/12/20 19:51 + */ +@EqualsAndHashCode(callSuper = true) +@SuperBuilder +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "data_governance_quality_rule") +public class QualityQueryEntity extends BaseEntity { + /** + * 名称 + */ + private String name; + +// /** +// * 英文名称 +// */ +// private String engName; +// +// /** +// * 1-唯一性 2-规范性 3-有效性 4-完整性 5-一致性 6-及时性 7-准确性 +// */ +// private Integer type; +// +// /** +// * 字段配置 0-单选 1-多选 +// */ +// private Integer ifColumnMultiple; +// +// /** +// * 说明 +// */ +// private String description; +// +// /** +// * 来源 1-内置 +// */ +// private Integer builtIn; +// +// private Long projectId; +// /** +// * 个性化参数 +// */ +// @TableField(typeHandler = JacksonTypeHandler.class) +// private List param; + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/entity/QualityTaskEntity.java b/srt-cloud-system/src/main/java/net/srt/system/entity/QualityTaskEntity.java new file mode 100644 index 0000000..b5deb7e --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/entity/QualityTaskEntity.java @@ -0,0 +1,54 @@ +package net.srt.system.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.entity + * @Author: jpz + * @CreateTime: 2023/12/21 10:46 + */ +@EqualsAndHashCode(callSuper = false) +@Data +@TableName(value = "data_governance_quality_task", autoResultMap = true) +public class QualityTaskEntity { + //id + private Long id; + //规则配置 + private Integer qualityConfigId; + //名称 + private String name; + //运行状态(1-等待中 2-运行中 3-正常结束 4-异常异常) + private Integer status; + //检测条数 + private Integer checkCount; + //检测通过条数 + private Integer passCount; + //未通过条数 + private Integer notPassCount; + //开始时间 + private Date startTime; + //结束时间 + private Date endTime; + //错误日志 + private String errorLog; + //项目id + private Integer projectId; + //版本号 + private Integer version; + //删除标识 0:正常 1:删除 + private Integer deleted; + //创建者 + private Integer creator; + //创建时间 + private Date createTime; + //更新者 + private Integer updater; + //更新时间 + private Date updateTime; + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/vo/MetamodelPropertyVO.java b/srt-cloud-system/src/main/java/net/srt/system/vo/MetamodelPropertyVO.java new file mode 100644 index 0000000..41afd3a --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/vo/MetamodelPropertyVO.java @@ -0,0 +1,79 @@ +package net.srt.system.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import net.srt.framework.common.utils.DateUtils; + +import java.io.Serializable; +import java.util.Date; + +@Data +@Schema(description = "数据治理-元模型属性") +public class MetamodelPropertyVO implements Serializable { + private static final long serialVersionUID = 1L; + + @Schema(description = "主键id") + private Long id; + + @Schema(description = "元模型id") + private Integer metamodelId; + + @Schema(description = "属性名称") + private String name; + + @Schema(description = "属性代码") + private String code; + + @Schema(description = "数据类型 1-数字 2-字符串") + private Integer dataType; + + @Schema(description = "数据长度") + private Integer dataLength; + + @Schema(description = "输入控件,1-文本框") + private Integer inputType; + + @Schema(description = "允许为空 0-否 1-是") + private Integer nullable; + + @Schema(description = "是否内置 0-否 1-是") + private Integer builtin; + + @Schema(description = "项目id(租户id)") + private Long projectId; + + @Schema(description = "注释") + private String comment; + + @Schema(description = "序号") + private Integer orderNo; + + @Schema(description = "版本号") + private Integer version; + + @Schema(description = "删除标识 0:正常 1:已删除") + private Integer deleted; + + @Schema(description = "创建者") + private Long creator; + + @Schema(description = "创建时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date createTime; + + @Schema(description = "更新者") + private Long updater; + + @Schema(description = "更新时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date updateTime; + + @Schema(description = "元模型属性id") + private Long metamodelPropertyId; + @Schema(description = "元数据的属性值") + private String value; + @Schema(description = "元数据属性的主键id") + private Long metadataPropertyId; + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/vo/MetamodelVO.java b/srt-cloud-system/src/main/java/net/srt/system/vo/MetamodelVO.java new file mode 100644 index 0000000..2987c52 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/vo/MetamodelVO.java @@ -0,0 +1,69 @@ +package net.srt.system.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import net.srt.framework.common.utils.DateUtils; + +import java.io.Serializable; +import java.util.Date; + +@Data +@Schema(description = "数据治理-元模型") +public class MetamodelVO implements Serializable { + private static final long serialVersionUID = 1L; + + @Schema(description = "主键id") + private Long id; + + @Schema(description = "父id(顶级为0)") + private Long parentId; + + @Schema(description = "名称") + private String name; + + @Schema(description = "代码") + private String code; + + @Schema(description = "路径") + private String path; + + @Schema(description = "是否内置元模型 0-否,1-是") + private Integer builtin; + + @Schema(description = "图标") + private String icon; + + @Schema(description = "是否是目录 0-否 1-是") + private Integer ifLeaf; + + @Schema(description = "描述") + private String description; + + @Schema(description = "项目id(租户id)") + private Long projectId; + + private Integer orderNo; + + @Schema(description = "版本号") + private Integer version; + + @Schema(description = "删除标识 0:正常 1:已删除") + private Integer deleted; + + @Schema(description = "创建者") + private Long creator; + + @Schema(description = "创建时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date createTime; + + @Schema(description = "更新者") + private Long updater; + + @Schema(description = "更新时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date updateTime; + + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/vo/QualityRuleVo.java b/srt-cloud-system/src/main/java/net/srt/system/vo/QualityRuleVo.java new file mode 100644 index 0000000..d73e249 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/vo/QualityRuleVo.java @@ -0,0 +1,69 @@ +package net.srt.system.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import net.srt.api.module.data.governance.dto.quality.QualityParam; +import net.srt.framework.common.utils.DateUtils; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.vo + * @Author: jpz + * @CreateTime: 2023/12/20 19:43 + */ +@Data +@Schema(description = "数据质量") +public class QualityRuleVo implements Serializable{ + private static final long serialVersionUID = 1L; + + @Schema(description = "主键id") + private Long id; + + @Schema(description = "名称") + private String name; + + @Schema(description = "英文名称") + private String engName; + + @Schema(description = "1-唯一性 2-规范性 3-有效性 4-完整性 5-一致性 6-及时性 7-准确性") + private Integer type; + + @Schema(description = "字段配置 0-单选 1-多选") + private Integer ifColumnMultiple; + + @Schema(description = "说明") + private String description; + + @Schema(description = "来源 1-内置") + private Integer builtIn; + private Long projectId; + + @Schema(description = "个性化参数") + private List param; + + @Schema(description = "版本号") + private Integer version; + + @Schema(description = "删除标识 0:正常 1:已删除") + private Integer deleted; + + @Schema(description = "创建者") + private Long creator; + + @Schema(description = "创建时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date createTime; + + @Schema(description = "更新者") + private Long updater; + + @Schema(description = "更新时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date updateTime; + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/vo/QualityTaskVo.java b/srt-cloud-system/src/main/java/net/srt/system/vo/QualityTaskVo.java new file mode 100644 index 0000000..99d10d1 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/vo/QualityTaskVo.java @@ -0,0 +1,62 @@ +package net.srt.system.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import net.srt.framework.common.utils.DateUtils; + +import java.io.Serializable; +import java.util.Date; + +/** + * @BelongsProject: srt_cloud + * @BelongsPackage: net.srt.vo + * @Author: jpz + * @CreateTime: 2023/12/21 10:43 + */ +@Data +@Schema(description = "数据治理-质量任务") +public class QualityTaskVo implements Serializable { + private static final long serialVersionUID = 1L; + + @Schema(description = "主键id") + private Long id; + @Schema(description = "规则配置id") + private Integer qualityConfigId; + @Schema(description = "名称") + private String name; + @Schema(description = "运行状态(1-等待中 2-运行中 3-正常结束 4-异常结束)") + private Integer status; + @Schema(description = "检测条数") + private Integer checkCount; + @Schema(description = "检测通过条数") + private Integer passCount; + @Schema(description = "未通过条数") + private Integer notPassCount; + @Schema(description = "开始时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date startTime; + @Schema(description = "结束时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date endTime; + @Schema(description = "错误日志") + private String errorLog; + @Schema(description = "项目id") + private Integer projectId; + @Schema(description = "版本号") + private Integer version; + @Schema(description = "删除标识 0:正常 1:删除") + private Integer deleted; + @Schema(description = "创建者") + private Integer creator; + @Schema(description = "创建时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date createTime; + @Schema(description = "更新者") + private Integer updater; + @Schema(description = "更新时间") + @JsonFormat(pattern = DateUtils.DATE_TIME_PATTERN) + private Date updateTime; + + +} diff --git a/srt-cloud-system/src/main/java/net/srt/system/vo/StandardManagementVo.java b/srt-cloud-system/src/main/java/net/srt/system/vo/StandardManagementVo.java new file mode 100644 index 0000000..573c331 --- /dev/null +++ b/srt-cloud-system/src/main/java/net/srt/system/vo/StandardManagementVo.java @@ -0,0 +1,49 @@ +package net.srt.system.vo; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : StandardManagementVo + * @Description : 标准管理表 + * @Author : FJJ + * @Date: 2023-12-20 11:24 + */ +@Data +@Schema(description = "标准管理查询") +public class StandardManagementVo implements Serializable { + private static final long serialVersionUID = 1L; + @TableId("id") + private Long id; + private Integer categoryId; + private String engName; + private String cnName; + private Integer codeNum; + private String dataType; + private Integer dataLength; + private Integer dataPrecision; + private Integer nullable; + private Integer standardCodeId; + private Integer type; + private String note; + private Integer projectId; + private Integer status; + private Integer version; + private Integer deleted; + private String creator; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createTime; + private String updater; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date updateTime; + private Integer ifStandardRel; + private String group; +}