From d99b2003dae4afa35b29f05c74c2e07b574bd94a Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Wed, 05 Jul 2023 16:57:38 +0800
Subject: [PATCH] 数据校验规则数据生成

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IQualityManageService.java         |    4 ++++
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/feign/RulesClient.java                     |    7 ++++---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.xml             |   19 +++++++++++++++++++
 skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/DataRulesXxlJob.java           |    6 +++++-
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.java            |    3 +++
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/QualityManageServiceImpl.java |    5 +++++
 6 files changed, 40 insertions(+), 4 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/feign/RulesClient.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/feign/RulesClient.java
index 374d654..e08c100 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/feign/RulesClient.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/feign/RulesClient.java
@@ -2,6 +2,7 @@
 
 import cn.gistack.sm.resDataCheck.entity.Rules;
 import cn.gistack.sm.resDataCheck.entity.RulesCondition;
+import cn.gistack.sm.resDataCheck.service.IQualityManageService;
 import cn.gistack.sm.resDataCheck.service.IRulesConditionService;
 import cn.gistack.sm.resDataCheck.service.IRulesService;
 import lombok.AllArgsConstructor;
@@ -28,6 +29,8 @@
 	private IRulesService rulesService;
 
 	private IRulesConditionService rulesConditionService;
+
+	private IQualityManageService qualityManageService;
 
 	/**
 	 * 指标匹配空值
@@ -238,9 +241,7 @@
 			return R.fail(-1,sqlStr + "\\n 查询条件错误,请检查规则设置");
 		}
 
-
-
 		// 执行sql
-		return null;
+		return R.data(qualityManageService.addQualityManage(id,sqlStr));
 	}
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.java
index 5edf7fc..4b79711 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.java
@@ -18,4 +18,7 @@
 	List<QualityManageVO> selectCustomizePage(IPage<QualityManageVO> page, @Param("vo") QualityManageVO qualityManageVO);
 
 	QualityManageVO getDetail(@Param("id") String id);
+
+	Integer addQualityManage(@Param("ruleId") Long ruleId, @Param("whereStr") String whereStr);
+
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.xml
index 997c72c..fc00e5c 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/mapper/QualityManageMapper.xml
@@ -45,4 +45,23 @@
                 LEFT JOIN SM_RES_DATA_CHECK_RULES rule ON rule.id = qm.rule_id
         WHERE qm.is_deleted = 0 AND qm.id = #{id}
     </select>
+
+    <insert id="addQualityManage">
+        insert into SM_RES_DATA_QUALITY_MANAGE (res_id,rule_id,create_time,update_time)
+        select a."guid" as res_id,#{ruleId},NOW(),NOW()
+        from SJZT_MD."att_res_base" a
+                 left join SJZT_MD."att_res_danger_manage_special" b on (a."guid" = b."res_guid")
+                 left join SJZT_MD."att_res_stag_char" c on (a."guid" = c."res_guid")
+                 left join SJZT_MD."att_res_flse_lim" d1 on (a."guid" = d1."res_guid" and d1."flood_season_name" = '前汛期')
+                 left join SJZT_MD."att_res_flse_lim" d2 on (a."guid" = d2."res_guid" and d2."flood_season_name" = '中汛期')
+                 left join SJZT_MD."att_res_flse_lim" d3 on (a."guid" = d3."res_guid" and d3."flood_season_name" = '后汛期')
+                 left join SJZT_MD."att_st_base" e on (a."guid" = e."res_guid" and e."is_main_rsvr" = '1')
+                 left join SJZT_MD."st_rsvr_r_last" f on (e."code" = f."stcd")
+                 left join (select tmp."res_guid",max(tmp."tb_weir_top_elevation") "tb_weir_top_elevation" from SJZT_MD."att_res_rsb_norspi" tmp group by tmp."res_guid") g on (a."guid" = g."res_guid")
+                 left join (select tmp2."res_guid",max(tmp2."tb_dam_top_elevation") "tb_dam_top_elevation" from SJZT_MD."att_res_water_block" tmp2 group by tmp2."res_guid") h on (a."guid" = h."res_guid")
+        <where>
+            #{whereStr}
+        </where>
+    </insert>
+
 </mapper>
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IQualityManageService.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IQualityManageService.java
index 9d6c1c6..e0a8b46 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IQualityManageService.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/IQualityManageService.java
@@ -3,10 +3,14 @@
 import cn.gistack.sm.resDataCheck.entity.QualityManage;
 import cn.gistack.sm.resDataCheck.vo.QualityManageVO;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
 import org.springblade.core.mp.base.BaseService;
 
 public interface IQualityManageService extends BaseService<QualityManage> {
 	IPage<QualityManageVO> selectCustomizePage(IPage<QualityManageVO> page, QualityManageVO qualityManageVO);
 
 	QualityManageVO getDetail(String id);
+
+	Integer addQualityManage(Long ruleId, String whereStr);
+
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/QualityManageServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/QualityManageServiceImpl.java
index 0093f9e..0f03aac 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/QualityManageServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/resDataCheck/service/impl/QualityManageServiceImpl.java
@@ -19,4 +19,9 @@
 	public QualityManageVO getDetail(String id) {
 		return baseMapper.getDetail(id);
 	}
+
+	@Override
+	public Integer addQualityManage(Long ruleId, String whereStr) {
+		return baseMapper.addQualityManage(ruleId,whereStr);
+	}
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/DataRulesXxlJob.java b/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/DataRulesXxlJob.java
index 4533f8f..17c76cd 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/DataRulesXxlJob.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/DataRulesXxlJob.java
@@ -1,6 +1,8 @@
 package cn.gistack.job.executor.jobhandler;
 
 import cn.gistack.sm.resDataCheck.feign.IRulesClient;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.xxl.job.core.biz.model.ReturnT;
 import com.xxl.job.core.handler.annotation.XxlJob;
 import com.xxl.job.core.log.XxlJobLogger;
@@ -24,7 +26,9 @@
 	@XxlJob("dataRulesJobHandler")
 	public ReturnT<String> execute(String param) {
 		XxlJobLogger.log("开始数据校验规则任务...");
-		R r = rulesClient.createDataRules(1L);
+		JSONObject jsonParam = JSON.parseObject(param);
+		XxlJobLogger.log("参数为:" + param);
+		R r = rulesClient.createDataRules(jsonParam.getLong("ruleId"));
 		XxlJobLogger.log("结束数据校验规则任务...",r.getMsg());
 		return ReturnT.SUCCESS;
 	}

--
Gitblit v1.9.3