import { onMounted, ref } from 'vue'; import { adminHeader } from './AdminHeader.js'; export default { setup() { const records = ref([]); const total = ref(0); const loading = ref(true); const error = ref(''); const search = ref(''); const load = async () => { loading.value = true; error.value = ''; try { const params = new URLSearchParams({ page: '1', pageSize: '100' }); if (search.value) params.set('search', search.value); const response = await fetch('/admin/api/charts?' + params.toString(), { credentials: 'same-origin' }); if (!response.ok) throw new Error('加载排盘记录失败'); const payload = await response.json(); records.value = payload.data.list || []; total.value = payload.data.total || 0; } catch (reason) { error.value = reason instanceof Error ? reason.message : '加载排盘记录失败'; } finally { loading.value = false; } }; onMounted(load); return { records, total, loading, error, search, load }; }, template: `
${adminHeader('charts')}

排盘记录

共 {{ total }} 次排盘,保存免费排盘快照,付费报告另行关联

{{ error }}
报告编号称呼出生信息城市记录时间
正在加载...
暂无排盘记录
{{ record.reportId }}{{ record.name || '-' }}{{ record.birthDate }} {{ record.birthTime }} / {{ record.gender }}{{ record.city }}{{ new Date(record.createdAt).toLocaleString('zh-CN', { hour12: false }) }}
`, };