ソースを参照

fix: 采购退货单弹窗移入AidopDemoShell内(单根节点修复keep-alive切换空白); IQC退货查询添加onActivated; 表单表头改为基础信息; 版本升至2.4.155

Pengxy 6 日 前
コミット
e9ab3fa9d1

+ 1 - 1
Web/package.json

@@ -1,7 +1,7 @@
 {
 	"name": "admin.net",
 	"type": "module",
-	"version": "2.4.154",
+	"version": "2.4.155",
 	"packageManager": "pnpm@10.32.1",
 	"lastBuildTime": "2026.03.15",
 	"description": "Admin.NET 站在巨人肩膀上的 .NET 通用权限开发框架",

+ 2 - 1
Web/src/views/aidop/s4/return/iqcReturnQueryList.vue

@@ -65,7 +65,7 @@
 </template>
 
 <script setup lang="ts" name="aidopS4IqcReturnQuery">
-import { computed, onMounted, reactive, ref } from 'vue';
+import { computed, onActivated, onMounted, reactive, ref } from 'vue';
 import { useRoute } from 'vue-router';
 import AidopDemoShell from '/@/views/aidop/components/AidopDemoShell.vue';
 import { fetchIqcReturnList, type IqcReturnListRow } from '../api/procurementExecution';
@@ -174,6 +174,7 @@ function resetQuery() {
 }
 
 onMounted(() => loadList());
+onActivated(() => loadList());
 </script>
 
 <style scoped lang="scss">

+ 1 - 1
Web/src/views/aidop/s4/return/purchaseReturnOrderForm.vue

@@ -1,7 +1,7 @@
 <template>
 	<AidopDemoShell :title="embedded ? '' : titleText" :show-bar="!embedded" :card-body-padding="embedded ? '8px' : '12px'">
 		<div v-loading="loading">
-			<el-divider content-position="left">表头</el-divider>
+			<el-divider content-position="left">基础信息</el-divider>
 			<el-form :model="head" label-width="120px" class="form-grid">
 				<el-row :gutter="12">
 					<el-col :span="12">

+ 33 - 34
Web/src/views/aidop/s4/return/purchaseReturnOrderList.vue

@@ -59,44 +59,43 @@
 				@size-change="loadList"
 			/>
 		</div>
-	</AidopDemoShell>
 
-	<el-dialog
-		v-model="createDialog.visible"
-		title="采购退货单-新增"
-		width="92%"
-		top="3vh"
-		append-to-body
-		class="purchase-return-embed-dialog"
-	>
-		<PurchaseReturnOrderForm
+		<!-- 对话框放在 AidopDemoShell 内,保持单根节点,避免 transition + keep-alive 对 Fragment 的兼容问题 -->
+		<el-dialog
 			v-if="createDialog.visible"
-			:key="createDialog.key"
-			embedded
-			form-mode="create"
-			@close="createDialog.visible = false"
-			@saved="onCreateSaved"
-		/>
-	</el-dialog>
+			v-model="createDialog.visible"
+			title="采购退货单-新增"
+			width="92%"
+			top="3vh"
+			class="purchase-return-embed-dialog"
+		>
+			<PurchaseReturnOrderForm
+				:key="createDialog.key"
+				embedded
+				form-mode="create"
+				@close="createDialog.visible = false"
+				@saved="onCreateSaved"
+			/>
+		</el-dialog>
 
-	<el-dialog
-		v-model="editViewDialog.visible"
-		:title="editViewDialog.mode === 'edit' ? '采购退货单-编辑' : '采购退货单-查看'"
-		width="92%"
-		top="3vh"
-		append-to-body
-		class="purchase-return-embed-dialog"
-	>
-		<PurchaseReturnOrderForm
+		<el-dialog
 			v-if="editViewDialog.visible"
-			:key="editViewDialog.key"
-			embedded
-			:form-mode="editViewDialog.mode"
-			:record-id="editViewDialog.recordId"
-			@close="editViewDialog.visible = false"
-			@saved="onEditSaved"
-		/>
-	</el-dialog>
+			v-model="editViewDialog.visible"
+			:title="editViewDialog.mode === 'edit' ? '采购退货单-编辑' : '采购退货单-查看'"
+			width="92%"
+			top="3vh"
+			class="purchase-return-embed-dialog"
+		>
+			<PurchaseReturnOrderForm
+				:key="editViewDialog.key"
+				embedded
+				:form-mode="editViewDialog.mode"
+				:record-id="editViewDialog.recordId"
+				@close="editViewDialog.visible = false"
+				@saved="onEditSaved"
+			/>
+		</el-dialog>
+	</AidopDemoShell>
 </template>
 
 <script setup lang="ts" name="aidopS4PurchaseReturnOrderList">