From 8c51e9c1cf3efcd3535855c417b76e2df11dd34a Mon Sep 17 00:00:00 2001 From: ouyangxq <775153912@qq.com> Date: Wed, 30 Sep 2026 14:01:58 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/ContainersView.test.ts | 7 +- .../pages/ContainersView.vue | 23 +-- src/modules/container-loading/routes.ts | 4 +- src/modules/customers/pages/CustomersView.vue | 20 +-- .../pages/OverseasStorageFeesView.vue | 17 +- src/modules/customers/routes.ts | 4 +- .../pages/DomesticContainersView.test.ts | 2 +- .../pages/DomesticContainersView.vue | 9 +- src/modules/domestic-containers/routes.ts | 2 +- .../pages/DownloadCenterView.test.ts | 4 +- .../downloads/pages/DownloadCenterView.vue | 28 ++-- src/modules/downloads/routes.ts | 2 +- .../pages/CarrierRatesView.test.ts | 6 +- .../carrier-rates/pages/CarrierRatesView.vue | 57 ++++--- src/modules/fba-pricing/routes.ts | 2 +- .../fee-items/pages/FeeItemsView.test.ts | 9 +- src/modules/fee-items/pages/FeeItemsView.vue | 57 +++---- src/modules/fee-items/routes.ts | 2 +- .../pages/FinanceCustomerAccountsView.test.ts | 8 +- .../pages/FinanceCustomerAccountsView.vue | 17 +- .../pages/FinanceCustomerArapView.test.ts | 6 +- .../finance/pages/FinanceCustomerArapView.vue | 14 +- .../FinanceCustomerStatementsView.test.ts | 2 +- .../pages/FinanceCustomerStatementsView.vue | 20 +-- .../FinanceFormalSettlementLayout.test.ts | 8 +- .../pages/FinanceFormalSettlementPage.vue | 29 ++-- .../pages/FinanceReceivableStatisticsView.vue | 23 ++- src/modules/finance/routes.ts | 12 +- src/modules/iam/pages/InternalUsersView.vue | 26 +-- src/modules/iam/pages/PermissionsView.test.ts | 4 +- src/modules/iam/pages/PermissionsView.vue | 21 +-- src/modules/iam/pages/RolesView.test.ts | 4 +- src/modules/iam/pages/RolesView.vue | 19 ++- src/modules/iam/routes.ts | 6 +- .../inbounds/components/InboundTaskList.vue | 60 +++---- src/modules/inbounds/routes.ts | 4 +- .../components/LoadingListsView.test.ts | 5 +- .../components/LoadingListsView.vue | 54 +++---- src/modules/loading-lists/routes.ts | 2 +- .../counterparties/pages/PartnersView.test.ts | 10 +- .../counterparties/pages/PartnersView.vue | 43 ++--- .../pages/ExpressCompaniesView.test.ts | 6 +- .../pages/ExpressCompaniesView.vue | 37 +++-- src/modules/master-data/routes.ts | 4 +- .../pages/MessageManagementView.vue | 7 +- .../pages/MessageTemplatesView.vue | 7 +- .../pages/PlatformNotificationsView.vue | 17 +- src/modules/notifications/routes.ts | 6 +- .../pages/OceanBookingsView.vue | 17 +- src/modules/ocean-bookings/routes.ts | 2 +- .../pages/PurchaseOrdersView.vue | 13 +- .../pages/TransportOrdersView.vue | 13 +- src/modules/overseas-business/routes.ts | 6 +- .../pages/ExchangeRatesView.vue | 15 +- .../pages/OverseasQuotesView.vue | 13 +- .../pages/VehiclesView.vue | 9 +- src/modules/overseas-master-data/routes.ts | 6 +- .../layoutAcceptance.test.ts | 2 +- .../pages/CustomerVisitsView.vue | 19 ++- .../pages/DeliveryOrdersView.vue | 7 +- .../pages/DispatchesView.test.ts | 31 +++- .../pages/DispatchesView.vue | 11 +- .../pages/ExceptionOrdersView.vue | 13 +- .../pages/InboundOrdersView.vue | 13 +- .../pages/InventoryTransactionsView.vue | 14 +- .../pages/InventoryView.vue | 15 +- .../pages/LastMileOrdersView.vue | 33 ++-- .../pages/LocationsView.vue | 7 +- .../pages/MojiaSkuSyncView.test.ts | 71 +++++++++ .../pages/MojiaSkuSyncView.vue | 35 ++-- .../pages/OutboundsView.vue | 13 +- .../overseas-warehouse/pages/PalletsView.vue | 13 +- .../pages/RelabelOrdersView.vue | 13 +- .../ReturnInventoryManagementView.test.ts | 92 +++++++++++ .../pages/ReturnInventoryManagementView.vue | 64 +++++++- .../pages/prototypeContract.test.ts | 6 +- src/modules/overseas-warehouse/routes.ts | 30 ++-- .../pages/PdaReleasesView.test.ts | 7 +- .../pda-releases/pages/PdaReleasesView.vue | 19 +-- src/modules/pda-releases/routes.ts | 2 +- .../pages/SailingCalendarView.test.ts | 85 ++++++++++ .../pages/SailingCalendarView.vue | 40 +++-- src/modules/sailing-calendar/routes.ts | 2 +- .../suppliers/pages/SuppliersView.test.ts | 4 +- src/modules/suppliers/pages/SuppliersView.vue | 25 +-- src/modules/suppliers/routes.ts | 2 +- .../pages/TruckAppointmentsView.test.ts | 10 +- .../trucking/pages/TruckAppointmentsView.vue | 17 +- src/modules/trucking/routes.ts | 2 +- .../pages/UnifiedOrdersView.requests.test.ts | 2 +- .../pages/UnifiedOrdersView.test.ts | 12 +- .../pages/UnifiedOrdersView.vue | 28 ++-- src/modules/unified-orders/routes.ts | 2 +- .../locations/pages/LocationsView.test.ts | 6 +- .../locations/pages/LocationsView.vue | 48 +++--- .../pallets/pages/PalletsView.test.ts | 2 +- .../pallets/pages/PalletsView.vue | 57 +++---- src/modules/warehouse-resources/routes.ts | 4 +- .../warehouses/pages/WarehousesView.vue | 42 ++--- src/modules/warehouses/routes.ts | 2 +- src/shared/components/DataTable.test.ts | 150 +++++++++++++++++- src/shared/components/DataTable.vue | 150 +++++++++++++++++- src/shared/components/RowActions.test.ts | 13 ++ src/shared/components/RowActions.vue | 8 +- src/shared/utils/uiLayoutPreference.test.ts | 20 +++ src/shared/utils/uiLayoutPreference.ts | 16 ++ src/styles/adminDensity.css | 1 + src/styles/adminDensity.test.ts | 18 ++- src/styles/adminTextActions.css | 48 ++++++ 109 files changed, 1525 insertions(+), 651 deletions(-) create mode 100644 src/modules/overseas-warehouse/pages/MojiaSkuSyncView.test.ts create mode 100644 src/modules/overseas-warehouse/pages/ReturnInventoryManagementView.test.ts create mode 100644 src/modules/sailing-calendar/pages/SailingCalendarView.test.ts create mode 100644 src/styles/adminTextActions.css diff --git a/src/modules/container-loading/pages/ContainersView.test.ts b/src/modules/container-loading/pages/ContainersView.test.ts index e1334e6d..de4dd8f2 100644 --- a/src/modules/container-loading/pages/ContainersView.test.ts +++ b/src/modules/container-loading/pages/ContainersView.test.ts @@ -456,7 +456,7 @@ describe('ContainersView', () => { expect(source).toContain("import RowActions, { type RowActionItem } from '@/shared/components/RowActions.vue'") expect(source).toContain("{ key: 'view', label: '查看', ariaLabel: containerViewLabel(row), priority: 500") expect(source).toContain("hasAction(row, 'EDIT_CONTAINER')") - expect(source).toContain(' { expect(source).toContain("row.planStatus === 'EDITING' ? canSmartLoading.value") expect(source).not.toContain('canSmartLoading && row.containerNo') expect(source).not.toContain('link type="primary" :aria-label="containerViewLabel') - expect(source).toContain(':loading="loading" stripe preference-key="container-loading-table"') + expect(source).toContain(':loading="loading" preference-key="container-loading-table"') + expect(source).toContain('appearance="integrated" :stripe="false"') }) it('updates an ACTIVE TRUCKING fleet inline and records actual empty return once', async () => { @@ -579,7 +580,7 @@ describe('ContainersView', () => { try { await flushPromises() const actions = wrapper.find('.el-table__body .row-actions') - expect(actions.findAll('button').map((button) => button.text())).toEqual(['查看', '编辑', ({ EDITING: '装柜', LOADING: '预装清单', COMPLETED: '装柜清单' })[planStatus], '']) + expect(actions.findAll('button').map((button) => button.text())).toEqual(['查看', '编辑', ({ EDITING: '装柜', LOADING: '预装清单', COMPLETED: '装柜清单' })[planStatus], '更多']) await actions.find('button[aria-label="更多货柜操作"]').trigger('click') await flushPromises() const link = Array.from(document.body.querySelectorAll('.el-dropdown-menu__item')) diff --git a/src/modules/container-loading/pages/ContainersView.vue b/src/modules/container-loading/pages/ContainersView.vue index 14de5a37..d8270edb 100644 --- a/src/modules/container-loading/pages/ContainersView.vue +++ b/src/modules/container-loading/pages/ContainersView.vue @@ -730,8 +730,12 @@ onMounted(async () => { await Promise.all([loadCustomers(), loadRows()]) })
- + diff --git a/src/modules/domestic-containers/routes.ts b/src/modules/domestic-containers/routes.ts index 7700008b..e677ff62 100644 --- a/src/modules/domestic-containers/routes.ts +++ b/src/modules/domestic-containers/routes.ts @@ -1,5 +1,5 @@ import type { RouteRecordRaw } from 'vue-router' export const domesticContainerRoutes = [ - { path: 'domestic-containers', name: 'domestic-containers', component: () => import('./pages/DomesticContainersView.vue'), meta: { title: '整柜业务', description: '管理国内仓整柜入库、出库与库存', permission: 'platform:domestic-container:list' } }, + { path: 'domestic-containers', name: 'domestic-containers', component: () => import('./pages/DomesticContainersView.vue'), meta: { showPageHeading: false, title: '整柜业务', description: '管理国内仓整柜入库、出库与库存', permission: 'platform:domestic-container:list' } }, { path: 'domestic-containers/inventories/:inventoryId', name: 'domestic-container-inventory-detail', component: () => import('./pages/DomesticContainerInventoryDetailView.vue'), meta: { title: '整柜库存详情', description: '查看整柜库存快照与不可变交易记录', permission: 'platform:domestic-container:list', showPageHeading: false } }, ] satisfies RouteRecordRaw[] diff --git a/src/modules/downloads/pages/DownloadCenterView.test.ts b/src/modules/downloads/pages/DownloadCenterView.test.ts index 00901441..3c0a936c 100644 --- a/src/modules/downloads/pages/DownloadCenterView.test.ts +++ b/src/modules/downloads/pages/DownloadCenterView.test.ts @@ -233,10 +233,10 @@ describe('DownloadCenterView', () => { const wrapper = mount(DownloadCenterView, { global: { plugins: [createPinia(), ElementPlus] } }) await wrapper.vm.$nextTick() - expect(wrapper.find('.table-panel').attributes('aria-busy')).toBe('true') + expect(wrapper.find('.el-table').attributes('aria-busy')).toBe('true') resolveRequest({ records: [], page: 1, size: 20, total: 0, pages: 0 }) await flushPromises() - expect(wrapper.find('.table-panel').attributes('aria-busy')).toBe('false') + expect(wrapper.find('.el-table').attributes('aria-busy')).toBe('false') }) it('does not schedule another refresh after an in-flight load finishes on an unmounted page', async () => { diff --git a/src/modules/downloads/pages/DownloadCenterView.vue b/src/modules/downloads/pages/DownloadCenterView.vue index 3f887a34..a2a74adc 100644 --- a/src/modules/downloads/pages/DownloadCenterView.vue +++ b/src/modules/downloads/pages/DownloadCenterView.vue @@ -266,25 +266,28 @@ onBeforeUnmount(() => {
- - + + -