Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
datax-cloud
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
黄营
datax-cloud
Commits
ec56b184
Commit
ec56b184
authored
Oct 14, 2020
by
yuwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
项目初始化
parent
dea3a460
Show whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
504 additions
and
74 deletions
+504
-74
CheckRuleDto.java
...a/cn/datax/service/data/quality/api/dto/CheckRuleDto.java
+1
-1
CheckRuleEntity.java
...atax/service/data/quality/api/entity/CheckRuleEntity.java
+3
-0
DataReportEntity.java
...tax/service/data/quality/api/entity/DataReportEntity.java
+21
-0
RuleLevelEntity.java
...atax/service/data/quality/api/entity/RuleLevelEntity.java
+41
-0
RuleLevelQuery.java
.../datax/service/data/quality/api/query/RuleLevelQuery.java
+20
-0
CheckRuleVo.java
...ava/cn/datax/service/data/quality/api/vo/CheckRuleVo.java
+1
-0
RuleLevelVo.java
...ava/cn/datax/service/data/quality/api/vo/RuleLevelVo.java
+23
-0
CheckReportController.java
...ervice/data/quality/controller/CheckReportController.java
+13
-0
RuleLevelController.java
.../service/data/quality/controller/RuleLevelController.java
+84
-0
CheckReportDao.java
...ava/cn/datax/service/data/quality/dao/CheckReportDao.java
+7
-0
RuleLevelDao.java
.../java/cn/datax/service/data/quality/dao/RuleLevelDao.java
+18
-0
RuleLevelMapper.java
...datax/service/data/quality/mapstruct/RuleLevelMapper.java
+33
-0
QualityTask.java
...datax/service/data/quality/schedule/task/QualityTask.java
+0
-2
TaskHander.java
.../datax/service/data/quality/schedule/task/TaskHander.java
+0
-6
CheckReportService.java
...atax/service/data/quality/service/CheckReportService.java
+15
-0
RuleLevelService.java
.../datax/service/data/quality/service/RuleLevelService.java
+17
-0
CheckReportServiceImpl.java
...ice/data/quality/service/impl/CheckReportServiceImpl.java
+45
-0
RuleLevelServiceImpl.java
...rvice/data/quality/service/impl/RuleLevelServiceImpl.java
+36
-0
CheckReportMapper.xml
...y-service/src/main/resources/mapper/CheckReportMapper.xml
+31
-0
CheckRuleMapper.xml
...ity-service/src/main/resources/mapper/CheckRuleMapper.xml
+6
-4
RuleLevelMapper.xml
...ity-service/src/main/resources/mapper/RuleLevelMapper.xml
+18
-0
checkrule.js
datax-ui/src/api/quality/checkrule.js
+8
-0
CheckRuleAdd.vue
datax-ui/src/views/quality/checkrule/CheckRuleAdd.vue
+23
-15
CheckRuleDetail.vue
datax-ui/src/views/quality/checkrule/CheckRuleDetail.vue
+17
-13
CheckRuleEdit.vue
datax-ui/src/views/quality/checkrule/CheckRuleEdit.vue
+21
-14
CheckRuleList.vue
datax-ui/src/views/quality/checkrule/CheckRuleList.vue
+2
-19
No files found.
datax-modules/data-quality-service-parent/data-quality-service-api/src/main/java/cn/datax/service/data/quality/api/dto/CheckRuleDto.java
View file @
ec56b184
...
@@ -31,7 +31,7 @@ public class CheckRuleDto implements Serializable {
...
@@ -31,7 +31,7 @@ public class CheckRuleDto implements Serializable {
@ApiModelProperty
(
value
=
"规则类型"
)
@ApiModelProperty
(
value
=
"规则类型"
)
private
String
ruleTypeId
;
private
String
ruleTypeId
;
@ApiModelProperty
(
value
=
"规则级别(3高、2中、1低)"
)
@ApiModelProperty
(
value
=
"规则级别(3高、2中、1低)"
)
private
String
ruleLevel
;
private
String
ruleLevel
Id
;
@ApiModelProperty
(
value
=
"数据源主键"
)
@ApiModelProperty
(
value
=
"数据源主键"
)
private
String
ruleSourceId
;
private
String
ruleSourceId
;
@ApiModelProperty
(
value
=
"数据源"
)
@ApiModelProperty
(
value
=
"数据源"
)
...
...
datax-modules/data-quality-service-parent/data-quality-service-api/src/main/java/cn/datax/service/data/quality/api/entity/CheckRuleEntity.java
View file @
ec56b184
...
@@ -42,6 +42,9 @@ public class CheckRuleEntity extends DataScopeBaseEntity {
...
@@ -42,6 +42,9 @@ public class CheckRuleEntity extends DataScopeBaseEntity {
/**
/**
* 规则级别(3高、2中、1低)
* 规则级别(3高、2中、1低)
*/
*/
private
String
ruleLevelId
;
@TableField
(
exist
=
false
)
private
String
ruleLevel
;
private
String
ruleLevel
;
/**
/**
...
...
datax-modules/data-quality-service-parent/data-quality-service-api/src/main/java/cn/datax/service/data/quality/api/entity/DataReportEntity.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
api
.
entity
;
import
lombok.Data
;
import
java.io.Serializable
;
@Data
public
class
DataReportEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
String
ruleTypeId
;
private
String
ruleTypeName
;
private
String
ruleId
;
private
String
ruleName
;
private
String
ruleSourceId
;
private
String
ruleSourceName
;
private
String
ruleLevelId
;
private
String
ruleLevelName
;
private
Integer
checkErrorCount
;
}
datax-modules/data-quality-service-parent/data-quality-service-api/src/main/java/cn/datax/service/data/quality/api/entity/RuleLevelEntity.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
api
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
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 yuwei
* @since 2020-10-14
*/
@Data
@Accessors
(
chain
=
true
)
@TableName
(
"quality_rule_level"
)
public
class
RuleLevelEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
value
=
"id"
,
type
=
IdType
.
ASSIGN_ID
)
private
String
id
;
/**
* 规则级别编码
*/
private
String
code
;
/**
* 规则级别名称
*/
private
String
name
;
}
datax-modules/data-quality-service-parent/data-quality-service-api/src/main/java/cn/datax/service/data/quality/api/query/RuleLevelQuery.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
api
.
query
;
import
cn.datax.common.base.BaseQueryParams
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
/**
* <p>
* 规则级别信息表 查询实体
* </p>
*
* @author yuwei
* @since 2020-10-14
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
public
class
RuleLevelQuery
extends
BaseQueryParams
{
private
static
final
long
serialVersionUID
=
1L
;
}
datax-modules/data-quality-service-parent/data-quality-service-api/src/main/java/cn/datax/service/data/quality/api/vo/CheckRuleVo.java
View file @
ec56b184
...
@@ -27,6 +27,7 @@ public class CheckRuleVo implements Serializable {
...
@@ -27,6 +27,7 @@ public class CheckRuleVo implements Serializable {
private
String
ruleName
;
private
String
ruleName
;
private
String
ruleTypeId
;
private
String
ruleTypeId
;
private
String
ruleType
;
private
String
ruleType
;
private
String
ruleLevelId
;
private
String
ruleLevel
;
private
String
ruleLevel
;
private
String
ruleSourceId
;
private
String
ruleSourceId
;
private
String
ruleSource
;
private
String
ruleSource
;
...
...
datax-modules/data-quality-service-parent/data-quality-service-api/src/main/java/cn/datax/service/data/quality/api/vo/RuleLevelVo.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
api
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* <p>
* 规则级别信息表 实体VO
* </p>
*
* @author yuwei
* @since 2020-10-14
*/
@Data
public
class
RuleLevelVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
String
id
;
private
String
code
;
private
String
name
;
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/controller/CheckReportController.java
View file @
ec56b184
...
@@ -3,6 +3,7 @@ package cn.datax.service.data.quality.controller;
...
@@ -3,6 +3,7 @@ package cn.datax.service.data.quality.controller;
import
cn.datax.common.core.JsonPage
;
import
cn.datax.common.core.JsonPage
;
import
cn.datax.common.core.R
;
import
cn.datax.common.core.R
;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.service.data.quality.api.entity.DataReportEntity
;
import
cn.datax.service.data.quality.api.vo.CheckReportVo
;
import
cn.datax.service.data.quality.api.vo.CheckReportVo
;
import
cn.datax.service.data.quality.api.query.CheckReportQuery
;
import
cn.datax.service.data.quality.api.query.CheckReportQuery
;
import
cn.datax.service.data.quality.mapstruct.CheckReportMapper
;
import
cn.datax.service.data.quality.mapstruct.CheckReportMapper
;
...
@@ -81,4 +82,16 @@ public class CheckReportController extends BaseController {
...
@@ -81,4 +82,16 @@ public class CheckReportController extends BaseController {
JsonPage
<
CheckReportVo
>
jsonPage
=
new
JsonPage
<>(
page
.
getCurrent
(),
page
.
getSize
(),
page
.
getTotal
(),
collect
);
JsonPage
<
CheckReportVo
>
jsonPage
=
new
JsonPage
<>(
page
.
getCurrent
(),
page
.
getSize
(),
page
.
getTotal
(),
collect
);
return
R
.
ok
().
setData
(
jsonPage
);
return
R
.
ok
().
setData
(
jsonPage
);
}
}
@GetMapping
(
"/getReportBySource"
)
public
R
getReportBySource
()
{
List
<
DataReportEntity
>
list
=
checkReportService
.
getReportBySource
();
return
R
.
ok
().
setData
(
list
);
}
@GetMapping
(
"/getReportByType"
)
public
R
getReportByType
()
{
List
<
DataReportEntity
>
list
=
checkReportService
.
getReportByType
();
return
R
.
ok
().
setData
(
list
);
}
}
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/controller/RuleLevelController.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
controller
;
import
cn.datax.common.core.JsonPage
;
import
cn.datax.common.core.R
;
import
cn.datax.service.data.quality.api.entity.RuleLevelEntity
;
import
cn.datax.service.data.quality.api.vo.RuleLevelVo
;
import
cn.datax.service.data.quality.api.query.RuleLevelQuery
;
import
cn.datax.service.data.quality.mapstruct.RuleLevelMapper
;
import
cn.datax.service.data.quality.service.RuleLevelService
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
cn.datax.common.base.BaseController
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* <p>
* 规则级别信息表 前端控制器
* </p>
*
* @author yuwei
* @since 2020-10-14
*/
@Api
(
tags
=
{
"规则级别信息表"
})
@RestController
@RequestMapping
(
"/ruleLevels"
)
public
class
RuleLevelController
extends
BaseController
{
@Autowired
private
RuleLevelService
ruleLevelService
;
@Autowired
private
RuleLevelMapper
ruleLevelMapper
;
/**
* 通过ID查询信息
*
* @param id
* @return
*/
@ApiOperation
(
value
=
"获取详细信息"
,
notes
=
"根据url的id来获取详细信息"
)
@ApiImplicitParam
(
name
=
"id"
,
value
=
"ID"
,
required
=
true
,
dataType
=
"String"
,
paramType
=
"path"
)
@GetMapping
(
"/{id}"
)
public
R
getRuleLevelById
(
@PathVariable
String
id
)
{
RuleLevelEntity
ruleLevelEntity
=
ruleLevelService
.
getRuleLevelById
(
id
);
return
R
.
ok
().
setData
(
ruleLevelMapper
.
toVO
(
ruleLevelEntity
));
}
@ApiOperation
(
value
=
"获取列表"
,
notes
=
""
)
@GetMapping
(
"/list"
)
public
R
getRuleTypeList
()
{
List
<
RuleLevelEntity
>
list
=
ruleLevelService
.
list
(
Wrappers
.
emptyWrapper
());
return
R
.
ok
().
setData
(
list
);
}
/**
* 分页查询信息
*
* @param ruleLevelQuery
* @return
*/
@ApiOperation
(
value
=
"分页查询"
,
notes
=
""
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"ruleLevelQuery"
,
value
=
"查询实体ruleLevelQuery"
,
required
=
true
,
dataTypeClass
=
RuleLevelQuery
.
class
)
})
@GetMapping
(
"/page"
)
public
R
getRuleLevelPage
(
RuleLevelQuery
ruleLevelQuery
)
{
QueryWrapper
<
RuleLevelEntity
>
queryWrapper
=
new
QueryWrapper
<>();
IPage
<
RuleLevelEntity
>
page
=
ruleLevelService
.
page
(
new
Page
<>(
ruleLevelQuery
.
getPageNum
(),
ruleLevelQuery
.
getPageSize
()),
queryWrapper
);
List
<
RuleLevelVo
>
collect
=
page
.
getRecords
().
stream
().
map
(
ruleLevelMapper:
:
toVO
).
collect
(
Collectors
.
toList
());
JsonPage
<
RuleLevelVo
>
jsonPage
=
new
JsonPage
<>(
page
.
getCurrent
(),
page
.
getSize
(),
page
.
getTotal
(),
collect
);
return
R
.
ok
().
setData
(
jsonPage
);
}
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/dao/CheckReportDao.java
View file @
ec56b184
...
@@ -2,12 +2,15 @@ package cn.datax.service.data.quality.dao;
...
@@ -2,12 +2,15 @@ package cn.datax.service.data.quality.dao;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.service.data.quality.api.entity.DataReportEntity
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.conditions.Wrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Constants
;
import
com.baomidou.mybatisplus.core.toolkit.Constants
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
/**
* <p>
* <p>
* 核查报告信息表 Mapper 接口
* 核查报告信息表 Mapper 接口
...
@@ -21,4 +24,8 @@ public interface CheckReportDao extends BaseDao<CheckReportEntity> {
...
@@ -21,4 +24,8 @@ public interface CheckReportDao extends BaseDao<CheckReportEntity> {
@Override
@Override
<
E
extends
IPage
<
CheckReportEntity
>>
E
selectPage
(
E
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
CheckReportEntity
>
queryWrapper
);
<
E
extends
IPage
<
CheckReportEntity
>>
E
selectPage
(
E
page
,
@Param
(
Constants
.
WRAPPER
)
Wrapper
<
CheckReportEntity
>
queryWrapper
);
List
<
DataReportEntity
>
getReportBySource
();
List
<
DataReportEntity
>
getReportByType
();
}
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/dao/RuleLevelDao.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
dao
;
import
cn.datax.common.base.BaseDao
;
import
cn.datax.service.data.quality.api.entity.RuleLevelEntity
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* <p>
* 规则级别信息表 Mapper 接口
* </p>
*
* @author yuwei
* @since 2020-10-14
*/
@Mapper
public
interface
RuleLevelDao
extends
BaseDao
<
RuleLevelEntity
>
{
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/mapstruct/RuleLevelMapper.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
mapstruct
;
import
cn.datax.service.data.quality.api.entity.RuleLevelEntity
;
import
cn.datax.service.data.quality.api.vo.RuleLevelVo
;
import
org.mapstruct.Mapper
;
import
java.util.List
;
/**
* <p>
* 规则级别信息表 Mapper 实体映射
* </p>
*
* @author yuwei
* @since 2020-10-14
*/
@Mapper
(
componentModel
=
"spring"
)
public
interface
RuleLevelMapper
{
/**
* 将源对象转换为VO对象
* @param e
* @return D
*/
RuleLevelVo
toVO
(
RuleLevelEntity
e
);
/**
* 将源对象集合转换为VO对象集合
* @param es
* @return List<D>
*/
List
<
RuleLevelVo
>
toVO
(
List
<
RuleLevelEntity
>
es
);
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/schedule/task/QualityTask.java
View file @
ec56b184
...
@@ -45,7 +45,6 @@ public class QualityTask {
...
@@ -45,7 +45,6 @@ public class QualityTask {
private
ScheduleLogService
scheduleLogService
;
private
ScheduleLogService
scheduleLogService
;
public
void
task
(
Map
<
String
,
Object
>
map
)
{
public
void
task
(
Map
<
String
,
Object
>
map
)
{
System
.
out
.
println
(
"执行参数:"
+
map
);
// 结果集
// 结果集
List
<
CheckReportEntity
>
result
=
new
ArrayList
<>();
List
<
CheckReportEntity
>
result
=
new
ArrayList
<>();
// 获取可执行的核查规则
// 获取可执行的核查规则
...
@@ -68,7 +67,6 @@ public class QualityTask {
...
@@ -68,7 +67,6 @@ public class QualityTask {
// 关闭线程池
// 关闭线程池
threadPoolExecutor
.
shutdown
();
threadPoolExecutor
.
shutdown
();
// 核查报告
// 核查报告
System
.
out
.
println
(
result
);
result
.
stream
().
forEach
(
s
->
{
result
.
stream
().
forEach
(
s
->
{
// 插入核查结果正常的数据
// 插入核查结果正常的数据
String
status
=
StrUtil
.
isBlank
(
s
.
getCheckResult
())
?
DataConstant
.
TrueOrFalse
.
TRUE
.
getKey
()
:
DataConstant
.
TrueOrFalse
.
FALSE
.
getKey
();
String
status
=
StrUtil
.
isBlank
(
s
.
getCheckResult
())
?
DataConstant
.
TrueOrFalse
.
TRUE
.
getKey
()
:
DataConstant
.
TrueOrFalse
.
FALSE
.
getKey
();
...
...
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/schedule/task/TaskHander.java
View file @
ec56b184
...
@@ -28,10 +28,6 @@ public class TaskHander implements Runnable {
...
@@ -28,10 +28,6 @@ public class TaskHander implements Runnable {
private
List
<
CheckReportEntity
>
list
;
private
List
<
CheckReportEntity
>
list
;
public
TaskHander
()
{
super
();
}
public
TaskHander
(
MetadataSourceServiceFeign
metadataSourceServiceFeign
,
DataSourceFactory
dataSourceFactory
,
CheckRuleEntity
checkRuleEntity
,
List
<
CheckReportEntity
>
list
)
{
public
TaskHander
(
MetadataSourceServiceFeign
metadataSourceServiceFeign
,
DataSourceFactory
dataSourceFactory
,
CheckRuleEntity
checkRuleEntity
,
List
<
CheckReportEntity
>
list
)
{
super
();
super
();
this
.
metadataSourceServiceFeign
=
metadataSourceServiceFeign
;
this
.
metadataSourceServiceFeign
=
metadataSourceServiceFeign
;
...
@@ -42,7 +38,6 @@ public class TaskHander implements Runnable {
...
@@ -42,7 +38,6 @@ public class TaskHander implements Runnable {
@Override
@Override
public
void
run
()
{
public
void
run
()
{
System
.
out
.
println
(
Thread
.
currentThread
().
getName
()
+
"线程执行开始"
);
CheckReportEntity
checkReportEntity
=
new
CheckReportEntity
();
CheckReportEntity
checkReportEntity
=
new
CheckReportEntity
();
checkReportEntity
.
setCheckRuleId
(
checkRuleEntity
.
getId
());
checkReportEntity
.
setCheckRuleId
(
checkRuleEntity
.
getId
());
checkReportEntity
.
setCheckDate
(
LocalDateTime
.
now
());
checkReportEntity
.
setCheckDate
(
LocalDateTime
.
now
());
...
@@ -97,6 +92,5 @@ public class TaskHander implements Runnable {
...
@@ -97,6 +92,5 @@ public class TaskHander implements Runnable {
throw
new
DataException
(
"释放数据库连接出错"
);
throw
new
DataException
(
"释放数据库连接出错"
);
}
}
}
}
System
.
out
.
println
(
Thread
.
currentThread
().
getName
()
+
"线程执行结束"
);
}
}
}
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/service/CheckReportService.java
View file @
ec56b184
...
@@ -2,6 +2,9 @@ package cn.datax.service.data.quality.service;
...
@@ -2,6 +2,9 @@ package cn.datax.service.data.quality.service;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.common.base.BaseService
;
import
cn.datax.common.base.BaseService
;
import
cn.datax.service.data.quality.api.entity.DataReportEntity
;
import
java.util.List
;
/**
/**
* <p>
* <p>
...
@@ -14,4 +17,16 @@ import cn.datax.common.base.BaseService;
...
@@ -14,4 +17,16 @@ import cn.datax.common.base.BaseService;
public
interface
CheckReportService
extends
BaseService
<
CheckReportEntity
>
{
public
interface
CheckReportService
extends
BaseService
<
CheckReportEntity
>
{
CheckReportEntity
getCheckReportById
(
String
id
);
CheckReportEntity
getCheckReportById
(
String
id
);
/**
* 按数据源统计
* @return
*/
List
<
DataReportEntity
>
getReportBySource
();
/**
* 按规则类型统计
* @return
*/
List
<
DataReportEntity
>
getReportByType
();
}
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/service/RuleLevelService.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
service
;
import
cn.datax.service.data.quality.api.entity.RuleLevelEntity
;
import
cn.datax.common.base.BaseService
;
/**
* <p>
* 规则级别信息表 服务类
* </p>
*
* @author yuwei
* @since 2020-10-14
*/
public
interface
RuleLevelService
extends
BaseService
<
RuleLevelEntity
>
{
RuleLevelEntity
getRuleLevelById
(
String
id
);
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/service/impl/CheckReportServiceImpl.java
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
service
.
impl
;
package
cn
.
datax
.
service
.
data
.
quality
.
service
.
impl
;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.service.data.quality.api.entity.CheckReportEntity
;
import
cn.datax.service.data.quality.api.entity.DataReportEntity
;
import
cn.datax.service.data.quality.api.entity.RuleLevelEntity
;
import
cn.datax.service.data.quality.dao.RuleLevelDao
;
import
cn.datax.service.data.quality.service.CheckReportService
;
import
cn.datax.service.data.quality.service.CheckReportService
;
import
cn.datax.service.data.quality.mapstruct.CheckReportMapper
;
import
cn.datax.service.data.quality.mapstruct.CheckReportMapper
;
import
cn.datax.service.data.quality.dao.CheckReportDao
;
import
cn.datax.service.data.quality.dao.CheckReportDao
;
import
cn.datax.common.base.BaseServiceImpl
;
import
cn.datax.common.base.BaseServiceImpl
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
/**
* <p>
* <p>
* 核查报告信息表 服务实现类
* 核查报告信息表 服务实现类
...
@@ -28,9 +35,47 @@ public class CheckReportServiceImpl extends BaseServiceImpl<CheckReportDao, Chec
...
@@ -28,9 +35,47 @@ public class CheckReportServiceImpl extends BaseServiceImpl<CheckReportDao, Chec
@Autowired
@Autowired
private
CheckReportMapper
checkReportMapper
;
private
CheckReportMapper
checkReportMapper
;
@Autowired
private
RuleLevelDao
ruleLevelDao
;
@Override
@Override
public
CheckReportEntity
getCheckReportById
(
String
id
)
{
public
CheckReportEntity
getCheckReportById
(
String
id
)
{
CheckReportEntity
checkReportEntity
=
super
.
getById
(
id
);
CheckReportEntity
checkReportEntity
=
super
.
getById
(
id
);
return
checkReportEntity
;
return
checkReportEntity
;
}
}
@Override
public
List
<
DataReportEntity
>
getReportBySource
()
{
List
<
RuleLevelEntity
>
ruleLevelList
=
ruleLevelDao
.
selectList
(
Wrappers
.
emptyWrapper
());
List
<
DataReportEntity
>
list
=
checkReportDao
.
getReportBySource
();
// 补全数据
List
<
DataReportEntity
>
differenceReportList
=
new
ArrayList
<>();
// 补全数据源分组缺失的规则级别数据
Map
<
String
,
List
<
DataReportEntity
>>
sourceMap
=
list
.
stream
().
collect
(
Collectors
.
groupingBy
(
DataReportEntity:
:
getRuleSourceId
));
Iterator
<
Map
.
Entry
<
String
,
List
<
DataReportEntity
>>>
sourceIterator
=
sourceMap
.
entrySet
().
iterator
();
while
(
sourceIterator
.
hasNext
())
{
Map
.
Entry
<
String
,
List
<
DataReportEntity
>>
sourceEntry
=
sourceIterator
.
next
();
List
<
DataReportEntity
>
entryValue
=
sourceEntry
.
getValue
();
DataReportEntity
dataReportEntity
=
entryValue
.
get
(
0
);
// 差集 (ruleLevelList - entryValue)
ruleLevelList
.
stream
().
filter
(
item
->
entryValue
.
stream
().
map
(
DataReportEntity:
:
getRuleLevelId
).
noneMatch
(
id
->
Objects
.
equals
(
item
.
getId
(),
id
)))
.
forEach
(
s
->
{
DataReportEntity
report
=
new
DataReportEntity
();
report
.
setRuleSourceId
(
dataReportEntity
.
getRuleSourceId
());
report
.
setRuleSourceName
(
dataReportEntity
.
getRuleSourceName
());
report
.
setRuleLevelId
(
s
.
getId
());
report
.
setRuleLevelName
(
s
.
getName
());
report
.
setCheckErrorCount
(
0
);
differenceReportList
.
add
(
report
);
});
}
list
.
addAll
(
differenceReportList
);
return
list
;
}
@Override
public
List
<
DataReportEntity
>
getReportByType
()
{
List
<
DataReportEntity
>
list
=
checkReportDao
.
getReportByType
();
return
list
;
}
}
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/java/cn/datax/service/data/quality/service/impl/RuleLevelServiceImpl.java
0 → 100644
View file @
ec56b184
package
cn
.
datax
.
service
.
data
.
quality
.
service
.
impl
;
import
cn.datax.service.data.quality.api.entity.RuleLevelEntity
;
import
cn.datax.service.data.quality.service.RuleLevelService
;
import
cn.datax.service.data.quality.mapstruct.RuleLevelMapper
;
import
cn.datax.service.data.quality.dao.RuleLevelDao
;
import
cn.datax.common.base.BaseServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
/**
* <p>
* 规则级别信息表 服务实现类
* </p>
*
* @author yuwei
* @since 2020-10-14
*/
@Service
@Transactional
(
propagation
=
Propagation
.
SUPPORTS
,
readOnly
=
true
,
rollbackFor
=
Exception
.
class
)
public
class
RuleLevelServiceImpl
extends
BaseServiceImpl
<
RuleLevelDao
,
RuleLevelEntity
>
implements
RuleLevelService
{
@Autowired
private
RuleLevelDao
ruleLevelDao
;
@Autowired
private
RuleLevelMapper
ruleLevelMapper
;
@Override
public
RuleLevelEntity
getRuleLevelById
(
String
id
)
{
RuleLevelEntity
ruleLevelEntity
=
super
.
getById
(
id
);
return
ruleLevelEntity
;
}
}
datax-modules/data-quality-service-parent/data-quality-service/src/main/resources/mapper/CheckReportMapper.xml
View file @
ec56b184
...
@@ -41,4 +41,35 @@
...
@@ -41,4 +41,35 @@
${ew.customSqlSegment}
${ew.customSqlSegment}
</select>
</select>
<resultMap
id=
"ReportResultMap"
type=
"cn.datax.service.data.quality.api.entity.DataReportEntity"
>
<result
column=
"rule_type_id"
property=
"ruleTypeId"
/>
<result
column=
"rule_type_name"
property=
"ruleTypeName"
/>
<result
column=
"rule_id"
property=
"ruleId"
/>
<result
column=
"rule_name"
property=
"ruleName"
/>
<result
column=
"rule_source_id"
property=
"ruleSourceId"
/>
<result
column=
"rule_source_name"
property=
"ruleSourceName"
/>
<result
column=
"rule_level_id"
property=
"ruleLevelId"
/>
<result
column=
"rule_level_name"
property=
"ruleLevelName"
/>
<result
column=
"check_error_count"
property=
"checkErrorCount"
/>
</resultMap>
<select
id=
"getReportBySource"
resultMap=
"ReportResultMap"
>
SELECT temp.*, l.name AS rule_level_name from (
SELECT r.rule_source_id, r.rule_source AS rule_source_name, r.rule_level_id,
COALESCE(SUM(t.check_error_count), 0) AS check_error_count
FROM quality_check_rule r
LEFT JOIN quality_check_report t ON t.check_batch = r.last_check_batch AND t.check_rule_id = r.id
GROUP BY r.rule_source_id, r.rule_source, r.rule_level_id
) temp LEFT JOIN quality_rule_level l ON l.id = temp.rule_level_id
</select>
<select
id=
"getReportByType"
resultMap=
"ReportResultMap"
>
SELECT type.id AS rule_type_id, type.name AS rule_type_name, rule.id AS rule_id, rule.rule_name,
level.id AS rule_level_id, level.name AS rule_level_name, COALESCE(report.check_error_count, 0) AS check_error_count
FROM quality_check_rule rule
LEFT JOIN quality_check_report report ON report.check_batch = rule.last_check_batch and report.check_rule_id = rule.id
LEFT JOIN quality_rule_type type ON type.id = rule.rule_type_id
LEFT JOIN quality_rule_level level ON level.id = rule.rule_level_id
</select>
</mapper>
</mapper>
datax-modules/data-quality-service-parent/data-quality-service/src/main/resources/mapper/CheckRuleMapper.xml
View file @
ec56b184
...
@@ -14,7 +14,7 @@
...
@@ -14,7 +14,7 @@
<result
column=
"remark"
property=
"remark"
/>
<result
column=
"remark"
property=
"remark"
/>
<result
column=
"rule_name"
property=
"ruleName"
/>
<result
column=
"rule_name"
property=
"ruleName"
/>
<result
column=
"rule_type_id"
property=
"ruleTypeId"
/>
<result
column=
"rule_type_id"
property=
"ruleTypeId"
/>
<result
column=
"rule_level
"
property=
"ruleLevel
"
/>
<result
column=
"rule_level
_id"
property=
"ruleLevelId
"
/>
<result
column=
"rule_source_id"
property=
"ruleSourceId"
/>
<result
column=
"rule_source_id"
property=
"ruleSourceId"
/>
<result
column=
"rule_source"
property=
"ruleSource"
/>
<result
column=
"rule_source"
property=
"ruleSource"
/>
<result
column=
"rule_table_id"
property=
"ruleTableId"
/>
<result
column=
"rule_table_id"
property=
"ruleTableId"
/>
...
@@ -29,6 +29,7 @@
...
@@ -29,6 +29,7 @@
<resultMap
id=
"ExtendResultMap"
type=
"cn.datax.service.data.quality.api.entity.CheckRuleEntity"
extends=
"BaseResultMap"
>
<resultMap
id=
"ExtendResultMap"
type=
"cn.datax.service.data.quality.api.entity.CheckRuleEntity"
extends=
"BaseResultMap"
>
<result
column=
"rule_type"
property=
"ruleType"
/>
<result
column=
"rule_type"
property=
"ruleType"
/>
<result
column=
"rule_level"
property=
"ruleLevel"
/>
</resultMap>
</resultMap>
<!-- 通用查询结果列 -->
<!-- 通用查询结果列 -->
...
@@ -41,7 +42,7 @@
...
@@ -41,7 +42,7 @@
update_by,
update_by,
update_time,
update_time,
remark,
remark,
rule_name, rule_type_id, rule_level, rule_source_id, rule_source, rule_table_id, rule_table, rule_table_comment
rule_name, rule_type_id, rule_level
_id
, rule_source_id, rule_source, rule_table_id, rule_table, rule_table_comment
rule_column_id, rule_column, rule_column_comment, rule_sql, last_check_batch
rule_column_id, rule_column, rule_column_comment, rule_sql, last_check_batch
</sql>
</sql>
...
@@ -54,15 +55,16 @@
...
@@ -54,15 +55,16 @@
${alias}.update_by,
${alias}.update_by,
${alias}.update_time,
${alias}.update_time,
${alias}.remark,
${alias}.remark,
${alias}.rule_name, ${alias}.rule_type_id, ${alias}.rule_level, ${alias}.rule_source_id, ${alias}.rule_source,
${alias}.rule_name, ${alias}.rule_type_id, ${alias}.rule_level
_id
, ${alias}.rule_source_id, ${alias}.rule_source,
${alias}.rule_table_id, ${alias}.rule_table, ${alias}.rule_table_comment, ${alias}.rule_column_id, ${alias}.rule_column, ${alias}.rule_column_comment, ${alias}.rule_sql, ${alias}.last_check_batch
${alias}.rule_table_id, ${alias}.rule_table, ${alias}.rule_table_comment, ${alias}.rule_column_id, ${alias}.rule_column, ${alias}.rule_column_comment, ${alias}.rule_sql, ${alias}.last_check_batch
</sql>
</sql>
<select
id=
"selectPage"
resultMap=
"ExtendResultMap"
>
<select
id=
"selectPage"
resultMap=
"ExtendResultMap"
>
SELECT t.name as rule_type,
SELECT t.name as rule_type,
l.name as rule_level
<include
refid=
"Rule_Column_List"
><property
name=
"alias"
value=
"r"
/></include>
<include
refid=
"Rule_Column_List"
><property
name=
"alias"
value=
"r"
/></include>
FROM quality_check_rule r
FROM quality_check_rule r
LEFT JOIN quality_rule_type t ON t.id = r.rule_type_id
LEFT JOIN quality_rule_type t ON t.id = r.rule_type_id
LEFT JOIN quality_rule_level l ON l.id = r.rule_level_id
${ew.customSqlSegment}
${ew.customSqlSegment}
</select>
</select>
...
...
datax-modules/data-quality-service-parent/data-quality-service/src/main/resources/mapper/RuleLevelMapper.xml
0 → 100644
View file @
ec56b184
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.datax.service.data.quality.dao.RuleLevelDao"
>
<!-- 通用查询映射结果 -->
<resultMap
id=
"BaseResultMap"
type=
"cn.datax.service.data.quality.api.entity.RuleLevelEntity"
>
<result
column=
"id"
property=
"id"
/>
<result
column=
"code"
property=
"code"
/>
<result
column=
"name"
property=
"name"
/>
</resultMap>
<!-- 通用查询结果列 -->
<sql
id=
"Base_Column_List"
>
id,
code, name
</sql>
</mapper>
datax-ui/src/api/quality/checkrule.js
View file @
ec56b184
...
@@ -8,6 +8,14 @@ export function listRuleType(data) {
...
@@ -8,6 +8,14 @@ export function listRuleType(data) {
})
})
}
}
export
function
listRuleLevel
(
data
)
{
return
request
({
url
:
'/data/quality/ruleLevels/list'
,
method
:
'get'
,
params
:
data
})
}
export
function
pageCheckRule
(
data
)
{
export
function
pageCheckRule
(
data
)
{
return
request
({
return
request
({
url
:
'/data/quality/checkRules/page'
,
url
:
'/data/quality/checkRules/page'
,
...
...
datax-ui/src/views/quality/checkrule/CheckRuleAdd.vue
View file @
ec56b184
...
@@ -12,14 +12,15 @@
...
@@ -12,14 +12,15 @@
<el-form-item
label=
"规则名称"
prop=
"ruleName"
>
<el-form-item
label=
"规则名称"
prop=
"ruleName"
>
<el-input
v-model=
"form.ruleName"
placeholder=
"请输入规则名称"
/>
<el-input
v-model=
"form.ruleName"
placeholder=
"请输入规则名称"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"规则级别"
prop=
"ruleLevel"
>
<el-form-item
label=
"规则级别"
prop=
"ruleLevelId"
>
<el-radio-group
v-model=
"form.ruleLevel"
>
<el-select
v-model=
"form.ruleLevelId"
placeholder=
"请选择规则级别"
>
<el-radio
<el-option
v-for=
"dict in ruleLevelOptions"
v-for=
"item in ruleLevelOptions"
:key=
"dict.id"
:key=
"item.id"
:label=
"dict.itemText"
:label=
"item.name"
>
{{
dict
.
itemValue
}}
</el-radio>
:value=
"item.id"
</el-radio-group>
/>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"数据源"
prop=
"ruleSourceId"
>
<el-form-item
label=
"数据源"
prop=
"ruleSourceId"
>
<el-select
v-model=
"form.ruleSourceId"
placeholder=
"请选择数据源"
@
change=
"sourceSelectChanged"
>
<el-select
v-model=
"form.ruleSourceId"
placeholder=
"请选择数据源"
@
change=
"sourceSelectChanged"
>
...
@@ -74,7 +75,7 @@
...
@@ -74,7 +75,7 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
addCheckRule
}
from
'@/api/quality/checkrule'
import
{
listRuleLevel
,
addCheckRule
}
from
'@/api/quality/checkrule'
import
{
listDataSource
}
from
'@/api/metadata/datasource'
import
{
listDataSource
}
from
'@/api/metadata/datasource'
import
{
listDataTable
}
from
'@/api/metadata/datatable'
import
{
listDataTable
}
from
'@/api/metadata/datatable'
import
{
listDataColumn
}
from
'@/api/metadata/datacolumn'
import
{
listDataColumn
}
from
'@/api/metadata/datacolumn'
...
@@ -109,7 +110,8 @@ export default {
...
@@ -109,7 +110,8 @@ export default {
// 表单参数
// 表单参数
form
:
{
form
:
{
ruleName
:
undefined
,
ruleName
:
undefined
,
ruleLevel
:
'1'
,
ruleTypeId
:
undefined
,
ruleLevelId
:
undefined
,
ruleSourceId
:
undefined
,
ruleSourceId
:
undefined
,
ruleSource
:
undefined
,
ruleSource
:
undefined
,
ruleTableId
:
undefined
,
ruleTableId
:
undefined
,
...
@@ -124,6 +126,9 @@ export default {
...
@@ -124,6 +126,9 @@ export default {
ruleName
:
[
ruleName
:
[
{
required
:
true
,
message
:
'规则名称不能为空'
,
trigger
:
'blur'
}
{
required
:
true
,
message
:
'规则名称不能为空'
,
trigger
:
'blur'
}
],
],
ruleLevelId
:
[
{
required
:
true
,
message
:
'规则级别不能为空'
,
trigger
:
'change'
}
],
ruleSourceId
:
[
ruleSourceId
:
[
{
required
:
true
,
message
:
'数据源不能为空'
,
trigger
:
'change'
}
{
required
:
true
,
message
:
'数据源不能为空'
,
trigger
:
'change'
}
],
],
...
@@ -151,17 +156,20 @@ export default {
...
@@ -151,17 +156,20 @@ export default {
this
.
statusOptions
=
response
.
data
this
.
statusOptions
=
response
.
data
}
}
})
})
this
.
getDicts
(
'data_check_rule_level'
).
then
(
response
=>
{
this
.
getRuleLevelList
()
if
(
response
.
success
)
{
this
.
ruleLevelOptions
=
response
.
data
}
})
this
.
getDataSourceList
()
this
.
getDataSourceList
()
},
},
methods
:
{
methods
:
{
showCard
()
{
showCard
()
{
this
.
$emit
(
'showCard'
,
this
.
showOptions
)
this
.
$emit
(
'showCard'
,
this
.
showOptions
)
},
},
getRuleLevelList
()
{
listRuleLevel
().
then
(
response
=>
{
if
(
response
.
success
)
{
this
.
ruleLevelOptions
=
response
.
data
}
})
},
getDataSourceList
()
{
getDataSourceList
()
{
listDataSource
().
then
(
response
=>
{
listDataSource
().
then
(
response
=>
{
if
(
response
.
success
)
{
if
(
response
.
success
)
{
...
...
datax-ui/src/views/quality/checkrule/CheckRuleDetail.vue
View file @
ec56b184
...
@@ -12,13 +12,14 @@
...
@@ -12,13 +12,14 @@
<el-input
v-model=
"form.ruleName"
/>
<el-input
v-model=
"form.ruleName"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"规则级别"
>
<el-form-item
label=
"规则级别"
>
<el-radio-group
v-model=
"form.ruleLevel"
>
<el-select
v-model=
"form.ruleLevelId"
>
<el-radio
<el-option
v-for=
"dict in ruleLevelOptions"
v-for=
"item in ruleLevelOptions"
:key=
"dict.id"
:key=
"item.id"
:label=
"dict.itemText"
:label=
"item.name"
>
{{
dict
.
itemValue
}}
</el-radio>
:value=
"item.id"
</el-radio-group>
/>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"数据源"
>
<el-form-item
label=
"数据源"
>
<el-select
v-model=
"form.ruleSourceId"
>
<el-select
v-model=
"form.ruleSourceId"
>
...
@@ -73,7 +74,7 @@
...
@@ -73,7 +74,7 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
getCheckRule
}
from
'@/api/quality/checkrule'
import
{
listRuleLevel
,
getCheckRule
}
from
'@/api/quality/checkrule'
import
{
listDataSource
}
from
'@/api/metadata/datasource'
import
{
listDataSource
}
from
'@/api/metadata/datasource'
import
{
listDataTable
}
from
'@/api/metadata/datatable'
import
{
listDataTable
}
from
'@/api/metadata/datatable'
import
{
listDataColumn
}
from
'@/api/metadata/datacolumn'
import
{
listDataColumn
}
from
'@/api/metadata/datacolumn'
...
@@ -117,11 +118,7 @@ export default {
...
@@ -117,11 +118,7 @@ export default {
this
.
statusOptions
=
response
.
data
this
.
statusOptions
=
response
.
data
}
}
})
})
this
.
getDicts
(
'data_check_rule_level'
).
then
(
response
=>
{
this
.
getRuleLevelList
()
if
(
response
.
success
)
{
this
.
ruleLevelOptions
=
response
.
data
}
})
this
.
getDataSourceList
()
this
.
getDataSourceList
()
},
},
mounted
()
{
mounted
()
{
...
@@ -149,6 +146,13 @@ export default {
...
@@ -149,6 +146,13 @@ export default {
}
}
})
||
[]
})
||
[]
},
},
getRuleLevelList
()
{
listRuleLevel
().
then
(
response
=>
{
if
(
response
.
success
)
{
this
.
ruleLevelOptions
=
response
.
data
}
})
},
getDataSourceList
()
{
getDataSourceList
()
{
listDataSource
().
then
(
response
=>
{
listDataSource
().
then
(
response
=>
{
if
(
response
.
success
)
{
if
(
response
.
success
)
{
...
...
datax-ui/src/views/quality/checkrule/CheckRuleEdit.vue
View file @
ec56b184
...
@@ -12,14 +12,15 @@
...
@@ -12,14 +12,15 @@
<el-form-item
label=
"规则名称"
prop=
"ruleName"
>
<el-form-item
label=
"规则名称"
prop=
"ruleName"
>
<el-input
v-model=
"form.ruleName"
placeholder=
"请输入规则名称"
/>
<el-input
v-model=
"form.ruleName"
placeholder=
"请输入规则名称"
/>
</el-form-item>
</el-form-item>
<el-form-item
label=
"规则级别"
prop=
"ruleLevel"
>
<el-form-item
label=
"规则级别"
prop=
"ruleLevelId"
>
<el-radio-group
v-model=
"form.ruleLevel"
>
<el-select
v-model=
"form.ruleLevelId"
placeholder=
"请选择规则级别"
>
<el-radio
<el-option
v-for=
"dict in ruleLevelOptions"
v-for=
"item in ruleLevelOptions"
:key=
"dict.id"
:key=
"item.id"
:label=
"dict.itemText"
:label=
"item.name"
>
{{
dict
.
itemValue
}}
</el-radio>
:value=
"item.id"
</el-radio-group>
/>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"数据源"
prop=
"ruleSourceId"
>
<el-form-item
label=
"数据源"
prop=
"ruleSourceId"
>
<el-select
v-model=
"form.ruleSourceId"
placeholder=
"请选择数据源"
@
change=
"sourceSelectChanged"
>
<el-select
v-model=
"form.ruleSourceId"
placeholder=
"请选择数据源"
@
change=
"sourceSelectChanged"
>
...
@@ -74,7 +75,7 @@
...
@@ -74,7 +75,7 @@
</
template
>
</
template
>
<
script
>
<
script
>
import
{
getCheckRule
,
updateCheckRule
}
from
'@/api/quality/checkrule'
import
{
listRuleLevel
,
getCheckRule
,
updateCheckRule
}
from
'@/api/quality/checkrule'
import
{
listDataSource
}
from
'@/api/metadata/datasource'
import
{
listDataSource
}
from
'@/api/metadata/datasource'
import
{
listDataTable
}
from
'@/api/metadata/datatable'
import
{
listDataTable
}
from
'@/api/metadata/datatable'
import
{
listDataColumn
}
from
'@/api/metadata/datacolumn'
import
{
listDataColumn
}
from
'@/api/metadata/datacolumn'
...
@@ -113,6 +114,9 @@ export default {
...
@@ -113,6 +114,9 @@ export default {
ruleName
:
[
ruleName
:
[
{
required
:
true
,
message
:
'规则名称不能为空'
,
trigger
:
'blur'
}
{
required
:
true
,
message
:
'规则名称不能为空'
,
trigger
:
'blur'
}
],
],
ruleLevelId
:
[
{
required
:
true
,
message
:
'规则级别不能为空'
,
trigger
:
'change'
}
],
ruleSourceId
:
[
ruleSourceId
:
[
{
required
:
true
,
message
:
'数据源不能为空'
,
trigger
:
'change'
}
{
required
:
true
,
message
:
'数据源不能为空'
,
trigger
:
'change'
}
],
],
...
@@ -139,11 +143,7 @@ export default {
...
@@ -139,11 +143,7 @@ export default {
this
.
statusOptions
=
response
.
data
this
.
statusOptions
=
response
.
data
}
}
})
})
this
.
getDicts
(
'data_check_rule_level'
).
then
(
response
=>
{
this
.
getRuleLevelList
()
if
(
response
.
success
)
{
this
.
ruleLevelOptions
=
response
.
data
}
})
this
.
getDataSourceList
()
this
.
getDataSourceList
()
},
},
mounted
()
{
mounted
()
{
...
@@ -171,6 +171,13 @@ export default {
...
@@ -171,6 +171,13 @@ export default {
}
}
})
})
},
},
getRuleLevelList
()
{
listRuleLevel
().
then
(
response
=>
{
if
(
response
.
success
)
{
this
.
ruleLevelOptions
=
response
.
data
}
})
},
getDataSourceList
()
{
getDataSourceList
()
{
listDataSource
().
then
(
response
=>
{
listDataSource
().
then
(
response
=>
{
if
(
response
.
success
)
{
if
(
response
.
success
)
{
...
...
datax-ui/src/views/quality/checkrule/CheckRuleList.vue
View file @
ec56b184
...
@@ -186,7 +186,7 @@ export default {
...
@@ -186,7 +186,7 @@ export default {
{
prop
:
'ruleSource'
,
label
:
'数据源'
,
show
:
true
},
{
prop
:
'ruleSource'
,
label
:
'数据源'
,
show
:
true
},
{
prop
:
'ruleTable'
,
label
:
'数据表'
,
show
:
true
,
formatter
:
this
.
ruleTableFormatter
},
{
prop
:
'ruleTable'
,
label
:
'数据表'
,
show
:
true
,
formatter
:
this
.
ruleTableFormatter
},
{
prop
:
'ruleColumn'
,
label
:
'核查字段'
,
show
:
true
,
formatter
:
this
.
ruleColumnFormatter
},
{
prop
:
'ruleColumn'
,
label
:
'核查字段'
,
show
:
true
,
formatter
:
this
.
ruleColumnFormatter
},
{
prop
:
'ruleLevel'
,
label
:
'规则级别'
,
show
:
true
,
formatter
:
this
.
ruleLevelFormatter
},
{
prop
:
'ruleLevel'
,
label
:
'规则级别'
,
show
:
true
},
{
{
prop
:
'status'
,
prop
:
'status'
,
label
:
'状态'
,
label
:
'状态'
,
...
@@ -216,9 +216,7 @@ export default {
...
@@ -216,9 +216,7 @@ export default {
defaultProps
:
{
defaultProps
:
{
children
:
'children'
,
children
:
'children'
,
label
:
'name'
label
:
'name'
},
}
// 规则级别数据字典
ruleLevelOptions
:
[]
}
}
},
},
created
()
{
created
()
{
...
@@ -227,11 +225,6 @@ export default {
...
@@ -227,11 +225,6 @@ export default {
this
.
statusOptions
=
response
.
data
this
.
statusOptions
=
response
.
data
}
}
})
})
this
.
getDicts
(
'data_check_rule_level'
).
then
(
response
=>
{
if
(
response
.
success
)
{
this
.
ruleLevelOptions
=
response
.
data
}
})
this
.
getTree
()
this
.
getTree
()
this
.
getList
()
this
.
getList
()
},
},
...
@@ -376,16 +369,6 @@ export default {
...
@@ -376,16 +369,6 @@ export default {
},
},
ruleColumnFormatter
(
row
,
column
,
cellValue
,
index
)
{
ruleColumnFormatter
(
row
,
column
,
cellValue
,
index
)
{
return
row
.
ruleColumnComment
?
row
.
ruleColumn
+
'('
+
row
.
ruleColumnComment
+
')'
:
row
.
ruleColumn
return
row
.
ruleColumnComment
?
row
.
ruleColumn
+
'('
+
row
.
ruleColumnComment
+
')'
:
row
.
ruleColumn
},
ruleLevelFormatter
(
row
,
column
,
cellValue
,
index
)
{
const
dictLabel
=
this
.
selectDictLabel
(
this
.
ruleLevelOptions
,
cellValue
)
if
(
cellValue
===
'1'
)
{
return
<
el
-
tag
type
=
'success'
>
{
dictLabel
}
<
/el-tag
>
}
else
if
(
cellValue
===
'2'
)
{
return
<
el
-
tag
type
=
'warning'
>
{
dictLabel
}
<
/el-tag
>
}
else
if
(
cellValue
===
'3'
)
{
return
<
el
-
tag
type
=
'danger'
>
{
dictLabel
}
<
/el-tag
>
}
}
}
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment