shinnosuke
2026-08-18 99bfc2060840436d5ed06e5f37a2ce6ae0ab44e8
talent-card-admin/src/views/ChildCardView.vue
@@ -29,78 +29,10 @@
const rows = ref<ChildCardApplication[]>([])
const mockData: ChildCardApplication[] = [
  {
    id: 232,
    childName: '张三',
    gender: 1,
    birthDate: '2026-07-06',
    talentMobile: '138***4568',
    talentCardNo: '486913',
    cardLevel: '钻石卡',
    registerTime: '2021-02-28 10:30',
    status: '已审核',
  },
  {
    id: 254,
    childName: '李四',
    gender: 1,
    birthDate: '2026-07-06',
    talentMobile: '138***4568',
    talentCardNo: '486913',
    cardLevel: '钻石卡',
    registerTime: '2021-02-28 10:30',
    status: '待审核',
  },
  {
    id: 46,
    childName: '张三',
    gender: 1,
    birthDate: '2026-07-06',
    talentMobile: '138***4568',
    talentCardNo: '486913',
    cardLevel: '钻石卡',
    registerTime: '2021-02-28 10:30',
    status: '已审核',
  },
  {
    id: 577,
    childName: '张三',
    gender: 1,
    birthDate: '2026-07-06',
    talentMobile: '138***4568',
    talentCardNo: '486913',
    cardLevel: '钻石卡',
    registerTime: '2021-02-28 10:30',
    status: '已审核',
  },
  {
    id: 233,
    childName: '张三',
    gender: 1,
    birthDate: '2026-07-06',
    talentMobile: '138***4568',
    talentCardNo: '846511',
    cardLevel: '钻石卡',
    registerTime: '2021-02-28 10:30',
    status: '已审核',
  },
  {
    id: 255,
    childName: '张三',
    gender: 1,
    birthDate: '2026-07-06',
    talentMobile: '138***4568',
    talentCardNo: '846511',
    cardLevel: '钻石卡',
    registerTime: '2021-02-28 10:30',
    status: '已审核',
  },
]
const statusOptions = computed(() => [
  { label: '已审核', value: '已审核' },
  { label: '待审核', value: '待审核' },
  { label: '已通过', value: '已通过' },
  { label: '审核不通过', value: '审核不通过' },
])
function statusText(row: ChildCardApplication) {
@@ -108,49 +40,18 @@
}
function registerTime(row: ChildCardApplication) {
  return row.registerTime || row.applyTime || ''
  return String(row.registerTime || row.applyTime || '').replace('T', ' ')
}
function genderText(gender?: number | string) {
  if (gender === 1 || gender === '1') return '男'
  if (gender === 2 || gender === '2') return '女'
  if (gender === 1 || gender === '1' || gender === '男') return '男'
  if (gender === 2 || gender === '2' || gender === '女') return '女'
  return '-'
}
async function loadData() {
  loading.value = true
  try {
    // 模拟网络请求延迟
    await new Promise(resolve => setTimeout(resolve, 300))
    // 使用 mock 数据
    let filteredData = [...mockData]
    if (filters.childKeyword) {
      filteredData = filteredData.filter(item => item.childName?.includes(filters.childKeyword))
    }
    if (filters.talentKeyword) {
      filteredData = filteredData.filter(item =>
        item.talentName?.includes(filters.talentKeyword) ||
        item.talentMobile?.includes(filters.talentKeyword) ||
        item.talentCardNo?.includes(filters.talentKeyword)
      )
    }
    if (filters.cardLevel) {
      filteredData = filteredData.filter(item => item.cardLevel === filters.cardLevel)
    }
    if (filters.status) {
      filteredData = filteredData.filter(item => item.status === filters.status)
    }
    const startIdx = (pagination.page - 1) * pagination.size
    const endIdx = startIdx + pagination.size
    rows.value = filteredData.slice(startIdx, endIdx)
    pagination.total = filteredData.length
    // 下面是真实的 API 调用逻辑,暂时注释掉
    /*
    const query = {
      page: pagination.page,
      size: pagination.size,
@@ -164,7 +65,6 @@
    const result = await getChildCardApplications(query)
    rows.value = result.records
    pagination.total = result.total
    */
  } catch {
    rows.value = []
    pagination.total = 0
@@ -234,10 +134,10 @@
        <el-form-item label="卡片等级">
          <el-select v-model="filters.cardLevel" placeholder="全部" clearable>
            <el-option label="全部" value="" />
            <el-option label="钻石卡" value="钻石卡" />
            <el-option label="卓越人才卡" value="卓越人才卡" />
            <el-option label="精英人才卡" value="精英人才卡" />
            <el-option label="青年人才卡" value="青年人才卡" />
            <el-option label="杰出人才卡" value="杰出人才卡" />
            <el-option label="菁英人才卡" value="菁英人才卡" />
            <el-option label="普通游客" value="普通游客" />
          </el-select>
        </el-form-item>
        <el-form-item label="状态">