From e7c0b5be2a66f8f46515d9f8eb267d00eced2538 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期五, 28 六月 2024 16:31:14 +0800
Subject: [PATCH] 系统初始化 增加用水类型初始化

---
 pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictSv.java |  104 ++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 100 insertions(+), 4 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictSv.java
index 9faba57..48e7256 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-base/src/main/java/com/dy/pipIrrBase/district/DistrictSv.java
@@ -2,23 +2,119 @@
 
 import com.dy.pipIrrGlobal.daoBa.BaDistrictMapper;
 import com.dy.pipIrrGlobal.pojoBa.BaDistrict;
+import com.dy.pipIrrGlobal.util.DistrictLevel;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+import java.util.Map;
 
 @Slf4j
 @Service
 public class DistrictSv {
 
-    private BaDistrictMapper baDistrictMapper ;
+    private BaDistrictMapper dao;
 
     @Autowired
-    private void setBaDistrictMapper(BaDistrictMapper baDistrictMapper){
-        this.baDistrictMapper = baDistrictMapper ;
+    private void setDao(BaDistrictMapper dao){
+        this.dao = dao;
     }
 
+    /**
+     * 浠庣涓�绾ц鏀垮尯鍒掑紑濮嬶紝寰楀埌鎵�鏈夎鏀垮尯鍒掍俊鎭�
+     * @param firstLevel 绗竴绾ц涓嬪尯 level
+     * @return 鎵�鏈夎鏀垮尯鍒掗泦鍚�
+     */
+    public List<BaDistrict> selectAllByLevel(byte firstLevel){
+        List<BaDistrict> list = this.dao.selectByLevel(firstLevel) ;
+        if(list != null && list.size() > 0){
+            for(BaDistrict po : list){
+                po.canDelete = false ;
+                po.canAdd = true ;
+                getSubDistrict(po) ;
+            }
+        }
+        return list ;
+    }
 
+    /**
+     * 寰楀埌涓�涓鏀垮尯
+     * @param id 琛屾斂鍖篒D
+     * @return 琛屾斂鍖哄疄浣�
+     */
+    public BaDistrict selectById(Long id){
+        return this.dao.selectByPrimaryKey(id) ;
+    }
+
+    /**
+     * 淇濆瓨瀹炰綋
+     * @param po 瀹炰綋
+     * @return 鏁伴噺
+     */
+    @Transactional
     public int save(BaDistrict po){
-        return this.baDistrictMapper.insert(po) ;
+        return this.dao.putin(po) ;
+    }
+
+    /**
+     * 淇濆瓨淇敼瀹炰綋
+     * @param po 瀹炰綋
+     * @return 鏁伴噺
+     */
+    @Transactional
+    public int update(BaDistrict po){
+        return this.dao.updateByPrimaryKeySelective(po) ;
+    }
+
+    /**
+     * 淇濆瓨淇敼瀹炰綋
+     * @param id 瀹炰綋ID
+     * @return 鏁伴噺
+     */
+    @Transactional
+    public int delete(Long id){
+        return this.dao.deleteByPrimaryKey(id) ;
+    }
+
+    /**
+     * 寰楀埌涓嬬骇琛屾斂鍖哄垝
+     * @param po 涓婄骇琛屾斂鍖哄垝
+     */
+    private void getSubDistrict(BaDistrict po){
+        if(po != null && po.id != null){
+            po.subDistricts = this.dao.selectBySupperId(po.id) ;
+            if(po.subDistricts != null && po.subDistricts.size() > 0){
+                for(BaDistrict subPo : po.subDistricts){
+                    getSubDistrict(subPo) ;
+                }
+            }else{
+                //娌℃湁涓嬬骇浜嗭紝鍙互鍒犻櫎
+                po.canDelete = false ;
+                if(po.level.code.byteValue() == DistrictLevel.Village.code.byteValue()){
+                    //鍒版潙绾т簡锛屼笉鍙互鍐嶆坊鍔犺鏀垮尯浜�
+                    po.canAdd = false ;
+                }
+            }
+        }
+    }
+
+    /**
+     * 鏍规嵁绾у埆鑾峰彇琛屾斂鍖哄垝鍒楄〃
+     * @param level
+     * @return
+     */
+    public List<Map<String, Object>> getDistrictgsByLevel(Integer level) {
+        return dao.getDistrictgsByLevel(level);
+    }
+
+    /**
+     * 鏍规嵁鐖禝D鑾峰彇琛屾斂鍖哄垝鍒楄〃
+     * @param supperId
+     * @return
+     */
+    public List<Map<String, Object>> getDistrictsBySupperId(Long supperId) {
+        return dao.getDistrictsBySupperId(supperId);
     }
 }

--
Gitblit v1.8.0