From 60384e8241fa855b5780260633ee9b9f8904847a Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期五, 20 六月 2025 14:24:19 +0800
Subject: [PATCH] feat(eims-ui-mobile): 为多个页面添加搜索功能 - 在 equ-list、insp-st、maint-st、req-list 和 res-list 页面中添加设备名称和资产编号的模糊搜索

---
 eims-ui-mobile/src/service/repair.ts         |    8 ++++
 eims-ui-mobile/src/pages/maint/maint-st.vue  |   18 +++++++-
 eims-ui-mobile/src/pages/equ/equ-list.vue    |   11 +++++
 eims-ui-mobile/src/pages/home/index.vue      |   16 ++++++-
 eims-ui-mobile/src/pages/repair/req-list.vue |   13 +++++-
 eims-ui-mobile/src/pages/inspect/insp-st.vue |   12 ++++++
 eims-ui-mobile/src/pages/repair/res-list.vue |   11 ++++-
 7 files changed, 77 insertions(+), 12 deletions(-)

diff --git a/eims-ui-mobile/src/pages/equ/equ-list.vue b/eims-ui-mobile/src/pages/equ/equ-list.vue
index 3223131..920c368 100644
--- a/eims-ui-mobile/src/pages/equ/equ-list.vue
+++ b/eims-ui-mobile/src/pages/equ/equ-list.vue
@@ -15,6 +15,7 @@
         custom-style="background: #4D80F0;"
         safeAreaInsetTop
       ></wd-navbar>
+      <wd-search v-model="searchValue" placeholder="璇疯緭鍏ュ叧閿瓧" @search="handleSearch" />
       <wd-drop-menu>
         <wd-drop-menu-item
           v-model="equTypeId"
@@ -85,7 +86,7 @@
 const equTypeId = ref<number>(-1)
 // 璁惧鐘舵��
 const status = ref<number>(-1)
-
+const searchValue = ref<string>('')
 const isSelectEqu = ref(false)
 
 const typeList = ref<Record<string, any>[]>([{ dictLabel: '璁惧绫诲瀷', dictValue: -1 }])
@@ -108,6 +109,9 @@
     pageSize,
     equTypeId: equTypeId.value,
     status: status.value,
+    params: {
+      searchValue: searchValue.value,
+    },
   }
   if (equTypeId.value === -1) {
     delete parmams.equTypeId
@@ -154,6 +158,11 @@
   }
 }
 
+function handleSearch() {
+  console.log('handleSearch')
+  paging.value.reload()
+}
+
 /**
  * 閫夋嫨璁惧鍥炶皟
  * @param equ
diff --git a/eims-ui-mobile/src/pages/home/index.vue b/eims-ui-mobile/src/pages/home/index.vue
index 94dae84..bcc1faa 100644
--- a/eims-ui-mobile/src/pages/home/index.vue
+++ b/eims-ui-mobile/src/pages/home/index.vue
@@ -157,7 +157,7 @@
 import { useUserStore } from '@/store'
 import { tabbarStore } from '@/components/fg-tabbar/tabbar'
 import { getEquList } from '@/service/equ'
-import { getRepairResList } from '@/service/repair'
+import { getRepairResList, getRepairResUnfinished } from "@/service/repair";
 import { getFixtureList } from '@/service/fixture'
 import { receiveOrderRepair } from '@/service/mobile'
 import { useToast, useMessage } from 'wot-design-uni'
@@ -196,7 +196,8 @@
   getEquList({ pageNum, pageSize })
     .then((res: any) => {
       equTotal.value = res?.total || 0
-      queryRepairResList()
+      // queryRepairResList()
+      queryUnFinishedRepairResList()
       queryFixtureList()
       paging.value.complete(true)
     })
@@ -227,7 +228,7 @@
 onLoad(() => {
   // getAllMenus()
   queryEquList()
-  queryRepairResList()
+  queryUnFinishedRepairResList()
   queryFixtureList()
 })
 
@@ -379,6 +380,15 @@
     .catch((res) => {})
 }
 
+function queryUnFinishedRepairResList() {
+  getRepairResUnfinished('0,1,2')
+    .then((res: any) => {
+      console.log("res", res)
+      faultTotal.value = res || 0
+    })
+    .catch((res) => {})
+}
+
 function queryFixtureList() {
   getFixtureList({
     page: 1,
diff --git a/eims-ui-mobile/src/pages/inspect/insp-st.vue b/eims-ui-mobile/src/pages/inspect/insp-st.vue
index 85c1cda..f761004 100644
--- a/eims-ui-mobile/src/pages/inspect/insp-st.vue
+++ b/eims-ui-mobile/src/pages/inspect/insp-st.vue
@@ -11,6 +11,9 @@
 <template>
   <z-paging ref="paging" v-model="dataList" @query="queryList" show-refresher-update-time>
     <template #top>
+      <!-- 澧炲姞涓�涓悳绱㈡爮 -->
+      <wd-search v-model="searchValue" @search="handleSearch">
+      </wd-search>
       <wd-tabs v-model="activeTab" @change="handleTabChange">
         <wd-tab title="寰呯偣妫�"></wd-tab>
         <wd-tab title="寰呯‘璁�"></wd-tab>
@@ -88,6 +91,7 @@
 const equName = ref<string>('鎵�鏈夎澶�')
 const filterDate = ref<string>('1')
 const status = ref<string>('0') // 榛樿涓哄緟鐐规鐘舵��
+const searchValue = ref<string>('')
 
 const viewModeList = ref<Record<string, any>[]>([
   { label: '鏃ヨ鍥�', value: 'Day' },
@@ -137,6 +141,9 @@
     pageSize,
     viewMode: viewMode.value,
     status: status.value, // 娣诲姞鐘舵�佺瓫閫�
+    params: {
+      searchValue: searchValue.value,
+    },
   }
   if (filterDate.value === '1') {
     params.planTime = dayjs().format('YYYY-MM-DD')
@@ -172,6 +179,11 @@
   })
 }
 
+function handleSearch() {
+  console.log('handleSearch')
+  paging.value.reload()
+}
+
 function reloadData() {
   paging.value.reload()
 }
diff --git a/eims-ui-mobile/src/pages/maint/maint-st.vue b/eims-ui-mobile/src/pages/maint/maint-st.vue
index 836d79d..5e01de6 100644
--- a/eims-ui-mobile/src/pages/maint/maint-st.vue
+++ b/eims-ui-mobile/src/pages/maint/maint-st.vue
@@ -11,6 +11,12 @@
 <template>
   <z-paging ref="paging" v-model="dataList" @query="queryList" show-refresher-update-time>
     <template #top>
+      <!-- 澧炲姞涓�涓悳绱㈡爮 -->
+      <wd-search v-model="searchValue" @search="handleSearch">
+        <template #right-icon>
+          <wd-icon name="scan" size="34rpx"></wd-icon>
+        </template>
+      </wd-search>
       <wd-tabs v-model="activeTab" @change="handleTabChange">
         <wd-tab title="寰呬繚鍏�"></wd-tab>
         <wd-tab title="寰呯‘璁�"></wd-tab>
@@ -86,7 +92,7 @@
 import { ref, computed } from 'vue'
 import { getMaintStList } from '@/service/maint'
 import dayjs from 'dayjs'
-
+const searchValue = ref<string>('')
 /**
  * 鍏朵粬椤甸潰浼犺繃鏉ョ殑鏁版嵁
  * assetNo: 璧勪骇缂栧彿
@@ -191,6 +197,7 @@
     pageSize,
     equName: equName.value,
     status: status.value,
+    params: {},
   }
   if (filterDate.value === '1') {
     // 鑾峰彇褰撳墠鏃ユ湡
@@ -200,7 +207,7 @@
       endPlanTime: now.endOf('month').format('YYYY-MM-DD 23:59:59'),
     }
   } else {
-    delete queryParams.params
+    queryParams.params = {}
   }
 
   if (equName.value === '-1') {
@@ -213,7 +220,7 @@
   if (option?.from === 'scan') {
     queryParams.assetNo = option.assetNo
   }
-
+  queryParams.params.searchValue = searchValue.value
   getMaintStList(queryParams)
     .then((res: any) => {
       // 璇峰嬁鍦ㄧ綉缁滆姹傚洖璋冧腑缁檇ataList璧嬪�硷紒锛佸彧闇�瑕佽皟鐢╟omplete灏卞彲浠ヤ簡
@@ -233,6 +240,11 @@
   })
 }
 
+function handleSearch () {
+  console.log('handleSearch')
+  paging.value.reload()
+}
+
 function reloadData() {
   paging.value.reload()
 }
diff --git a/eims-ui-mobile/src/pages/repair/req-list.vue b/eims-ui-mobile/src/pages/repair/req-list.vue
index ea3ff6f..974d2aa 100644
--- a/eims-ui-mobile/src/pages/repair/req-list.vue
+++ b/eims-ui-mobile/src/pages/repair/req-list.vue
@@ -23,6 +23,8 @@
         custom-style="background: #4D80F0;"
         safeAreaInsetTop
       ></wd-navbar>
+      <!-- 澧炲姞涓�涓悳绱㈡爮 -->
+      <wd-search v-model="searchValue" @search="handleSearch"></wd-search>
 <!--      <wd-drop-menu v-if="!isSelectReq">-->
 <!--        <wd-drop-menu-item-->
 <!--          v-model="reqTypeId"-->
@@ -157,7 +159,7 @@
 const reqTypeId = ref<number>(-1)
 // 鎶ヤ慨鍗曞鐞嗙姸鎬�
 const status = ref<number>(-1)
-
+const searchValue = ref<string>('')
 const isSelectReq = ref(false)
 
 const filterDate = ref<string>('2')
@@ -189,7 +191,9 @@
   const queryParams: any = {
     pageNum,
     pageSize,
-    params: {},
+    params: {
+      searchValue: searchValue.value,
+    },
   }
   // if (reqTypeId.value === -1) {
   //   delete queryParams.reqType
@@ -268,6 +272,11 @@
     })
 }
 
+function handleSearch() {
+  console.log('handleSearch')
+  paging.value.reload()
+}
+
 /**
  * 鏉$洰鐐瑰嚮浜嬩欢
  * @param item
diff --git a/eims-ui-mobile/src/pages/repair/res-list.vue b/eims-ui-mobile/src/pages/repair/res-list.vue
index c458516..3ca5864 100644
--- a/eims-ui-mobile/src/pages/repair/res-list.vue
+++ b/eims-ui-mobile/src/pages/repair/res-list.vue
@@ -19,6 +19,9 @@
 <!--          <text v-if="isLineOrRepair()" class="text-white">鎺ュ崟</text>-->
 <!--        </template>-->
       </wd-navbar>
+      <!-- 澧炲姞涓�涓悳绱㈡爮 -->
+      <wd-search v-model="searchValue" @search="handleSearch">
+      </wd-search>
 <!--      <wd-drop-menu>-->
 <!--        <wd-drop-menu-item-->
 <!--          v-model="resTypeId"-->
@@ -62,6 +65,7 @@
 
 const message = useMessage()
 const toast = useToast()
+const searchValue = ref<string>('')
 
 /**
  * 鍏朵粬椤甸潰浼犺繃鏉ョ殑鏁版嵁
@@ -111,7 +115,9 @@
   const queryParams: any = {
     pageNum,
     pageSize,
-    params: {},
+    params: {
+      searchValue: searchValue.value,
+    },
     // reqType: resTypeId.value,
     // status: status.value,
   }
@@ -145,10 +151,9 @@
   queryParams.params.status = '0,1,2,3'
   queryParams.reqUser = userStore?.userInfo?.userId
   if (isRepair()) {
-    queryParams.params.status = null
+    queryParams.params.status = undefined
     queryParams.resUser = userStore?.userInfo?.userId
     delete queryParams.reqUser
-    delete queryParams.params
   }
   getRepairResList(queryParams)
     .then((res: any) => {
diff --git a/eims-ui-mobile/src/service/repair.ts b/eims-ui-mobile/src/service/repair.ts
index 4b5e2b6..c6aa009 100644
--- a/eims-ui-mobile/src/service/repair.ts
+++ b/eims-ui-mobile/src/service/repair.ts
@@ -29,6 +29,14 @@
 export const getRepairResList = (params: any) => {
   return http.get<RepairResVO[]>('/eims/repairRes/list', params)
 }
+
+/**
+ * 鏌ヨ鏈畬鎴愮殑缁翠慨鍗�
+ * @param id
+ */
+export const getRepairResUnfinished = (status: string) => {
+  return http.get<int>(`/eims/repairRes/list/unfinished?status=${status}`)
+}
 /**
  * 鏌ヨ缁翠慨鍗�
  * @param data

--
Gitblit v1.9.3