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