From 11f794ee33771f9c1bab2d417247717d268896b5 Mon Sep 17 00:00:00 2001
From: whycwx <1272078254@qq.com>
Date: 星期五, 06 八月 2021 08:55:54 +0800
Subject: [PATCH] 参数功能

---
 src/pages/functionList/functionList.vue |    9 +-
 src/components/site/siteList.vue        |   62 +++++++++++++-
 src/pages/parameter/parameter.vue       |   87 +++++++++++++++------
 src/assets/js/api.js                    |   35 ++++++++
 4 files changed, 155 insertions(+), 38 deletions(-)

diff --git a/src/assets/js/api.js b/src/assets/js/api.js
index cecb2a5..9080ef4 100644
--- a/src/assets/js/api.js
+++ b/src/assets/js/api.js
@@ -75,4 +75,39 @@
         url: "User_infAction!checkUserPass",
         data: "addjson="+ md5(data),
     });
+}
+/**
+ * 璇诲彇FGCD_A059鏀剧數鍙傛暟
+ * @param data 浼犲叆json:{dev_id,op_cmd}
+ * @returns {AxiosPromise}
+ */
+ export const getParams = (data) => {
+    return axios({
+        method: 'POST'
+        ,url: 'Fbs9100_setparamAction_action_searchA059Param'
+        ,data: 'json=' + JSON.stringify(data)
+    });
+}
+/**
+ * 鍚姩
+ * @param data 鍚姩鍛戒护
+ * @returns {AxiosPromise}
+ */
+ export const start = (data) => {
+    return axios({
+        method: 'post',
+        url: 'Fbs9100_setparamAction_action_serchbyDev_id',
+        data: 'json='+JSON.stringify(data),
+    });
+}
+/**
+ * 鏌ヨ鐢垫睜缁勪俊鎭�
+ * 鍙傛暟锛歫son = {"StationName1":"鍖椾含甯�","StationName2":"甯傝緰鍖�","StationName5":"娴锋穩鍖�","StationName3":"绱櫠绉戞妧鏈烘埧"}
+ */
+ export const searchBattInfo = (params) => {
+    return axios({
+        method: "post",
+        url: "BattInfAction!serchAllBattinf",
+        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
index 232908d..3a73b99 100644
--- a/src/components/site/siteList.vue
+++ b/src/components/site/siteList.vue
@@ -1,25 +1,35 @@
 <template>
     <div>
-        <van-list
+        <van-collapse v-model="activeNames" @change="changeList()">
+            <van-collapse-item v-for="(item,i) in dataList" :key="i" :title="item.label" :name="i">
+                <span>
+                    <ul>
+                        <li v-for="(element,i) in item.list" class="group_name" @click="toRouter(element)">{{ element.BattGroupName }}</li>
+                    </ul>
+                </span>
+            </van-collapse-item>
+        </van-collapse>
+        <!-- <van-list
             :finished="finished"
             finished-text="娌℃湁鏇村浜�"
             @load="searchStation()"
             >
             <van-cell v-for="(item,i) in dataList" :key="i" :title="item.label" to="/functionList"/>
-        </van-list>
+        </van-list> -->
     </div>
 </template>
 <script>
-import { searchStation } from "@/assets/js/api";
+import { searchStation,searchBattInfo } from "@/assets/js/api";
 export default {
     data(){
         return {
             finished: false,
-            dataList:[]
+            dataList:[],
+            activeNames:[],
         }
     },
     mounted(){
-
+        this.searchStation();
     },
     methods:{
         searchStation:function(){
@@ -33,6 +43,7 @@
                     let data = [];
                     if(rs.code == 1) {
                         data = rs.data;
+                        console.log(data)
                     }
                     // 鏍煎紡鍖栨暟鎹�
                     this.formatData(data);
@@ -42,7 +53,7 @@
             let self = this;
             let homeList = [];
             // 閬嶅巻鏁版嵁鏋勯�犳爲鐘�
-            data.forEach(item=>{
+            data.forEach((item,i)=>{
                 let tmp = {};
                 tmp.label = item.StationName1+"-"+item.StationName2+"-"+item.StationName5+"-"+item.StationName3;
                 tmp.key = item.FBSDeviceId+Math.random();
@@ -50,6 +61,7 @@
                 tmp.data = item;
                 let index = this.checkValIsIn(tmp.label, homeList);
                 if(index == -1) {
+                    tmp.list = [];
                     homeList.push(tmp);
                 }
             });
@@ -64,10 +76,46 @@
             }
             return -1;
         },
+        // 鏌ヨ鐢垫睜缁�
+        changeList(){
+            let self = this;
+                self.$nextTick(()=>{
+                    self.activeNames.forEach(item => {
+                        let arr = self.dataList[item].list;
+                        if(arr.length<1){
+                            console.log(self.dataList[item])
+                            let objs = self.dataList[item].data;
+                            searchBattInfo({
+                                StationName1:objs.StationName1,
+                                StationName2:objs.StationName2,
+                                StationName5:objs.StationName5,
+                                StationName3:objs.StationName3
+                            }).then(res=>{
+                                let re = JSON.parse(res.data.result)
+                                    re.data.forEach(element => {
+                                        self.dataList[item].list.push(element);
+                                    });
+                            })
+                        }
+                    });
+                })
+            
+        },
+        // 璺宠浆
+        toRouter(element){
+            let self = this;
+                self.$router.push({
+                    path: '/functionList',
+                    query:element
+                })
+        }
     }
 
 }
 </script>
 <style scoped>
-
+    .group_name{
+        margin-bottom: 14px;
+        margin-left: 10px;
+    }
 </style>
\ No newline at end of file
diff --git a/src/pages/functionList/functionList.vue b/src/pages/functionList/functionList.vue
index 9ad99fa..b31fcd8 100644
--- a/src/pages/functionList/functionList.vue
+++ b/src/pages/functionList/functionList.vue
@@ -27,17 +27,16 @@
         }
     },
     mounted(){
-
+        
     },
     methods: {
         ok:function(val){
             let self = this;
+            let obj = this.$route.query;
+                obj.num = val;
                 self.$router.push({
                     path: '/parameter',
-                    query:{
-                        id:1001,
-                        num:val
-                    }
+                    query:obj
                 })
         }
     },
diff --git a/src/pages/parameter/parameter.vue b/src/pages/parameter/parameter.vue
index 3ce2e99..4d45e6f 100644
--- a/src/pages/parameter/parameter.vue
+++ b/src/pages/parameter/parameter.vue
@@ -257,7 +257,7 @@
         <!-- 涓ょ瀵归綈 -->
         <van-row type="flex" justify="end">
             <van-col span="6"><van-button type="primary" size="mini" style="width:95%" @click="startTest">鍚姩</van-button></van-col>
-            <van-col span="6"><van-button type="info" size="mini" style="width:95%">璇诲彇</van-button></van-col>
+            <van-col span="6"><van-button type="info" size="mini" style="width:95%" @click="getData()">璇诲彇</van-button></van-col>
             <van-col span="6"><van-button type="warning" size="mini" style="width:95%">璁惧畾</van-button></van-col>
         </van-row>
         
@@ -273,18 +273,17 @@
     </div>
 </template>
 <script>
- import { checkUserPwd } from "@/assets/js/api";
-// import {
-//     const_aio
-// } from "@/assets/js/const"
+ import { checkUserPwd,start,getParams } from "@/assets/js/api";
+import  const_aio from "@/assets/js/const_aio"
 export default {
     data(){
-        // let cmd = const_aio.cmd;
+        let cmd = const_aio.cmd;
         // let testType = const_aio.testType;
         // let rules = const_aio.dischargeRules;
         // let cycleStart = const_aio.cycleStart;
         // let HourRate = const_aio.HourRate;
         return {
+            cmd:cmd,
             show:false,
             pass:"",//鍚姩鍙d护
             opt:{//璺敱鍙傛暟
@@ -340,6 +339,7 @@
             self.opt = this.$route.query;
             self.$nextTick(()=>{
                 self.active = self.opt.num;
+                self.getData();//鑾峰彇鍙傛暟
             })
             
         console.log(this.$route.query)  
@@ -360,6 +360,32 @@
             this.OffLineYHOnceCycle = value;
             this.showPicker3 = false;
         },
+        // 鑾峰彇鍙傛暟
+        getData(){
+            let self = this;
+                getParams({
+                    dev_id:"618500001",//self.opt.id,
+                    op_cmd:self.cmd.getParams
+                }).then(res=>{
+                    let rs = JSON.parse(res.data.result);
+                    if(rs.code == 1) {
+                        let fsparam = rs.data[0];
+                            console.log(fsparam)
+                        // // 閬嶅巻鍙傛暟灞炴�у苟璧嬪��
+                        // for (let key in this.params) {
+                        //     this.params[key] = fsparam[key];
+                        // }
+                        // // 璁剧疆鐨勫懡浠ゅ拰dev_id
+                        // this.params.op_cmd = this.cmd.setParams;
+                        // this.$layer.msg('璇诲彇鎴愬姛锛�');
+                    }else {
+                        console.log(rs)
+                        // this.$layer.msg('璇诲彇澶辫触锛�');
+                    }
+                }).catch(err=>{
+
+                })
+        },
         typeStr(){
             let self = this;
             let res = '';
@@ -377,29 +403,38 @@
             return res;
         },
 
-        // 鍚姩
-        startTest(){
-            let self = this;
-                self.show = true;
-        },
+        
         // 纭鍙d护
         confirm(){
             let self = this;
-            console.log(self.pass)
-            // 鏍稿鍙d护
-            checkUserPwd(self.pass).then(res=>{
-                let rs = JSON.parse(res.data.result);
-                    if(rs.code == 1) {
-                        self.$toast("瀵嗙爜妫�娴嬮�氳繃锛屽惎鍔ㄦ祴璇�");
-                        // 鍚姩娴嬭瘯
-                        // this.startTest();
-                    }else {
-                        self.$toast("鍚姩鍙d护閿欒锛�");
-                    }
-            }).catch(err=>{
-                self.$toast("缃戠粶璇锋眰寮傚父");
-            })
-        }
+                self.show = true;
+                // 鏍稿鍙d护
+                checkUserPwd(self.pass).then(res=>{
+                    let rs = JSON.parse(res.data.result);
+                        if(rs.code == 1) {
+                            self.$toast("瀵嗙爜妫�娴嬮�氳繃锛屽惎鍔ㄦ祴璇�");
+                            // 鍚姩娴嬭瘯
+                            // this.startTest();
+                        }else {
+                            self.$toast("鍚姩鍙d护閿欒锛�");
+                        }
+                }).catch(err=>{
+                    self.$toast("缃戠粶璇锋眰寮傚父");
+                })
+        },
+        // 鍚姩绋嬪簭杩愯
+        startTest(){
+            let self = this;
+                start({
+                    num:self.cmd,
+                    dev_id:self.opt.id,
+                    BattGroupNum:self.opt
+                }).then(res=>{
+                    let rs = JSON.parse(res.data.result);
+                }).catch(err=>{
+
+                })
+        },
     },
 }
 </script>

--
Gitblit v1.9.1