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/Modal/MaintenanceModal.vue |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 60 insertions(+), 0 deletions(-)

diff --git a/src/views/equipmentManagement/upkeep/Modal/MaintenanceModal.vue b/src/views/equipmentManagement/upkeep/Modal/MaintenanceModal.vue
new file mode 100644
index 0000000..583d627
--- /dev/null
+++ b/src/views/equipmentManagement/upkeep/Modal/MaintenanceModal.vue
@@ -0,0 +1,60 @@
+<template>
+  <el-drawer v-model="visible" :title="modalOptions.title" direction="ltr">
+    <MaintenanceForm ref="maintenanceFormRef" />
+    <template #footer>
+      <el-button @click="closeModal">{{ modalOptions.cancelText }}</el-button>
+      <el-button type="primary" @click="sendForm" :loading="loading">
+        {{ modalOptions.confirmText }}
+      </el-button>
+    </template>
+  </el-drawer>
+</template>
+
+<script setup>
+import MaintenanceForm from "../Form/MaintenanceForm.vue";
+import { useModal } from "@/hooks/useModal";
+import { addMaintenance } from "@/api/equipmentManagement/upkeep";
+
+defineOptions({
+  name: "淇濆吇妯℃�佹",
+});
+
+const maintenanceFormRef = ref();
+const emits = defineEmits(["ok"]);
+
+const {
+  id,
+  visible,
+  loading,
+  openModal,
+  modalOptions,
+  handleConfirm,
+  closeModal,
+} = useModal({ title: "璁惧缁翠慨" });
+
+/**
+ * @desc 淇濆瓨淇濆吇
+ */
+const sendForm = async () => {
+  loading.value = true;
+  const form = await maintenanceFormRef.value.getForm();
+  const { code } = await addMaintenance({ id: id.value, ...form });
+  if (code == 200) {
+    emits("ok");
+    maintenanceFormRef.value.resetForm();
+    closeModal();
+  }
+  loading.value = false;
+};
+
+const open = async (id, row) => {
+  openModal(id);
+  await nextTick();
+  maintenanceFormRef.value.setForm(row);
+};
+defineExpose({
+  open,
+});
+</script>
+
+<style lang="scss" scoped></style>

--
Gitblit v1.9.3