diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/BasicConfigInfo.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/BasicConfigInfo.java index 1cf553a..4dc65db 100644 --- a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/BasicConfigInfo.java +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/BasicConfigInfo.java @@ -2,12 +2,14 @@ package com.muyu.etl.domain; import com.muyu.common.core.annotation.Excel; import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.etl.domain.req.BasicConfigQueryReq; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; import java.util.Date; +import java.util.function.Supplier; /** @@ -67,8 +69,57 @@ public class BasicConfigInfo extends BaseEntity @Excel(name = "最大等待次数") private Long maxWaitTimes; + @Excel(name ="连接参数") + private String connectionParams; + private String createBy; private String updateBy; private Date createTime; private Date updateTime; + + /** + * 创建存储对象 + * @param configQueryReq + * @param username + * @return + */ + public static BasicConfigInfo saveBuilder(BasicConfigQueryReq configQueryReq, Supplier username) { + return BasicConfigInfo.builder() + .id(configQueryReq.getId()) + .databaseName(configQueryReq.getDatabaseName()) + .databaseType(configQueryReq.getDatabaseType()) + .dataResourceName(configQueryReq.getDataResourceName()) + .dataSourcesSystemName(configQueryReq.getDataSourcesSystemName()) + .host(configQueryReq.getHost()) + .port(configQueryReq.getPort()) + .initLinkNum(configQueryReq.getInitLinkNum()) + .maxLinkNum(configQueryReq.getMaxLinkNum()) + .maxWaitTime(configQueryReq.getMaxWaitTime()) + .createBy(username.get()) + .createTime(new Date()) + .build(); + } + + /** + * 修改对象 + * @param configQueryReq + * @param username + * @return + */ + public static BasicConfigInfo editBuilder(BasicConfigQueryReq configQueryReq, Supplier username) { + return BasicConfigInfo.builder() + .id(configQueryReq.getId()) + .databaseName(configQueryReq.getDatabaseName()) + .databaseType(configQueryReq.getDatabaseType()) + .dataResourceName(configQueryReq.getDataResourceName()) + .dataSourcesSystemName(configQueryReq.getDataSourcesSystemName()) + .host(configQueryReq.getHost()) + .port(configQueryReq.getPort()) + .initLinkNum(configQueryReq.getInitLinkNum()) + .maxLinkNum(configQueryReq.getMaxLinkNum()) + .maxWaitTime(configQueryReq.getMaxWaitTime()) + .updateBy(username.get()) + .updateTime(new Date()) + .build(); + } } diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/BasicParams.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/BasicParams.java deleted file mode 100644 index ec04378..0000000 --- a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/BasicParams.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.muyu.etl.domain; - -import com.muyu.common.core.annotation.Excel; -import com.muyu.common.core.web.domain.BaseEntity; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import lombok.experimental.SuperBuilder; - -import java.util.Date; - -/** - * 对象 basic_params - * - * @author muyu - * @date 2024-04-20 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -@SuperBuilder -public class BasicParams extends BaseEntity -{ - private static final long serialVersionUID = 1L; - - /** 主键 */ - private Long id; - - /** 基础配置信息主键 */ - @Excel(name = "基础配置信息主键") - private Long basicConfigInfoId; - - /** 参数名 */ - @Excel(name = "参数名") - private String paramsName; - - /** 参数值 */ - @Excel(name = "参数值") - private String paramsValue; - - - private String createBy; - private String updateBy; - private Date createTime; - private Date updateTime; - - -} diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/req/BasicConfigQueryReq.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/req/BasicConfigQueryReq.java new file mode 100644 index 0000000..1bb5441 --- /dev/null +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/req/BasicConfigQueryReq.java @@ -0,0 +1,73 @@ +package com.muyu.etl.domain.req; + +import com.muyu.common.core.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; + +/** + * @ClassName BasicQueryReq + * @Description 描述 + * @Author SaiSai.Liu + * @Date 2024/4/21 10:42 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@SuperBuilder +public class BasicConfigQueryReq { + private static final long serialVersionUID = 1L; + + /** 主键 */ + private Long id; + + /** 接入源名称 */ + @Excel(name = "接入源名称") + private String dataResourceName; + + /** 数据来源系统名称 */ + @Excel(name = "数据来源系统名称") + private String dataSourcesSystemName; + + /** 主机ip地址 */ + @Excel(name = "主机ip地址") + private String host; + + /** 端口 */ + @Excel(name = "端口") + private String port; + + /** 数据接入类型 */ + @Excel(name = "数据接入类型") + private String databaseType; + + /** 数据库名称 */ + @Excel(name = "数据库名称") + private String databaseName; + + /** 初始化连接数量 */ + @Excel(name = "初始化连接数量") + private Long initLinkNum; + + /** 最大连接数量 */ + @Excel(name = "最大连接数量") + private Long maxLinkNum; + + /** 最大等待时间 */ + @Excel(name = "最大等待时间") + private Long maxWaitTime; + + /** 最大等待次数 */ + @Excel(name = "最大等待次数") + private Long maxWaitTimes; + + private String connectionParams; + private String createBy; + private String updateBy; + private Date createTime; + private Date updateTime; + +} diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/req/BasicQueryReq.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/req/BasicQueryReq.java deleted file mode 100644 index 5a48500..0000000 --- a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/req/BasicQueryReq.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.muyu.etl.domain.req; - -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; -import lombok.experimental.SuperBuilder; - -/** - * @ClassName BasicQueryReq - * @Description 描述 - * @Author SaiSai.Liu - * @Date 2024/4/21 10:42 - */ -@Data -@NoArgsConstructor -@AllArgsConstructor -@SuperBuilder -public class BasicQueryReq { - private Long id; - -} diff --git a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/BasicConfigResp.java b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/BasicConfigResp.java index 77f1594..f8c70e0 100644 --- a/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/BasicConfigResp.java +++ b/muyu-modules/muyv-etl/muyu-etl-common/src/main/java/com/muyu/etl/domain/resp/BasicConfigResp.java @@ -55,7 +55,7 @@ public class BasicConfigResp { private Long maxWaitTimes; /** 拼接链接 */ - private String connectionParam; + private String connectionParams; private String remark; private String createBy; private String updateBy; diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java index 1d392dc..281eee3 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/controller/BasicConfigInfoController.java @@ -8,7 +8,6 @@ import com.muyu.common.log.annotation.Log; import com.muyu.common.log.enums.BusinessType; import com.muyu.common.security.annotation.RequiresPermissions; import com.muyu.etl.domain.BasicConfigInfo; -import com.muyu.etl.domain.resp.BasicConfigResp; import com.muyu.etl.service.BasicConfigInfoService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -34,10 +33,10 @@ public class BasicConfigInfoController extends BaseController */ @RequiresPermissions("etl:info:list") @GetMapping("/list") - public Result> list(BasicConfigInfo basicConfigInfo) + public Result> list(BasicConfigInfo basicConfigInfo) { startPage(); - List list = basicConfigInfoService.selectBasicConfigInfoList(basicConfigInfo); + List list = basicConfigInfoService.selectBasicConfigInfoList(basicConfigInfo); return getDataTable(list); } @@ -49,8 +48,8 @@ public class BasicConfigInfoController extends BaseController @PostMapping("/export") public void export(HttpServletResponse response, BasicConfigInfo basicConfigInfo) { - List list = basicConfigInfoService.selectBasicConfigInfoList(basicConfigInfo); - ExcelUtil util = new ExcelUtil(BasicConfigResp.class); + List list = basicConfigInfoService.selectBasicConfigInfoList(basicConfigInfo); + ExcelUtil util = new ExcelUtil(BasicConfigInfo.class); util.exportExcel(response, list, "基础信息数据"); } @@ -70,9 +69,9 @@ public class BasicConfigInfoController extends BaseController @RequiresPermissions("etl:info:add") @Log(title = "基础信息", businessType = BusinessType.INSERT) @PostMapping - public Result add(@RequestBody BasicConfigInfo basicConfigInfo) + public Result add(@RequestBody BasicConfigInfo configQueryReq) { - return toAjax(basicConfigInfoService.insertBasicConfigInfo(basicConfigInfo)); + return toAjax(basicConfigInfoService.insertBasicConfigInfo(configQueryReq)); } /** @@ -96,4 +95,14 @@ public class BasicConfigInfoController extends BaseController { return toAjax(basicConfigInfoService.deleteBasicConfigInfoByIds(ids)); } + + /** + * 测试连接 + */ + @RequiresPermissions("etl:info:remove") + @Log(title = "基础信息", businessType = BusinessType.DELETE) + @PostMapping("/connectionTest") + public Result connectionTest(BasicConfigInfo basicConfigInfo){ + return toAjax(basicConfigInfoService.connectionTest(basicConfigInfo)); + } } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/mapper/BasicParamsMapper.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/mapper/BasicParamsMapper.java deleted file mode 100644 index 0ebaa89..0000000 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/mapper/BasicParamsMapper.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.muyu.etl.mapper; - -import java.util.List; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.muyu.etl.domain.BasicParams; - -/** - * Mapper接口 - * - * @author muyu - * @date 2024-04-20 - */ -public interface BasicParamsMapper extends BaseMapper -{ - /** - * 查询 - * - * @param id 主键 - * @return - */ - public BasicParams selectBasicParamsById(Long id); - - /** - * 查询列表 - * - * @param basicParams - * @return 集合 - */ - public List selectBasicParamsList(BasicParams basicParams); - - /** - * 新增 - * - * @param basicParams - * @return 结果 - */ - public int insertBasicParams(BasicParams basicParams); - - /** - * 修改 - * - * @param basicParams - * @return 结果 - */ - public int updateBasicParams(BasicParams basicParams); - - /** - * 删除 - * - * @param id 主键 - * @return 结果 - */ - public int deleteBasicParamsById(Long id); - - /** - * 批量删除 - * - * @param ids 需要删除的数据主键集合 - * @return 结果 - */ - public int deleteBasicParamsByIds(Long[] ids); -} diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java index 03a5d09..949b950 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicConfigInfoService.java @@ -1,10 +1,9 @@ package com.muyu.etl.service; -import java.util.List; - import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.etl.domain.BasicConfigInfo; -import com.muyu.etl.domain.resp.BasicConfigResp; + +import java.util.List; /** * Service接口 @@ -28,15 +27,15 @@ public interface BasicConfigInfoService extends IService * @param basicConfigInfo * @return 集合 */ - public List selectBasicConfigInfoList(BasicConfigInfo basicConfigInfo); + public List selectBasicConfigInfoList(BasicConfigInfo basicConfigInfo); /** * 新增 * - * @param basicConfigInfo + * @param configQueryReq * @return 结果 */ - public int insertBasicConfigInfo(BasicConfigInfo basicConfigInfo); + public int insertBasicConfigInfo(BasicConfigInfo configQueryReq); /** * 修改 @@ -61,4 +60,6 @@ public interface BasicConfigInfoService extends IService * @return 结果 */ public int deleteBasicConfigInfoById(Long id); + + boolean connectionTest(BasicConfigInfo basicConfigInfo); } diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicParamsService.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicParamsService.java deleted file mode 100644 index ffc23f8..0000000 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/BasicParamsService.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.muyu.etl.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.muyu.etl.domain.BasicParams; - -import java.util.List; - -/** - * Service接口 - * - * @author muyu - * @date 2024-04-20 - */ -public interface BasicParamsService extends IService -{ - /** - * 查询 - * - * @param id 主键 - * @return - */ - public BasicParams selectBasicParamsById(Long id); - - /** - * 查询列表 - * - * @param basicParams - * @return 集合 - */ - public List selectBasicParamsList(BasicParams basicParams); - - /** - * 新增 - * - * @param basicParams - * @return 结果 - */ - public int insertBasicParams(BasicParams basicParams); - - /** - * 修改 - * - * @param basicParams - * @return 结果 - */ - public int updateBasicParams(BasicParams basicParams); - - /** - * 批量删除 - * - * @param ids 需要删除的主键集合 - * @return 结果 - */ - public int deleteBasicParamsByIds(Long[] ids); - - /** - * 删除信息 - * - * @param id 主键 - * @return 结果 - */ - public int deleteBasicParamsById(Long id); -} diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java index fc334a5..06172a7 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/java/com/muyu/etl/service/impl/BasicConfigInfoServiceImpl.java @@ -1,21 +1,17 @@ package com.muyu.etl.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.muyu.common.security.utils.SecurityUtils; import com.muyu.etl.domain.BasicConfigInfo; -import com.muyu.etl.domain.BasicParams; -import com.muyu.etl.domain.resp.BasicConfigResp; import com.muyu.etl.mapper.BasicConfigInfoMapper; import com.muyu.etl.service.BasicConfigInfoService; -import com.muyu.etl.service.BasicParamsService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; - -import java.util.Date; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; import java.util.List; -import java.util.stream.Collectors; /** * Service业务层处理 @@ -28,8 +24,7 @@ public class BasicConfigInfoServiceImpl extends ServiceImpl selectBasicConfigInfoList(BasicConfigInfo basicConfigInfo) + public List selectBasicConfigInfoList(BasicConfigInfo basicConfigInfo) { - List basicConfigRespList = basicConfigInfoMapper.selectBasicConfigInfoList(basicConfigInfo).stream().map( - info -> { - List list = basicParamsService.list(new LambdaQueryWrapper().eq(BasicParams::getBasicConfigInfoId, info.getId())); - StringBuffer buffer = new StringBuffer(); - list.forEach(basicParam -> buffer.append("&"+basicParam.getParamsName()+"="+basicParam.getParamsValue())); - return BasicConfigResp.builder() - .id(info.getId()) - .host(info.getHost()) - .port(info.getPort()) - .databaseName(info.getDatabaseName()) - .databaseType(info.getDatabaseType()) - .initLinkNum(info.getInitLinkNum()) - .maxLinkNum(info.getMaxLinkNum()) - .dataResourceName(info.getDataSourcesSystemName()) - .dataSourcesSystemName(info.getDataSourcesSystemName()) - .maxWaitTime(info.getMaxWaitTime()) - .maxWaitTimes(info.getMaxWaitTimes()) - .connectionParam(String.valueOf(buffer).substring(1)) - .createBy(SecurityUtils.getUsername()) - .createTime(new Date()) - .remark(info.getRemark()) - .build(); - }).collect(Collectors.toList()); - return basicConfigRespList; + return basicConfigInfoMapper.selectBasicConfigInfoList(basicConfigInfo); } /** * 新增 * - * @param basicConfigInfo + * @param configQueryReq * @return 结果 */ @Override - public int insertBasicConfigInfo(BasicConfigInfo basicConfigInfo) + public int insertBasicConfigInfo(BasicConfigInfo configQueryReq) { - return basicConfigInfoMapper.insertBasicConfigInfo(basicConfigInfo); + return basicConfigInfoMapper.insertBasicConfigInfo(configQueryReq); } /** * 修改 * - * @param basicConfigInfo + * @param configQueryReq * @return 结果 */ @Override - public int updateBasicConfigInfo(BasicConfigInfo basicConfigInfo) + public int updateBasicConfigInfo(BasicConfigInfo configQueryReq) { - return basicConfigInfoMapper.updateBasicConfigInfo(basicConfigInfo); + return basicConfigInfoMapper.updateBasicConfigInfo(configQueryReq); } /** @@ -125,4 +97,25 @@ public class BasicConfigInfoServiceImpl extends ServiceImpl implements BasicParamsService -{ - @Autowired - private BasicParamsMapper basicParamsMapper; - - /** - * 查询 - * - * @param id 主键 - * @return - */ - @Override - public BasicParams selectBasicParamsById(Long id) - { - return basicParamsMapper.selectBasicParamsById(id); - } - - /** - * 查询列表 - * - * @param basicParams - * @return - */ - @Override - public List selectBasicParamsList(BasicParams basicParams) - { - return basicParamsMapper.selectBasicParamsList(basicParams); - } - - /** - * 新增 - * - * @param basicParams - * @return 结果 - */ - @Override - public int insertBasicParams(BasicParams basicParams) - { - return basicParamsMapper.insertBasicParams(basicParams); - } - - /** - * 修改 - * - * @param basicParams - * @return 结果 - */ - @Override - public int updateBasicParams(BasicParams basicParams) - { - return basicParamsMapper.updateBasicParams(basicParams); - } - - /** - * 批量删除 - * - * @param ids 需要删除的主键 - * @return 结果 - */ - @Override - public int deleteBasicParamsByIds(Long[] ids) - { - return basicParamsMapper.deleteBasicParamsByIds(ids); - } - - /** - * 删除信息 - * - * @param id 主键 - * @return 结果 - */ - @Override - public int deleteBasicParamsById(Long id) - { - return basicParamsMapper.deleteBasicParamsById(id); - } -} diff --git a/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/BasicConfigInfoMapper.xml b/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/BasicConfigInfoMapper.xml index b446663..502961f 100644 --- a/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/BasicConfigInfoMapper.xml +++ b/muyu-modules/muyv-etl/muyu-etl-service/src/main/resources/mapper/BasicConfigInfoMapper.xml @@ -16,11 +16,12 @@ + - select id, data_resource_name, data_sources_system_name, host, port, database_type, database_name, init_link_num, max_link_num, max_wait_time, max_wait_times, remark from basic_config_info + select id, data_resource_name, data_sources_system_name, host, port, database_type, database_name, init_link_num, max_link_num, max_wait_time, max_wait_times,connection_params, remark from basic_config_info - - - and basic_config_info_id = #{basicConfigInfoId} - and params_name like concat('%', #{paramsName}, '%') - and params_value = #{paramsValue} - - - - - - - insert into basic_params - - id, - basic_config_info_id, - params_name, - params_value, - - - #{id}, - #{basicConfigInfoId}, - #{paramsName}, - #{paramsValue}, - - - - - update basic_params - - basic_config_info_id = #{basicConfigInfoId}, - params_name = #{paramsName}, - params_value = #{paramsValue}, - - where id = #{id} - - - - delete from basic_params where id = #{id} - - - - delete from basic_params where id in - - #{id} - - -