From 8ce35ee72e52f51f93e61d2dec6084c3cfd397b6 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期三, 18 十二月 2024 15:31:36 +0800 Subject: [PATCH] 设备查询完善 --- src/views/ecg/room/RoomForm.vue | 63 ++++++++++++++++++++++++++++--- 1 files changed, 57 insertions(+), 6 deletions(-) diff --git a/src/views/ecg/room/RoomForm.vue b/src/views/ecg/room/RoomForm.vue index da1ac66..141b9f6 100644 --- a/src/views/ecg/room/RoomForm.vue +++ b/src/views/ecg/room/RoomForm.vue @@ -7,12 +7,37 @@ label-width="100px" v-loading="formLoading" > - <el-form-item label="璇婂缂栧彿" prop="roomNo"> - <el-input v-model="formData.roomNo" placeholder="璇疯緭鍏ヨ瘖瀹ょ紪鍙�" /> + <el-form-item label="璇婂缂栧彿" prop="roomId"> + <el-select v-model="formData.roomId" placeholder="璇疯緭鍏ヨ瘖瀹ょ紪鍙�" > + <el-option + v-for="rooms in roomListRef" + :key="rooms.roomId" + :label="rooms.roomName" + :value="rooms.roomId" + /> + </el-select> </el-form-item> <el-form-item label="璇婄枟搴婄紪鍙�" prop="bedNo"> <el-input v-model="formData.bedNo" placeholder="璇疯緭鍏ヨ瘖鐤楀簥缂栧彿" /> </el-form-item> + <el-form-item label="璇婂IP" prop="bedNo"> + <el-input v-model="formData.ip" placeholder="璇疯緭鍏ヨ瘖瀹P" /> + </el-form-item> + + <el-form-item label="妫�鏌ョ被鍨�" prop="checkTypes"> + <el-checkbox-group v-model="formData.checkTypes"> + <el-checkbox v-for="checkTypeVO in checkTypeStore.getCheckTypeOptions()" :value="checkTypeVO.value" :key="checkTypeVO.value">{{checkTypeVO.label}}</el-checkbox> + </el-checkbox-group> + </el-form-item> + + <el-form-item label="浣滀笟绫诲瀷" prop="opType"> + <el-radio-group v-model="formData.opType"> + <el-radio :value="0" > 妫�鏌� </el-radio> + <el-radio :value="1" > 棰嗙敤 </el-radio> + <el-radio :value="2" > 瑁呮満 </el-radio> + </el-radio-group> + </el-form-item> + </el-form> <template #footer> <el-button @click="submitForm" type="primary" :disabled="formLoading">纭� 瀹�</el-button> @@ -22,6 +47,7 @@ </template> <script setup lang="ts"> import { RoomApi, RoomVO } from '@/api/ecg/room' +import {useCheckTypeStore} from "@/store/modules/checkType"; /** 璇婂鍜岃瘖鐤楀簥 琛ㄥ崟 */ defineOptions({ name: 'RoomForm' }) @@ -29,20 +55,27 @@ const { t } = useI18n() // 鍥介檯鍖� const message = useMessage() // 娑堟伅寮圭獥 +const checkTypeStore = useCheckTypeStore(); + const dialogVisible = ref(false) // 寮圭獥鐨勬槸鍚﹀睍绀� const dialogTitle = ref('') // 寮圭獥鐨勬爣棰� const formLoading = ref(false) // 琛ㄥ崟鐨勫姞杞戒腑锛�1锛変慨鏀规椂鐨勬暟鎹姞杞斤紱2锛夋彁浜ょ殑鎸夐挳绂佺敤 const formType = ref('') // 琛ㄥ崟鐨勭被鍨嬶細create - 鏂板锛泆pdate - 淇敼 const formData = ref({ id: undefined, - roomNo: undefined, - bedNo: undefined + roomId: undefined, + roomName: undefined, + bedNo: undefined, + ip: undefined, + checkTypes: undefined, + opType: undefined }) const formRules = reactive({ - roomNo: [{ required: true, message: '璇婂缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }], + roomId: [{ required: true, message: '璇婂缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }], bedNo: [{ required: true, message: '璇婄枟搴婄紪鍙蜂笉鑳戒负绌�', trigger: 'blur' }] }) const formRef = ref() // 琛ㄥ崟 Ref +const roomListRef = ref<RoomVO[]>([]) // 鍒楄〃鐨勬暟鎹� /** 鎵撳紑寮圭獥 */ const open = async (type: string, id?: number) => { @@ -71,6 +104,7 @@ formLoading.value = true try { const data = formData.value as unknown as RoomVO + data.roomName = getRoomNameById( data.roomId ) if (formType.value === 'create') { await RoomApi.createRoom(data) message.success(t('common.createSuccess')) @@ -90,9 +124,26 @@ const resetForm = () => { formData.value = { id: undefined, - roomNo: undefined, + roomId: undefined, + roomName: undefined, bedNo: undefined } formRef.value?.resetFields() } + +/** 鏌ヨ璇婂鍒楄〃 */ +const getSimpleRoomList = async () => { + const data = await RoomApi.getSimpleRoomList() + roomListRef.value = data +} + +const getRoomNameById = (id) => { + return roomListRef.value.find( e => e.roomId === id)!.roomName +} + +/** 鍒濆鍖� **/ +onMounted(() => { + getSimpleRoomList() +}) + </script> -- Gitblit v1.9.3