shaun-sheep il y a 4 ans
Parent
commit
a55a7449ca

+ 52 - 70
src/components/point/report/integrateStatistics.vue

@@ -11,49 +11,38 @@
     </div>
     <!--    通讯状态-->
     <div class="statistics-chart" v-if="type" style="border-top:5px solid #eee;">
-        <span class="contain-title-leftblock">
+      <span class="contain-title-leftblock">
          <i class="iconfont icon-juxing"/>
         通讯状态
           <i class="el-icon-refresh" style="cursor: pointer" @click="getStatus"/>
         </span>
-      <el-table
-        :data="statusList"
-        height="250"
-        border
-        style="width: 100%">
-        <el-table-column
-          prop="Name"
-          label="数据源名称"
-        >
-        </el-table-column>
-        <el-table-column
-          prop="ProtocolType"
-          label="协议类型"
-        >
-        </el-table-column>
-        <el-table-column
-          prop="Status"
-          label="状态">
-        </el-table-column>
-        <el-table-column
-          prop="Cpu"
-          label="CPU"
-          width="55"
-        >
-        </el-table-column>
-        <el-table-column
-          prop="Memory"
-          label="内存"
-          width="55"
-        >
-        </el-table-column>
-        <el-table-column
-          prop=""
-          label="操作">
+      <el-table :data="statusList" height="250" border style="width: 100%">
+        <el-table-column prop="Name" label="数据源名称" show-overflow-tooltip align='center'/>
+        <el-table-column prop="ProtocolType" label="协议类型" show-overflow-tooltip align='center'/>
+        <el-table-column prop="Status" label="状态" show-overflow-tooltip align='center' width="65"/>
+        <el-table-column prop="Cpu" label="CPU" width="55" show-overflow-tooltip align='center'/>
+        <el-table-column prop="Memory" label="内存" width="55" show-overflow-tooltip align='center'/>
+        <el-table-column prop="" label="操作">
           <template slot-scope="scope">
-            <el-button @click="handleOpen(scope.row)" type="text" size="small">启动</el-button>
-            <el-button @click="handleBin(scope.row)" type="text" size="small">停止</el-button>
-            <el-button @click="handleTest(scope.row)" type="text" size="small">测试</el-button>
+            <el-button @click="handleOpen(scope.row)" type="text" size="small" :disabled="scope.row.StartState == 1">
+              启动
+            </el-button>
+            <el-button @click="handleBin(scope.row)" type="text" size="small" :disabled="scope.row.StartState == 0">停止
+            </el-button>
+            <el-popover
+              placement="right"
+              width="300"
+              trigger="click"
+              @hide="removeTestValue"
+            >
+              <div>测试报文</div>
+              <el-input type="textarea" :rows="3" v-model="test"/>
+              <div style=" margin: 10px auto">
+                <el-button type="primary" size="mini" @click="handleTest(scope.row)">测试</el-button>
+              </div>
+              <el-input type="textarea" :rows="3" v-model="testLog" disabled/>
+              <el-button slot="reference" type="text">测试</el-button>
+            </el-popover>
           </template>
         </el-table-column>
       </el-table>
@@ -65,32 +54,12 @@
         点位数量
           <i class="el-icon-refresh" style="cursor: pointer" @click="getNumberPoints"/>
         </span>
-      <el-table
-        :data="pointList"
-        height="250"
-        border
-        style="width: 100%">
-        <el-table-column
-          prop="Name"
-          label="数据源名称">
-        </el-table-column>
-        <el-table-column
-          prop="Sum"
-          label="总点位数量">
-        </el-table-column>
-        <el-table-column
-          prop="Obtained"
-          label="已获取">
-        </el-table-column>
-        <el-table-column
-          prop="NotObtained"
-          label="未获取"
-        >
-        </el-table-column>
-        <el-table-column
-          prop="ObtainedRate"
-          label="上数率">
-        </el-table-column>
+      <el-table :data="pointList" height="250" border style="width: 100%">
+        <el-table-column prop="Name" label="数据源名称"/>
+        <el-table-column prop="Sum" label="总点位数量"/>
+        <el-table-column prop="Obtained" label="已获取"/>
+        <el-table-column prop="NotObtained" label="未获取"/>
+        <el-table-column prop="ObtainedRate" label="上数率"/>
       </el-table>
     </div>
     <!-- 图形图 -->
@@ -148,8 +117,8 @@
     getIntegrateStatisticsToBar,
     getIntegrateStatisticsToLoop,
     numberOfPoints,
-    originOpen,
     originBin,
+    originOpen,
     originTest
   } from "@/api/scan/request";
   import pointTabOverview from "./pointTabOverview";
@@ -157,6 +126,9 @@
   export default {
     data() {
       return {
+
+        test: '',
+        testLog: '',
         pointList: [],//点位数量集合
         statusList: [],//通讯状态集合
         //环形图
@@ -179,19 +151,28 @@
     },
     props: ['type'],
     methods: {
+      removeTestValue() {
+        this.test = ''
+      },
       //启动
       handleOpen(row) {
-        originOpen(row,res=> {
-
+        originOpen(row, res => {
+          this.getStatus()
         })
       },
       //暂停
       handleBin(row) {
-        originBin(row,res=> {})
+        originBin(row, res => {
+          this.getStatus()
+        })
       },
       //测试
       handleTest(row) {
-        originTest(res=>{})
+        row.Content = this.test
+        originTest(row, res => {
+          // this.getStatus()
+
+        })
       },
       //点位数量
       getNumberPoints() {
@@ -362,7 +343,8 @@
     },
     components: {
       pointTabOverview
-    }
+    },
+
   };
 </script>
 

+ 1 - 1
src/components/point/report/tabControlTest.vue

@@ -47,7 +47,7 @@
         <el-table-column prop='Meterfunc' label='整合ID' show-overflow-tooltip align='center'/>
         <el-table-column prop='Description' label='点位描述' show-overflow-tooltip align='center'/>
         <el-table-column prop='Status' label='状态' show-overflow-tooltip align='center'/>
-        <el-table-column prop='Data.Delay' label='反馈值' show-overflow-tooltip align='center'/>
+        <el-table-column prop='Data' label='反馈值' show-overflow-tooltip align='center'/>
       </el-table>
       <!-- 分页 -->
       <el-pagination

+ 30 - 24
src/components/point/report/tabFunDetail.vue

@@ -2,12 +2,12 @@
   <div id="tabFunDetail">
     <!-- 查询 新增 -->
     <div class="query-area" style="padding:10px;">
-      <el-select v-model="originName" placeholder="请选择数据源" clearable @change="changeHandleSelect">
+      <el-select v-model="originName" placeholder="请选择数据源" clearable @change="changeHandleSelectOrigin">
         <el-option
           v-for="(item,index) in selectAggregate.originList"
           :key="index"
           :label="item"
-          :value="index">
+          :value="item">
         </el-option>
       </el-select>
       <el-select v-model="statusName" placeholder="请选择状态" clearable @change="changeHandleSelect">
@@ -119,6 +119,7 @@
   import objectInstance from './objectInstance'
   import addTabFunNum from './addTabFunNum'
   import lStorage from '@/utils/localStorage'
+  import {mapGetters} from "vuex";
 
   export default {
     /** 运行状态 */
@@ -164,16 +165,16 @@
         statusName: '',
         accessList: '',
         statusList: [
-          {value: 'zc', label: '正常'},
-          {value: 'yc', label: '异常'},
-          {value: 'ty', label: '停用'},
-          {value: 'jj', label: '间接'}
+          {value: '0', label: '正常'},
+          {value: '1', label: '异常'},
+          {value: '2', label: '停用'},
+          {value: '3', label: '间接'}
         ],
         getAccessMethods: [
-          {value: 'ts', label: '推送'},
-          {value: 'dy', label: '订阅'},
-          {value: 'cx', label: '查询'},
-          {value: 'qt', label: '其他'}
+          {value: '0', label: '推送'},
+          {value: '1', label: '订阅'},
+          {value: '2', label: '查询'},
+          {value: '3', label: '其他'}
         ]
       }
     },
@@ -215,27 +216,29 @@
         })
       },
       //筛选
+      changeHandleSelectOrigin(item) {
+        this.getOverViewList()
+      },
       changeHandleSelect(item) {
+        this.getOverViewList()
+
         console.log(item, 'item')
       },
       //获取统计数据
-      // /**
-      //  * @index    1 数据源 2 状态 3 获取方式
-      //  * @val      值
-      //  * */
       getOverViewList() {
         let _this = this
         _this.loading = true;
-        let param = {}
-        // if (index == 1) {
-        //   param.Filters = `Name='${val}';`
-        // }
-        // if (index == 2) {
-        //   param.Filters += `Status=''${val};`
-        // }
-        // if (index == 3) {
-        //   param.Filters += `Method='${val}'`
-        // }
+        let param = {}, Filters = `ProjectId='${this.projectId}'`
+        if (_this.originName) {
+          Filters += `;DatasourceName='${_this.originName}'`
+        }
+        if (_this.statusName) {
+          Filters += `;Status='${_this.statusName}'`
+        }
+        if (_this.accessList) {
+          Filters += `;Status='${_this.accessList}'`
+        }
+        console.log(Filters, 'Filters')
         testDetail(param, res => {
           _this.tableData = res.Content
           _this.total = res.Total
@@ -301,6 +304,9 @@
       this.init();
     },
     computed: {
+      ...mapGetters("layout", [
+        "projectId"
+      ])
       //根据分页,获取要展示的tableData
       // tableData: function () {
       //   return this.allTableData.slice(

+ 0 - 9
src/data/menus.js

@@ -141,15 +141,6 @@ export default [
           permission: 'system:role:query'
         }]
       }, {
-        path: '/point/control',
-        name: '控制测试',
-        icon: '',
-        opts: [{
-          name: '查看',
-          basic: true,
-          permission: 'system:role:query'
-        }]
-      }, {
         path: '/point/tool',
         name: '系统工具库',
         icon: '',