From dca44dafaf6773c5176ef080368d7266a0fb2bec Mon Sep 17 00:00:00 2001
From: whycwx <1272078254@qq.com>
Date: 星期三, 28 七月 2021 10:05:27 +0800
Subject: [PATCH] 机房列表

---
 src/pages/index.vue              |    8 +++-
 src/components/site/siteList.vue |   73 ++++++++++++++++++++++++++++++++++++
 src/assets/js/api.js             |   12 ++++++
 3 files changed, 91 insertions(+), 2 deletions(-)

diff --git a/src/assets/js/api.js b/src/assets/js/api.js
index e85914d..1e38e17 100644
--- a/src/assets/js/api.js
+++ b/src/assets/js/api.js
@@ -11,4 +11,16 @@
         url: `LoginAction_login?uinf.UName=${username}&uinf.Upassword=${md5(password)}&uinf.UId=0`,
         data: null
     })
+}
+
+/**
+ * 鏌ヨ鏈烘埧淇℃伅
+ * 鍙傛暟锛歫son = {"StationName1":"鍖椾含甯�","StationName2":"甯傝緰鍖�","StationName5":"娴锋穩鍖�"}
+ */
+ export const searchStation = (params) => {
+    return axios({
+        method: "post",
+        url: "BattInfAction!serchAllStationName",
+        data: "json=" + JSON.stringify(params)
+    })
 }
\ No newline at end of file
diff --git a/src/components/site/siteList.vue b/src/components/site/siteList.vue
new file mode 100644
index 0000000..d53f0fd
--- /dev/null
+++ b/src/components/site/siteList.vue
@@ -0,0 +1,73 @@
+<template>
+    <div>
+        <van-list
+            :finished="finished"
+            finished-text="娌℃湁鏇村浜�"
+            @load="searchStation()"
+            >
+            <van-cell v-for="(item,i) in dataList" :key="i" :title="item.label"/>
+        </van-list>
+    </div>
+</template>
+<script>
+import { searchStation } from "@/assets/js/api";
+export default {
+    data(){
+        return {
+            finished: false,
+            dataList:[]
+        }
+    },
+    mounted(){
+
+    },
+    methods:{
+        searchStation:function(){
+            let self = this;
+                searchStation({
+                    StationName1:"",
+                    StationName2:"",
+                    StationName5:"",
+                }).then((res)=>{
+                    let rs = JSON.parse(res.data.result);
+                    let data = [];
+                    if(rs.code == 1) {
+                        data = rs.data;
+                    }
+                    // 鏍煎紡鍖栨暟鎹�
+                    this.formatData(data);
+                });
+        },
+        formatData(data) {
+            let self = this;
+            let homeList = [];
+            // 閬嶅巻鏁版嵁鏋勯�犳爲鐘�
+            data.forEach(item=>{
+                let tmp = {};
+                tmp.label = item.StationName1+"-"+item.StationName2+"-"+item.StationName5+"-"+item.StationName3;
+                tmp.key = item.FBSDeviceId+Math.random();
+                tmp.id = item.FBSDeviceId;
+                tmp.data = item;
+                let index = this.checkValIsIn(tmp.label, homeList);
+                if(index == -1) {
+                    homeList.push(tmp);
+                }
+            });
+            self.dataList = homeList;
+            self.finished = true;
+        },
+        checkValIsIn(val, arr) {
+            for(let i=0; i<arr.length; i++) {
+                if(arr[i].label == val) {
+                    return i;
+                }
+            }
+            return -1;
+        },
+    }
+
+}
+</script>
+<style scoped>
+
+</style>
\ No newline at end of file
diff --git a/src/pages/index.vue b/src/pages/index.vue
index d07371f..11fb820 100644
--- a/src/pages/index.vue
+++ b/src/pages/index.vue
@@ -7,16 +7,20 @@
           <china-map ref="chinaMap" id="chinaMap" name="zhongguo"></china-map>
         </div>
       </van-tab>
-      <van-tab title="绔欑偣鍒楄〃">鍐呭 2</van-tab>
+      <van-tab title="绔欑偣鍒楄〃">
+        <site-list ref="siteList" id="siteList"></site-list>
+      </van-tab>
     </van-tabs>
   </div>
 </template>
 
 <script>
   import ChinaMap from '@/components/chart/chinaMap.vue'
+  import siteList from '@/components/site/siteList.vue'
   export default {
     components: {
-      ChinaMap
+      ChinaMap,
+      siteList
     },
     data() {
       return {

--
Gitblit v1.9.1