From 742b6bbac1b4609386817a6e6fb489ec098a5490 Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期二, 21 一月 2025 18:29:44 +0800
Subject: [PATCH] 重构获取分水房详情接口

---
 pipIrr-platform/pipIrr-global/src/main/resources/application-database.yml                               |    3 
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java   |    6 ++
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml                              |   32 ++++++++++
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java |   17 +++--
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java               |    6 ++
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoDivideDetails.java               |  116 ++++++++++++++++++++++++++++++++++++++
 6 files changed, 172 insertions(+), 8 deletions(-)

diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java
index aed83e1..3b049d1 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoPr/PrDivideMapper.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.dy.pipIrrGlobal.pojoPr.PrDivide;
 import com.dy.pipIrrGlobal.voPr.VoDivide;
+import com.dy.pipIrrGlobal.voPr.VoDivideDetails;
 import com.dy.pipIrrGlobal.voPr.VoSimpleDivide;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
@@ -24,8 +25,13 @@
 
     int insertSelective(PrDivide record);
 
+    /**
+     *  2025-01-21 搴熷純
+     */
     PrDivide selectByPrimaryKey(Long id);
 
+    VoDivideDetails getDivideDetails(Long id);
+
     int updateByPrimaryKeySelective(PrDivide record);
 
     int updateByPrimaryKey(PrDivide record);
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoDivideDetails.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoDivideDetails.java
new file mode 100644
index 0000000..d483205
--- /dev/null
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/voPr/VoDivideDetails.java
@@ -0,0 +1,116 @@
+package com.dy.pipIrrGlobal.voPr;
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.alibaba.fastjson2.writer.ObjectWriterImplToString;
+import com.dy.common.po.BaseEntity;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2025-01-21 17:27
+ * @LastEditTime 2025-01-21 17:27
+ * @Description 鍒嗘按鎴胯缁嗗璞★紝绉诲姩绔垎姘存埧璇︾粏椤典娇鐢�
+ */
+
+@Data
+@JsonPropertyOrder({"id", "countyId", "townId", "villageId", "blockId", "name", "villages", "area", "header", "phone", "lat", "lng", "operateDt", "operator", "blockName", "address", "remarks"})
+public class VoDivideDetails implements BaseEntity {
+    public static final long serialVersionUID = 202501211730001L;
+
+    /**
+     * 鍒嗘按鎴縄D
+     */
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    private Long id;
+
+    /**
+     * 鍘縄D
+     */
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    private Long countyId;
+
+    /**
+     * 闀嘔D
+     */
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    private Long townId;
+
+    /**
+     * 鏉慖D
+     */
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    private Long villageId;
+
+    /**
+     * 鐗囧尯ID
+     */
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    private Long blockId;
+
+    /**
+     * 鍒嗘按鎴跨紪鍙�
+     */
+    private String name;
+
+    /**
+     * 瑕嗙洊鏉�
+     */
+    private String villages;
+
+    /**
+     * 瑕嗙洊闈㈢Н
+     */
+    private Double area;
+
+    /**
+     * 璐熻矗浜�
+     */
+    private String header;
+
+    /**
+     * 鑱旂郴鐢佃瘽
+     */
+    private String phone;
+
+    /**
+     * 绾害
+     */
+    private Double lat;
+
+    /**
+     * 缁忓害
+     */
+    private Double lng;
+
+    /**
+     * 鎿嶄綔鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    private Date operateDt;
+
+    /**
+     * 鎿嶄綔浜虹紪鍙�
+     */
+    @JSONField(serializeUsing= ObjectWriterImplToString.class)
+    private Long operator;
+
+    /**
+     * 鐗囧尯鍚嶇О
+     */
+    private String blockName;
+
+    /**
+     * 鍦板潃
+     */
+    private String address;
+
+    /**
+     * 澶囨敞淇℃伅
+     */
+    private String remarks;
+
+}
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/application-database.yml b/pipIrr-platform/pipIrr-global/src/main/resources/application-database.yml
index 9445737..c15ced1 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/application-database.yml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/application-database.yml
@@ -5,4 +5,5 @@
         allow-bean-definition-overriding: true #璁剧疆涓簍rue鏃讹紝鍚庡畾涔夌殑bean浼氳鐩栦箣鍓嶅畾涔夌殑鐩稿悓鍚嶇О鐨刡ean
     datasource: #閰嶇疆鏁版嵁婧�
         #澶氫釜鏁版嵁婧愬悕绉板湪姝ら厤缃紝瑕佹眰涓巗pring銆俤atasource銆俒ym][sp][test]涓殑涓�鑷�
-        names: ym,mj,sp,test,mq
+#        names: ym,mj,sp,test,mq
+        names: ym,sp,test
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml
index 1348a36..bef22c8 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/PrDivideMapper.xml
@@ -26,6 +26,8 @@
     id, countyId, townId, villageId, blockId, `name`, villages, area, `header`, phone, 
     lng, lat, remarks, `operator`, operateDt, deleted
   </sql>
+
+  <!--2025-01-21 搴熷純-->
   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
     select 
@@ -33,6 +35,36 @@
     from pr_divide
     where id = #{id,jdbcType=BIGINT}
   </select>
+
+  <select id="getDivideDetails" resultType="com.dy.pipIrrGlobal.voPr.VoDivideDetails">
+    SELECT
+      divi.id,
+      divi.countyId,
+      divi.townId,
+      divi.villageId,
+      divi.blockId,
+      divi.name,
+      divi.villages,
+      divi.area,
+      divi.header,
+      divi.phone,
+      divi.lat,
+      divi.lng,
+      divi.operateDt,
+      divi.operator,
+      blo.`name` AS blockName,
+      CONCAT(country.`name`, town.`name`, village.`name`) AS address,
+      divi.remarks
+    FROM pr_divide divi
+           INNER JOIN ba_block blo ON divi.blockId = blo.id
+           Left JOIN ba_district country ON divi.countyId = country.id
+           Left JOIN ba_district town ON divi.townId = town.id
+           Left JOIN ba_district village ON divi.villageid = village.id
+       , (SELECT @i:=0) AS itable
+    WHERE divi.deleted = 0 AND divi.id = #{id}
+  </select>
+
+
   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
     <!--@mbg.generated-->
     delete from pr_divide
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java
index 053f427..830de5b 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideCtrl.java
@@ -10,6 +10,7 @@
 import com.dy.pipIrrGlobal.pojoBa.BaClient;
 import com.dy.pipIrrGlobal.pojoPr.PrDivide;
 import com.dy.pipIrrGlobal.voPr.VoDivide;
+import com.dy.pipIrrGlobal.voPr.VoDivideDetails;
 import com.dy.pipIrrGlobal.voSe.VoActiveCard;
 import com.dy.pipIrrProject.result.ProjectResultCode;
 import io.swagger.v3.oas.annotations.Operation;
@@ -96,14 +97,16 @@
     })
     @GetMapping(path = "/getone/{id}")
     @SsoAop()
-    public BaseResponse<PrDivide> getOneDivide(@PathVariable("id") Long id){
+    //public BaseResponse<PrDivide> getOneDivide(@PathVariable("id") Long id){
+    public BaseResponse<VoDivideDetails> getOneDivide(@PathVariable("id") Long id){
         try {
-            PrDivide res = divideSv.getOneDivide(id);
-            if(res != null) {
-                return BaseResponseUtils.buildSuccess(res);
-            }else {
-                return BaseResponseUtils.buildErrorMsg(ProjectResultCode.NO_DIVIDES.getMessage());
-            }
+            //PrDivide res = divideSv.getOneDivide(id);
+            //if(res != null) {
+            //    return BaseResponseUtils.buildSuccess(res);
+            //}else {
+            //    return BaseResponseUtils.buildErrorMsg(ProjectResultCode.NO_DIVIDES.getMessage());
+            //}
+            return BaseResponseUtils.buildSuccess(divideSv.getDivideDetails(id));
         } 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/divide/DivideSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java
index 69d6b32..d0e8820 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/divide/DivideSv.java
@@ -5,6 +5,7 @@
 import com.dy.pipIrrGlobal.daoPr.PrDivideMapper;
 import com.dy.pipIrrGlobal.pojoPr.PrDivide;
 import com.dy.pipIrrGlobal.voPr.VoDivide;
+import com.dy.pipIrrGlobal.voPr.VoDivideDetails;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.common.utils.PojoUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -73,6 +74,7 @@
 
     /**
      * 鏍规嵁鍒嗘按鎴夸富閿幏鍙栧垎姘存埧瀵硅薄
+     * 2025-01-21 搴熷純
      * @param id
      * @return
      */
@@ -80,6 +82,10 @@
         return prDivideMapper.selectByPrimaryKey(id);
     }
 
+    public VoDivideDetails getDivideDetails(Long id) {
+        return prDivideMapper.getDivideDetails(id);
+    }
+
     /**
      * 鏍规嵁涓婚敭閫昏緫鍒犻櫎涓�涓垎姘存埧
      * @param id

--
Gitblit v1.8.0