update
This commit is contained in:
parent
c674440585
commit
fa88f9a88a
@ -9,6 +9,7 @@ import javax.validation.Valid;
|
|||||||
import javax.validation.constraints.NotBlank;
|
import javax.validation.constraints.NotBlank;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
@ -61,4 +62,8 @@ public class CheckRuleDto implements Serializable {
|
|||||||
private String status;
|
private String status;
|
||||||
@ApiModelProperty(value = "备注")
|
@ApiModelProperty(value = "备注")
|
||||||
private String remark;
|
private String remark;
|
||||||
|
|
||||||
|
private List<String> transferValue;
|
||||||
|
|
||||||
|
private String qualityType;
|
||||||
}
|
}
|
||||||
|
@ -23,4 +23,6 @@ public class CheckRuleQuery extends BaseQueryParams {
|
|||||||
private String ruleSource;
|
private String ruleSource;
|
||||||
private String ruleTable;
|
private String ruleTable;
|
||||||
private String ruleColumn;
|
private String ruleColumn;
|
||||||
|
|
||||||
|
private String ruleType;
|
||||||
}
|
}
|
||||||
|
@ -85,6 +85,13 @@ public class CheckRuleController extends BaseController {
|
|||||||
queryWrapper.like(StrUtil.isNotBlank(checkRuleQuery.getRuleSource()), "r.rule_source", checkRuleQuery.getRuleSource());
|
queryWrapper.like(StrUtil.isNotBlank(checkRuleQuery.getRuleSource()), "r.rule_source", checkRuleQuery.getRuleSource());
|
||||||
queryWrapper.like(StrUtil.isNotBlank(checkRuleQuery.getRuleTable()), "r.rule_table", checkRuleQuery.getRuleTable());
|
queryWrapper.like(StrUtil.isNotBlank(checkRuleQuery.getRuleTable()), "r.rule_table", checkRuleQuery.getRuleTable());
|
||||||
queryWrapper.like(StrUtil.isNotBlank(checkRuleQuery.getRuleColumn()), "r.rule_column", checkRuleQuery.getRuleColumn());
|
queryWrapper.like(StrUtil.isNotBlank(checkRuleQuery.getRuleColumn()), "r.rule_column", checkRuleQuery.getRuleColumn());
|
||||||
|
//结构符合校验过滤
|
||||||
|
if("jj".equals(checkRuleQuery.getRuleType())){
|
||||||
|
queryWrapper.in("t.code","table_jc","length_jc","null_jc","pk_jc","fk_jc");
|
||||||
|
} else {
|
||||||
|
queryWrapper.in("t.code","unique","integrity","accuracy","consistent","relevance","regular","timeliness");
|
||||||
|
}
|
||||||
|
// queryWrapper.in("t.code","")
|
||||||
IPage<CheckRuleEntity> page = checkRuleService.page(new Page<>(checkRuleQuery.getPageNum(), checkRuleQuery.getPageSize()), queryWrapper);
|
IPage<CheckRuleEntity> page = checkRuleService.page(new Page<>(checkRuleQuery.getPageNum(), checkRuleQuery.getPageSize()), queryWrapper);
|
||||||
List<CheckRuleVo> collect = page.getRecords().stream().map(checkRuleMapper::toVO).collect(Collectors.toList());
|
List<CheckRuleVo> collect = page.getRecords().stream().map(checkRuleMapper::toVO).collect(Collectors.toList());
|
||||||
JsonPage<CheckRuleVo> jsonPage = new JsonPage<>(page.getCurrent(), page.getSize(), page.getTotal(), collect);
|
JsonPage<CheckRuleVo> jsonPage = new JsonPage<>(page.getCurrent(), page.getSize(), page.getTotal(), collect);
|
||||||
@ -104,6 +111,7 @@ public class CheckRuleController extends BaseController {
|
|||||||
return R.ok().setData(checkRuleMapper.toVO(checkRuleEntity));
|
return R.ok().setData(checkRuleMapper.toVO(checkRuleEntity));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改
|
* 修改
|
||||||
* @param checkRule
|
* @param checkRule
|
||||||
@ -145,4 +153,14 @@ public class CheckRuleController extends BaseController {
|
|||||||
checkRuleService.deleteCheckRuleBatch(ids);
|
checkRuleService.deleteCheckRuleBatch(ids);
|
||||||
return R.ok();
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@GetMapping("/listSourceIdBytable/{id}")
|
||||||
|
public R listSourceIdBytable(@PathVariable String id) {
|
||||||
|
QueryWrapper<CheckRuleEntity> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.eq("rule_source_id",id);
|
||||||
|
List<CheckRuleEntity> checkRuleList = checkRuleService.list(queryWrapper);
|
||||||
|
return R.ok().setData(checkRuleMapper.toVO(checkRuleList));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,11 +17,10 @@ public class RegularRule implements RuleItem{
|
|||||||
switch (dbType) {
|
switch (dbType) {
|
||||||
case ORACLE:
|
case ORACLE:
|
||||||
case ORACLE_12C:
|
case ORACLE_12C:
|
||||||
builder.append("SELECT SUM(CASE WHEN ROUND(TO_NUMBER(SYSDATE - ").append(column).append(")) >= ").append(map.get(REGULAR)).append(" THEN 1 ELSE 0 END), COUNT(*) FROM ").append(table);
|
|
||||||
break;
|
|
||||||
case MYSQL:
|
case MYSQL:
|
||||||
builder.append("select sum(case when ").append(column).append(" REGEXP ").append("'"+map.get(REGULAR)+"'").append(" != '' THEN 0 ELSE 1 END),")
|
// mysql 执行正则
|
||||||
.append(" COUNT(*) from ").append(table);
|
builder.append("SELECT SUM(CASE WHEN ").append(column).append(" REGEXP ").append("'"+map.get(REGULAR)+"'").append(" != '' THEN 0 ELSE 1 END),").append(" COUNT(*) FROM ").append(table);
|
||||||
|
break;
|
||||||
case MARIADB:
|
case MARIADB:
|
||||||
case SQL_SERVER:
|
case SQL_SERVER:
|
||||||
case SQL_SERVER2008:
|
case SQL_SERVER2008:
|
||||||
|
@ -50,11 +50,24 @@ public class CheckRuleServiceImpl extends BaseServiceImpl<CheckRuleDao, CheckRul
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public CheckRuleEntity saveCheckRule(CheckRuleDto checkRuleDto) {
|
public CheckRuleEntity saveCheckRule(CheckRuleDto checkRuleDto) {
|
||||||
CheckRuleEntity checkRule = checkRuleMapper.toEntity(checkRuleDto);
|
|
||||||
String sql = parseSql(checkRule);
|
// 结构性检测
|
||||||
checkRule.setRuleSql(sql);
|
if("jg".equals(checkRuleDto.getQualityType())){
|
||||||
checkRuleDao.insert(checkRule);
|
CheckRuleEntity checkRule = null;
|
||||||
return checkRule;
|
for (int i = 0; i < checkRuleDto.getTransferValue().size(); i++) {
|
||||||
|
String currentString = checkRuleDto.getTransferValue().get(i);
|
||||||
|
checkRule = checkRuleMapper.toEntity(checkRuleDto);
|
||||||
|
checkRule.setRuleTable(currentString);
|
||||||
|
checkRuleDao.insert(checkRule);
|
||||||
|
}
|
||||||
|
return checkRule;
|
||||||
|
}else {
|
||||||
|
CheckRuleEntity checkRule = checkRuleMapper.toEntity(checkRuleDto);
|
||||||
|
String sql = parseSql(checkRule);
|
||||||
|
checkRule.setRuleSql(sql);
|
||||||
|
checkRuleDao.insert(checkRule);
|
||||||
|
return checkRule;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -90,6 +103,7 @@ public class CheckRuleServiceImpl extends BaseServiceImpl<CheckRuleDao, CheckRul
|
|||||||
return checkRuleDao.selectOne(new QueryWrapper<CheckRuleEntity>().eq("rule_source_id", sourceId).last("limit 1"));
|
return checkRuleDao.selectOne(new QueryWrapper<CheckRuleEntity>().eq("rule_source_id", sourceId).last("limit 1"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private String parseSql(CheckRuleEntity checkRule) {
|
private String parseSql(CheckRuleEntity checkRule) {
|
||||||
RuleConfig ruleConfig = checkRule.getRuleConfig();
|
RuleConfig ruleConfig = checkRule.getRuleConfig();
|
||||||
Map<String, Object> map = new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user