soft5566 2 лет назад
Родитель
Сommit
88911e6de6

+ 46 - 11
.idea/workspace.xml

@@ -4,14 +4,22 @@
     <option name="autoReloadType" value="SELECTIVE" />
   </component>
   <component name="ChangeListManager">
-    <list default="true" id="33456f28-da03-4d10-99dd-fd9bd193cf84" name="Default Changelist" comment="">
-      <change beforePath="$PROJECT_DIR$/.gitignore" beforeDir="false" afterPath="$PROJECT_DIR$/.gitignore" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/compiler.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/compiler.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/encodings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/encodings.xml" afterDir="false" />
+    <list default="true" id="33456f28-da03-4d10-99dd-fd9bd193cf84" name="Default Changelist" comment="Default Changelist">
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/api/SmartDataTaskControllerAPI.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartDataTaskController.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/mapper/SmartDataTaskMapper.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDataTask.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/services/SmartDataTaskService.java" afterDir="false" />
+      <change afterPath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartDataTaskServiceImpl.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/api/SmartDataSourceControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/api/SmartDataSourceControllerAPI.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/api/SmartDataSourceLogControllerAPI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/api/SmartDataSourceLogControllerAPI.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartDataSourceController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartDataSourceController.java" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/SmartDataSourceService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/SmartDataSourceService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartDataSourceLogController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/controller/SmartDataSourceLogController.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDataSource.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDataSource.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDataSourceLog.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/model/pojo/SmartDataSourceLog.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/SmartDataSourceLogService.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/SmartDataSourceLogService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartDataClassServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartDataClassServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartDataSourceLogServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartDataSourceLogServiceImpl.java" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartDataSourceServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/com/template/services/impl/SmartDataSourceServiceImpl.java" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
@@ -255,6 +263,7 @@
   <component name="MavenImportPreferences">
     <option name="generalSettings">
       <MavenGeneralSettings>
+        <option name="localRepository" value="D:\Software\Develop\Maven\repository" />
         <option name="mavenHome" value="$PROJECT_DIR$/../../Software/Develop/Maven/apache-maven-3.8.8" />
         <option name="userSettingsFile" value="D:\Software\Develop\Maven\apache-maven-3.8.8\conf\settings.xml" />
       </MavenGeneralSettings>
@@ -481,11 +490,11 @@
       <recent name="com.template" />
     </key>
     <key name="CopyClassDialog.RECENTS_KEY">
-      <recent name="com.template.api" />
-      <recent name="com.template.model.vo" />
-      <recent name="com.template.model.request" />
-      <recent name="com.template.model.result" />
-      <recent name="com.template.utils" />
+      <recent name="com.template.mapper" />
+      <recent name="com.template.services.impl" />
+      <recent name="com.template.services" />
+      <recent name="com.template.model.pojo" />
+      <recent name="com.template.controller" />
     </key>
   </component>
   <component name="RunManager" selected="Spring Boot.MybatisPlusApplication">
@@ -550,7 +559,18 @@
       <workItem from="1702029596859" duration="116000" />
       <workItem from="1702029914028" duration="156000" />
       <workItem from="1702030090469" duration="6723000" />
+      <workItem from="1702041902347" duration="730000" />
+      <workItem from="1702101136568" duration="16833000" />
     </task>
+    <task id="LOCAL-00001" summary="Default Changelist">
+      <option name="closed" value="true" />
+      <created>1702042267163</created>
+      <option name="number" value="00001" />
+      <option name="presentableId" value="LOCAL-00001" />
+      <option name="project" value="LOCAL" />
+      <updated>1702042267163</updated>
+    </task>
+    <option name="localTasksCounter" value="2" />
     <servers />
   </component>
   <component name="TimeTrackingManager">
@@ -650,6 +670,21 @@
   <component name="TypeScriptGeneratedFilesManager">
     <option name="version" value="3" />
   </component>
+  <component name="Vcs.Log.Tabs.Properties">
+    <option name="TAB_STATES">
+      <map>
+        <entry key="MAIN">
+          <value>
+            <State />
+          </value>
+        </entry>
+      </map>
+    </option>
+  </component>
+  <component name="VcsManagerConfiguration">
+    <MESSAGE value="Default Changelist" />
+    <option name="LAST_COMMIT_MESSAGE" value="Default Changelist" />
+  </component>
   <component name="XDebuggerManager">
     <breakpoint-manager>
       <breakpoints>

+ 6 - 6
src/main/java/com/template/api/SmartDataSourceLogControllerAPI.java

@@ -21,15 +21,15 @@ public interface SmartDataSourceLogControllerAPI {
     @ApiOperation(value = "添加操作记录", notes = "添加操作记录数据", httpMethod = "POST")
     CommonResult insertSmartDataSourceLog(@Validated @RequestBody SmartDataSourceLog smartApply, BindingResult bindingResult);
 
-    @PostMapping(value = "/updateSmartDataSourceLogById")
-    @ApiOperation(value = "编辑操作记录数据", notes = "编辑操作记录数据", httpMethod = "POST")
-    CommonResult updateSmartDataSourceLogById(@Validated @RequestBody SmartDataSourceLog ra, BindingResult bindingResult);
+//    @PostMapping(value = "/updateSmartDataSourceLogById")
+//    @ApiOperation(value = "编辑操作记录数据", notes = "编辑操作记录数据", httpMethod = "POST")
+//    CommonResult updateSmartDataSourceLogById(@Validated @RequestBody SmartDataSourceLog ra, BindingResult bindingResult);
 
     @GetMapping(value = "/queryPageSmartDataSourceLog")
     @ApiOperation(value = "操作记录分页数据", notes = "操作记录分页数据", httpMethod = "GET")
     CommonResult queryPageSmartDataSourceLogs(@RequestParam int currentPage, @RequestParam int pageCount, String name);
 
-    @GetMapping(value = "/deleteSmartDataSourceLogById")
-    @ApiOperation(value = "根据ID删除指定操作记录", notes = "根据ID删除指定操作记录", httpMethod = "GET")
-    CommonResult deleteSmartDataSourceLogById(@RequestParam int id);
+//    @GetMapping(value = "/deleteSmartDataSourceLogById")
+//    @ApiOperation(value = "根据ID删除指定操作记录", notes = "根据ID删除指定操作记录", httpMethod = "GET")
+//    CommonResult deleteSmartDataSourceLogById(@RequestParam int id);
 }

+ 39 - 0
src/main/java/com/template/api/SmartDataTaskControllerAPI.java

@@ -0,0 +1,39 @@
+package com.template.api;
+
+import com.template.model.pojo.SmartDataTask;
+import com.template.model.result.CommonResult;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.validation.BindingResult;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @Author: binguo
+ * @Date: 2023/3/30 星期四 17:28
+ * @Description: com.video.api
+ * @Version: 1.0
+ */
+@RequestMapping("/api/smartDataTask")
+@Api(tags = {"SmartDataTaskControllerAPI"}, value = "操作记录")
+public interface SmartDataTaskControllerAPI {
+    @PostMapping(value = "/insertSmartDataTask")
+    @ApiOperation(value = "添加数据源任务管理数据", notes = "添加数据源任务管理数据", httpMethod = "POST")
+    CommonResult insertSmartDataTask(@Validated @RequestBody SmartDataTask smartDataTask, BindingResult bindingResult);
+
+    @PostMapping(value = "/updateSmartDataTaskById")
+    @ApiOperation(value = "编辑数据源任务管理数据", notes = "编辑数据源任务管理数据", httpMethod = "POST")
+    CommonResult updateSmartDataTaskById(@Validated @RequestBody SmartDataTask smartDataTask, BindingResult bindingResult);
+
+    @PostMapping(value = "/updateSmartDataTaskActivation")
+    @ApiOperation(value = "激活或取消数据源任务", notes = "激活或取消数据源任务", httpMethod = "POST")
+    CommonResult updateSmartDataTaskActivation(@Validated @RequestBody SmartDataTask smartDataTask, BindingResult bindingResult);
+
+    @GetMapping(value = "/queryPageSmartDataTask")
+    @ApiOperation(value = "数据源任务管理分页数据", notes = "数据源任务管理分页数据", httpMethod = "GET")
+    CommonResult queryPageSmartDataTasks(@RequestParam int currentPage, @RequestParam int pageCount, SmartDataTask smartDataTask);
+
+    @GetMapping(value = "/deleteSmartDataTaskById")
+    @ApiOperation(value = "根据ID删除数据源任务数据", notes = "根据ID删除数据源任务数据", httpMethod = "GET")
+    CommonResult deleteSmartDataTaskById(@RequestParam int id);
+}

+ 1 - 0
src/main/java/com/template/controller/SmartDataSourceController.java

@@ -60,6 +60,7 @@ public class SmartDataSourceController implements SmartDataSourceControllerAPI {
         }
 
         Map<String, String> result = smartDataSourceService.updateSmartDataSource(smartDataSource);
+
         return Integer.parseInt(result.get("code")) > 0 ? CommonResult.ok(result.get("msg")) : CommonResult.fail(result.get("msg"));
     }
 

+ 31 - 30
src/main/java/com/template/controller/SmartDataSourceLogController.java

@@ -23,46 +23,47 @@ import org.springframework.web.bind.annotation.RestController;
  */
 @RestController
 public class SmartDataSourceLogController implements SmartDataSourceLogControllerAPI {
+
     @Autowired
     private SmartDataSourceLogService smartDataSourceLogService;
 
     /**
-     * 新增楼栋
-     * @param smartApply 楼栋数据
+     * 新增日志
+     * @param smartDataSourceLog 日志数据
      * @param bindingResult
      * @return
      */
     @Override
-    public CommonResult insertSmartDataSourceLog(SmartDataSourceLog smartApply, BindingResult bindingResult) {
+    public CommonResult insertSmartDataSourceLog(SmartDataSourceLog smartDataSourceLog, BindingResult bindingResult) {
         if (bindingResult.hasErrors()) {
             String st = paramUtils.getParamError(bindingResult);
             return CommonResult.fail(st);
         }
 
-        int result = smartDataSourceLogService.insertSmartDataSourceLog(smartApply);
+        int result = smartDataSourceLogService.insertSmartDataSourceLog(smartDataSourceLog);
 
         return result > 0 ? CommonResult.ok("添加成功") : CommonResult.fail("添加失败");
     }
 
     /**
-     * 更新楼栋
-     * @param sa 楼栋数据
+     * 更新日志
+     * @param smartDataSourceLog 日志数据
      * @param bindingResult
      * @return
      */
-    @Override
-    public CommonResult updateSmartDataSourceLogById(SmartDataSourceLog sa, BindingResult bindingResult) {
-        if (bindingResult.hasErrors()) {
-            String st = paramUtils.getParamError(bindingResult);
-            return CommonResult.fail(st);
-        }
-
-        int result = smartDataSourceLogService.updateSmartDataSourceLog(sa);
-        return result > 0 ? CommonResult.ok("修改成功") : CommonResult.fail("修改失败");
-    }
+//    @Override
+//    public CommonResult updateSmartDataSourceLogById(SmartDataSourceLog smartDataSourceLog, BindingResult bindingResult) {
+//        if (bindingResult.hasErrors()) {
+//            String st = paramUtils.getParamError(bindingResult);
+//            return CommonResult.fail(st);
+//        }
+//
+//        int result = smartDataSourceLogService.updateSmartDataSourceLog(smartDataSourceLog);
+//        return result > 0 ? CommonResult.ok("修改成功") : CommonResult.fail("修改失败");
+//    }
 
     /**
-     * 楼栋分页数据查询
+     * 日志分页数据查询
      * @param currentPage 当前页数
      * @param pageCount 一页数据条数
      * @param name 查询名称
@@ -76,18 +77,18 @@ public class SmartDataSourceLogController implements SmartDataSourceLogControlle
     }
 
 
-    @Override
-    public CommonResult deleteSmartDataSourceLogById(int id) {
-
-        SmartDataSourceLog data = smartDataSourceLogService.getSmartById(id);
-
-        if(data == null){
-            return CommonResult.fail("当前数据不存在,删除失败!");
-        }
-
-        int result = smartDataSourceLogService.deleteSmartDataSourceLogById(id);
-
-        return result > 0 ? CommonResult.ok("删除成功") : CommonResult.fail("删除失败");
-    }
+//    @Override
+//    public CommonResult deleteSmartDataSourceLogById(int id) {
+//
+//        SmartDataSourceLog data = smartDataSourceLogService.getSmartById(id);
+//
+//        if(data == null){
+//            return CommonResult.fail("当前数据不存在,删除失败!");
+//        }
+//
+//        int result = smartDataSourceLogService.deleteSmartDataSourceLogById(id);
+//
+//        return result > 0 ? CommonResult.ok("删除成功") : CommonResult.fail("删除失败");
+//    }
 }
 

+ 111 - 0
src/main/java/com/template/controller/SmartDataTaskController.java

@@ -0,0 +1,111 @@
+package com.template.controller;
+
+
+import com.template.api.SmartDataTaskControllerAPI;
+import com.template.common.utils.paramUtils;
+import com.template.model.pojo.SmartDataSourceLog;
+import com.template.model.pojo.SmartDataTask;
+import com.template.model.result.CommonResult;
+import com.template.model.result.PageUtils;
+import com.template.services.SmartDataTaskService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 数据源任务 前端控制器
+ * </p>
+ *
+ * @author ceshi
+ * @since 2023-12-05
+ */
+@RestController
+public class SmartDataTaskController implements SmartDataTaskControllerAPI {
+
+    @Autowired
+    private SmartDataTaskService smartDataTaskService;
+
+    /**
+     * 新增任务
+     *
+     * @param smartDataTask 任务数据
+     * @param bindingResult
+     * @return
+     */
+    @Override
+    public CommonResult insertSmartDataTask(SmartDataTask smartDataTask, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            String st = paramUtils.getParamError(bindingResult);
+            return CommonResult.fail(st);
+        }
+
+        Map<String, String> result = smartDataTaskService.insertSmartDataTask(smartDataTask);
+
+        return Integer.parseInt(result.get("code")) > 0 ? CommonResult.ok(result.get("msg")) : CommonResult.fail(result.get("msg"));
+    }
+
+    /**
+     * 更新日志
+     *
+     * @param smartDataTask 日志数据
+     * @param bindingResult
+     * @return
+     */
+    @Override
+    public CommonResult updateSmartDataTaskById(SmartDataTask smartDataTask, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            String st = paramUtils.getParamError(bindingResult);
+            return CommonResult.fail(st);
+        }
+
+        Map<String, String> result = smartDataTaskService.updateSmartDataTaskById(smartDataTask);
+
+        return Integer.parseInt(result.get("code")) > 0 ? CommonResult.ok(result.get("msg")) : CommonResult.fail(result.get("msg"));
+    }
+
+    @Override
+    public CommonResult updateSmartDataTaskActivation(SmartDataTask smartDataTask, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            String st = paramUtils.getParamError(bindingResult);
+            return CommonResult.fail(st);
+        }
+
+        Map<String, String> result = smartDataTaskService.updateSmartDataTaskActivation(smartDataTask);
+
+        return Integer.parseInt(result.get("code")) > 0 ? CommonResult.ok(result.get("msg")) : CommonResult.fail(result.get("msg"));
+    }
+
+    /**
+     * 日志分页数据查询
+     *
+     * @param currentPage   当前页数
+     * @param pageCount     一页数据条数
+     * @param smartDataTask 查询名称
+     * @return
+     */
+    @Override
+    public CommonResult queryPageSmartDataTasks(int currentPage, int pageCount, SmartDataTask smartDataTask) {
+        PageUtils<SmartDataTask> result = smartDataTaskService.queryPageSmartDataTasks(currentPage, pageCount, smartDataTask);
+
+        return CommonResult.ok(result);
+    }
+
+
+    @Override
+    public CommonResult deleteSmartDataTaskById(int id) {
+
+        SmartDataTask data = smartDataTaskService.getSmartById(id);
+
+        if (data == null) {
+            return CommonResult.fail("当前数据不存在,删除失败!");
+        }
+
+        int result = smartDataTaskService.deleteSmartDataTaskById(id);
+
+        return result > 0 ? CommonResult.ok("删除成功") : CommonResult.fail("删除失败");
+    }
+}
+

+ 18 - 0
src/main/java/com/template/mapper/SmartDataTaskMapper.java

@@ -0,0 +1,18 @@
+package com.template.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.template.model.pojo.SmartDataTask;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ * 数据源任务 Mapper 接口
+ * </p>
+ *
+ * @author ceshi
+ * @since 2023-12-05
+ */
+@Repository
+public interface SmartDataTaskMapper extends BaseMapper<SmartDataTask> {
+
+}

+ 6 - 3
src/main/java/com/template/model/pojo/SmartDataSource.java

@@ -42,12 +42,15 @@ public class SmartDataSource implements Serializable {
     @ApiModelProperty(value = "数据源连接地址")
     private String dsUrl;
 
+    @ApiModelProperty(value = "数据源用户")
+    private String dsUser;
+
+    @ApiModelProperty(value = "数据源密码")
+    private String dsPassword;
+
     @ApiModelProperty(value = "数据源状态:0异常,1正常")
     private Integer dsStatus;
 
-    @ApiModelProperty(value = "数据源SQL语言")
-    private String dsSql;
-
     @ApiModelProperty(value = "数据源描述")
     private String dsDescrition;
 

+ 5 - 2
src/main/java/com/template/model/pojo/SmartDataSourceLog.java

@@ -5,6 +5,8 @@ import java.util.Date;
 import com.baomidou.mybatisplus.annotation.Version;
 import com.baomidou.mybatisplus.annotation.TableId;
 import java.io.Serializable;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -52,8 +54,9 @@ public class SmartDataSourceLog implements Serializable {
     @ApiModelProperty(value = "操作类型:select  login update  delete create")
     private String logActionClass;
 
-    @ApiModelProperty(value = "操作日期时间")
-    private Date logActionTime;
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @ApiModelProperty(value = "操作日志创建时间")
+    private Date logActionCreateTime;
 
 
 }

+ 65 - 0
src/main/java/com/template/model/pojo/SmartDataTask.java

@@ -0,0 +1,65 @@
+package com.template.model.pojo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+import java.util.Date;
+
+/**
+ * <p>
+ * 数据源操作日志
+ * </p>
+ *
+ * @author ceshi
+ * @since 2023-12-05
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="SmartDataTask对象", description="数据源任务管理")
+public class SmartDataTask implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "主键id")
+    @TableId(value = "tk_id", type = IdType.AUTO)
+    private Integer tkId;
+
+    @ApiModelProperty(value = "数据源id")
+    private Integer tkDsId;
+
+    @ApiModelProperty(value = "任务名称")
+    private String tkName;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @ApiModelProperty(value = "任务开始时间")
+    private String tkStartDatetime;
+
+    @ApiModelProperty(value = "间隔时间:最小是分钟")
+    private Integer tkInterval;
+
+    @ApiModelProperty(value = "任务使用的SQL语言")
+    private String tkSql;
+
+    @ApiModelProperty(value = "是否激活")
+    private Integer tkActivation;
+
+    @ApiModelProperty(value = "任务描述")
+    private String tkDescrition;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @ApiModelProperty(value = "创建时间")
+    private Date tkCreateTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @ApiModelProperty(value = "更新时间")
+    private Date tkUpdateTime;
+}

+ 2 - 2
src/main/java/com/template/services/SmartDataSourceLogService.java

@@ -16,11 +16,11 @@ import com.template.model.result.PageUtils;
 public interface SmartDataSourceLogService extends IService<SmartDataSourceLog> {
     int insertSmartDataSourceLog(SmartDataSourceLog rns);
 
-    int updateSmartDataSourceLog(SmartDataSourceLog rns);
+//    int updateSmartDataSourceLog(SmartDataSourceLog rns);
 
     PageUtils<SmartDataSourceLog> queryPageSmartDataSourceLogs(int currentPage, int pageCount, String name);
 
-    int deleteSmartDataSourceLogById(int id);
+//    int deleteSmartDataSourceLogById(int id);
 
     SmartDataSourceLog getSmartById(int id);
 }

+ 30 - 0
src/main/java/com/template/services/SmartDataTaskService.java

@@ -0,0 +1,30 @@
+package com.template.services;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.template.model.pojo.SmartDataSourceLog;
+import com.template.model.pojo.SmartDataTask;
+import com.template.model.result.PageUtils;
+
+import java.util.Map;
+
+/**
+ * <p>
+ * 数据源任务 服务类
+ * </p>
+ *
+ * @author ceshi
+ * @since 2023-12-05
+ */
+public interface SmartDataTaskService extends IService<SmartDataTask> {
+    Map<String, String> insertSmartDataTask(SmartDataTask smartDataTask);
+
+    Map<String, String> updateSmartDataTaskById(SmartDataTask smartDataTask);
+
+    Map<String, String> updateSmartDataTaskActivation(SmartDataTask smartDataTask);
+
+    PageUtils<SmartDataTask> queryPageSmartDataTasks(int currentPage, int pageCount, SmartDataTask smartDataTask);
+
+    int deleteSmartDataTaskById(int id);
+
+    SmartDataTask getSmartById(int id);
+}

+ 1 - 0
src/main/java/com/template/services/impl/SmartDataClassServiceImpl.java

@@ -46,6 +46,7 @@ public class SmartDataClassServiceImpl extends ServiceImpl<SmartDataClassMapper,
         Page<SmartDataClass> page = new Page<>(currentPage, pageCount);
         QueryWrapper<SmartDataClass> queryWrapper = new QueryWrapper<>();
         queryWrapper.like(StringUtils.hasText(name), "ds_cls_name", name);
+        queryWrapper.orderByDesc("ds_cls_update_time");
         IPage<SmartDataClass> result = smartDataClassMapper.selectPage(page,queryWrapper);
         return new PageUtils<>(result);
     }

+ 13 - 11
src/main/java/com/template/services/impl/SmartDataSourceLogServiceImpl.java

@@ -12,6 +12,7 @@ import com.template.services.SmartDataSourceLogService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 /**
  * <p>
@@ -32,26 +33,27 @@ public class SmartDataSourceLogServiceImpl extends ServiceImpl<SmartDataSourceLo
         return result;
     }
 
-    @Override
-    public int updateSmartDataSourceLog(SmartDataSourceLog sa) {
-        int result = smartDataSourceLogMapper.updateById(sa);
-        return result;
-    }
+//    @Override
+//    public int updateSmartDataSourceLog(SmartDataSourceLog sa) {
+//        int result = smartDataSourceLogMapper.updateById(sa);
+//        return result;
+//    }
 
     @Override
     public PageUtils<SmartDataSourceLog> queryPageSmartDataSourceLogs(int currentPage, int pageCount, String name) {
         Page<SmartDataSourceLog> page = new Page<>(currentPage, pageCount);
         QueryWrapper<SmartDataSourceLog> queryWrapper = new QueryWrapper<>();
-        //queryWrapper.like(StringUtils.hasText(name), "name", name);
+        queryWrapper.like(StringUtils.hasText(name), "name", name);
+        queryWrapper.orderByDesc("log_action_create_time");
         IPage<SmartDataSourceLog> result = smartDataSourceLogMapper.selectPage(page,queryWrapper);
         return new PageUtils<>(result);
     }
 
-    @Override
-    public int deleteSmartDataSourceLogById(int id) {
-        int result = smartDataSourceLogMapper.deleteById(id);
-        return result;
-    }
+//    @Override
+//    public int deleteSmartDataSourceLogById(int id) {
+//        int result = smartDataSourceLogMapper.deleteById(id);
+//        return result;
+//    }
 
     @Override
     public SmartDataSourceLog getSmartById(int id) {

+ 43 - 46
src/main/java/com/template/services/impl/SmartDataSourceServiceImpl.java

@@ -37,40 +37,12 @@ public class SmartDataSourceServiceImpl extends ServiceImpl<SmartDataSourceMappe
 
     @Override
     public Map<String, String> insertSmartDataSource(SmartDataSource smartDataSource) {
-        // 看是否有相同的记录
-        QueryWrapper<SmartDataSource> queryWrapper = new QueryWrapper<>();
-        queryWrapper.like(smartDataSource.getDsClsId() != null, "ds_cls_id", smartDataSource.getDsClsId());
-        queryWrapper.like(StringUtils.hasText(smartDataSource.getDsName()), "ds_name", smartDataSource.getDsName());
-        queryWrapper.like(StringUtils.hasText(smartDataSource.getDsUrl()), "ds_url", smartDataSource.getDsUrl());
-        queryWrapper.like(smartDataSource.getDsStatus() != null, "ds_status", smartDataSource.getDsStatus());
-        queryWrapper.like(StringUtils.hasText(smartDataSource.getDsSql()), "ds_sql", smartDataSource.getDsSql());
-        queryWrapper.like(StringUtils.hasText(smartDataSource.getDsDescrition()), "ds_descrition", smartDataSource.getDsDescrition());
-        List<SmartDataSource> smartDataSources = smartDataSourceMapper.selectList(queryWrapper);
-        if (smartDataSources.size() > 0) {
-            return CommonUtil.getReturnMap("0", "有重复记录!");
-        }
-        // 检测必要参数是否为null
-        if (smartDataSource.getDsClsId() == null) {
-            return CommonUtil.getReturnMap("0", "【数据源类型id】不能为空!");
-        }
-
-        SmartDataClass smartDataClass = smartDataClassMapper.selectById(smartDataSource.getDsClsId());
-        if (smartDataClass == null) {
-            return CommonUtil.getReturnMap("0", "选择的【数据源类型】不存在!");
+        // 检测参数,还有是否存在重复记录
+        Map<String, String> stringStringMap = validateParams(smartDataSource, "insert");
+        if (stringStringMap != null) {
+            return stringStringMap;
         }
 
-        if (smartDataSource.getDsName() == null) {
-            return CommonUtil.getReturnMap("0", "【数据源名称】不能为空!");
-        }
-        if (smartDataSource.getDsUrl() == null) {
-            return CommonUtil.getReturnMap("0", "【数据源连接地址】不能为空!");
-        }
-        if (smartDataSource.getDsSql() == null) {
-            return CommonUtil.getReturnMap("0", "【数据源SQL语言】不能为空!");
-        }
-        if (smartDataSource.getDsDescrition() == null) {
-            return CommonUtil.getReturnMap("0", "【数据源描述】不能为空!");
-        }
         // 必填的参数不为null,则进行新增操作
         int result = smartDataSourceMapper.insert(smartDataSource);
         if (result > 0) {
@@ -80,33 +52,43 @@ public class SmartDataSourceServiceImpl extends ServiceImpl<SmartDataSourceMappe
         }
     }
 
-    @Override
-    public Map<String, String> updateSmartDataSource(SmartDataSource smartDataSource) {
+    // 检测验证参数,和数据库中是否存在重复记录
+    private Map<String, String> validateParams(SmartDataSource smartDataSource, String action) {
         // 看是否有相同的记录
         QueryWrapper<SmartDataSource> queryWrapper = new QueryWrapper<>();
-        queryWrapper.like(smartDataSource.getDsId() != null, "ds_id", smartDataSource.getDsId());
+        if ("update".equals(action)) {
+            queryWrapper.like(smartDataSource.getDsId() != null, "ds_id", smartDataSource.getDsId());
+        }
         queryWrapper.like(smartDataSource.getDsClsId() != null, "ds_cls_id", smartDataSource.getDsClsId());
         queryWrapper.like(StringUtils.hasText(smartDataSource.getDsName()), "ds_name", smartDataSource.getDsName());
         queryWrapper.like(StringUtils.hasText(smartDataSource.getDsUrl()), "ds_url", smartDataSource.getDsUrl());
+        queryWrapper.like(StringUtils.hasText(smartDataSource.getDsUser()), "ds_user", smartDataSource.getDsUser());
+        queryWrapper.like(StringUtils.hasText(smartDataSource.getDsPassword()), "ds_password", smartDataSource.getDsPassword());
         queryWrapper.like(smartDataSource.getDsStatus() != null, "ds_status", smartDataSource.getDsStatus());
-        queryWrapper.like(StringUtils.hasText(smartDataSource.getDsSql()), "ds_sql", smartDataSource.getDsSql());
         queryWrapper.like(StringUtils.hasText(smartDataSource.getDsDescrition()), "ds_descrition", smartDataSource.getDsDescrition());
         List<SmartDataSource> smartDataSources = smartDataSourceMapper.selectList(queryWrapper);
         if (smartDataSources.size() > 0) {
-            return CommonUtil.getReturnMap("0", "数据未修改,请修改后再提交!");
+            if ("update".equals(action)) {
+                return CommonUtil.getReturnMap("0", "数据未修改,请修改后再提交!");
+            } else {
+                return CommonUtil.getReturnMap("0", "有重复记录!");
+            }
         }
         // 检测必要参数是否为null
-        if (smartDataSource.getDsId() == null) {
-            return CommonUtil.getReturnMap("0", "【数据源id】不能为空!");
-        }
-        SmartDataSource sdc = smartDataSourceMapper.selectById(smartDataSource.getDsId());
-        if (sdc == null) {
-            return CommonUtil.getReturnMap("0", "要修改的【数据源】不存在!");
+        if ("update".equals(action)) {
+            if (smartDataSource.getDsId() == null) {
+                return CommonUtil.getReturnMap("0", "【数据源id】不能为空!");
+            }
+            SmartDataSource sdc = smartDataSourceMapper.selectById(smartDataSource.getDsId());
+            if (sdc == null) {
+                return CommonUtil.getReturnMap("0", "要修改的【数据源】不存在!");
+            }
         }
-
+        // 检测必要参数是否为null
         if (smartDataSource.getDsClsId() == null) {
             return CommonUtil.getReturnMap("0", "【数据源类型id】不能为空!");
         }
+
         SmartDataClass smartDataClass = smartDataClassMapper.selectById(smartDataSource.getDsClsId());
         if (smartDataClass == null) {
             return CommonUtil.getReturnMap("0", "选择的【数据源类型】不存在!");
@@ -118,12 +100,26 @@ public class SmartDataSourceServiceImpl extends ServiceImpl<SmartDataSourceMappe
         if (smartDataSource.getDsUrl() == null) {
             return CommonUtil.getReturnMap("0", "【数据源连接地址】不能为空!");
         }
-        if (smartDataSource.getDsSql() == null) {
-            return CommonUtil.getReturnMap("0", "【数据源SQL语言】不能为空!");
+        if (smartDataSource.getDsUser() == null) {
+            return CommonUtil.getReturnMap("0", "【数据源用户】不能为空!");
+        }
+        if (smartDataSource.getDsPassword() == null) {
+            return CommonUtil.getReturnMap("0", "【数据源密码】不能为空!");
         }
         if (smartDataSource.getDsDescrition() == null) {
             return CommonUtil.getReturnMap("0", "【数据源描述】不能为空!");
         }
+        return null;
+    }
+
+    @Override
+    public Map<String, String> updateSmartDataSource(SmartDataSource smartDataSource) {
+        // 检测参数,还有是否存在重复记录
+        Map<String, String> stringStringMap = validateParams(smartDataSource, "insert");
+        if (stringStringMap != null) {
+            return stringStringMap;
+        }
+
         int result = smartDataSourceMapper.updateById(smartDataSource);
         if (result > 0) {
             return CommonUtil.getReturnMap(String.valueOf(result), "数据源修改成功!");
@@ -140,6 +136,7 @@ public class SmartDataSourceServiceImpl extends ServiceImpl<SmartDataSourceMappe
         queryWrapper.like(StringUtils.hasText(smartDataSource.getDsUrl()), "ds_url", smartDataSource.getDsUrl());
         queryWrapper.like(smartDataSource.getDsStatus() != null, "ds_status", smartDataSource.getDsStatus());
         queryWrapper.like(StringUtils.hasText(smartDataSource.getDsDescrition()), "ds_descrition", smartDataSource.getDsDescrition());
+        queryWrapper.orderByDesc("ds_update_time");
         IPage<SmartDataSource> result = smartDataSourceMapper.selectPage(page, queryWrapper);
         return new PageUtils<>(result);
     }

+ 180 - 0
src/main/java/com/template/services/impl/SmartDataTaskServiceImpl.java

@@ -0,0 +1,180 @@
+package com.template.services.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.template.common.utils.CommonUtil;
+import com.template.mapper.SmartDataSourceMapper;
+import com.template.mapper.SmartDataTaskMapper;
+import com.template.model.pojo.SmartDataSource;
+import com.template.model.pojo.SmartDataTask;
+import com.template.model.result.PageUtils;
+import com.template.services.SmartDataTaskService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 数据源任务 服务实现类
+ * </p>
+ *
+ * @author ceshi
+ * @since 2023-12-05
+ */
+@Service
+public class SmartDataTaskServiceImpl extends ServiceImpl<SmartDataTaskMapper, SmartDataTask> implements SmartDataTaskService {
+    @Autowired
+    private SmartDataTaskMapper smartDataTaskMapper;
+
+    @Autowired
+    private SmartDataSourceMapper smartDataSourceMapper;
+
+    @Override
+    public Map<String, String> insertSmartDataTask(SmartDataTask smartDataTask) {
+        // 检测参数,还有是否存在重复记录
+        Map<String, String> stringStringMap = validateParams(smartDataTask, "insert");
+        if (stringStringMap != null) {
+            return stringStringMap;
+        }
+
+        int result = smartDataTaskMapper.insert(smartDataTask);
+        if (result > 0) {
+            return CommonUtil.getReturnMap(String.valueOf(result), "任务添加成功!");
+        } else {
+            return CommonUtil.getReturnMap(String.valueOf(result), "任务添加失败!");
+        }
+    }
+
+    // 检测验证参数,和数据库中是否存在重复记录
+    private Map<String, String> validateParams(SmartDataTask smartDataTask, String action) {
+        // 看是否有相同的记录
+        QueryWrapper<SmartDataTask> queryWrapper = new QueryWrapper<>();
+        if ("update".equals(action) || "active".equals(action)) {
+            queryWrapper.like(smartDataTask.getTkId() != null, "tk_id", smartDataTask.getTkId());
+        }
+
+        if (!"active".equals(action)) {
+            queryWrapper.like(smartDataTask.getTkDsId() != null, "tk_ds_id", smartDataTask.getTkDsId());
+            queryWrapper.like(smartDataTask.getTkName() != null, "tk_name", smartDataTask.getTkName());
+            queryWrapper.like(StringUtils.hasText(smartDataTask.getTkStartDatetime()), "tk_start_datetime", smartDataTask.getTkStartDatetime());
+            queryWrapper.like(smartDataTask.getTkInterval() != null, "tk_interval", smartDataTask.getTkInterval());
+            queryWrapper.like(StringUtils.hasText(smartDataTask.getTkSql()), "tk_sql", smartDataTask.getTkSql());
+            queryWrapper.like(StringUtils.hasText(smartDataTask.getTkDescrition()), "tk_descrition", smartDataTask.getTkDescrition());
+        }
+        queryWrapper.like(smartDataTask.getTkActivation() != null, "tk_activation", smartDataTask.getTkActivation());
+        List<SmartDataTask> smartDataSources = smartDataTaskMapper.selectList(queryWrapper);
+        if (smartDataSources.size() > 0) {
+            if ("update".equals(action)) {
+                return CommonUtil.getReturnMap("0", "数据未修改,请修改后再提交!");
+            } else {
+                return CommonUtil.getReturnMap("0", "有重复记录!");
+            }
+        }
+        // 检测必要参数是否为null
+        if ("update".equals(action) || "active".equals(action)) {
+            if (smartDataTask.getTkId() == null) {
+                return CommonUtil.getReturnMap("0", "【任务id】不能为空!");
+            }
+            SmartDataTask sdc = smartDataTaskMapper.selectById(smartDataTask.getTkId());
+            if (sdc == null) {
+                return CommonUtil.getReturnMap("0", "要修改的【任务】不存在!");
+            }
+        }
+
+        if (!"active".equals(action)) {
+            // 检测必要参数是否为null
+            if (smartDataTask.getTkDsId() == null) {
+                return CommonUtil.getReturnMap("0", "【数据源id】不能为空!");
+            }
+            SmartDataSource smartDataSource = smartDataSourceMapper.selectById(smartDataTask.getTkDsId());
+            if (smartDataSource == null) {
+                return CommonUtil.getReturnMap("0", "选择的【数据源】不存在!");
+            }
+            if (smartDataTask.getTkStartDatetime() == null) {
+                return CommonUtil.getReturnMap("0", "【开始时间】不能为空!");
+            }
+            if (smartDataTask.getTkInterval() == null) {
+                return CommonUtil.getReturnMap("0", "【间隔时间】不能为空!");
+            }
+            if (smartDataTask.getTkSql() == null) {
+                return CommonUtil.getReturnMap("0", "【任务sql】不能为空!");
+            }
+        }
+
+        if (smartDataTask.getTkActivation() == null) {
+            return CommonUtil.getReturnMap("0", "【是否激活】不能为空!");
+        }
+        return null;
+    }
+
+    @Override
+    public Map<String, String> updateSmartDataTaskById(SmartDataTask smartDataTask) {
+        // 检测参数,还有是否存在重复记录
+        Map<String, String> stringStringMap = validateParams(smartDataTask, "update");
+        if (stringStringMap != null) {
+            return stringStringMap;
+        }
+
+        int result = smartDataTaskMapper.updateById(smartDataTask);
+        if (result > 0) {
+            return CommonUtil.getReturnMap(String.valueOf(result), "任务修改成功!");
+        } else {
+            return CommonUtil.getReturnMap(String.valueOf(result), "任务修改失败!");
+        }
+    }
+
+    @Override
+    public Map<String, String> updateSmartDataTaskActivation(SmartDataTask smartDataTask) {
+        // 检测参数,还有是否存在重复记录
+        Map<String, String> stringStringMap = validateParams(smartDataTask, "active");
+        if (stringStringMap != null) {
+            return stringStringMap;
+        }
+
+        Integer tkActivation = smartDataTask.getTkActivation();
+        int result = smartDataTaskMapper.updateById(smartDataTask);
+        if (tkActivation == 1) {
+            if (result > 0) {
+                return CommonUtil.getReturnMap(String.valueOf(result), "任务激活成功!");
+            } else {
+                return CommonUtil.getReturnMap(String.valueOf(result), "任务激活失败!");
+            }
+        } else {
+            if (result > 0) {
+                return CommonUtil.getReturnMap(String.valueOf(result), "任务取消激活成功!");
+            } else {
+                return CommonUtil.getReturnMap(String.valueOf(result), "任务取消激活失败!");
+            }
+        }
+    }
+
+    @Override
+    public PageUtils<SmartDataTask> queryPageSmartDataTasks(int currentPage, int pageCount, SmartDataTask smartDataTask) {
+        Page<SmartDataTask> page = new Page<>(currentPage, pageCount);
+        QueryWrapper<SmartDataTask> queryWrapper = new QueryWrapper<>();
+        queryWrapper.like(smartDataTask.getTkDsId() != null, "tk_ds_id", smartDataTask.getTkDsId());
+        queryWrapper.like(smartDataTask.getTkName() != null, "tk_name", smartDataTask.getTkName());
+        queryWrapper.like(smartDataTask.getTkActivation() != null, "tk_activation", smartDataTask.getTkActivation());
+        queryWrapper.like(smartDataTask.getTkDescrition() != null, "tk_descrition", smartDataTask.getTkDescrition());
+        queryWrapper.orderByDesc("tk_update_time");
+        IPage<SmartDataTask> result = smartDataTaskMapper.selectPage(page, queryWrapper);
+        return new PageUtils<>(result);
+    }
+
+    @Override
+    public int deleteSmartDataTaskById(int id) {
+        int result = smartDataTaskMapper.deleteById(id);
+        return result;
+    }
+
+    @Override
+    public SmartDataTask getSmartById(int id) {
+        SmartDataTask result = smartDataTaskMapper.selectById(id);
+        return result;
+    }
+}