From 79b5a1c92e219128d50b58714eb2f6ec0f695d83 Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期三, 04 三月 2026 16:58:51 +0800
Subject: [PATCH] 添加第一版gis监管页面,建模版本

---
 fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java |  109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 109 insertions(+), 0 deletions(-)

diff --git a/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java b/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
index 6bb065f..b974889 100644
--- a/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
+++ b/fzzy-igdss-web/src/main/java/com/fzzy/group/manager/GroupManager.java
@@ -49,6 +49,11 @@
     private SnapRecordService snapRecordService;
     @Resource
     private SecCameraService cameraService;
+    @Resource
+    private BankService bankService;
+
+    @Resource
+    private PledgeContractService pledgeContractService;
 
     /**
      * 鑾峰彇鐪佸強涓嬪睘甯傚窞闆嗗悎
@@ -120,6 +125,110 @@
         return list;
     }
 
+
+    public List<DicArea> getBankAndChildDept(String areaCode) {
+
+        DicArea area = dicAreaService.listDicAreaByCode(areaCode);
+        if (null == area) {
+            return null;
+        }
+        List<DicArea> areaChildren =  new ArrayList<>();
+
+        List<DicArea> list = new ArrayList<>();
+        if (Constant.AREA_TYPE_1.equals(area.getType())) {
+           //鏌ヨ鎵�鏈夌殑璐ㄦ娂鍚堝悓
+            List<PledgeContract> pledgeContractList = pledgeContractService.listAll(null);
+            //鏌ヨ鎵�鏈夌殑搴撳尯
+            List<Dept> depotList = deptService.listDept(null, ContextUtil.getCompanyId(), null);
+            //鏌ヨ鎵�鏈夌殑閾惰
+            List<Bank> bankList = bankService.listAll(null);
+            DicArea defaultBank = new DicArea();
+            defaultBank.setCode("-1");
+            defaultBank.setName("鏃犺川鎶奸摱琛�");
+            defaultBank.setChildren(new ArrayList<>());
+
+            for (Dept dept : depotList) {
+                Boolean isPledge = false;
+                for (PledgeContract pledgeContract : pledgeContractList) {
+                    if( dept.getId().equals(pledgeContract.getPledgeDept())){
+                        //浠巐ist涓壘鍒板綋鍓嶈川鎶奸摱琛岀殑鏁版嵁
+                        DicArea pledgeBank = null;
+                        int indexBank = -1;
+                        for (DicArea item : areaChildren) {
+                            if (pledgeContract.getPledgeBank().equals(item.getCode())) {
+                                pledgeBank = item;
+                                indexBank = areaChildren.indexOf(pledgeBank);
+                                break;
+                            }
+                        }
+                        if( null == pledgeBank){
+                            //鏈壘鍒拌川鎶奸摱琛屾暟鎹垯鏂板缓
+                            pledgeBank = new DicArea();
+                            pledgeBank.setCode(pledgeContract.getPledgeBank());
+                            pledgeBank.setName("璐ㄦ娂閾惰_"+pledgeContract.getPledgeBank());
+                            //浠庨摱琛屾暟鎹腑鎵惧埌璐ㄦ娂閾惰鐨勪俊鎭�
+                            for (Bank bank : bankList) {
+                                if (pledgeContract.getPledgeBank().equals(bank.getId())) {
+                                    pledgeBank.setName(bank.getName());
+                                }
+                            }
+                            //娣诲姞璐ㄦ娂閾惰涓嬬殑搴撳尯鏁版嵁
+                            DicArea deptDic = new DicArea();
+                            deptDic.setCode(dept.getId());
+                            deptDic.setName(dept.getKqmc());
+
+                            List<DicArea> children = pledgeBank.getChildren();
+                            if (null == children) {
+                                pledgeBank.setChildren(new ArrayList<>());
+                            }
+                            pledgeBank.getChildren().add(deptDic);
+                            //鏂板璐ㄦ娂閾惰鏁版嵁鍒發ist涓�
+                            areaChildren.add(pledgeBank);
+                            isPledge=true;
+                            break;
+                        }else{
+                            //娣诲姞璐ㄦ娂閾惰涓嬬殑搴撳尯鏁版嵁
+                            DicArea deptDic = new DicArea();
+                            deptDic.setCode(dept.getId());
+                            deptDic.setName(dept.getKqmc());
+
+                            List<DicArea> children = pledgeBank.getChildren();
+                            if (null == children) {
+                                pledgeBank.setChildren(new ArrayList<>());
+                            }
+                            pledgeBank.getChildren().add(deptDic);
+                            //鏇存柊list涓殑璐ㄦ娂閾惰鏁版嵁
+                            areaChildren.set(indexBank,pledgeBank);
+                            isPledge=true;
+                            break;
+
+                        }
+
+
+                    }
+                }
+                if(!isPledge){
+                    DicArea deptDic = new DicArea();
+                    deptDic.setCode(dept.getId());
+                    deptDic.setName(dept.getKqmc());
+
+                    List<DicArea> children = defaultBank.getChildren();
+                    if (null == children) {
+                        defaultBank.setChildren(new ArrayList<>());
+                    }
+                    defaultBank.getChildren().add(deptDic);
+                }
+            }
+            List<DicArea> defaultBankChildren = defaultBank.getChildren();
+            if (defaultBankChildren.size()>0) {
+                areaChildren.add(defaultBank);
+            }
+            area.setChildren(areaChildren);
+        }
+        list.add(area);
+        return list;
+    }
+
     /**
      * 鑾峰彇鐢ㄦ埛涓嬫墍鏈夊簱鍖轰俊鎭�
      *

--
Gitblit v1.9.3