fix store chart style

This commit is contained in:
Timi
2026-08-12 17:06:02 +08:00
parent f14e36c730
commit a02fa239c2
6 changed files with 128 additions and 3 deletions
+23
View File
@@ -63,6 +63,9 @@
:title="getRecordEventName(item)"
:description="getRecordCustomerName(item)"
:note="`${formatRecordTime(item.registeredAt)}`"
arrow
hover
@click="toRecordDetail(item)"
/>
</t-cell-group>
<div v-else class="empty-block">该日暂无登记事件记录</div>
@@ -130,6 +133,8 @@ const emit = defineEmits<{
"update:selectedEventIdList": [value: string[]];
}>();
const route = useRoute();
const router = useRouter();
const weekNameList = ["日", "一", "二", "三", "四", "五", "六"];
const dayRecordVisible = ref(false);
const eventFilterVisible = ref(false);
@@ -192,6 +197,20 @@ function openDayRecords(day: CalendarDay): void {
dayRecordVisible.value = true;
}
async function toRecordDetail(record: EventRecord): Promise<void> {
if (!record.id) {
return;
}
dayRecordVisible.value = false;
await router.push({
path: `/management/registration-event-records/${record.id}`,
query: {
transitionDepth: String(getCurrentRouteDepth() + 1)
}
});
}
function getRecordEventName(record?: EventRecord): string {
if (!record) {
return "";
@@ -226,6 +245,10 @@ function isInCurrentMonth(value?: number): boolean {
return !!date && date.getFullYear() === props.modelValue.getFullYear() && date.getMonth() === props.modelValue.getMonth();
}
function getCurrentRouteDepth(): number {
return Number(route.meta.depth ?? 0);
}
function getMonthStart(date: Date): Date {
return new Date(date.getFullYear(), date.getMonth(), 1, 0, 0, 0, 0);
}
+21
View File
@@ -30,6 +30,11 @@ const pageBackground = computed(() => globalUIStore.bodyBackground);
const pathCache = new Map<string, number>();
function calcDepth(sourceRoute: RouteLocationNormalized): number {
const queryDepth = parseTransitionDepth(sourceRoute.query.transitionDepth);
if (queryDepth !== undefined) {
return queryDepth;
}
if (!sourceRoute.meta.dynamicDepth) {
return Number(sourceRoute.meta.depth ?? 0);
}
@@ -47,6 +52,22 @@ function calcDepth(sourceRoute: RouteLocationNormalized): number {
return depth;
}
function parseTransitionDepth(value: unknown): number | undefined {
if (Array.isArray(value)) {
return parseTransitionDepth(value[0]);
}
if (typeof value !== "string") {
return undefined;
}
const depth = Number(value);
if (!Number.isInteger(depth) || depth < 0 || 20 < depth) {
return undefined;
}
return depth;
}
const unregisterGuard = router.beforeEach((to, from) => {
const toDepth = calcDepth(to);
const fromDepth = calcDepth(from);