This commit is contained in:
Jane
2023-12-22 10:59:10 +08:00
parent 751c43e199
commit d1ede2d4aa
2774 changed files with 291509 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>data-metadata-service-parent</artifactId>
<groupId>com.platform</groupId>
<version>0.4.x</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<version>0.4.x</version>
<artifactId>data-metadata-service-api</artifactId>
<dependencies>
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-micro-spring-boot-starter</artifactId>
<version>${knife4j.version}</version>
</dependency>
<!--feign 依赖-->
<dependency>
<groupId>io.github.openfeign</groupId>
<artifactId>feign-okhttp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
<groupId>com.platform</groupId>
<artifactId>common-core</artifactId>
<version>0.4.x</version>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,25 @@
package cn.datax.service.data.metadata.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
@ApiModel(value = "数据授权信息Model")
@Data
public class AuthorizeData implements Serializable {
private static final long serialVersionUID=1L;
@NotBlank(message = "目标表主键ID不能为空")
@ApiModelProperty(value = "目标表主键ID")
private String objectId;
@NotBlank(message = "角色ID不能为空")
@ApiModelProperty(value = "角色ID")
private String roleId;
@NotBlank(message = "目标表类型不能为空")
@ApiModelProperty(value = "目标表类型")
private String objectType;
}

View File

@@ -0,0 +1,34 @@
package cn.datax.service.data.metadata.api.dto;
import cn.datax.common.validate.ValidationGroups;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
@ApiModel(value = "数据源连接信息Model")
@Data
public class DbSchema implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty(value = "主机")
@NotBlank(message = "主机不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String host;
@ApiModelProperty(value = "端口")
@NotNull(message = "端口不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private Integer port;
@ApiModelProperty(value = "用户名")
@NotBlank(message = "用户名不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String username;
@ApiModelProperty(value = "密码")
@NotBlank(message = "密码不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String password;
@ApiModelProperty(value = "数据库")
private String dbName;
@ApiModelProperty(value = "服务名")
private String sid;
}

View File

@@ -0,0 +1,33 @@
package cn.datax.service.data.metadata.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;
/**
* <p>
* 数据授权信息表 实体DTO
* </p>
*
* @author AllDataDC
* @date 2022-11-23
*/
@ApiModel(value = "数据授权信息表Model")
@Data
public class MetadataAuthorizeDto implements Serializable {
private static final long serialVersionUID=1L;
@NotBlank(message = "角色ID不能为空")
@ApiModelProperty(value = "角色ID")
private String roleId;
@Valid
@ApiModelProperty(value = "授权信息")
private List<AuthorizeData> authorizeDataList;
}

View File

@@ -0,0 +1,46 @@
package cn.datax.service.data.metadata.api.dto;
import cn.datax.common.validate.ValidationGroups;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* <p>
* 元数据变更记录表 实体DTO
* </p>
*
* @author AllDataDC
* @date 2022-11-30
*/
@ApiModel(value = "元数据变更记录表Model")
@Data
public class MetadataChangeRecordDto implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty(value = "主键ID")
@NotBlank(message = "主键ID不能为空", groups = {ValidationGroups.Update.class})
private String id;
@ApiModelProperty(value = "版本号")
private Integer version;
@ApiModelProperty(value = "更改类型")
private String objectType;
@ApiModelProperty(value = "源数据表主键")
private String objectId;
@ApiModelProperty(value = "修改的源数据表的字段名")
private String fieldName;
@ApiModelProperty(value = "该字段原来的值")
private String fieldOldValue;
@ApiModelProperty(value = "该字段最新的值")
private String fieldNewValue;
@ApiModelProperty(value = "状态")
@NotNull(message = "状态不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String status;
@ApiModelProperty(value = "备注")
private String remark;
}

View File

@@ -0,0 +1,52 @@
package cn.datax.service.data.metadata.api.dto;
import cn.datax.common.validate.ValidationGroups;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* <p>
* 元数据信息表 实体DTO
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@ApiModel(value = "元数据信息表Model")
@Data
public class MetadataColumnDto implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty(value = "主键ID")
@NotBlank(message = "主键ID不能为空", groups = {ValidationGroups.Update.class})
private String id;
@ApiModelProperty(value = "所属数据源")
private String sourceId;
@ApiModelProperty(value = "所属数据表")
private String tableId;
@ApiModelProperty(value = "字段名称")
private String columnName;
@ApiModelProperty(value = "字段注释")
private String columnComment;
@ApiModelProperty(value = "字段是否主键(1是0否)")
private String columnKey;
@ApiModelProperty(value = "字段是否允许为空(1是0否)")
private String columnNullable;
@ApiModelProperty(value = "字段序号")
private String columnPosition;
@ApiModelProperty(value = "数据类型")
private String dataType;
@ApiModelProperty(value = "数据长度")
private String dataLength;
@ApiModelProperty(value = "数据精度")
private String dataPrecision;
@ApiModelProperty(value = "数据小数位")
private String dataScale;
@ApiModelProperty(value = "数据默认值")
private String dataDefault;
}

View File

@@ -0,0 +1,44 @@
package cn.datax.service.data.metadata.api.dto;
import cn.datax.common.validate.ValidationGroups;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* <p>
* 数据源信息表 实体DTO
* </p>
*
* @author AllDataDC
* @date 2022-11-14
*/
@ApiModel(value = "数据源信息表Model")
@Data
public class MetadataSourceDto implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty(value = "主键ID")
@NotBlank(message = "主键ID不能为空", groups = {ValidationGroups.Update.class})
private String id;
@ApiModelProperty(value = "数据源类型")
@NotBlank(message = "数据源类型不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String dbType;
@ApiModelProperty(value = "数据源名称")
@NotBlank(message = "数据源名称不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String sourceName;
@ApiModelProperty(value = "数据源连接信息")
@Valid
private DbSchema dbSchema;
@ApiModelProperty(value = "状态")
@NotNull(message = "状态不能为空", groups = {ValidationGroups.Insert.class, ValidationGroups.Update.class})
private String status;
@ApiModelProperty(value = "备注")
private String remark;
}

View File

@@ -0,0 +1,34 @@
package cn.datax.service.data.metadata.api.dto;
import cn.datax.common.validate.ValidationGroups;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* <p>
* 数据库表信息表 实体DTO
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@ApiModel(value = "数据库表信息表Model")
@Data
public class MetadataTableDto implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty(value = "主键ID")
@NotBlank(message = "主键ID不能为空", groups = {ValidationGroups.Update.class})
private String id;
@ApiModelProperty(value = "所属数据源")
private String sourceId;
@ApiModelProperty(value = "表名")
private String tableName;
@ApiModelProperty(value = "表注释")
private String tableComment;
}

View File

@@ -0,0 +1,26 @@
package cn.datax.service.data.metadata.api.dto;
import cn.datax.common.validate.ValidationGroups;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
@Data
public class SqlConsoleDto implements Serializable {
private static final long serialVersionUID=1L;
@ApiModelProperty(value = "当前时间戳")
@NotBlank(message = "时间戳不能为空", groups = {ValidationGroups.Other.class})
private String sqlKey;
@ApiModelProperty(value = "数据源")
@NotBlank(message = "数据源不能为空")
private String sourceId;
@ApiModelProperty(value = "SQL文本")
@NotBlank(message = "SQL不能为空")
private String sqlText;
}

View File

@@ -0,0 +1,48 @@
package cn.datax.service.data.metadata.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import cn.datax.common.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 数据授权信息表
* </p>
*
* @author AllDataDC
* @date 2022-11-23
*/
@Data
@Accessors(chain = true)
@TableName("metadata_authorize")
public class MetadataAuthorizeEntity implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.ASSIGN_ID)
private String id;
/**
* 目标表主键ID
*/
private String objectId;
/**
* 角色ID
*/
private String roleId;
/**
* 目标表类型
*/
private String objectType;
}

View File

@@ -0,0 +1,71 @@
package cn.datax.service.data.metadata.api.entity;
import cn.datax.common.base.DataScopeBaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 元数据变更记录表
* </p>
*
* @author AllDataDC
* @date 2022-11-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName(value = "metadata_change_record", autoResultMap = true)
public class MetadataChangeRecordEntity extends DataScopeBaseEntity {
private static final long serialVersionUID=1L;
/**
* 版本号
*/
private Integer version;
/**
* 源数据的表名或者能唯一对应的源数据表的标识(可废弃)
*/
private String objectType;
/**
* 源数据表主键
*/
private String objectId;
/**
* 修改的源数据表的字段名
*/
private String fieldName;
/**
* 该字段原来的值
*/
private String fieldOldValue;
/**
* 该字段最新的值
*/
private String fieldNewValue;
/**
* 数据源
*/
@TableField(exist = false)
private String sourceId;
@TableField(exist = false)
private String sourceName;
/**
* 数据库表
*/
@TableField(exist = false)
private String tableId;
@TableField(exist = false)
private String tableName;
}

View File

@@ -0,0 +1,101 @@
package cn.datax.service.data.metadata.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 元数据信息表
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@Data
@Accessors(chain = true)
@TableName(value = "metadata_column", autoResultMap = true)
public class MetadataColumnEntity implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.ASSIGN_ID)
private String id;
/**
* 所属数据源
*/
private String sourceId;
/**
* 所属数据表
*/
private String tableId;
/**
* 字段名称
*/
private String columnName;
/**
* 字段注释
*/
private String columnComment;
/**
* 字段是否主键(1是0否)
*/
private String columnKey;
/**
* 字段是否允许为空(1是0否)
*/
private String columnNullable;
/**
* 字段序号
*/
private String columnPosition;
/**
* 数据类型
*/
private String dataType;
/**
* 数据长度
*/
private String dataLength;
/**
* 数据精度
*/
private String dataPrecision;
/**
* 数据小数位
*/
private String dataScale;
/**
* 数据默认值
*/
private String dataDefault;
@TableField(exist = false)
private String sourceName;
@TableField(exist = false)
private String tableName;
@TableField(exist = false)
private String tableComment;
}

View File

@@ -0,0 +1,48 @@
package cn.datax.service.data.metadata.api.entity;
import cn.datax.common.base.DataScopeBaseEntity;
import cn.datax.service.data.metadata.api.dto.DbSchema;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
* 数据源信息表
* </p>
*
* @author AllDataDC
* @date 2022-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName(value = "metadata_source", autoResultMap = true)
public class MetadataSourceEntity extends DataScopeBaseEntity {
private static final long serialVersionUID=1L;
/**
* 数据源类型
*/
private String dbType;
/**
* 数据源名称
*/
private String sourceName;
/**
* 元数据同步0否1同步中, 2是 3-出错)
*/
private String isSync;
/**
* 数据源连接信息
*/
@TableField(typeHandler = JacksonTypeHandler.class)
private DbSchema dbSchema;
}

View File

@@ -0,0 +1,50 @@
package cn.datax.service.data.metadata.api.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* <p>
* 数据库表信息表
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@Data
@Accessors(chain = true)
@TableName(value = "metadata_table", autoResultMap = true)
public class MetadataTableEntity implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.ASSIGN_ID)
private String id;
/**
* 所属数据源
*/
private String sourceId;
/**
* 表名
*/
private String tableName;
/**
* 表注释
*/
private String tableComment;
@TableField(exist = false)
private String sourceName;
}

View File

@@ -0,0 +1,34 @@
package cn.datax.service.data.metadata.api.enums;
public enum DataLevel {
DATABASE("database", 1),
TABLE("table", 2),
COLUMN("column", 3);
private final String key;
private final Integer level;
DataLevel(String key, Integer level) {
this.key = key;
this.level = level;
}
public String getKey() {
return key;
}
public Integer getLevel() {
return level;
}
public static DataLevel getLevel(String key) {
for (DataLevel type : DataLevel.values()) {
if (type.key.equals(key)) {
return type;
}
}
return DATABASE;
}
}

View File

@@ -0,0 +1,19 @@
package cn.datax.service.data.metadata.api.enums;
public enum SyncStatus {
NotSync("0"),
InSync("1"),
IsSync("2"),
SyncError("3");
private final String key;
SyncStatus(String key) {
this.key = key;
}
public String getKey() {
return key;
}
}

View File

@@ -0,0 +1,19 @@
package cn.datax.service.data.metadata.api.feign;
import cn.datax.service.data.metadata.api.entity.MetadataSourceEntity;
import cn.datax.service.data.metadata.api.feign.factory.MetadataSourceServiceFeignFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
@FeignClient(contextId = "metadataSourceServiceFeign", value = "service-data-metadata", fallbackFactory = MetadataSourceServiceFeignFallbackFactory.class)
public interface MetadataSourceServiceFeign {
@GetMapping("/inner/sources/{id}")
MetadataSourceEntity getMetadataSourceById(@PathVariable("id") String id);
@GetMapping("/inner/sources/list")
List<MetadataSourceEntity> getMetadataSourceList();
}

View File

@@ -0,0 +1,17 @@
package cn.datax.service.data.metadata.api.feign.factory;
import cn.datax.service.data.metadata.api.feign.MetadataSourceServiceFeign;
import cn.datax.service.data.metadata.api.feign.fallback.MetadataSourceServiceFeignFallbackImpl;
import feign.hystrix.FallbackFactory;
import org.springframework.stereotype.Component;
@Component
public class MetadataSourceServiceFeignFallbackFactory implements FallbackFactory<MetadataSourceServiceFeign> {
@Override
public MetadataSourceServiceFeign create(Throwable throwable) {
MetadataSourceServiceFeignFallbackImpl metadataSourceServiceFeignFallback = new MetadataSourceServiceFeignFallbackImpl();
metadataSourceServiceFeignFallback.setCause(throwable);
return metadataSourceServiceFeignFallback;
}
}

View File

@@ -0,0 +1,29 @@
package cn.datax.service.data.metadata.api.feign.fallback;
import cn.datax.service.data.metadata.api.entity.MetadataSourceEntity;
import cn.datax.service.data.metadata.api.feign.MetadataSourceServiceFeign;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.util.List;
@Slf4j
@Component
public class MetadataSourceServiceFeignFallbackImpl implements MetadataSourceServiceFeign {
@Setter
private Throwable cause;
@Override
public MetadataSourceEntity getMetadataSourceById(String id) {
log.error("feign 调用{}出错", id, cause);
return null;
}
@Override
public List<MetadataSourceEntity> getMetadataSourceList() {
log.error("feign 调用出错", cause);
return null;
}
}

View File

@@ -0,0 +1,36 @@
package cn.datax.service.data.metadata.api.query;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* <p>
* 数据查询 查询实体
* </p>
*
* @author AllDataDC
* @date 2022-11-14
*/
@Data
public class DbDataQuery implements Serializable {
private static final long serialVersionUID = 1L;
@NotBlank(message = "数据源不能为空")
private String dataSourceId;
@NotBlank(message = "查询sql不能为空")
private String sql;
// 当前页码
private Integer pageNum = 1;
// 分页条数
private Integer pageSize = 20;
public Integer getOffset() {
pageSize = pageSize == null ? 20 : pageSize;
pageNum = pageNum == null ? 1 : pageNum;
int offset = pageNum > 0 ? (pageNum - 1) * pageSize : 0;
return offset;
}
}

View File

@@ -0,0 +1,20 @@
package cn.datax.service.data.metadata.api.query;
import cn.datax.common.base.BaseQueryParams;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 数据授权信息表 查询实体
* </p>
*
* @author AllDataDC
* @date 2022-11-23
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class MetadataAuthorizeQuery extends BaseQueryParams {
private static final long serialVersionUID=1L;
}

View File

@@ -0,0 +1,23 @@
package cn.datax.service.data.metadata.api.query;
import cn.datax.common.base.BaseQueryParams;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 元数据变更记录表 查询实体
* </p>
*
* @author AllDataDC
* @date 2022-11-30
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class MetadataChangeRecordQuery extends BaseQueryParams {
private static final long serialVersionUID=1L;
private String objectId;
private String fieldName;
}

View File

@@ -0,0 +1,26 @@
package cn.datax.service.data.metadata.api.query;
import cn.datax.common.base.BaseQueryParams;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 元数据信息表 查询实体
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class MetadataColumnQuery extends BaseQueryParams {
private static final long serialVersionUID=1L;
private String sourceId;
private String tableId;
private String columnName;
}

View File

@@ -0,0 +1,22 @@
package cn.datax.service.data.metadata.api.query;
import cn.datax.common.base.BaseQueryParams;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 数据源信息表 查询实体
* </p>
*
* @author AllDataDC
* @date 2022-11-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class MetadataSourceQuery extends BaseQueryParams {
private static final long serialVersionUID=1L;
private String sourceName;
}

View File

@@ -0,0 +1,24 @@
package cn.datax.service.data.metadata.api.query;
import cn.datax.common.base.BaseQueryParams;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* <p>
* 数据库表信息表 查询实体
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class MetadataTableQuery extends BaseQueryParams {
private static final long serialVersionUID=1L;
private String sourceId;
private String tableName;
}

View File

@@ -0,0 +1,24 @@
package cn.datax.service.data.metadata.api.vo;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 数据授权信息表 实体VO
* </p>
*
* @author AllDataDC
* @date 2022-11-23
*/
@Data
public class MetadataAuthorizeVo implements Serializable {
private static final long serialVersionUID=1L;
private String id;
private String objectId;
private String roleId;
private String objectType;
}

View File

@@ -0,0 +1,36 @@
package cn.datax.service.data.metadata.api.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 元数据变更记录表 实体VO
* </p>
*
* @author AllDataDC
* @date 2022-11-30
*/
@Data
public class MetadataChangeRecordVo implements Serializable {
private static final long serialVersionUID=1L;
private String id;
private String status;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
private Integer version;
private String objectType;
private String objectId;
private String fieldName;
private String fieldOldValue;
private String fieldNewValue;
private String sourceId;
private String sourceName;
private String tableId;
private String tableName;
}

View File

@@ -0,0 +1,36 @@
package cn.datax.service.data.metadata.api.vo;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 元数据信息表 实体VO
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@Data
public class MetadataColumnVo implements Serializable {
private static final long serialVersionUID=1L;
private String id;
private String sourceId;
private String tableId;
private String columnName;
private String columnComment;
private String columnKey;
private String columnNullable;
private String columnPosition;
private String dataType;
private String dataLength;
private String dataPrecision;
private String dataScale;
private String dataDefault;
private String sourceName;
private String tableName;
private String tableComment;
}

View File

@@ -0,0 +1,32 @@
package cn.datax.service.data.metadata.api.vo;
import cn.datax.service.data.metadata.api.dto.DbSchema;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
* 数据源信息表 实体VO
* </p>
*
* @author AllDataDC
* @date 2022-11-14
*/
@Data
public class MetadataSourceVo implements Serializable {
private static final long serialVersionUID=1L;
private String id;
private String status;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
private String remark;
private String dbType;
private String sourceName;
private DbSchema dbSchema;
private String isSync;
}

View File

@@ -0,0 +1,25 @@
package cn.datax.service.data.metadata.api.vo;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 数据库表信息表 实体VO
* </p>
*
* @author AllDataDC
* @date 2022-11-29
*/
@Data
public class MetadataTableVo implements Serializable {
private static final long serialVersionUID=1L;
private String id;
private String sourceId;
private String tableName;
private String tableComment;
private String sourceName;
}

View File

@@ -0,0 +1,22 @@
package cn.datax.service.data.metadata.api.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class MetadataTreeVo implements Serializable {
private static final long serialVersionUID=1L;
private String id;
/**
* 数据层级 database、table、column
*/
private String type;
private String label;
private String name;
private String code;
private List<MetadataTreeVo> children;
}

View File

@@ -0,0 +1,20 @@
package cn.datax.service.data.metadata.api.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
@Data
public class SqlConsoleVo implements Serializable {
private static final long serialVersionUID=1L;
private String sql;
private Long time;
private Boolean success;
private Integer count;
private List<String> columnList;
private List<Map<String, Object>> dataList;
}

View File

@@ -0,0 +1,3 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
cn.datax.service.data.metadata.api.feign.factory.MetadataSourceServiceFeignFallbackFactory,\
cn.datax.service.data.metadata.api.feign.fallback.MetadataSourceServiceFeignFallbackImpl