From b8b2820d1a0a55a5555434a3ec95f8bbec1db06d Mon Sep 17 00:00:00 2001
From: zmc <zmc_li@foxmail.com>
Date: 星期四, 14 十二月 2023 15:22:54 +0800
Subject: [PATCH] 1.飞行巡检和审核辅助页面中的对话框写成组件 2.增加了数据请求和异常分析配置参数的可视化页面 3.修改了站点输入框,使能够模糊匹配

---
 src/sfc/InputSearch.vue |  165 ++++++++++++++++++++++++++++--------------------------
 1 files changed, 86 insertions(+), 79 deletions(-)

diff --git a/src/sfc/InputSearch.vue b/src/sfc/InputSearch.vue
index d7d10d7..0b79333 100644
--- a/src/sfc/InputSearch.vue
+++ b/src/sfc/InputSearch.vue
@@ -13,10 +13,8 @@
   1浠h〃闇�瑕侀粯璁ゅ�� 锛�0浠h〃涓嶉渶瑕侀粯璁ゅ��
  -->
 
-
- 
 <script>
-import exceptionApi from '@/api/exceptionApi.js';
+import exceptionApi from '@/api/exceptionApi.js'
 export default {
   props: {
     // 0浠h〃涓嶉渶瑕侀粯璁ゅ�硷紝1浠h〃闇�瑕侀粯璁ゅ��
@@ -25,30 +23,30 @@
       default: '0'
     },
     // 0浠h〃涓嶉渶瑕侊紝1浠h〃鏍规嵁鏃舵鍜屽紓甯告潵缁欏嚭杈撳叆寤鸿
-    isNeedRealTimeAdvice:{
-      type:String,
-      default:'0'
+    isNeedRealTimeAdvice: {
+      type: String,
+      default: '0'
     },
-    exceptionType:{
-      type:Array,
-      default:()=>{
+    exceptionType: {
+      type: Array,
+      default: () => {
         return []
       }
     },
-    beginTime:{
-      type:String,
-      default:''
+    beginTime: {
+      type: String,
+      default: ''
     },
-    endTime:{
-      type:String,
-      default:''
+    endTime: {
+      type: String,
+      default: ''
     },
-    siteName:{
-      type:String,
-      default:'-1'
+    siteName: {
+      type: String,
+      default: '-1'
     }
   },
-  emits: ['submitValue', 'submitSiteNums','submitMncode'],
+  emits: ['submitValue', 'submitSiteNums', 'submitMncode'],
   data() {
     return {
       // 鐢ㄦ埛閫変腑鐨勫��
@@ -56,41 +54,44 @@
       // 淇濆瓨杈撳叆寤鸿鐨勭珯鐐瑰悕绉�
       siteNames: [],
       // 淇濆瓨杈撳叆寤鸿鐨勭珯鐐硅澶囩紪鍙�
-      siteNamesAndMnCode:[]
+      siteNamesAndMnCode: []
     }
   },
-  watch:{
-    beginTime(val,oldVal){
-      
-      if(this.isNeedRealTimeAdvice =='1' && oldVal != ''){
-        exceptionApi.getExceptionName(this.exceptionType,this.beginTime,this.endTime).then( res=>{
-          this.siteNames = []
-          const sites = res.data.data
-          sites.filter((item) => {
-          this.siteNames.push(item['name'])
+  watch: {
+    beginTime(val, oldVal) {
+      if (this.isNeedRealTimeAdvice == '1' && oldVal != '') {
+        exceptionApi
+          .getExceptionName(this.exceptionType, this.beginTime, this.endTime)
+          .then((res) => {
+            this.siteNames = []
+            const sites = res.data.data
+            sites.filter((item) => {
+              this.siteNames.push(item['name'])
+            })
           })
-        })
       }
     },
-    exceptionType(){
-      if(this.isNeedRealTimeAdvice =='1' ){
-        exceptionApi.getExceptionName(this.exceptionType,this.beginTime,this.endTime).then( res=>{
-          this.siteNames = []
-          const sites = res.data.data
-          sites.filter((item) => {
-          this.siteNames.push(item['name'])
+    exceptionType() {
+      if (this.isNeedRealTimeAdvice == '1') {
+        exceptionApi
+          .getExceptionName(this.exceptionType, this.beginTime, this.endTime)
+          .then((res) => {
+            this.siteNames = []
+            const sites = res.data.data
+            sites.filter((item) => {
+              this.siteNames.push(item['name'])
+            })
           })
-        })
       }
     },
-    siteName(){
-      if(this.siteName != '-1' && this.siteName != ''){
+    siteName() {
+      if (this.siteName != '-1' && this.siteName != '') {
         this.state = this.siteName
         this.$emit('submitValue', this.state)
       }
     },
-    state(){
-      if(this.state != '' && this.state != null){
+    state() {
+      if (this.state != '' && this.state != null) {
         // 鏌ユ壘瀵瑰簲鐨勮澶囩紪鍙�
         this.onSiteNameSelected(this.state)
       }
@@ -108,59 +109,66 @@
     }
   },
   methods: {
+    obscureMatch(a, b) {
+      const pattern = new RegExp(a, 'i')
+      // 'i' 琛ㄧず涓嶅尯鍒嗗ぇ灏忓啓
+      return pattern.test(b)
+    },
+
     querySearch(queryString, cb) {
       const results = queryString
         ? this.siteNames.filter(this.createFilter(queryString))
         : this.siteNames
       cb(results)
     },
+
     createFilter(queryString) {
       return (restaurant) => {
         return (
-          // toLowerCase() 鏂规硶鐢ㄤ簬鎶婂瓧绗︿覆杞崲涓哄皬鍐欍��
-          restaurant.toLowerCase().indexOf(queryString.toLowerCase()) === 0
+          this.obscureMatch(queryString,restaurant)
         )
       }
     },
     // 鍒濆鍖栧姞杞芥墍鏈夌殑绔欑偣鍚嶅瓧
     loadAll() {
-      if(this.isNeedRealTimeAdvice == '1'){
-        exceptionApi.getExceptionName(this.exceptionType,this.beginTime,this.endTime).then( res=>{
-          this.siteNames = []
-          const sites = res.data.data
-          sites.filter((item) => {
-          this.siteNames.push(item['name'])
-          let temp = {}
-          temp.name = item.name
-          temp.mnCode = item.mnCode
-          this.siteNamesAndMnCode.push(temp)
+      if (this.isNeedRealTimeAdvice == '1') {
+        exceptionApi
+          .getExceptionName(this.exceptionType, this.beginTime, this.endTime)
+          .then((res) => {
+            this.siteNames = []
+            const sites = res.data.data
+            sites.filter((item) => {
+              this.siteNames.push(item['name'])
+              let temp = {}
+              temp.name = item.name
+              temp.mnCode = item.mnCode
+              this.siteNamesAndMnCode.push(temp)
+            })
           })
+      } else if (this.isNeedRealTimeAdvice == '0') {
+        exceptionApi.getSitesNum().then((response) => {
+          const sites = response.data.data
+          sites.filter((item) => {
+            this.siteNames.push(item['name'])
+            let temp = {}
+            temp.name = item.name
+            temp.mnCode = item.mnCode
+            this.siteNamesAndMnCode.push(temp)
+          })
+          this.$emit('submitSiteNums', this.siteNames.length)
         })
-
-    }else if(this.isNeedRealTimeAdvice == '0'){
-      exceptionApi.getSitesNum().then((response) => {
-        const sites = response.data.data
-        sites.filter((item) => {
-          this.siteNames.push(item['name'])
-          let temp = {}
-          temp.name = item.name
-          temp.mnCode = item.mnCode
-          this.siteNamesAndMnCode.push(temp)
-        })
-        this.$emit('submitSiteNums', this.siteNames.length)
-      })
-    }
+      }
     },
     // 鏍规嵁閫変腑鐨勭珯鐐规煡璇㈣澶囩紪鍙�
-    onSiteNameSelected(siteName) { 
-      const selectedSite = this.siteNamesAndMnCode.find((site) => site.name == siteName); 
-  if (selectedSite) { 
-    this.$emit('submitMncode',selectedSite.mnCode)
-  }else{
-    this.$emit('submitMncode','')
-  }
-},
-    
+    onSiteNameSelected(siteName) {
+      const selectedSite = this.siteNamesAndMnCode.find((site) => site.name == siteName)
+      if (selectedSite) {
+        this.$emit('submitMncode', selectedSite.mnCode)
+      } else {
+        this.$emit('submitMncode', '')
+      }
+    },
+
     // 鐐瑰嚮閫変腑寤鸿椤规椂瑙﹀彂
     handleSelect(item) {
       this.state = item
@@ -171,7 +179,7 @@
       this.state = ''
       this.$emit('submitValue', this.state)
     },
-
+  
   }
 }
 </script>
@@ -209,5 +217,4 @@
 .el-autocomplete {
   width: 200px;
 }
-
 </style>

--
Gitblit v1.9.3