feat: improve audit exports and admin analytics

This commit is contained in:
2026-08-25 18:49:56 +08:00
parent 910e67bd89
commit 5740bd26e7
55 changed files with 1654 additions and 269 deletions

View File

@@ -3,6 +3,7 @@ import { Layers3, LoaderCircle } from "@lucide/vue";
import { computed } from "vue";
import type { UserEntitlementSummary } from "../types/api";
import { formatDate } from "../utils/dateTime";
const props = defineProps<{
used: number;
@@ -26,11 +27,6 @@ const usageText = computed(() => {
if (displayLimit.value <= 0) return "今日不可用";
return `今日 ${displayUsed.value}/${displayLimit.value}`;
});
function formatDate(value?: string | null) {
if (!value) return "";
const date = new Date(value);
return Number.isNaN(date.getTime()) ? value : date.toLocaleDateString("zh-CN");
}
const guidanceText = computed(() => {
if (props.entitlement?.lifecycleStatus === "expired_fallback") {
return `${props.entitlement.previousPlanName ? `${props.entitlement.previousPlanName}` : "权益"}已于 ${formatDate(props.entitlement.previousExpiredAt)} 到期,当前已自动切换为${props.entitlement.name},已有对话与回顾仍会保留。`;