From ec78dbddbf0159a0d5f285b87977a32ea765fda0 Mon Sep 17 00:00:00 2001
From: ke <893754509@qq.com>
Date: Fri, 26 Jul 2024 15:13:27 +0800
Subject: [PATCH] 全景图和白蚁报警:7-26 15

---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/controller/SkPanoramaController.java       |   32 ++---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.java               |   12 ++
 skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClientFallback.java |    1 
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/entity/SkPicCountEntity.java               |   33 ++++++
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.xml                |  127 +++++++++++++++++++++---
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/impl/SkPanoramaServiceImpl.java    |   21 ++++
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClient.java                 |   25 +++-
 skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/ISkPanoramaService.java            |    3 
 8 files changed, 206 insertions(+), 48 deletions(-)

diff --git a/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClientFallback.java b/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClientFallback.java
index 7fd094b..3677007 100644
--- a/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClientFallback.java
+++ b/skjcmanager/skjcmanager-service-api/skjcmanager-sm-api/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClientFallback.java
@@ -21,6 +21,7 @@
 
 	}
 
+	@Override
 	public void sendBaiYiWarn() {
 
 	}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/controller/SkPanoramaController.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/controller/SkPanoramaController.java
index 0973b6f..0555c7b 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/controller/SkPanoramaController.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/controller/SkPanoramaController.java
@@ -22,6 +22,7 @@
 import cn.gistack.resource.entity.QieTuEntity;
 import cn.gistack.resource.feign.IOssClient;
 import cn.gistack.sm.skPanorama.entity.ParamEntity;
+import cn.gistack.sm.skPanorama.entity.SkPicCountEntity;
 import cn.gistack.sm.skPanorama.utils.Img4JavaUtil;
 import cn.gistack.sm.skPanorama.utils.PanoramaUtilDict;
 import cn.gistack.sm.skPanoramaState.entity.SkPanoramaStateEntity;
@@ -117,8 +118,17 @@
 	 */
 	@GetMapping("/page")
 	@ApiOperation(value = "分页", notes = "传入skPanorama")
-	public R<IPage<SkPanoramaVO>> page(SkPanoramaVO skPanorama, Query query) {
-		IPage<SkPanoramaVO> pages = skPanoramaService.selectSkPanoramaPage(Condition.getPage(query), skPanorama);
+	public R<IPage<SkPicCountEntity>> page(SkPicCountEntity skPanorama, Query query) {
+		Integer current = query.getCurrent();
+		Integer size = query.getSize();
+		IPage<SkPicCountEntity> page = Condition.getPage(query);
+
+//		System.err.println("current:"+current);
+//		System.err.println("size:"+size);
+		Integer startIndex = (current -1) * size;
+		Integer endIndex = current * size;
+
+		IPage<SkPicCountEntity> pages = skPanoramaService.selectPageR( page,startIndex,  endIndex, skPanorama);
 		return R.data(pages);
 	}
 
@@ -151,23 +161,7 @@
 		List<SkPanoramaStateEntity> updateList = new ArrayList<>();
 		List<SkPanoramaStateEntity> addList = new ArrayList<>();
 		if (stateLsit != null && stateLsit.size()>0) {
-//			for (SkPanoramaStateEntity item :stateLsit) {
-//				Long id = item.getId();
-//				if (id != null) {
-//					// 更新
-//					updateList.add(item);
-//				} else {
-//					// 新增
-//					addList.add(item);
-//				}
-//			}
-//			boolean b = true;
-//			if (addList != null) {
-//				b = skPanoramaStateService.saveBatch(addList);
-//			}
-//			if (updateList != null) {
-//				b = skPanoramaStateService.saveOrUpdateBatch(updateList);
-//			}
+
 			boolean b =skPanoramaStateService.saveOrUpdateBatch(stateLsit);
 
 			return R.status(b);
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/entity/SkPicCountEntity.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/entity/SkPicCountEntity.java
new file mode 100644
index 0000000..26c100c
--- /dev/null
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/entity/SkPicCountEntity.java
@@ -0,0 +1,33 @@
+package cn.gistack.sm.skPanorama.entity;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import org.springblade.core.mp.base.BaseEntity;
+
+@Data
+public class SkPicCountEntity  {
+
+
+	private String guid;// 水库编码
+	private String othRegDd; // 水库注册码
+	private String resNm;// 水库名称
+	private String city;
+	private String city_cd;
+	private String county;
+	private String county_cd;
+	private String town;
+	private String town_cd;
+
+	private String resType;// 水库类型
+	private String resFunc;// 水库功能
+	private String resCategory;// 水库性质
+	private String engScal;// 水库规模
+
+	private Integer picNum;// 水库
+	private Integer ROW_ID;
+
+	private Integer havePic;// 已上传全景
+}
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.java
index a5be09f..5669461 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.java
@@ -17,7 +17,9 @@
 package cn.gistack.sm.skPanorama.mapper;
 
 import cn.gistack.sm.skPanorama.entity.SkPanoramaEntity;
+import cn.gistack.sm.skPanorama.entity.SkPicCountEntity;
 import cn.gistack.sm.skPanorama.vo.SkPanoramaVO;
+import cn.gistack.sm.skPanoramaState.vo.SkPanoramaStateVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
@@ -35,11 +37,17 @@
 	/**
 	 * 自定义分页
 	 *
-	 * @param page
+	 * @param
 	 * @param skPanorama
 	 * @return
 	 */
-	List<SkPanoramaVO> selectSkPanoramaPage(IPage page, SkPanoramaVO skPanorama);
+	List<SkPanoramaVO> selectSkPanoramaPage(IPage page, SkPanoramaVO SkPanorama);
+
+
+	List<SkPicCountEntity> selectPageR(@Param("startIndex")Integer startIndex,
+												@Param("endIndex")Integer endIndex,
+												@Param("param")SkPicCountEntity skPanorama);
+	Integer selectPageCountR(@Param("param")SkPicCountEntity skPanorama);
 
 	List<SkPanoramaEntity> findList(@Param("param") SkPanoramaEntity skPanorama);
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.xml
index cd6ee50..dbf8b17 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/mapper/SkPanoramaMapper.xml
@@ -22,30 +22,119 @@
         <result column="tenant_id" property="tenantId"/>
     </resultMap>
 
+    <resultMap id="skPicCountMap" type="cn.gistack.sm.skPanorama.entity.SkPicCountEntity">
+        <result column="guid" property="guid"/>
+        <result column="res_reg_code" property="resRegCode"/>
+        <result column="res_type" property="resType"/>
+        <result column="res_func" property="resFunc"/>
+        <result column="res_category" property="resCategory"/>
+        <result column="eng_scal" property="engScal"/>
+        <result column="picNum" property="picNum"/>
+    </resultMap>
 
-    <select id="selectSkPanoramaPage" resultMap="skPanoramaResultMap">
+    <!--
+     <if test="param.resGuid != null and param.resGuid != ''">
+                AND t1."guid" = #{param.resGuid}
+            </if>
+            <if test="param.resRegCode != null and param.resRegCode != ''">
+                AND t1."res_reg_code" = #{param.resRegCode}
+            </if>
+    -->
+
+    <sql id="mainSql">
         select
-            t1."guid",
-            t1."res_reg_code",
-            t1."res_type",
-            t1."res_func",
-            t1."res_category",
-            t1."eng_scal"
+            t1."guid" AS "guid",
+            t1."oth_reg_cd" AS "othRegDd",
+            t1."res_nm" AS "resNm",
+            t1."city_nm" AS "city",
+            t1."city_cd" AS "city_cd",
+            t1."county_nm" AS "county",
+            t1."county_cd" AS "county_cd",
+            t1."town_nm" AS "town",
+            t1."town_cd" AS "town_cd",
+
+            t2."res_type" AS "resType",
+            t2."res_func" AS "resFunc",
+            t2."res_category" AS "resCategory",
+            t2."eng_scal" AS "engScal",
+
+            case
+                WHEN  t3."picNum" is null then '0'
+                else t3."picNum"
+            end AS  "picNum"
         from
-            SJZT_MD."att_res_base" t1
-            left join  (
-                select
-                    res_guid,
-                    count(res_guid) AS "num"
-                from
-                    YWXT."SK_PANORAMA"
-                where is_deleted = 0
-                group by res_guid
-            )t2  on t1."guid" = t2."res_guid"
-        where
-            is_deleted = 0
+                SJZT_DW."dim_res_info_a" t1
+                LEFT JOIN SJZT_MD."att_res_base" t2 ON t1."guid" = t2."guid"
+                left join  (
+                    select
+                        res_guid AS "resGuid",
+                        count(res_guid) AS "picNum"
+                    from
+                        YWXT."SK_PANORAMA"
+                    where is_deleted = 0
+                    group by res_guid
+                ) t3  on t1."guid" = t3."resGuid"
+        WHERE
+            t2."is_deleted" = 0
+            <if test="param.havePic !=null and  param.havePic==1 ">
+                AND t3."picNum" > 0
+            </if>
+            <if test="param.havePic !=null and  param.havePic==2 ">
+                AND t3."picNum" is null
+            </if>
+            <if test="param.resNm !=null and param.resNm!=''">
+                AND t1."res_nm" LIKE CONCAT('%',#{param.resNm},'%')
+            </if>
+            <if test="param.guid !=null and param.guid!=''">
+                AND t1."guid" = #{param.guid}
+            </if>
+            <if test="param.othRegDd !=null and param.othRegDd!=''">
+                AND t1."oth_reg_cd" = #{param.othRegDd}
+            </if>
+            <if test="param.resType !=null and param.resType!=''">
+                AND t2."res_type" = #{param.resType}
+            </if>
+            <if test="param.engScal !=null and param.engScal!=''">
+                AND t2."eng_scal" = #{param.engScal}
+            </if>
+            <if test="param.city_cd !=null and param.cityCd!=''">
+                AND t1."city_cd" = #{param.city_cd}
+            </if>
+            <if test="param.county_cd !=null and param.county_cd !=''">
+                AND t1."county_cd" = #{param.county_cd}
+            </if>
+            <if test="param.town_cd !=null and param.town_cd !=''">
+                AND t1."town_cd" = #{param.town_cd}
+            </if>
+
+        order by  t1."city_cd",t1."county_nm"
+    </sql>
+
+
+    <select id="selectPageR" resultType="cn.gistack.sm.skPanorama.entity.SkPicCountEntity">
+        select
+            *
+        from (
+            select TMP.*,
+            ROWNUM as ROW_ID
+            from (
+                <include refid="mainSql"></include>
+            ) TMP
+            where ROWNUM  <![CDATA[ <= ]]>  ${endIndex}
+        )
+        where ROW_ID > ${startIndex}
     </select>
 
+    <select id="selectPageCountR" resultType="Integer">
+        select
+            count(*) AS "countNum"
+        from (
+            <include refid="mainSql"></include>
+             )
+    </select>
+
+
+
     <resultMap id="skResultMap" type="cn.gistack.sm.skPanorama.entity.SkPanoramaEntity">
         <result column="id" property="id"/>
         <result column="res_guid" property="resGuid"/>
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/ISkPanoramaService.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/ISkPanoramaService.java
index b8b3c69..802736c 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/ISkPanoramaService.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/ISkPanoramaService.java
@@ -17,6 +17,7 @@
 package cn.gistack.sm.skPanorama.service;
 
 import cn.gistack.sm.skPanorama.entity.SkPanoramaEntity;
+import cn.gistack.sm.skPanorama.entity.SkPicCountEntity;
 import cn.gistack.sm.skPanorama.vo.SkPanoramaVO;
 import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -40,5 +41,7 @@
 	 */
 	IPage<SkPanoramaVO> selectSkPanoramaPage(IPage<SkPanoramaVO> page, SkPanoramaVO skPanorama);
 
+	IPage<SkPicCountEntity> selectPageR(IPage<SkPicCountEntity> page ,Integer startIndex, Integer endIndex, SkPicCountEntity skPanorama);
+
 	List<SkPanoramaEntity> findList(SkPanoramaEntity skPanorama);
 }
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/impl/SkPanoramaServiceImpl.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/impl/SkPanoramaServiceImpl.java
index f0385a0..c19702e 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/impl/SkPanoramaServiceImpl.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/skPanorama/service/impl/SkPanoramaServiceImpl.java
@@ -17,6 +17,7 @@
 package cn.gistack.sm.skPanorama.service.impl;
 
 import cn.gistack.sm.skPanorama.entity.SkPanoramaEntity;
+import cn.gistack.sm.skPanorama.entity.SkPicCountEntity;
 import cn.gistack.sm.skPanorama.vo.SkPanoramaVO;
 import cn.gistack.sm.skPanorama.mapper.SkPanoramaMapper;
 import cn.gistack.sm.skPanorama.service.ISkPanoramaService;
@@ -37,7 +38,25 @@
 
 	@Override
 	public IPage<SkPanoramaVO> selectSkPanoramaPage(IPage<SkPanoramaVO> page, SkPanoramaVO skPanorama) {
-		return page.setRecords(baseMapper.selectSkPanoramaPage(page, skPanorama));
+
+//		return page.setRecords(baseMapper.selectSkPanoramaPage(page, skPanorama));
+
+
+		return null;
+	}
+
+
+	public IPage<SkPicCountEntity> selectPageR(IPage<SkPicCountEntity> page,
+											  Integer startIndex,
+											  Integer endIndex,
+											  SkPicCountEntity skPanorama) {
+
+		List<SkPicCountEntity> skPicCountEntities = baseMapper.selectPageR(startIndex, endIndex, skPanorama);
+		Integer totalcount = baseMapper.selectPageCountR(skPanorama);
+
+		page.setRecords(skPicCountEntities);
+		page.setTotal(totalcount);
+		return page;
 	}
 
 	@Override
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClient.java b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClient.java
index c0f7bd6..1720a4b 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClient.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sms/feign/DataAbnormalWarnClient.java
@@ -17,6 +17,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.StringUtils;
 import org.springblade.core.tenant.annotation.NonDS;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpEntity;
@@ -262,7 +263,6 @@
 					String personInCharge = ""; // 责任人名称
 					String phone = ""; // 责任人联系方式
 
-
 					for (BaiYiTestEntity item : list ) {
 						String skName = item.getSkName();
 						String termitePointNum = item.getTermitePointNum();
@@ -290,14 +290,25 @@
 				System.err.println(item.toString());
 				String skName = item.getSkName();
 				String personInCharge = item.getPersonInCharge();
-				String phone = item.getPhone();
+				String phoneList = item.getPhone();
 				String bayistate = item.getBayistate();
 
-				SMSSendRequest request = new SMSSendRequest();
-				request.setUserNumber(phone);
-				request.setTemplateId("2431012282799");//短信模版编号
-				request.setMessageContent("紧急通知:"+skName+" 中以下白蚁监测点发生白蚁预警,请立安排人前去检查是否真实存在白蚁:"+ bayistate);
-				SmsUtils.sendMsg(request);
+				String [] phoness = phoneList.split(",");
+				for (String phone: phoness) {
+
+					if(StringUtils.isNotBlank(phone)) {
+
+						SMSSendRequest request = new SMSSendRequest();
+						request.setUserNumber(phone);
+						request.setTemplateId("2431012282799");//短信模版编号
+						request.setMessageContent("紧急通知:"+skName+"中以下白蚁监测点发生白蚁预警,请立安排人前去检查是否真实存在白蚁:"+ bayistate);
+
+						log.info("短信信息实体:" +  request.toString());
+						SmsUtils.sendMsg(request);
+					}
+				}
+
+
 			}
 		}
 

--
Gitblit v1.9.3