From 0b3d2deb37745ea5dce42fa4a18f22a29d2f4a12 Mon Sep 17 00:00:00 2001
From: fei.wang <wf18701153496@163.com>
Date: 星期三, 16 四月 2025 09:13:24 +0800
Subject: [PATCH] v2.0.2更新时间4.16

---
 src/views/alarm/threshold.vue |  386 ++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 299 insertions(+), 87 deletions(-)

diff --git a/src/views/alarm/threshold.vue b/src/views/alarm/threshold.vue
index 374e2f9..2cdd290 100644
--- a/src/views/alarm/threshold.vue
+++ b/src/views/alarm/threshold.vue
@@ -9,7 +9,7 @@
         <el-button size="small" type="primary" icon="el-icon-refresh" @click="refresh">
           鍒锋柊
         </el-button>
-        <el-button v-if="uadd=='Yes'" size="small" type="primary" icon="el-icon-plus" @click="add">
+        <el-button v-if="uadd == 'Yes'" size="small" type="primary" icon="el-icon-plus" @click="add">
           鏂板
         </el-button>
       </el-button-group>
@@ -17,48 +17,60 @@
 
     <el-table v-loading="listLoading" :data="list" element-loading-text="Loading" border fit height="100%"
       class="table-container" highlight-current-row>
-      <el-table-column fixed label="搴忓彿" width="80" >
+      <el-table-column fixed label="搴忓彿" width="80">
         <template slot-scope="scope">
           {{ scope.row.id }}
         </template>
       </el-table-column>
-      <el-table-column label="璁惧ID" >
+      <el-table-column label="璁惧ID">
         <template slot-scope="scope">
           {{ scope.row.tagid }}
         </template>
       </el-table-column>
-      <el-table-column label="鍚嶇О" >
+      <el-table-column label="鍚嶇О">
         <template slot-scope="scope">
           {{ scope.row.alarmname }}
         </template>
       </el-table-column>
-      <el-table-column label="鍏徃"  width="180">
+      <el-table-column label="鍏徃" width="180">
         <template slot-scope="scope">
           {{ scope.row.company }}
         </template>
       </el-table-column>
-      <el-table-column label="澶╅槇鍊�" >
+      <el-table-column label="澶╅槇鍊硷紙姣背锛�">
         <template slot-scope="scope">
-          {{ scope.row.hdsv}}
+          {{ scope.row.hdsv }}
         </template>
       </el-table-column>
-      <el-table-column label="鍖楅槇鍊�" >
+      <el-table-column label="鍖楅槇鍊硷紙姣背锛�">
         <template slot-scope="scope">
-          {{ scope.row.ndsv}}
+          {{ scope.row.ndsv }}
         </template>
       </el-table-column>
-      <el-table-column label="涓滈槇鍊�" >
+      <el-table-column label="涓滈槇鍊硷紙姣背锛�">
         <template slot-scope="scope">
-          {{ scope.row.edsv}}
+          {{ scope.row.edsv }}
         </template>
       </el-table-column>
-      <el-table-column  label="鎿嶄綔" width="200"  v-if="uupdate=='Yes' || udelete=='Yes'">
+
+      <el-table-column label="鎶ヨ鐢佃瘽">
+        <template slot-scope="scope">
+          {{ scope.row.phone }}
+        </template>
+      </el-table-column>
+
+      <el-table-column label="搴旀�ュ箍鎾悕绉�">
+        <template slot-scope="scope">
+          {{ scope.row.guangboname }}
+        </template>
+      </el-table-column>
+      <el-table-column label="鎿嶄綔" width="200" v-if="uupdate == 'Yes' || udelete == 'Yes'">
         <template slot-scope="scope">
           <el-button-group>
-            <el-button v-if="uupdate=='Yes'" type="primary" icon="el-icon-edit" size="mini" @click="edit(scope)">
+            <el-button v-if="uupdate == 'Yes'" type="primary" icon="el-icon-edit" size="mini" @click="edit(scope)">
               淇敼
             </el-button>
-            <el-button v-if="udelete=='Yes'" type="danger" icon="el-icon-delete" size="mini" @click="del(scope)">
+            <el-button v-if="udelete == 'Yes'" type="danger" icon="el-icon-delete" size="mini" @click="del(scope)">
               鍒犻櫎
             </el-button>
           </el-button-group>
@@ -72,31 +84,70 @@
     <el-dialog :visible.sync="dialogVisible" :title="dialogType === 'modify' ? '淇敼' : '鏂板'">
       <el-form :ref="temp" :model="temp" label-width="120px" label-position="right" :rules="rules">
         <el-form-item label="璁惧ID" prop="tagid">
-          <el-input v-model="temp.tagid
-        " placeholder="璇疯緭鍏ヨ澶嘔D" />
+          <!-- <el-input v-model="temp.tagid
+            " placeholder="璇疯緭鍏ヨ澶嘔D" @change="secode" /> -->
+            <el-select style="width: 100%;" v-model="temp.tagid" filterable remote placeholder="璇烽�夋嫨璁惧ID"
+            :remote-method="jzsearchMethod" :loading="searchloading" @change="secode">
+            <el-option v-for="item in tagidList" :key="item.tagid" :label="item.tagid" :value="item.tagid">
+            </el-option>
+          </el-select>
+
+<!-- <el-select style="width: 100%;"  v-model="temp.tagid" filterable remote placeholder="璇烽�夋嫨璁惧ID"
+            :remote-method="jzsearchMethod" :loading="searchloading">
+            <el-option v-for="item in tagidList" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select> -->
         </el-form-item>
         <el-form-item label="鍚嶇О" prop="alarmname">
           <el-input v-model="temp.alarmname
-        " placeholder="璇疯緭鍏ュ悕绉�" />
+            " :disabled="true" placeholder="璇疯緭鍏ュ悕绉�" />
         </el-form-item>
         <el-form-item label="鍏徃" prop="companyid">
-          <el-select style="width: 100%;" v-model="temp.companyid" filterable remote placeholder="璇疯緭鍏ュ叧閿瘝"
+          <!-- <el-select style="width: 100%;" :disabled="true" v-model="temp.companyid" filterable remote placeholder="璇疯緭鍏ュ叧閿瘝"
             :remote-method="searchMethod" :loading="searchloading">
             <el-option v-for="item in options" :key="item.id" :label="item.companyname" :value="item.id">
             </el-option>
-          </el-select>
+          </el-select> -->
+          <el-input v-model="company
+            " :disabled="true" placeholder="璇疯緭鍏ュ叕鍙�" />
         </el-form-item>
         <el-form-item label="涓滀綅绉婚璀﹀��" prop="hdsv">
-          <el-input v-model="temp.hdsv
-        " placeholder="璇疯緭鍏ヤ笢浣嶇Щ棰勮鍊�" type="number"/>
+          <el-input v-model="temp.edsv
+            " placeholder="璇疯緭鍏ヤ笢浣嶇Щ棰勮鍊硷紙鍗曚綅姣背锛�" type="number" />
+          
         </el-form-item>
         <el-form-item label="鍖椾綅绉婚璀﹀��" prop="ndsv">
           <el-input v-model="temp.ndsv
-        " placeholder="璇疯緭鍏ュ寳浣嶇Щ棰勮鍊�" type="number"/>
+            " placeholder="璇疯緭鍏ュ寳浣嶇Щ棰勮鍊硷紙鍗曚綅姣背锛�" type="number" />
         </el-form-item>
         <el-form-item label="澶╀綅绉婚璀﹀��" prop="edsv">
-          <el-input v-model="temp.edsv
-        " placeholder="璇疯緭鍏ュぉ浣嶇Щ棰勮鍊�" type="number"/>
+          <el-input v-model="temp.hdsv
+            " placeholder="璇疯緭鍏ュぉ浣嶇Щ棰勮鍊硷紙鍗曚綅姣背锛�" type="number" />
+        </el-form-item>
+
+        <el-form-item label="鍛婅鐢佃瘽" prop="phone">
+
+          <el-select style="width: 100%;"  v-model="temp.phone" filterable remote placeholder="璇烽�夋嫨鎶ヨ浜虹數璇�"
+            :remote-method="searchphMethod" :loading="searchloading">
+            <el-option v-for="item in phopneoptions" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select>
+          <!-- <el-select style="width: 100%;" v-model="temp.phone" placeholder="璇烽�夋嫨">
+            <el-option v-for="item in phopneoptions" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select> -->
+        </el-form-item>
+
+        <el-form-item label="搴旀�ュ箍鎾�" >
+          <el-select style="width: 100%;"  v-model="temp.guangboid" filterable remote placeholder="璇烽�夋嫨鎾斁搴旀�ュ箍鎾紪鍙�"
+            :remote-method="searchgbMethod" :loading="searchloading">
+            <el-option v-for="item in gaungboList" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select>
+          <!-- <el-select style="width: 100%;" v-model="temp.guangboid" placeholder="璇烽�夋嫨">
+            <el-option v-for="item in gaungboList" :key="item.value" :label="item.label" :value="item.value">
+            </el-option>
+          </el-select> -->
         </el-form-item>
       </el-form>
       <div class="text-right">
@@ -113,7 +164,7 @@
 
 <script>
 import Pagination from '@/components/Pagination'
-import { getAlarmsystemPage, delAlarmsystem, addorupAlarmsystem, search,searchAlarmsystem,addSystemOperationLog } from '@/api/threshold'
+import { getAlarmsystemPage, delAlarmsystem, addorupAlarmsystem, search, searchAlarmsystem, addSystemOperationLog, getGuangbo, getdevicestate,getDuanxin,getDuanxinfive,getGuangbofive,jzsearchfive,jzsearch } from '@/api/threshold'
 import { deepClone } from '@/utils'
 
 const _temp = {
@@ -123,7 +174,7 @@
   ndsv: '',
   edsv: '',
   companyid: '',
-  alarmname:'',
+  alarmname: '',
 }
 
 export default {
@@ -132,12 +183,16 @@
   },
   data() {
     return {
-      uadd:'',
-      udelete:'',
-      uupdate:'',
+      tagidList:[],
+      company: '',
+      uadd: '',
+      udelete: '',
+      uupdate: '',
       total: 0,
       list: [],
       menus: [],
+      phopneoptions: [],
+      gaungboList: [],
       options: [],
       searchloading: false,
       listLoading: true,
@@ -154,32 +209,175 @@
       loading: false,
       rules: {
         tagid: [
-            { required: true, message: '璇疯緭鍏ヨ澶嘔D', trigger: 'blur' },
-          ],
-          alarmname: [
-            { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: 'blur' },
-          ],
-          companyid: [
-            {  required: true, message: '璇烽�夋嫨鍏徃', trigger: 'change' }
-          ],
-          hdsv: [
-            { required: true, message: '璇疯緭鍏ヤ笢浣嶇Щ棰勮鍊�', trigger: 'blur' }
-          ],
-          edsv: [
-            {  required: true, message: '璇疯緭鍏ュぉ浣嶇Щ棰勮鍊�', trigger: 'change' }
-          ],
-          ndsv: [
-            {  required: true, message: '璇疯緭鍏ュ寳浣嶇Щ棰勮鍊�', trigger: 'blur' }
-          ]
-        },
+          { required: true, message: '璇疯緭鍏ヨ澶嘔D', trigger: 'blur' },
+        ],
+        alarmname: [
+          { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: 'blur' },
+        ],
+        companyid: [
+          { required: true, message: '璇烽�夋嫨鍏徃', trigger: 'change' }
+        ],
+        hdsv: [
+          { required: true, message: '璇疯緭鍏ヤ笢浣嶇Щ棰勮鍊�', trigger: 'blur' }
+        ],
+        edsv: [
+          { required: true, message: '璇疯緭鍏ュぉ浣嶇Щ棰勮鍊�', trigger: 'change' }
+        ],
+        ndsv: [
+          { required: true, message: '璇疯緭鍏ュ寳浣嶇Щ棰勮鍊�', trigger: 'blur' }
+        ],
+        guangboid: [
+          { required: true, message: '璇疯緭鍏ュ簲鎬ュ箍鎾紪鍙�', trigger: 'blur' }
+        ],
+        phone: [
+          { required: true, message: '璇疯緭鍏ュ憡璀︾數璇�', trigger: 'blur' }
+        ]
+      },
     }
   },
   created() {
     this.fetchData()
   },
   methods: {
-     // 杩滅▼鎼滅储
-     searchMethod(query) {
+
+    secode(event) {
+      if (event !== '') {
+        this.loading = true;
+        var params = { tagid: event }
+        getdevicestate(params).then(response => {
+          console.log(response);
+          if (response.data.dataList2 == null || response.data.dataList2.type != 1) {
+            this.$message({
+              message: '缂栧彿閿欒',
+              type: 'error'
+            })
+          } else {
+            this.temp.alarmname = response.data.dataList2.anchorname
+            this.temp.companyid = response.data.dataList2.companyid
+            this.company = response.data.dataList2.company
+          }
+        })
+      } else {
+        // this.options = [];
+      }
+    },
+
+    searchgbMethod(query) {
+      if (query !== '') {
+        var params = { query: query }
+        this.gaungboList=[]
+        getGuangbo(params).then(response => {
+        for (let index = 0; index < response.data.length; index++) {
+          var json = {
+            value: '',
+            label: '',
+          }
+          const element = response.data[index];
+          json.value = element
+          json.label = element
+          this.gaungboList.push(json)
+        }
+
+      })
+      } else {
+        this.gaungboList = [];
+      }
+    },
+
+    searchphMethod(query) {
+      if (query !== '') {
+        this.phopneoptions=[]
+        var params = { query: query }
+
+        getDuanxin(params).then(response => {
+        for (let index = 0; index < response.data.length; index++) {
+          var json = {
+            value: '',
+            label: '',
+          }
+          const element = response.data[index];
+          json.value = element
+          json.label = element
+          this.phopneoptions.push(json)
+        }
+
+      })
+      } else {
+        this.phopneoptions = [];
+      }
+    },
+
+    // 杩滅▼鎼滅储
+    jzsearchMethod(query) {
+      if (query !== '') {
+        this.loading = true;
+        var params = { type: '1' }
+        jzsearch(params).then(response => {
+          this.tagidList = response.data;
+          this.loading = false;
+        })
+      } else {
+        this.tagidList = [];
+      }
+    },
+    // 杩滅▼鎼滅储
+    jzsearchMethodfive() {
+      
+        this.loading = true;
+         var params = { type: '1' }
+        jzsearchfive(params).then(response => {
+          this.tagidList = response.data;
+          this.loading = false;
+        })
+  
+    },
+
+    searchgbMethodfive(query) {
+    if (query !== '') {
+        var params = { query: query }
+        this.gaungboList=[]
+        getGuangbofive(params).then(response => {
+        for (let index = 0; index < response.data.length; index++) {
+          var json = {
+            value: '',
+            label: '',
+          }
+          const element = response.data[index];
+          json.value = element
+          json.label = element
+          this.gaungboList.push(json)
+        }
+
+      })
+      } else {
+        this.gaungboList = [];
+      }
+    },
+
+    searchphMethodfive(query) {
+      if (query !== '') {
+        this.phopneoptions=[]
+        var params = { query: query }
+
+        getDuanxinfive(params).then(response => {
+        for (let index = 0; index < response.data.length; index++) {
+          var json = {
+            value: '',
+            label: '',
+          }
+          const element = response.data[index];
+          json.value = element
+          json.label = element
+          this.phopneoptions.push(json)
+        }
+
+      })
+      } else {
+        this.phopneoptions = [];
+      }
+    },
+    // 杩滅▼鎼滅储
+    searchMethod(query) {
       if (query !== '') {
         this.loading = true;
         var params = { query: query }
@@ -195,16 +393,16 @@
     search() {
       this.listLoading = true
       searchAlarmsystem(this.listQuery).then(response => {
-        if (response.data!=null) {
+        if (response.data != null) {
           this.list = response.data.records
           this.total = response.data.total
-        }else{
+        } else {
           this.$message({
             message: '鏈悳绱㈠埌鏁版嵁',
             type: 'error'
           })
         }
-      
+
         this.listLoading = false
       })
     },
@@ -228,6 +426,12 @@
         this.total = response.data.total
         this.listLoading = false
       })
+
+      this.searchphMethodfive()
+
+this.jzsearchMethodfive()
+      this.searchgbMethodfive()
+  
     },
     resetTemp() {
       this.temp = Object.assign({}, _temp)
@@ -270,10 +474,10 @@
           this.list.splice(scope.$index, 1)
           delAlarmsystem(params).then(response => {
             this.temp.adminname = localStorage.getItem('username') || '';
-            const params = { name:  this.temp.adminname, content: '鍒犻櫎浜嗕竴涓姤璀﹂槇鍊硷紝璇ヨ澶噄d涓猴細'+scope.row.tagid };
+            const params = { name: this.temp.adminname, content: '鍒犻櫎浜嗕竴涓姤璀﹂槇鍊硷紝璇ヨ澶噄d涓猴細' + scope.row.tagid };
             addSystemOperationLog(params).then(response => {
 
-                        })
+            })
             this.$message({
               message: '鍒犻櫎鎴愬姛',
               type: 'success'
@@ -284,46 +488,54 @@
       })
     },
     submit() {
-      if (this.loading) {
-        return
-      }
+      // if (this.loading) {
+      //   return
+      // }
       this.loading = true
       this.$refs[this.temp].validate((valid) => {
         if (valid) {
-      addorupAlarmsystem(this.temp).then(() => {
-        if (this.temp.id=="") {
-          this.temp.adminname = localStorage.getItem('username') || '';
-            const params = { name:  this.temp.adminname, content: '鏂板浜嗕竴涓姤璀﹂槇鍊硷紝璇ヨ澶噄d涓猴細'+this.temp.tagid };
-            addSystemOperationLog(params).then(response => {
-
-                        })
-        } else {
-          this.temp.adminname = localStorage.getItem('username') || '';
-            const params = { name:  this.temp.adminname, content: '淇敼浜嗕竴涓姤璀﹂槇鍊硷紝璇ヨ澶噄d涓猴細'+this.temp.tagid };
-            addSystemOperationLog(params).then(response => {
-
-                        })
-        }
-        this.fetchData()
-
-        setTimeout(() => {
-          this.$message({
-            message: '鎻愪氦鎴愬姛',
-            type: 'success'
+          addorupAlarmsystem(this.temp).then((response) => {
+            if (response.data==-1) {
+              this.$message({
+            message: '褰撳墠璁惧id宸插瓨鍦紝璇烽噸鏂拌緭鍏ワ紒',
+            type: 'error'
           })
-          this.dialogVisible = false
-          this.loading = false
-        }, 300)
-      })
-    } else {
-            this.$message({
+              return
+            }
+
+            if (this.temp.id == "") {
+              this.temp.adminname = localStorage.getItem('username') || '';
+              const params = { name: this.temp.adminname, content: '鏂板浜嗕竴涓姤璀﹂槇鍊硷紝璇ヨ澶噄d涓猴細' + this.temp.tagid };
+              addSystemOperationLog(params).then(response => {
+
+              })
+            } else {
+              this.temp.adminname = localStorage.getItem('username') || '';
+              const params = { name: this.temp.adminname, content: '淇敼浜嗕竴涓姤璀﹂槇鍊硷紝璇ヨ澶噄d涓猴細' + this.temp.tagid };
+              addSystemOperationLog(params).then(response => {
+
+              })
+            }
+            this.fetchData()
+
+            setTimeout(() => {
+              this.$message({
+                message: '鎻愪氦鎴愬姛',
+                type: 'success'
+              })
+              this.dialogVisible = false
+              this.loading = false
+            }, 300)
+          })
+        } else {
+          this.$message({
             message: '鎻愪氦澶辫触锛岃妫�鏌ヨ〃鍗曞繀濉」鏄惁涓虹┖',
             type: 'error'
           })
-            console.log('error submit!!');
-            return false;
-          }
-        });
+          console.log('error submit!!');
+          return false;
+        }
+      });
     }
   }
 }

--
Gitblit v1.9.3