diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/MetadataController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetadataController.java index 4d51a62..749171e 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/controller/MetadataController.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/MetadataController.java @@ -23,7 +23,7 @@ public class MetadataController { @GetMapping("/list-child") @Operation(summary = "根据父级id获取信息") public Result> listByParentId(@RequestParam Long parentId){ - List treeNodeVos = metadataService.listByParentId(parentId); + List treeNodeVos = metadataService.listByPatenId(parentId); return Result.ok(treeNodeVos); } @@ -44,7 +44,7 @@ public class MetadataController { @GetMapping("/list-keyword") @Operation(summary = "模糊查询") public Result> listByKeyword(String keyword){ - List treeNodeVos = metadataService.listByKeyword(keyword); + List treeNodeVos = metadataService.listKeyword(keyword); return Result.ok(treeNodeVos); } @@ -78,13 +78,13 @@ public class MetadataController { @PostMapping("/neo4j") @Operation(summary = "更新neo4j的url") public Result upNeo4jInfo(@RequestBody Neo4jInfo neo4jInfo){ - metadataService.upNeo4jInfo(neo4jInfo); + metadataService.updateNeo4j(neo4jInfo); return Result.ok(); } @GetMapping("/neo4j") @Operation(summary = "获取neo4j的url") public Result getNeo4jInfo(){ - return Result.ok(metadataService.getNeo4jInfo()); + return Result.ok(metadataService.getNeo4j()); } } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityConfigController.java b/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityConfigController.java index ffc1fdb..1bc216a 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityConfigController.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/controller/QualityConfigController.java @@ -7,7 +7,7 @@ import net.srt.framework.common.page.PageResult; import net.srt.framework.common.utils.Result; import net.srt.query.QualityConfigQuery; import net.srt.service.QualityConfigService; -import net.srt.vo.QualityConfigVO; +import net.srt.vo.QualityConfigVo; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -28,26 +28,26 @@ public class QualityConfigController { @GetMapping("page") @Operation(summary = "分页") - public Result> page(@Valid QualityConfigQuery query){ - PageResult page= qualityConfigService.page(query); + public Result> page(@Valid QualityConfigQuery query){ + PageResult page= qualityConfigService.page(query); return Result.ok(page); } @GetMapping("{id}") @Operation(summary = "信息") - public Result get(@PathVariable("id") Long id){ + public Result get(@PathVariable("id") Long id){ return Result.ok(qualityConfigService.get(id)); } @PostMapping @Operation(summary = "保存") - public Result save(@RequestBody QualityConfigVO vo){ + public Result save(@RequestBody QualityConfigVo vo){ qualityConfigService.save(vo); return Result.ok(); } @PutMapping @Operation(summary = "修改") - public Result update(@RequestBody @Valid QualityConfigVO vo){ + public Result update(@RequestBody @Valid QualityConfigVo vo){ qualityConfigService.update(vo); return Result.ok(); } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityConfigConvert.java b/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityConfigConvert.java index 6e4456d..9e07e73 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityConfigConvert.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/convert/QualityConfigConvert.java @@ -1,7 +1,7 @@ package net.srt.convert; import net.srt.entity.QualityConfigEntity; -import net.srt.vo.QualityConfigVO; +import net.srt.vo.QualityConfigVo; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; @@ -17,9 +17,9 @@ import java.util.List; public interface QualityConfigConvert { QualityConfigConvert INSTANCE = Mappers.getMapper(QualityConfigConvert.class); - QualityConfigVO convert(QualityConfigEntity entity); + QualityConfigVo convert(QualityConfigEntity entity); - QualityConfigEntity convert(QualityConfigVO vo); + QualityConfigEntity convert(QualityConfigVo vo); - List convertList(List list); + List convertList(List list); } diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/QualityConfigService.java b/srt-cloud-data-governance/src/main/java/net/srt/service/QualityConfigService.java index 3d89e28..553e11e 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/service/QualityConfigService.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/QualityConfigService.java @@ -4,7 +4,7 @@ import net.srt.entity.QualityConfigEntity; import net.srt.framework.common.page.PageResult; import net.srt.framework.mybatis.service.BaseService; import net.srt.query.QualityConfigQuery; -import net.srt.vo.QualityConfigVO; +import net.srt.vo.QualityConfigVo; import java.util.List; @@ -15,13 +15,13 @@ import java.util.List; * @CreateTime: 2023/12/24 19:33 */ public interface QualityConfigService extends BaseService { - PageResult page(QualityConfigQuery query); + PageResult page(QualityConfigQuery query); - QualityConfigVO get(Long id); + QualityConfigVo get(Long id); - void save(QualityConfigVO vo); + void save(QualityConfigVo vo); - void update(QualityConfigVO vo); + void update(QualityConfigVo vo); void online(Long id); diff --git a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/QualityConfigServiceimpl.java b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/QualityConfigServiceimpl.java index c18f816..61d9dc5 100644 --- a/srt-cloud-data-governance/src/main/java/net/srt/service/impl/QualityConfigServiceimpl.java +++ b/srt-cloud-data-governance/src/main/java/net/srt/service/impl/QualityConfigServiceimpl.java @@ -18,7 +18,7 @@ import net.srt.framework.common.page.PageResult; import net.srt.framework.mybatis.service.impl.BaseServiceImpl; import net.srt.query.QualityConfigQuery; import net.srt.service.QualityConfigService; -import net.srt.vo.QualityConfigVO; +import net.srt.vo.QualityConfigVo; import org.springframework.stereotype.Service; import srt.cloud.framework.dbswitch.common.util.StringUtil; @@ -37,39 +37,39 @@ public class QualityConfigServiceimpl extends BaseServiceImpl page(QualityConfigQuery query) { + public PageResult page(QualityConfigQuery query) { IPage page=baseMapper.selectPage(getPage(query),getWrapper(query)); return new PageResult<>(QualityConfigConvert.INSTANCE.convertList(page.getRecords()),page.getTotal()); } @Override - public QualityConfigVO get(Long id) { - QualityConfigVO QualityConfigVO= QualityConfigConvert.INSTANCE.convert(baseMapper.selectById(id)); - List metadataIds=QualityConfigVO.getMetadataIds(); + public QualityConfigVo get(Long id) { + QualityConfigVo QualityConfigVo= QualityConfigConvert.INSTANCE.convert(baseMapper.selectById(id)); + List metadataIds=QualityConfigVo.getMetadataIds(); LambdaQueryWrapper metadataWrapper= Wrappers.lambdaQuery(); metadataWrapper.in(MetadataEntity::getId,metadataIds); List metadataEntities=metadataDao.selectList(metadataWrapper); if (CollectionUtils.isEmpty(metadataEntities)){ - QualityConfigVO.setMetadataStrs("检测字段已删除,请检查数据信息"); + QualityConfigVo.setMetadataStrs("检测字段已删除,请检查数据信息"); }else { - QualityConfigVO.setMetadataStrs(metadataEntities.stream().map(MetadataEntity::getPath).collect(Collectors.joining(";"))); + QualityConfigVo.setMetadataStrs(metadataEntities.stream().map(MetadataEntity::getPath).collect(Collectors.joining(";"))); } - if (BuiltInQualityRule.ASSOCIATION_CONSISTENCY.getId().equals(QualityConfigVO.getRuleId())){ - QualityConfigParam param = QualityConfigVO.getParam(); + if (BuiltInQualityRule.ASSOCIATION_CONSISTENCY.getId().equals(QualityConfigVo.getRuleId())){ + QualityConfigParam param = QualityConfigVo.getParam(); Integer columnMetaId = param.getColumnMetaId(); MetadataEntity entity = metadataDao.selectById(columnMetaId); if (entity!= null){ - QualityConfigVO.setRelMetadataStr(entity.getPath()); + QualityConfigVo.setRelMetadataStr(entity.getPath()); }else { - QualityConfigVO.setMetadataStrs("关联字段已被删除,请检查元数据信息"); + QualityConfigVo.setMetadataStrs("关联字段已被删除,请检查元数据信息"); } } - return QualityConfigVO; + return QualityConfigVo; } @Override - public void save(QualityConfigVO vo) { + public void save(QualityConfigVo vo) { QualityConfigEntity entity=QualityConfigConvert.INSTANCE.convert(vo); entity.setProjectId(getProjectId()); if (!BuiltInQualityRule.UNIQUENESS.getId().equals(entity.getRuleId())&&!BuiltInQualityRule.LENGTH_CHECK.getId().equals(entity.getRuleId())&& !BuiltInQualityRule.ASSOCIATION_CONSISTENCY.getId().equals(entity.getRuleId())&&!BuiltInQualityRule.TIMELINESS.getId().equals(entity.getRuleId())){ @@ -79,7 +79,7 @@ public class QualityConfigServiceimpl extends BaseServiceImpl - - net.srt - srt-cloud-module - 2.0.0 - - 4.0.0 - srt-cloud-quartz - jar + + net.srt + srt-cloud-module + 2.0.0 + + 4.0.0 + srt-cloud-quartz + jar - + + + net.srt + srt-cloud-api + 2.0.0 + net.srt @@ -31,41 +36,41 @@ - - net.srt - srt-cloud-mybatis - 2.0.0 - - - org.springframework.cloud - spring-cloud-starter-bootstrap - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-discovery - - - com.alibaba.cloud - spring-cloud-starter-alibaba-nacos-config - - - com.github.xiaoymin - knife4j-springdoc-ui - - - org.quartz-scheduler - quartz - net.srt - srt-cloud-datax + srt-cloud-mybatis + 2.0.0 + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + com.github.xiaoymin + knife4j-springdoc-ui + + + org.quartz-scheduler + quartz + + + net.srt + srt-cloud-api 2.0.0 - - - + + + org.codehaus.mojo appassembler-maven-plugin @@ -165,35 +170,36 @@ + + + + + + + + + + + + + + + + + + + + - maven-assembly-plugin + org.apache.maven.plugins + maven-surefire-plugin - - ${project.parent.parent.basedir}/assembly/assembly-win.xml - ${project.parent.parent.basedir}/assembly/assembly-linux.xml - + true - - - make-assembly - package - - single - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - true - - - - + + diff --git a/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/QuartzApplication.java b/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/QuartzApplication.java index fae1f2b..43a6de6 100644 --- a/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/QuartzApplication.java +++ b/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/QuartzApplication.java @@ -14,7 +14,6 @@ import org.springframework.context.annotation.ComponentScan; @EnableFeignClients @EnableDiscoveryClient @SpringBootApplication -@ComponentScan(basePackages = "net.srt.framework.common.cache") public class QuartzApplication { public static void main(String[] args) { diff --git a/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/api/QuartzDataAccessApiImpl.java b/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/api/QuartzDataAccessApiImpl.java index 485e7a1..2d6f660 100644 --- a/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/api/QuartzDataAccessApiImpl.java +++ b/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/api/QuartzDataAccessApiImpl.java @@ -8,7 +8,6 @@ import net.srt.api.module.data.integrate.dto.DataAccessDto; import net.srt.api.module.data.integrate.dto.DataAccessTaskDto; import net.srt.api.module.quartz.QuartzDataAccessApi; import net.srt.api.module.quartz.constant.QuartzJobType; -import net.srt.datax.feign.DataAccessFeign; import net.srt.framework.common.utils.Result; import net.srt.quartz.entity.ScheduleJobEntity; import net.srt.quartz.enums.JobGroupEnum; @@ -32,7 +31,6 @@ public class QuartzDataAccessApiImpl implements QuartzDataAccessApi { private final Scheduler scheduler; private final DataAccessApi dataAccessApi; private final ScheduleJobService jobService; - private final DataAccessFeign feign; @Override public Result releaseAccess(Long id) { @@ -53,24 +51,48 @@ public class QuartzDataAccessApiImpl implements QuartzDataAccessApi { return Result.ok(); } + /** + * 手动运行任务 + * @param id 任务ID + * @return 运行结果 + */ @Override public Result handRun(Long id) { + // 构建任务实体 ScheduleJobEntity jobEntity = buildJobEntity(id); + // 设置任务为单例,且不保存日志 jobEntity.setOnce(true); jobEntity.setSaveLog(false); + // 执行任务 ScheduleUtils.run(scheduler, jobEntity); + // 返回运行结果 return Result.ok(); } + + /** + * 根据id构建调度任务实体 + * @param id 调度任务id + * @return 调度任务实体 + */ private ScheduleJobEntity buildJobEntity(Long id) { DataAccessDto dataAccessDto = dataAccessApi.getById(id).getData(); - if (dataAccessDto.getIsDatax().equals("datax")){ - feign.execute(dataAccessDto); - } - return ScheduleJobEntity.builder().isDatax(dataAccessDto.getIsDatax()).typeId(id).projectId(dataAccessDto.getProjectId()).jobType(QuartzJobType.DATA_ACCESS.getValue()).jobName(String.format("[%s]%s", id.toString(), dataAccessDto.getTaskName())).concurrent(ScheduleConcurrentEnum.NO.getValue()) - .beanName("dataAccessTask").method("run").jobGroup(JobGroupEnum.DATA_ACCESS.getValue()).saveLog(true).cronExpression(dataAccessDto.getCron()).status(ScheduleStatusEnum.NORMAL.getValue()) - .params(String.valueOf(id)).once(TaskType.ONE_TIME_FULL_SYNC.getCode().equals(dataAccessDto.getTaskType())).build(); - + return ScheduleJobEntity.builder() + .typeId(id) + .projectId(dataAccessDto.getProjectId()) + .jobType(QuartzJobType.DATA_ACCESS.getValue()) + .jobName(String.format("[%s]%s", id.toString(), dataAccessDto.getTaskName())) + .concurrent(ScheduleConcurrentEnum.NO.getValue()) + .beanName("dataAccessTask") + .method("run") + .jobGroup(JobGroupEnum.DATA_ACCESS.getValue()) + .saveLog(true) + .cronExpression(dataAccessDto.getCron()) + .status(ScheduleStatusEnum.NORMAL.getValue()) + .params(String.valueOf(id)) + .once(TaskType.ONE_TIME_FULL_SYNC.getCode().equals(dataAccessDto.getTaskType())) + .build(); } + } diff --git a/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/utils/ScheduleUtils.java b/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/utils/ScheduleUtils.java index 326d74c..f322aa2 100644 --- a/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/utils/ScheduleUtils.java +++ b/srt-cloud-module/srt-cloud-quartz/src/main/java/net/srt/quartz/utils/ScheduleUtils.java @@ -1,6 +1,5 @@ package net.srt.quartz.utils; -import net.srt.datax.feign.DataAccessFeign; import net.srt.framework.common.exception.ServerException; import net.srt.quartz.entity.ScheduleJobEntity; import net.srt.quartz.enums.ScheduleConcurrentEnum; diff --git a/srt-cloud-module/srt-cloud-quartz/src/main/resources/bootstrap.yml b/srt-cloud-module/srt-cloud-quartz/src/main/resources/bootstrap.yml index 24f7217..4de246b 100644 --- a/srt-cloud-module/srt-cloud-quartz/src/main/resources/bootstrap.yml +++ b/srt-cloud-module/srt-cloud-quartz/src/main/resources/bootstrap.yml @@ -11,7 +11,7 @@ spring: discovery: server-addr: 101.34.77.101:8848 # 命名空间,默认:public - namespace: 7e34f104-f333-4828-b36a-02146e521c9a + namespace: 9de208a6-cb30-41ae-a880-78196c99c050 service: ${spring.application.name} group: srt2.0 config: diff --git a/srt-cloud-system/src/main/resources/bootstrap.yml b/srt-cloud-system/src/main/resources/bootstrap.yml index b6d5c86..112c84e 100644 --- a/srt-cloud-system/src/main/resources/bootstrap.yml +++ b/srt-cloud-system/src/main/resources/bootstrap.yml @@ -14,7 +14,7 @@ spring: discovery: server-addr: 101.34.77.101:8848 # 命名空间,默认:public - namespace: 7e34f104-f333-4828-b36a-02146e521c9a + namespace: 9de208a6-cb30-41ae-a880-78196c99c050 service: ${spring.application.name} group: srt2.0 config: diff --git a/srt-data-development/src/main/resources/bootstrap.yml b/srt-data-development/src/main/resources/bootstrap.yml index 65f34da..c8c69dd 100644 --- a/srt-data-development/src/main/resources/bootstrap.yml +++ b/srt-data-development/src/main/resources/bootstrap.yml @@ -2,20 +2,6 @@ server: port: 8094 spring: - datasource: - druid: - stat-view-servlet: - enabled: true - loginUsername: bwie - loginPassword: 123456 - driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://101.34.77.101:3306/12.5yk?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 - username: root - password: cbx@123 - type: com.alibaba.druid.pool.DruidDataSource - mvc: - servlet: - load-on-startup: 1 application: name: srt-cloud-data-development profiles: