From 3766b53f4f255aa8cee581c3597ba58694c15ec3 Mon Sep 17 00:00:00 2001
From: yuan <123@>
Date: 星期三, 21 十月 2026 17:07:35 +0800
Subject: [PATCH] feat: 默认制单人信息同步,优化用户选项加载

---
 src/views/procurementManagement/purchaseReturnOrder/New.vue |   30 ++++++++++++++++++++++++++----
 1 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/src/views/procurementManagement/purchaseReturnOrder/New.vue b/src/views/procurementManagement/purchaseReturnOrder/New.vue
index 6f67ca9..5ee8530 100644
--- a/src/views/procurementManagement/purchaseReturnOrder/New.vue
+++ b/src/views/procurementManagement/purchaseReturnOrder/New.vue
@@ -419,10 +419,12 @@
 </template>
 
 <script setup>
-import {ref, computed, getCurrentInstance, watch, defineAsyncComponent} from "vue";
+import {ref, computed, getCurrentInstance, watch, onMounted, defineAsyncComponent} from "vue";
 import {createPurchaseReturnOrder} from "@/api/procurementManagement/purchase_return_order.js";
 import {getOptions, purchaseList} from "@/api/procurementManagement/procurementLedger.js";
 import {userListNoPageByTenantId} from "@/api/system/user.js";
+import dayjs from "dayjs";
+import useUserStore from "@/store/modules/user";
 const ProductList = defineAsyncComponent(() => import("@/views/procurementManagement/purchaseReturnOrder/ProductList.vue"));
 const props = defineProps({
   visible: {
@@ -431,6 +433,7 @@
   }
 });
 let { proxy } = getCurrentInstance()
+const userStore = useUserStore()
 const payment_methods  = [
     {
         "label": "鐜伴噾",
@@ -461,8 +464,9 @@
   supplierId: undefined,
   projectId: undefined,
   projectPhase: undefined,
-  preparedAt: undefined,
-  preparedUserId: undefined,
+  preparedAt: dayjs().format("YYYY-MM-DD"),
+  preparedUserId: userStore.id || undefined,
+  preparedUserName: userStore.nickName || '',
   returnUserId: undefined,
   purchaseLedgerId: undefined,
   purchaseReturnOrderProductsDtos: [],
@@ -658,16 +662,34 @@
 }
 
 
+// 鍚屾鍒跺崟浜哄鍚嶏紙榛樿鍒跺崟浜轰负褰撳墠鐧诲綍浜猴紝鐢ㄦ埛閫夐」鍔犺浇鍚庝繚璇佷笅鎷夋鎸夊鍚嶅洖鏄撅級
+const syncPreparedUser = () => {
+  if (!formState.value.preparedUserId && userStore.id) {
+    formState.value.preparedUserId = userStore.id
+  }
+  if (!formState.value.preparedUserId) {
+    return
+  }
+  const matchedUser = userOptions.value.find(item => item.userId === formState.value.preparedUserId)
+  formState.value.preparedUserName = matchedUser?.nickName || userStore.nickName || formState.value.preparedUserName || ''
+}
+
 // 鑾峰彇鐢ㄦ埛閫夐」
 const fetchUserOptions = () => {
   if (userOptions.value.length > 0) {
     return
   }
   userListNoPageByTenantId().then((res) => {
-    userOptions.value = res.data;
+    userOptions.value = res.data || [];
+    syncPreparedUser()
   });
 }
 
+// 寮圭獥鎵撳紑鏃跺嵆鍔犺浇鐢ㄦ埛閫夐」锛屼繚璇侀粯璁ゅ埗鍗曚汉锛堝綋鍓嶇櫥褰曚汉锛夎兘姝g‘鏄剧ず濮撳悕
+onMounted(() => {
+  fetchUserOptions()
+})
+
 // 澶勭悊鏀瑰彉渚涘簲鍟嗘暟鎹�
 const handleChangeSupplierId = () => {
   formState.value.purchaseLedgerId = undefined

--
Gitblit v1.9.3