From 6e9a85f8b9be0f06a148a36306e135785e227a6a Mon Sep 17 00:00:00 2001 From: maven <2163098428@qq.com> Date: 星期三, 13 八月 2025 16:28:13 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev_huangjin' into dev_huangjin --- src/views/lavorissue/ledger/Modal.vue | 70 +++++++++++++++++++++++++++++++++++ 1 files changed, 70 insertions(+), 0 deletions(-) diff --git a/src/views/lavorissue/ledger/Modal.vue b/src/views/lavorissue/ledger/Modal.vue new file mode 100644 index 0000000..5d63236 --- /dev/null +++ b/src/views/lavorissue/ledger/Modal.vue @@ -0,0 +1,70 @@ +<template> + <el-dialog :title="modalOptions.title" v-model="visible" @close="close" width="30%"> + <Form ref="formRef"></Form> + <template #footer> + <el-button type="primary" @click="sendForm" :loading="loading"> + {{ modalOptions.confirmText }} + </el-button> + <el-button @click="closeModal">{{ modalOptions.cancelText }}</el-button> + </template> + </el-dialog> +</template> + +<script setup> +import { useModal } from "@/hooks/useModal"; +import { add, update } from "@/api/lavorissce/ledger"; +import Form from "./Form.vue"; +import { ElMessage } from "element-plus"; +const { proxy } = getCurrentInstance() + +defineOptions({ + name: "鏀跺叆鏂板缂栬緫", +}); + +const emits = defineEmits(["success"]); + +const formRef = ref(); +const { + id, + visible, + loading, + openModal, + modalOptions, + handleConfirm, + closeModal, +} = useModal({ title: "鍔充繚鍙拌处" }); + +const sendForm = () => { + proxy.$refs.formRef.$refs.formRef.validate(async valid => { + if (valid) { + const {code} = id.value + ? await update({id: id.value, ...formRef.value.form}) + : await add(formRef.value.form); + if (code == 200) { + emits("success"); + ElMessage({message: "鎿嶄綔鎴愬姛", type: "success"}); + close(); + } else { + loading.value = false; + } + } + }) +}; + +const close = () => { + formRef.value.resetFormAndValidate(); + closeModal(); +}; + +const loadForm = async (row) => { + openModal(row.id); + await nextTick(); + formRef.value.loadForm(row); + +}; + +defineExpose({ + openModal, + loadForm, +}); +</script> -- Gitblit v1.9.3