From 4c289d6216ea07f3e153e2c860abca9331589e1d Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期日, 29 九月 2024 14:22:33 +0800 Subject: [PATCH] 设备查询条件 --- src/views/ecg/devmanage/index.vue | 73 +++++++++++++++++++++++++++++++----- 1 files changed, 63 insertions(+), 10 deletions(-) diff --git a/src/views/ecg/devmanage/index.vue b/src/views/ecg/devmanage/index.vue index 8253a0d..d2eb6c7 100644 --- a/src/views/ecg/devmanage/index.vue +++ b/src/views/ecg/devmanage/index.vue @@ -45,9 +45,10 @@ placeholder="璇烽�夋嫨鍒嗙被鍚�" clearable class="!w-240px" + @change="categoryChanged" > <el-option - v-for="dict in getStrDictOptions(DICT_TYPE.ECG_DEV_CATEGORY)" + v-for="dict in categoryOptions" :key="dict.value" :label="dict.label" :value="dict.value" @@ -60,8 +61,14 @@ placeholder="璇烽�夋嫨鍝佺墝" clearable class="!w-240px" + @change="brandChanged" > - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> + <el-option + v-for="dict in brandOptions" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> <el-form-item label="鍨嬪彿" prop="model"> @@ -71,7 +78,12 @@ clearable class="!w-240px" > - <el-option label="璇烽�夋嫨瀛楀吀鐢熸垚" value="" /> + <el-option + v-for="dict in modelOptions" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> <el-form-item> @@ -116,10 +128,7 @@ <el-table-column label="鍨嬪彿" align="center" prop="model" /> <el-table-column label="浣跨敤鎯呭喌" align="center" prop="lost" > <template #default="scope"> - <span v-if="scope.row.state === 0">绌洪棽</span> - <span v-if="scope.row.state === 5">宸查鐢�</span> - <span v-if="scope.row.state === 10">浣跨敤涓�</span> - <span v-if="scope.row.state === 20">宸查仐澶�</span> + <span>{{tranlateDevState(scope.row.state)}}</span> </template> </el-table-column> <el-table-column label="閲囪喘鏃ユ湡" align="center" prop="purchaseDate" :formatter="dateFormatter2" width="120px"/> @@ -139,6 +148,14 @@ v-hasPermi="['ecg:device:update']" > 缂栬緫 + </el-button> + <el-button + link + type="primary" + @click="openForm('devState', scope.row.id)" + v-hasPermi="['ecg:device:update']" + > + 璁惧鐘舵�� </el-button> <el-button link @@ -165,10 +182,10 @@ </template> <script setup lang="ts"> -import { getStrDictOptions, DICT_TYPE } from '@/utils/dict' +import {getStrDictOptions, DICT_TYPE, DictDataType} from '@/utils/dict' import {dateFormatter, dateFormatter2} from '@/utils/formatTime' import download from '@/utils/download' -import { DeviceApi, DeviceVO } from '@/api/ecg/devmanage' +import {DeviceApi, DeviceVO, DevModelApi, OptionsVO} from '@/api/ecg/devmanage' import DeviceForm from './DeviceForm.vue' /** 璁惧 鍒楄〃 */ @@ -192,6 +209,10 @@ }) const queryFormRef = ref() // 鎼滅储鐨勮〃鍗� const exportLoading = ref(false) // 瀵煎嚭鐨勫姞杞戒腑 + +const categoryOptions = ref<DictDataType[]>([]) +const brandOptions = ref<OptionsVO[]>([]) +const modelOptions = ref<OptionsVO[]>([]) /** 鏌ヨ鍒楄〃 */ const getList = async () => { @@ -251,8 +272,40 @@ } } +const tranlateDevState = (state) => { + if (state === 0) return "绌洪棽"; + else if (state=== 5) return "宸查鐢�"; + else if (state=== 10) return "宸茶鏈�"; + else if (state=== 20) return "宸查仐澶�"; + else if (state=== 30) return "缁翠慨涓�"; + else if (state=== 40) return "宸叉姤搴�"; +} + +const categoryChanged = async () => { + const data = await DevModelApi.getBrandOption(queryParams.category!) + brandOptions.value = data + + queryParams.brand = '' + queryParams.model = '' + + //queryParams.brand = brandOptions.value.length === 0 ? "" : brandOptions.value[0].value + //brandChanged() +} + +const brandChanged = async () => { + const data = await DevModelApi.getModelOption(queryParams.category!, queryParams.brand!) + modelOptions.value = data + + queryParams.model = '' + + //queryParams.model = modelOptions.value.length === 0 ? "" : modelOptions.value[0].value +} + /** 鍒濆鍖� **/ -onMounted(() => { +onMounted( async () => { + const data = await getStrDictOptions(DICT_TYPE.ECG_DEV_CATEGORY) + categoryOptions.value = data + getList() }) </script> \ No newline at end of file -- Gitblit v1.9.3