From 9f781d50d96e4193d61f4797b72cd79b5203a764 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期四, 28 三月 2024 14:57:39 +0800
Subject: [PATCH] 增加 查询一个监测站接口 条件查询已绑定的流量计接口 查询全部流量计接口

---
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrFlowmeterMapper.java                       |    7 +++
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoFlowMeter.java                              |    2 
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterCtrl.java |   33 ++++++++++++++--
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java     |    1 
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterSv.java   |   12 +++++-
 pipIrr-platform/pipIrr-common/pom.xml                                                                              |    5 ++
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrFlowmeterMapper.xml                                      |   42 +++++++++++++--------
 7 files changed, 78 insertions(+), 24 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/pom.xml b/pipIrr-platform/pipIrr-common/pom.xml
index be19e3a..480dd56 100644
--- a/pipIrr-platform/pipIrr-common/pom.xml
+++ b/pipIrr-platform/pipIrr-common/pom.xml
@@ -139,6 +139,11 @@
             <groupId>cn.hutool</groupId>
             <artifactId>hutool-all</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.apache.logging.log4j</groupId>
+            <artifactId>log4j-slf4j-impl</artifactId>
+            <version>2.17.2</version>
+        </dependency>
     </dependencies>
 
     <build>
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrFlowmeterMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrFlowmeterMapper.java
index 3cdb561..4f365a5 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrFlowmeterMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrFlowmeterMapper.java
@@ -1,6 +1,7 @@
 package com.dy.pipIrrGlobal.daoPr;
 
 import com.dy.pipIrrGlobal.pojoPr.PrFlowmeter;
+import com.dy.pipIrrGlobal.pojoPr.PrIntake;
 import com.dy.pipIrrGlobal.voPr.VoFlowMeter;
 import com.dy.pipIrrGlobal.voPr.VoFlowMonitoring;
 import org.apache.ibatis.annotations.Param;
@@ -56,4 +57,10 @@
      * @return 瀹炰綋闆嗗悎
      */
     List<VoFlowMeter> getFlowMeters(Map<?, ?> params);
+
+    /**
+     * 寰楀埌鍏ㄩ儴瀹炰綋
+     * @return 鍏ㄩ儴瀹炰綋
+     * */
+    List<PrFlowmeter> selectAll();
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoFlowMeter.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoFlowMeter.java
index 30d5f33..a064d3d 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoFlowMeter.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoFlowMeter.java
@@ -24,7 +24,7 @@
     @Schema(title = "ID")
     @ExcelProperty("ID")
     @ColumnWidth(10)
-    private Long id;
+    private String id;
 
     @Schema(title = "绠$綉娴侀噺璁$紪鍙�")
     @ExcelProperty("绠$綉娴侀噺璁$紪鍙�")
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrFlowmeterMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrFlowmeterMapper.xml
index 9a6cf6d..c74808b 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrFlowmeterMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrFlowmeterMapper.xml
@@ -172,38 +172,40 @@
     SELECT COUNT(*) AS recordCountOfFlowmeter FROM pr_flowmeter WHERE deleted = 0 AND id = ${flowmeterId}
   </select>
 
-  <!--鏍规嵁娴侀噺璁$紪鍙� 鎴栬�� 鍦ㄧ嚎鐘舵�� 鑾峰彇鏈垹闄ょ殑娴侀噺璁℃暟閲� -->
+  <!--鏍规嵁娴侀噺璁$紪鍙� 鎴栬�� 鍦ㄧ嚎鐘舵�� 鑾峰彇鏈垹闄ょ殑缁戝畾鐨勬祦閲忚鏁伴噺 -->
   <select id="getRecordCountOfFlowMeterByOthers" resultType="_integer">
-    SELECT COUNT(*) AS recordCountOfFlowmeter FROM pr_flowmeter
+    SELECT COUNT(*) AS recordCountOfFlowmeter
+    from pr_flowmeter pfm
+    Left join pr_monitoring_flowmeter pmofl on pmofl.flowmeterId = pfm.id
+    Left join pr_flow_monitoring pfmt on pfmt.id = pmofl.monitoringId
     <where>
-    deleted = 0 AND
-      <if test="code != null">
-        code = #{code,jdbcType=VARCHAR},
+      pfm.deleted = 0 AND pfmt.deleted = 0
+      <if test = "code != null and code !=''">
+        AND pfm.code like CONCAT('%',#{code},'%')
       </if>
       <if test="onlineState != null ">
-        onlineState = #{onlineState,jdbcType=TINYINT}
+        AND pfm.onlineState = #{onlineState}
       </if>
-  </where>
+    </where>
   </select>
 
-  <!--鏍规嵁娴侀噺璁$紪鍙� 鎴栬�� 鍦ㄧ嚎鐘舵�� 鑾峰彇鏈垹闄ょ殑娴侀噺璁¤褰� -->
+  <!--鏍规嵁娴侀噺璁$紪鍙� 鎴栬�� 鍦ㄧ嚎鐘舵�� 鑾峰彇鏈垹闄ょ殑缁戝畾鐨勬祦閲忚璁板綍 -->
   <select id="getFlowMeters" resultType="com.dy.pipIrrGlobal.voPr.VoFlowMeter">
-    select (@i:=@i+1)                                           AS id,
+    select CAST(pfm.id AS char)                                 AS id,
       pfm.code                                                  AS code,
       pfm.onlineState                                           AS onlineState,
       pfmt.`name`                                               AS `name`,
       pfm.operateDt                                             AS operateDt
     from pr_flowmeter pfm
-    inner join pr_monitoring_flowmeter pmofl on pmofl.flowmeterId = pfm.id
-    inner join pr_flow_monitoring pfmt on pfmt.id = pmofl.monitoringId,
-    (SELECT @i:=0) AS itable
+    Left join pr_monitoring_flowmeter pmofl on pmofl.flowmeterId = pfm.id
+    Left join pr_flow_monitoring pfmt on pfmt.id = pmofl.monitoringId
     <where>
-      pfm.deleted = 0 AND pfmt.deleted = 0 AND pmofl.operateType = 1
-      <if test="code != null">
-        AND code = #{code,jdbcType=VARCHAR}
+      pfm.deleted = 0 AND pfmt.deleted = 0
+      <if test = "code != null and code !=''">
+        AND pfm.code like CONCAT('%',#{code},'%')
       </if>
       <if test="onlineState != null ">
-        AND onlineState = #{onlineState,jdbcType=TINYINT}
+        AND pfm.onlineState = #{onlineState}
       </if>
     </where>
     ORDER BY pfm.operateDt DESC
@@ -213,4 +215,12 @@
       </if>
     </trim>
   </select>
+
+  <select id="selectAll" resultMap="BaseResultMap">
+    <!--@mbg.generated-->
+    select
+    <include refid="Base_Column_List"/>
+    from pr_flowmeter pfm
+    where deleted != 1
+  </select>
 </mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterCtrl.java
index 96513c4..2e3f6b5 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterCtrl.java
@@ -108,18 +108,41 @@
                             schema = @Schema(implementation = PrFlowmeter.class))}
             )
     })
-    @GetMapping(path = "getFlowMeters", consumes = MediaType.APPLICATION_JSON_VALUE)
+    @GetMapping(path = "getFlowMeters")
     @SsoAop()
-    public BaseResponse<QueryResultVo<List<VoFlowMeter>>> getFlowMeters(@RequestBody @Parameter(description = "鏌ヨform琛ㄥ崟json鏁版嵁", required = true) QueryVoFlowMeter vo) {
+    public BaseResponse<QueryResultVo<List<VoFlowMeter>>> getFlowMeters(QueryVoFlowMeter vo) {
         try {
             QueryResultVo<List<VoFlowMeter>> res = flowmeterSv.getFlowMeters(vo);
-            if (res == null) {
-                return BaseResponseUtils.buildFail(ProjectResultCode.NO_FLOWMETERS.getMessage());
+            if (res.itemTotal != null && res.itemTotal > 0) {
+                return BaseResponseUtils.buildSuccess(res);
             }
-            return BaseResponseUtils.buildSuccess(res);
+            return BaseResponseUtils.buildFail(ProjectResultCode.NO_FLOWMETERS.getMessage());
         } catch (Exception e) {
             log.error("鑾峰彇娴侀噺璁¤褰曞紓甯�", e);
             return BaseResponseUtils.buildException(e.getMessage());
         }
     }
+    @Operation(summary = "鑾峰緱鍏ㄩ儴娴侀噺璁�", description = "杩斿洖鍏ㄩ儴娴侀噺璁�")
+    @ApiResponses(value = {
+            @ApiResponse(
+                    responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+                    description = "杩斿洖鍏ㄩ儴娴侀噺璁★紙BaseResponse.content:QueryResultVo[{}]锛�",
+                    content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+                            schema = @Schema(implementation = PrFlowmeter.class))}
+            )
+    })
+    @GetMapping(path = "all")
+    @SsoAop()
+    public BaseResponse<List<PrFlowmeter>> getFlowMeterAll() {
+        try {
+            List<PrFlowmeter> res = flowmeterSv.getFlowMeterAll();
+            if (res != null && res.size() > 0) {
+                return BaseResponseUtils.buildSuccess(res);
+            }
+            return BaseResponseUtils.buildFail(ProjectResultCode.NO_DATA.getMessage());
+        } catch (Exception e) {
+            log.error("鑾峰彇娴侀噺璁℃暟鎹紓甯�", e);
+            return BaseResponseUtils.buildException(e.getMessage());
+        }
+    }
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterSv.java
index 3dff9b3..48a6315 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/flowMonitoring/FlowmeterSv.java
@@ -60,16 +60,24 @@
      */
     public QueryResultVo<List<VoFlowMeter>> getFlowMeters(QueryVoFlowMeter queryVo){
         Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo) ;
-
+        Integer itemTotal = prFlowmeterMapper.getRecordCountOfFlowMeterByOthers(params);
         QueryResultVo<List<VoFlowMeter>> rsVo = new QueryResultVo<>() ;
         rsVo.pageSize = queryVo.pageSize ;
         rsVo.pageCurr = queryVo.pageCurr ;
 
         // 璁$畻绗﹀悎鏉′欢鐨勮褰曟暟
-        Integer itemTotal = prFlowmeterMapper.getRecordCountOfFlowMeterByOthers(params);
         rsVo.calculateAndSet(itemTotal.longValue(), params);
         rsVo.obj = prFlowmeterMapper.getFlowMeters(params);
 
         return rsVo ;
     }
+
+    /**
+     * 寰楀埌鍏ㄩ儴娴侀噺璁�
+     * @return
+     */
+    public List<PrFlowmeter> getFlowMeterAll(){
+        List<PrFlowmeter> all = prFlowmeterMapper.selectAll();
+        return all;
+    }
 }
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
index b2d3a86..2df9954 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/result/ProjectResultCode.java
@@ -63,6 +63,7 @@
     ADD_FLOWMETER_FAIL(60001, "娴侀噺璁℃坊鍔犲け璐�"),
     DELETE_FLOWMETER_FAIL(60002, "娴侀噺璁″垹闄ゅけ璐�"),
     NO_FLOWMETERS(60003, "娌℃湁绗﹀悎鏉′欢娴侀噺璁℃暟鎹�"),
+    NO_DATA(60004, "娌℃湁鎵惧埌娴侀噺璁℃暟鎹�"),
 
     /**
      * 娴侀噺鐩戞祴绔欍�佹祦閲忚鍏宠仈

--
Gitblit v1.8.0