From 645a3beb475aefb714ecc82c1787b9fc7adca4c2 Mon Sep 17 00:00:00 2001 From: MSuMshk <2039814060@qq.com> Date: Wed, 4 Mar 2026 09:17:26 +0800 Subject: [PATCH] style: format member stored card module files --- .../components/StoredCardPlanCard.vue | 13 ++++++-- .../components/StoredCardRecordTable.vue | 3 +- .../components/StoredCardRecordToolbar.vue | 10 ++---- .../components/StoredCardStatsCards.vue | 4 ++- .../stored-card-page/drawer-actions.ts | 5 ++- .../composables/stored-card-page/helpers.ts | 10 +++--- .../stored-card-page/plan-actions.ts | 2 +- .../composables/useMemberStoredCardPage.ts | 15 ++++----- .../views/member/stored-card/styles/base.less | 4 +-- .../member/stored-card/styles/drawer.less | 14 ++++---- .../member/stored-card/styles/layout.less | 4 +-- .../views/member/stored-card/styles/plan.less | 32 ++++++++++--------- .../member/stored-card/styles/record.less | 28 ++++++++-------- 13 files changed, 77 insertions(+), 67 deletions(-) diff --git a/apps/web-antd/src/views/member/stored-card/components/StoredCardPlanCard.vue b/apps/web-antd/src/views/member/stored-card/components/StoredCardPlanCard.vue index 63c8765..330d384 100644 --- a/apps/web-antd/src/views/member/stored-card/components/StoredCardPlanCard.vue +++ b/apps/web-antd/src/views/member/stored-card/components/StoredCardPlanCard.vue @@ -22,11 +22,18 @@ function handleToggle() { diff --git a/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/drawer-actions.ts b/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/drawer-actions.ts index 5be1007..c3d900d 100644 --- a/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/drawer-actions.ts +++ b/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/drawer-actions.ts @@ -99,7 +99,10 @@ export function createDrawerActions(options: CreateDrawerActionsOptions) { options.isDrawerSubmitting.value = true; try { await saveMemberStoredCardPlanApi( - mapPlanEditorFormToSavePayload(options.form, options.selectedStoreId.value), + mapPlanEditorFormToSavePayload( + options.form, + options.selectedStoreId.value, + ), ); message.success('保存成功'); options.isDrawerOpen.value = false; diff --git a/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/helpers.ts b/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/helpers.ts index 8b310a2..3cbfaaa 100644 --- a/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/helpers.ts +++ b/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/helpers.ts @@ -2,10 +2,9 @@ import type { MemberStoredCardPlanDto, SaveMemberStoredCardPlanPayload, } from '#/api/member/stored-card'; -import type { StoredCardPlanEditorForm } from '#/views/member/stored-card/types'; - -import { +import type { createDefaultStoredCardPlanEditorForm, + StoredCardPlanEditorForm, type StoredCardRecordFilterForm, } from '#/views/member/stored-card/types'; @@ -107,7 +106,10 @@ export function mapRecordFilterToQuery( } /** base64 下载。 */ -export function downloadBase64File(fileName: string, fileContentBase64: string) { +export function downloadBase64File( + fileName: string, + fileContentBase64: string, +) { const binary = atob(fileContentBase64); const length = binary.length; const bytes = new Uint8Array(length); diff --git a/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/plan-actions.ts b/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/plan-actions.ts index 095fd2d..dde3d2e 100644 --- a/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/plan-actions.ts +++ b/apps/web-antd/src/views/member/stored-card/composables/stored-card-page/plan-actions.ts @@ -2,7 +2,7 @@ import type { Ref } from 'vue'; import type { StoredCardPlanCardViewModel } from '#/views/member/stored-card/types'; -import { Modal, message } from 'ant-design-vue'; +import { message, Modal } from 'ant-design-vue'; import { changeMemberStoredCardPlanStatusApi, diff --git a/apps/web-antd/src/views/member/stored-card/composables/useMemberStoredCardPage.ts b/apps/web-antd/src/views/member/stored-card/composables/useMemberStoredCardPage.ts index a74c5e4..20c3d67 100644 --- a/apps/web-antd/src/views/member/stored-card/composables/useMemberStoredCardPage.ts +++ b/apps/web-antd/src/views/member/stored-card/composables/useMemberStoredCardPage.ts @@ -8,6 +8,8 @@ import { computed, onMounted, reactive, ref, watch } from 'vue'; import { useAccessStore } from '@vben/stores'; +import { message } from 'ant-design-vue'; + import { exportMemberStoredCardRechargeRecordApi } from '#/api/member/stored-card'; import { @@ -17,23 +19,18 @@ import { createDefaultStoredCardRecordPager, } from '../types'; import { - createDataActions, -} from './stored-card-page/data-actions'; -import { - createDrawerActions, -} from './stored-card-page/drawer-actions'; -import { + createDefaultRecordDateRange, MEMBER_STORED_CARD_MANAGE_PERMISSION, MEMBER_STORED_CARD_VIEW_PERMISSION, STORED_CARD_TAB_OPTIONS, - createDefaultRecordDateRange, } from './stored-card-page/constants'; +import { createDataActions } from './stored-card-page/data-actions'; +import { createDrawerActions } from './stored-card-page/drawer-actions'; import { downloadBase64File, mapRecordFilterToQuery, } from './stored-card-page/helpers'; import { createPlanActions } from './stored-card-page/plan-actions'; -import { message } from 'ant-design-vue'; export function useMemberStoredCardPage() { const accessStore = useAccessStore(); @@ -139,7 +136,7 @@ export function useMemberStoredCardPage() { recordFilterForm.keyword = value; } - function setRecordDateRange(value: null | [any, any]) { + function setRecordDateRange(value: [any, any] | null) { if (!value) { recordFilterForm.dateRange = null; return; diff --git a/apps/web-antd/src/views/member/stored-card/styles/base.less b/apps/web-antd/src/views/member/stored-card/styles/base.less index 83fe37e..d82022e 100644 --- a/apps/web-antd/src/views/member/stored-card/styles/base.less +++ b/apps/web-antd/src/views/member/stored-card/styles/base.less @@ -12,16 +12,16 @@ } .msc-empty { - border-radius: 12px; padding: 40px 20px; background: #fff; + border-radius: 12px; box-shadow: 0 3px 10px rgb(16 24 40 / 6%); } .msc-readonly-tip { margin-left: auto; - color: #6b7280; font-size: 12px; + color: #6b7280; } .msc-spacer { diff --git a/apps/web-antd/src/views/member/stored-card/styles/drawer.less b/apps/web-antd/src/views/member/stored-card/styles/drawer.less index 90c1f77..7edf5e3 100644 --- a/apps/web-antd/src/views/member/stored-card/styles/drawer.less +++ b/apps/web-antd/src/views/member/stored-card/styles/drawer.less @@ -18,35 +18,35 @@ .msc-ratio-hint { display: inline-flex; align-items: center; - border-radius: 6px; - margin-top: 8px; padding: 4px 10px; - color: #1677ff; + margin-top: 8px; font-size: 12px; font-weight: 500; + color: #1677ff; background: rgb(22 119 255 / 10%); + border-radius: 6px; } .msc-form-hint { margin-top: 6px; - color: #9ca3af; font-size: 12px; + color: #9ca3af; } .msc-status-row { display: flex; - align-items: center; gap: 10px; + align-items: center; } .msc-status-text { - color: #4b5563; font-size: 13px; + color: #4b5563; } .msc-drawer-footer { display: flex; - justify-content: flex-end; gap: 10px; + justify-content: flex-end; } } diff --git a/apps/web-antd/src/views/member/stored-card/styles/layout.less b/apps/web-antd/src/views/member/stored-card/styles/layout.less index 3a8d0bf..8b52d45 100644 --- a/apps/web-antd/src/views/member/stored-card/styles/layout.less +++ b/apps/web-antd/src/views/member/stored-card/styles/layout.less @@ -1,11 +1,11 @@ .page-member-stored-card { .msc-toolbar { display: flex; - align-items: center; gap: 12px; - border-radius: 12px; + align-items: center; padding: 12px 14px; background: #fff; + border-radius: 12px; box-shadow: 0 2px 8px rgb(15 23 42 / 7%); } diff --git a/apps/web-antd/src/views/member/stored-card/styles/plan.less b/apps/web-antd/src/views/member/stored-card/styles/plan.less index 83b64b9..b902f5d 100644 --- a/apps/web-antd/src/views/member/stored-card/styles/plan.less +++ b/apps/web-antd/src/views/member/stored-card/styles/plan.less @@ -6,23 +6,23 @@ } .msc-stat-card { - border-radius: 12px; padding: 16px 18px; background: #fff; + border-radius: 12px; box-shadow: 0 3px 10px rgb(16 24 40 / 6%); } .msc-stat-label { margin-bottom: 6px; - color: #9ca3af; font-size: 13px; + color: #9ca3af; } .msc-stat-value { - color: #0f172a; font-size: 24px; font-weight: 700; line-height: 1; + color: #0f172a; } .msc-stat-value.is-orange { @@ -34,11 +34,11 @@ } .msc-section-title { - border-left: 3px solid #1677ff; padding-left: 10px; - color: #111827; font-size: 15px; font-weight: 600; + color: #111827; + border-left: 3px solid #1677ff; } .msc-plan-grid { @@ -50,16 +50,18 @@ .msc-plan-card { display: flex; flex-direction: column; - border-radius: 12px; overflow: hidden; background: #fff; + border-radius: 12px; box-shadow: 0 4px 14px rgb(15 23 42 / 8%); - transition: transform 0.2s ease, box-shadow 0.2s ease; + transition: + transform 0.2s ease, + box-shadow 0.2s ease; } .msc-plan-card:hover { - transform: translateY(-2px); box-shadow: 0 10px 20px rgb(15 23 42 / 12%); + transform: translateY(-2px); } .msc-plan-card.is-disabled { @@ -89,12 +91,12 @@ .msc-plan-gift { display: inline-flex; align-self: flex-start; - border-radius: 999px; padding: 3px 10px; - color: #fff; font-size: 13px; font-weight: 600; + color: #fff; background: rgb(255 255 255 / 22%); + border-radius: 999px; } .msc-plan-arrived { @@ -104,28 +106,28 @@ .msc-plan-card-body { display: flex; - justify-content: space-between; gap: 12px; + justify-content: space-between; padding: 14px 20px; } .msc-plan-meta-item { - color: #9ca3af; font-size: 12px; + color: #9ca3af; } .msc-plan-meta-item span { margin-left: 2px; - color: #4b5563; font-weight: 600; + color: #4b5563; } .msc-plan-card-foot { display: flex; - justify-content: space-between; align-items: center; - border-top: 1px solid #f3f4f6; + justify-content: space-between; padding: 12px 20px 14px; + border-top: 1px solid #f3f4f6; } .msc-plan-actions { diff --git a/apps/web-antd/src/views/member/stored-card/styles/record.less b/apps/web-antd/src/views/member/stored-card/styles/record.less index 7e3248f..1768baa 100644 --- a/apps/web-antd/src/views/member/stored-card/styles/record.less +++ b/apps/web-antd/src/views/member/stored-card/styles/record.less @@ -2,11 +2,11 @@ .msc-record-toolbar { display: flex; flex-wrap: wrap; - align-items: center; gap: 12px; - border-radius: 12px; + align-items: center; padding: 12px 14px; background: #fff; + border-radius: 12px; box-shadow: 0 2px 8px rgb(15 23 42 / 7%); } @@ -19,59 +19,59 @@ } .msc-record-table-wrap { - border-radius: 12px; padding: 0; - background: #fff; - box-shadow: 0 4px 14px rgb(15 23 42 / 8%); overflow: hidden; + background: #fff; + border-radius: 12px; + box-shadow: 0 4px 14px rgb(15 23 42 / 8%); } .msc-record-table { .ant-table-thead > tr > th { - background: #f8fafc; - color: #475569; font-size: 13px; font-weight: 600; + color: #475569; + background: #f8fafc; } .ant-table-tbody > tr > td { - color: #111827; font-size: 13px; vertical-align: middle; + color: #111827; } } .msc-record-no { - color: #334155; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 12px; + color: #334155; } .msc-record-member { display: flex; flex-direction: column; - line-height: 1.2; gap: 2px; + line-height: 1.2; } .msc-record-member-name { - color: #111827; font-weight: 600; + color: #111827; } .msc-record-member-phone { - color: #94a3b8; font-size: 12px; + color: #94a3b8; } .msc-record-amount { - color: #111827; font-weight: 600; + color: #111827; } .msc-record-amount.is-gift { - color: #f59e0b; font-weight: 500; + color: #f59e0b; } .msc-pagination {