From 8b9f77a848356f443a55448f289eea8fec4fcaf3 Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Mon, 11 Aug 2025 23:45:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=9A=E8=AE=AE=E4=BF=9D=E6=B4=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/integrated/cleanUser.ts | 51 +++++++++ src/views/integrated/cleanUser/form.vue | 120 ++++++++++++++++++++ src/views/integrated/cleanUser/index.vue | 132 ++++++++++++++++++++++ src/views/integrated/meetingRoom/form.vue | 34 ++++++ 4 files changed, 337 insertions(+) create mode 100644 src/api/integrated/cleanUser.ts create mode 100644 src/views/integrated/cleanUser/form.vue create mode 100644 src/views/integrated/cleanUser/index.vue diff --git a/src/api/integrated/cleanUser.ts b/src/api/integrated/cleanUser.ts new file mode 100644 index 0000000..0f3f809 --- /dev/null +++ b/src/api/integrated/cleanUser.ts @@ -0,0 +1,51 @@ +import request from "/@/utils/request" + +export function fetchList(query?: Object) { + return request({ + url: '/integrated/cleanUser/page', + method: 'get', + params: query + }) +} + +export function addObj(obj?: Object) { + return request({ + url: '/integrated/cleanUser', + method: 'post', + data: obj + }) +} + +export function getObj(id?: string) { + return request({ + url: '/integrated/cleanUser/' + id, + method: 'get' + }) +} + +export function delObjs(ids?: Object) { + return request({ + url: '/integrated/cleanUser', + method: 'delete', + data: ids + }) +} + +export function putObj(obj?: Object) { + return request({ + url: '/integrated/cleanUser', + method: 'put', + data: obj + }) +} + +/** + * 获取保洁用户下拉选项 + */ +export function dropdown() { + return request({ + url: '/integrated/cleanUser/dropdown', + method: 'get' + }); +} + diff --git a/src/views/integrated/cleanUser/form.vue b/src/views/integrated/cleanUser/form.vue new file mode 100644 index 0000000..be651e4 --- /dev/null +++ b/src/views/integrated/cleanUser/form.vue @@ -0,0 +1,120 @@ + + + \ No newline at end of file diff --git a/src/views/integrated/cleanUser/index.vue b/src/views/integrated/cleanUser/index.vue new file mode 100644 index 0000000..61270b8 --- /dev/null +++ b/src/views/integrated/cleanUser/index.vue @@ -0,0 +1,132 @@ + + + \ No newline at end of file diff --git a/src/views/integrated/meetingRoom/form.vue b/src/views/integrated/meetingRoom/form.vue index ebe4ab2..3b5d7bd 100644 --- a/src/views/integrated/meetingRoom/form.vue +++ b/src/views/integrated/meetingRoom/form.vue @@ -46,6 +46,19 @@ + + + + + + + + @@ -145,6 +158,7 @@ import { useDict } from '/@/hooks/dict'; import { useMessage } from "/@/hooks/message"; import { getObj, addObj, putObj } from '/@/api/integrated/meetingRoom' import { fetchList } from '/@/api/integrated/meetingEquipment' +import { dropdown } from '/@/api/integrated/cleanUser' import { rule } from '/@/utils/validate'; const emit = defineEmits(['refresh']); @@ -153,6 +167,7 @@ const dataFormRef = ref(); const visible = ref(false) const loading = ref(false) const activeTab = ref('basic') +const cleanUserOptions = ref([]) interface Equipment { equipId: string; @@ -197,6 +212,7 @@ const form = reactive({ location: '', capacity: 0, availableTime: '', + cleanUserId: '', }); // 定义校验规则 @@ -281,12 +297,16 @@ const openDialog = (id: string) => { visible.value = true form.id = '' equipmentList.value = [] + form.cleanUserId = '' // 重置表单数据 nextTick(() => { dataFormRef.value?.resetFields(); }); + // 获取保洁用户下拉数据 + getCleanUserOptions() + // 获取meetingRoom信息 if (id) { form.id = id @@ -294,6 +314,16 @@ const openDialog = (id: string) => { } }; +// 获取保洁用户下拉选项 +const getCleanUserOptions = async () => { + try { + const res = await dropdown() + cleanUserOptions.value = Array.isArray(res.data) ? res.data : [] + } catch (err: any) { + console.error('获取保洁用户列表失败:', err) + } +} + // 提交 const onSubmit = async () => { const valid = await dataFormRef.value.validate().catch(() => {}); @@ -331,6 +361,10 @@ const getmeetingRoomData = (id: string) => { if (res.data.equipmentList) { equipmentList.value = res.data.equipmentList } + // 确保保洁信息正确回显 + if (res.data.cleanUserId) { + form.cleanUserId = res.data.cleanUserId + } }).finally(() => { loading.value = false })