From 409a6c46741422f0d6dc00acc38b5f7dc1f35e9f Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期四, 24 九月 2026 10:53:07 +0800
Subject: [PATCH] feat: 现场需求前端改动

---
 src/views/equipmentManagement/repair/Modal/RepairModal.vue |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/views/equipmentManagement/repair/Modal/RepairModal.vue b/src/views/equipmentManagement/repair/Modal/RepairModal.vue
index 4a10071..ecb4c73 100644
--- a/src/views/equipmentManagement/repair/Modal/RepairModal.vue
+++ b/src/views/equipmentManagement/repair/Modal/RepairModal.vue
@@ -6,11 +6,14 @@
               @confirm="sendForm"
               @cancel="handleCancel"
               @close="handleClose">
-    <el-form :model="form"
+    <el-form ref="formRef"
+             :model="form"
+             :rules="rules"
              label-width="100px">
       <el-row>
         <el-col :span="12">
-          <el-form-item label="璁惧鍚嶇О">
+          <el-form-item label="璁惧鍚嶇О"
+                        prop="deviceLedgerId">
             <el-select v-model="form.deviceLedgerId"
                        @change="setDeviceModel"
                        filterable
@@ -163,6 +166,13 @@
   const userStore = useUserStore();
   const deviceOptions = ref([]);
   const fileList = ref([]);
+  const formRef = ref();
+
+  const rules = {
+    deviceLedgerId: [
+      { required: true, message: "璇烽�夋嫨璁惧", trigger: "change" },
+    ],
+  };
 
   const loadDeviceName = async () => {
     const { data } = await getDeviceLedger();
@@ -204,6 +214,8 @@
   };
 
   const sendForm = async () => {
+    const valid = await formRef.value.validate().catch(() => false);
+    if (!valid) return;
     loading.value = true;
     try {
       const { code } = id.value
@@ -232,6 +244,7 @@
   const openAdd = async () => {
     id.value = undefined;
     operationType.value = "add";
+    resetForm();
     visible.value = true;
     fileList.value = [];
     await nextTick();

--
Gitblit v1.9.3