From 14681dfe7052cb76eefcc0c17d0a0d708e1ac9dd Mon Sep 17 00:00:00 2001
From: zhuguifei <zhuguifei@zhuguifeideiMac.local>
Date: 星期二, 13 五月 2025 16:31:14 +0800
Subject: [PATCH] 完成移动端基本功能

---
 eims-ui-mobile/src/pages/equ/equ-list.vue |   86 ++++++++++++++++++++++++++++++++----------
 1 files changed, 65 insertions(+), 21 deletions(-)

diff --git a/eims-ui-mobile/src/pages/equ/equ-list.vue b/eims-ui-mobile/src/pages/equ/equ-list.vue
index 693e6c2..ecd0923 100644
--- a/eims-ui-mobile/src/pages/equ/equ-list.vue
+++ b/eims-ui-mobile/src/pages/equ/equ-list.vue
@@ -11,8 +11,20 @@
   <z-paging ref="paging" v-model="dataList" @query="queryList" show-refresher-update-time>
     <template #top>
       <wd-drop-menu>
-        <wd-drop-menu-item v-model="equTypeId" :options="typeList" @change="handleEquType" />
-        <wd-drop-menu-item v-model="status" :options="statusList" @change="handleEquStatu" />
+        <wd-drop-menu-item
+          v-model="equTypeId"
+          label-key="dictLabel"
+          value-key="dictValue"
+          :options="typeList"
+          @change="handleEquType"
+        />
+        <wd-drop-menu-item
+          v-model="status"
+          label-key="dictLabel"
+          value-key="dictValue"
+          :options="statusList"
+          @change="handleEquStatu"
+        />
       </wd-drop-menu>
     </template>
 
@@ -23,15 +35,21 @@
             <view class="flex items-center menu-title-box">
               <view class="menu-indicator"></view>
               <text class="ml-1 text-xs">{{ item.assetNo }}</text>
+              <wd-tag v-if="item.status === '0'" class="ml-2" bg-color="cyan">璇曠敤</wd-tag>
+              <wd-tag v-else-if="item.status === '1'" class="ml-2" type="success">浣跨敤</wd-tag>
+              <wd-tag v-else-if="item.status === '2'" class="ml-2" type="danger">鍋滅敤</wd-tag>
+              <wd-tag v-else-if="item.status === '3'" class="ml-2" bg-color="pink">鎶ュ簾</wd-tag>
+              <wd-tag v-else-if="item.status === '4'" class="ml-2" type="warning">闂茬疆</wd-tag>
+              <wd-tag v-else-if="item.status === '5'" class="ml-2">鏂板</wd-tag>
             </view>
 
-            <view>
+            <view @click.stop="handleInfo">
               <text class="icon-color-base">璇︽儏</text>
               <wd-icon name="arrow-right" custom-class="icon-color-base"></wd-icon>
             </view>
           </view>
         </template>
-        <view class="flex h-[80rpx] items-center" @click.stop="itemClick(item)">
+        <view class="flex h-[90rpx] items-center" @click.stop="itemClick(item)">
           <image class="slot-img text-center" src="/static/images/camera.png" />
           <view class="flex-1">
             <view class="text-color-base">
@@ -43,11 +61,7 @@
             </view>
           </view>
           <view v-if="isSelectEqu">
-            <wd-button
-              size="small"
-              icon="edit-outline"
-              @click.stop="handleSelectEqu(item)"
-            >
+            <wd-button size="small" icon="edit-outline" @click.stop="handleSelectEqu(item)">
               閫変腑
             </wd-button>
           </view>
@@ -59,22 +73,24 @@
 
 <script setup lang="ts">
 import { onMounted, getCurrentInstance, ref } from 'vue'
-
 import { getEquList } from '@/service/equ'
+import { DICT_SYS_EQU_STATUS, getDictInfo } from '@/service/dict'
 
 // 璁惧绫诲瀷
-const equTypeId = ref<number>(0)
+const equTypeId = ref<number>(-1)
 // 璁惧鐘舵��
-const status = ref<number>(0)
+const status = ref<number>(-1)
 
 const isSelectEqu = ref(false)
 
-const typeList = ref<Record<string, any>[]>([{ label: '鎵�鏈夎澶�', value: 0 }])
-const statusList = ref<Record<string, any>[]>([{ label: '鎵�鏈夌姸鎬�', value: 0 }])
+const typeList = ref<Record<string, any>[]>([{ dictLabel: '璁惧绫诲瀷', dictValue: -1 }])
+const statusList = ref<Record<string, any>[]>([{ dictLabel: '鎵�鏈夌姸鎬�', dictValue: -1 }])
 function handleEquType({ value }) {
+  reloadData()
   console.log(value)
 }
 function handleEquStatu({ value }) {
+  reloadData()
   console.log(value)
 }
 
@@ -82,9 +98,19 @@
 const dataList = ref([])
 
 const queryList = (pageNum?: number, pageSize?: number) => {
-  // 杩欓噷鐨刾ageNo鍜宲ageSize浼氳嚜鍔ㄨ绠楀ソ锛岀洿鎺ヤ紶缁欐湇鍔″櫒鍗冲彲
-  // 杩欓噷鐨勮姹傚彧鏄紨绀猴紝璇锋浛鎹㈡垚鑷繁鐨勯」鐩殑缃戠粶璇锋眰锛屽苟鍦ㄧ綉缁滆姹傚洖璋冧腑閫氳繃paging.value.complete(璇锋眰鍥炴潵鐨勬暟缁�)灏嗚姹傜粨鏋滀紶缁檢-paging
-  getEquList({ pageNum, pageSize })
+  const parmams = {
+    pageNum,
+    pageSize,
+    equTypeId: equTypeId.value,
+    status: status.value,
+  }
+  if (equTypeId.value === -1) {
+    delete parmams.equTypeId
+  }
+  if (status.value === -1) {
+    delete parmams.status
+  }
+  getEquList(parmams)
     .then((res: any) => {
       // 璇峰嬁鍦ㄧ綉缁滆姹傚洖璋冧腑缁檇ataList璧嬪�硷紒锛佸彧闇�瑕佽皟鐢╟omplete灏卞彲浠ヤ簡
       paging.value.completeByTotal(res.rows, res.total)
@@ -101,10 +127,13 @@
  * 璁惧鏉$洰鐐瑰嚮浜嬩欢
  * @param item
  */
-function itemClick(item: any) {
-
+function itemClick(item: any) {}
+function handleInfo() {
+  uni.showToast({
+    title: '鍔熻兘寮�鍙戜腑',
+    icon: 'none',
+  })
 }
-
 /**
  * 鍏跺畠椤甸潰閫夋嫨璁惧
  * @param item
@@ -126,7 +155,6 @@
   })
 }
 
-
 const eventChannel = ref<any>()
 onMounted(() => {
   const instance: any = getCurrentInstance().proxy
@@ -136,6 +164,19 @@
     isSelectEqu.value = true
     console.log('OnSelectEqu', data)
   })
+})
+
+function reloadData() {
+  paging.value.reload()
+}
+
+async function initData() {
+  const sList: any = await getDictInfo(DICT_SYS_EQU_STATUS)
+  statusList.value.push(...sList)
+}
+
+onLoad(() => {
+  initData()
 })
 </script>
 
@@ -163,4 +204,7 @@
 :deep(.wd-card__footer) {
   padding: 10rpx !important;
 }
+:deep(.wd-card__title-content) {
+  padding: 16rpx !important;
+}
 </style>

--
Gitblit v1.9.3