From c1b5f6edeacfa0326931d06de6773b936dbabe27 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期二, 26 八月 2025 15:18:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_JLMY' into dev_JLMY
---
src/views/production/productionReporting/components/useDialog.js | 62 +++++++++++++++++++++++++++++++
1 files changed, 62 insertions(+), 0 deletions(-)
diff --git a/src/views/production/productionReporting/components/useDialog.js b/src/views/production/productionReporting/components/useDialog.js
new file mode 100644
index 0000000..3351cdc
--- /dev/null
+++ b/src/views/production/productionReporting/components/useDialog.js
@@ -0,0 +1,62 @@
+/**
+ * 瀵硅瘽妗嗙鐞嗙粍鍚堝紡鍑芥暟
+ * 鎻愪緵瀵硅瘽妗嗙殑鎵撳紑銆佸叧闂�佹暟鎹鐞嗙瓑鍔熻兘
+ */
+import {ref} from 'vue';
+
+export function useDialog() {
+ const dialogVisible = ref(false);
+ const dialogType = ref('add');
+ const dialogRef = ref(null);
+ const currentRowData = ref(null);
+
+ // 鎵撳紑瀵硅瘽妗�
+ const openDialog = (type = 'add', rowData = null) => {
+ dialogType.value = type;
+ currentRowData.value = rowData;
+ dialogVisible.value = true;
+
+ // 璋冪敤瀵硅瘽妗嗙粍浠剁殑鍒濆鍖栨柟娉�
+ if (dialogRef.value) {
+ if (type === 'add') {
+ dialogRef.value.Initialization?.();
+ } else if ((type === 'edit' || type === 'viewRow' || type === 'scheduling' || type === 'work') && rowData) {
+ dialogRef.value.editInitialization?.(type,rowData);
+ }
+ }
+ };
+ const viewRow = (type,rowData) => {
+ dialogType.value = type;
+ currentRowData.value = rowData;
+ dialogVisible.value = true;
+ openDialog('viewRow', rowData);
+ };
+ // 鍏抽棴瀵硅瘽妗�
+ const closeDialog = () => {
+ dialogVisible.value = false;
+ dialogType.value = 'add';
+ currentRowData.value = null;
+ };
+
+ // 瀵硅瘽妗嗘垚鍔熷洖璋�
+ const handleDialogSuccess = (callback) => {
+ closeDialog();
+ if (typeof callback === 'function') {
+ callback();
+ }
+ };
+
+ return {
+ // 鐘舵��
+ dialogVisible,
+ dialogType,
+ dialogRef,
+ currentRowData,
+
+ // 鏂规硶
+ openDialog,
+ closeDialog,
+ handleDialogSuccess,
+ viewRow
+ };
+}
--
Gitblit v1.9.3