From cd8b52bdf89a4d1101f72e0ece9f4df22a3d3f7a Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 15 十月 2026 16:03:32 +0800
Subject: [PATCH] feat(mdm): 物料列表隐藏辅单位与销售价列

---
 src/views/erp/purchase/request/index.vue |   30 +++++++++++++++++++++++++++++-
 1 files changed, 29 insertions(+), 1 deletions(-)

diff --git a/src/views/erp/purchase/request/index.vue b/src/views/erp/purchase/request/index.vue
index b78590d..a0a8a00 100644
--- a/src/views/erp/purchase/request/index.vue
+++ b/src/views/erp/purchase/request/index.vue
@@ -1,4 +1,5 @@
 <script lang="ts" setup>
+import { automaticApproval } from '#/store/audit-policy';
 import type { VxeTableGridOptions } from '#/adapter/vxe-table';
 import type { ErpPurchaseRequestApi } from '#/api/erp/purchase/request';
 
@@ -23,6 +24,7 @@
 
 import { useGridColumns, useGridFormSchema } from './data';
 import Form from './modules/form.vue';
+import ImportForm from './modules/import-form.vue';
 import OrderForm from './modules/order-form.vue';
 import ProcessSelectModal from './modules/process-select-modal.vue';
 
@@ -33,6 +35,11 @@
 
 const [FormModal, formModalApi] = useVbenModal({
   connectedComponent: Form,
+  destroyOnClose: true,
+});
+
+const [ImportModal, importModalApi] = useVbenModal({
+  connectedComponent: ImportForm,
   destroyOnClose: true,
 });
 
@@ -55,6 +62,11 @@
 async function handleExport() {
   const data = await exportPurchaseRequest(await gridApi.formApi.getValues());
   downloadFileFromBlobPart({ fileName: '閲囪喘鐢宠.xls', source: data });
+}
+
+/** 瀵煎叆閲囪喘鐢宠 */
+function handleImport() {
+  importModalApi.open();
 }
 
 /** 鏂板閲囪喘鐢宠 */
@@ -85,10 +97,17 @@
 /** 鎻愪氦瀹℃壒 - 鍏堣幏鍙栨祦绋嬪垪琛� */
 async function handleSubmit(row: ErpPurchaseRequestApi.PurchaseRequest) {
   const hideLoading = message.loading({
-    content: '鑾峰彇瀹℃壒娴佺▼...',
+    content: automaticApproval.value ? '姝e湪鎻愪氦鐢熸晥...' : '鑾峰彇瀹℃壒娴佺▼...',
     duration: 0,
   });
   try {
+    if (automaticApproval.value) {
+      await submitPurchaseRequest(row.id!, 'purchase_request_approve');
+      hideLoading();
+      message.success('宸叉彁浜ょ敓鏁�');
+      handleRefresh();
+      return;
+    }
     const processList = await getApproveProcessList(row.id!);
     hideLoading();
     if (!processList || processList.length === 0) {
@@ -96,6 +115,7 @@
       return;
     }
     // 鎵撳紑娴佺▼閫夋嫨寮圭獥
+
     processModalApi.setData({ id: row.id, processList }).open();
   } catch {
     hideLoading();
@@ -180,6 +200,7 @@
 <template>
   <Page auto-content-height>
     <FormModal @success="handleRefresh" />
+    <ImportModal @success="handleRefresh" />
     <OrderFormModal @success="handleRefresh" />
     <ProcessModal @success="handleRefresh" />
     <Grid table-title="閲囪喘鐢宠鍒楄〃">
@@ -201,6 +222,13 @@
               onClick: handleExport,
             },
             {
+              label: '瀵煎叆',
+              type: 'primary',
+              icon: ACTION_ICON.UPLOAD,
+              auth: ['erp:purchase-request:import'],
+              onClick: handleImport,
+            },
+            {
               label: '鎵归噺鍒犻櫎',
               type: 'primary',
               danger: true,

--
Gitblit v1.9.3