From a686251b73f616532d6a9518faad49c7693a6e1c Mon Sep 17 00:00:00 2001 From: lishenao <3065849776@qq.com> Date: 星期二, 01 七月 2025 14:31:53 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- src/views/equipmentManagement/upkeep/Form/PlanForm.vue | 96 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 96 insertions(+), 0 deletions(-) diff --git a/src/views/equipmentManagement/upkeep/Form/PlanForm.vue b/src/views/equipmentManagement/upkeep/Form/PlanForm.vue new file mode 100644 index 0000000..a2bd2ce --- /dev/null +++ b/src/views/equipmentManagement/upkeep/Form/PlanForm.vue @@ -0,0 +1,96 @@ +<template> + <el-form :model="form" label-width="100px"> + <el-form-item label="璁惧鍚嶇О"> + <el-select + v-model="form.deviceLedgerId" + @change="setDeviceModel" + placeholder="璇烽�夋嫨璁惧" + > + <el-option + v-for="(item, index) in deviceOptions" + :key="index" + :label="item.deviceName" + :value="item.id" + ></el-option> + </el-select> + </el-form-item> + <el-form-item label="瑙勬牸鍨嬪彿"> + <el-input + v-model="form.deviceModel" + placeholder="璇疯緭鍏ヨ鏍煎瀷鍙�" + disabled + /> + </el-form-item> + <el-form-item label="璁″垝淇濆吇鏃ユ湡"> + <el-date-picker + style="width: 100%" + v-model="form.maintenancePlanTime" + format="YYYY-MM-DD" + value-format="YYYY-MM-DD HH:mm:ss" + type="date" + placeholder="璇烽�夋嫨璁″垝淇濆吇鏃ユ湡鏃ユ湡" + clearable + /> + </el-form-item> + </el-form> +</template> + +<script setup> +import useFormData from "@/hooks/useFormData"; +import { getDeviceLedger } from "@/api/equipmentManagement/ledger"; +import { onMounted } from "vue"; + +defineOptions({ + name: "璁″垝琛ㄥ崟", +}); + +const deviceOptions = ref([]); +const loadDeviceName = async () => { + const { data } = await getDeviceLedger(); + deviceOptions.value = data; +}; + +const { form, resetForm } = useFormData({ + deviceLedgerId: undefined, // 璁惧Id + deviceName: undefined, // 璁惧鍚嶇О + deviceModel: undefined, // 瑙勬牸鍨嬪彿 + maintenancePlanTime: undefined, // 璁″垝淇濆吇鏃ユ湡 +}); + +const setDeviceModel = (id) => { + const option = deviceOptions.value.find((item) => item.id === id); + form.deviceModel = option.deviceModel; +}; + +const getForm = () => { + return form; +}; + +/** + * @desc 璁剧疆琛ㄥ崟鍐呭 + * @param data 璁惧淇℃伅 + */ +const setForm = (data) => { + form.deviceLedgerId = data.deviceLedgerId; + form.deviceName = data.deviceName; + form.deviceModel = data.deviceModel; + form.maintenancePlanTime = dayjs(data.maintenancePlanTime).format( + "YYYY-MM-DD HH:mm:ss" + ); +}; + +const loadForm = () => {}; + +onMounted(() => { + loadDeviceName(); +}); + +defineExpose({ + loadForm, + resetForm, + getForm, + setForm, +}); +</script> + +<style lang="scss" scoped></style> -- Gitblit v1.9.3