export const siteAttendanceZh = {
  // 签到页
  todayStatus: '今日状态',
  checkIn: '签到',
  checkOut: '签退',
  checkInBtn: '签 到',
  checkOutBtn: '签 退',
  checkinSuccess: '签到成功！',
  checkoutSuccess: '签退成功！',
  todayEvents: '今日记录',
  todayDuration: '今日在岗',
  avgDuration: '人均在岗',
  totalDuration: '总在岗时长',
  locationDeniedHint: '请在浏览器设置中允许该页面访问位置，然后点击「刷新位置」。',
  morning: '早上好',
  afternoon: '下午好',
  evening: '晚上好',
  lateNight: '辛苦了',
  notStartedYet: '尚未开始',
  onBreak: '休息中',
  workingNow: '在岗中',
  notStartedToday: '今天还没开始打卡',
  tapToBegin: '点击下方按钮开始',
  logout: '退出登录',
  openInBrowserHint: '为保留登录状态，请使用系统默认浏览器打开此页面。',
  durationHourMin: '{h} 小时 {m} 分钟',
  durationMinOnly: '{m} 分钟',
  chooseMethod: '选择继续方式',
  loginContinue: '登录后继续',
  guestContinue: '免登录继续',
  selectIdentity: '选择你的身份',
  searchPlaceholder: '输入姓名、邮箱或工号',
  noResults: '未找到匹配用户',
  searching: '搜索中...',
  locating: '正在定位...',
  locationReady: '定位就绪',
  locationDenied: '定位被拒绝',
  locationUnavailable: '无法定位',
  noNetwork: '请检查网络连接',
  checkpointUnavailable: '签到点不可用',
  refreshLocation: '重新定位',
  geoBlocked: '签到被阻止：{reason}',
  alreadyCheckedIn: '今日已签到',
  alreadyCheckedOut: '今日已签退',
  duplicateSubmit: '请勿重复提交，请稍候再试',
  rateLimited: '刚刚已提交，请等待 {n} 秒后再试',
  switchUser: '退出',
  mustCheckInFirst: '请先签到',
  alreadyCheckedInErr: '当前状态为已签到，请先签退',
  alreadyCheckedOutErr: '当前状态为已签退，请签到',

  // 管理端 — 通用
  checkpoints: '签到点管理',
  checkpointsDesc: '管理考勤签到地点',
  createCheckpoint: '创建签到点',
  editCheckpoint: '编辑签到点',
  noCheckpoints: '暂无签到点',
  loading: '加载中...',
  saving: '保存中...',
  notFound: '签到点未找到',

  // 管理端 — 表单
  basicInfo: '基本信息',
  name: '名称',
  description: '描述',
  timezone: '时区',
  latitude: '纬度',
  longitude: '经度',
  latLngHint: '用于定位校验，计算员工手机与签到点的距离',
  getCurrentLocation: '获取当前位置',
  locationObtained: '已获取',
  locationFailed: '获取位置失败，请手动输入',
  geoSettings: '定位校验',
  geoPolicy: '定位策略',
  geoPolicySkip: '跳过 — 不校验定位',
  geoPolicySkipShort: '跳过',
  geoPolicyFlag: '允许并标记 — 定位失败仍可签到但标记异常',
  geoPolicyFlagShort: '允许并标记',
  geoPolicyBlock: '严格阻止 — 定位失败则不允许签到',
  geoPolicyBlockShort: '严格阻止',
  geoRadius: '校验半径（米）',
  geoRadiusHint: '员工当前位置与签到点允许的最大距离。超出这个范围会判定为超出签到范围。',
  accuracyThreshold: '精度阈值（米）',
  accuracyThresholdHint: '手机定位结果自带误差范围。若误差大于此值，系统会认为定位不可靠。',
  accessSettings: '访问设置',
  accessStatus: '访问与状态',
  allowGuest: '允许免登录签到',
  active: '启用中',
  inactive: '已停用',
  activeHint: '停用后员工无法通过此签到点签到',
  guestAccess: '免登录',

  // 管理端 — 详情页
  todaySummary: '今日概览',
  qrCode: '二维码',
  downloadQr: '下载二维码',
  openLink: '打开链接',
  copyLink: '复制链接',
  linkCopied: '已复制',
  configuration: '配置信息',
  checkedIn: '已签到',
  checkedOut: '已签退',
  notCheckedOut: '未签退',
  user: '用户',
  type: '类型',
  time: '时间',
  auth: '认证方式',
  authLogin: '登录',
  authGuest: '免登录',
  geoStatus: '定位状态',
  noEventsToday: '今日暂无记录',
  noEvents: '暂无记录',
  enabled: '已启用',
  disabled: '未启用',
  location: '签到地点',
  events: '签到记录',
  date: '日期',
  locationDisplay: '签到地点',
  currentUser: '当前用户',
  currentUserHint: '将按该用户身份展示今日状态并执行签到/签退',
  prevPage: '上一页',
  nextPage: '下一页',
  totalRecords: '共 {count} 条',
  export: '导出',
  address: '地址',
  userName: '用户',
  allTypes: '全部类型',
  filterByUser: '按用户筛选',
  currentLocation: '当前位置',
  checkpointLocation: '签到点位置',
  eventLocation: '签到位置',
  currentLocationUnavailable: '暂未获取到可用的当前位置',
  resolvingLocation: '正在解析当前位置...',
  geoNotRequired: '当前签到点未启用定位校验',
  accuracyValue: '定位精度',
  distanceValue: '距签到点',
  radiusValue: '校验半径',
  mapSearchPlaceholder: '搜索具体地址、城市或地标',
  mapSearchHint: '可先搜索大致位置，再点击地图微调签到点。',
  searchingPlaces: '正在搜索地点...',
  noPlacesFound: '未找到匹配地点',

  // GeoStatus 显示
  geoValid: '正常',
  geoOutOfRange: '超出范围',
  geoLowAccuracy: '精度不足',
  geoPermissionDenied: '权限拒绝',
  geoUnavailable: '不可用',
  geoTimeout: '超时',
  geoSkipped: '未校验',

  // v1.5 共享签到
  dispatchTitle: '选择你的公司',
  dispatchHint: '扫码成功，请选择所属公司',
  switchCompany: '切换公司',
  signInAt: '签到地点',
  dispatchLoading: '加载中...',
  dispatchNotEnabled: '该签到点未启用共享签到',
  dispatchFailed: '分诊失败',
  // 错误态
  qrTokenExpired: '二维码已过期，请扫描前台最新二维码',
  qrTokenInvalid: '二维码无效',
  qrTokenMissing: '请通过前台二维码签到',
  ticketExpired: '签到链接已过期，请重新扫码',
  ticketAlreadyUsed: '签到链接已被使用，请重新扫码',
  ticketInvalid: '签到链接无效',
  ticketTargetMismatch: '签到链接与当前签到点不匹配',
  ticketOriginNotAllowed: '签到链接来源不可信',
  errorRetry: '重试',
  errorBackToHome: '返回首页',
  errorBackToDispatch: '返回分诊页',
  // 大屏
  displayRefreshAt: '下次刷新',
  displayServiceUnavailable: '二维码服务暂不可用，请刷新页面',
  // 管理端 v1.5
  accessModeLabel: '访问模式',
  accessModePublic: '公开访问',
  accessModePublicHint: '任何人打开链接即可签到（兼容静态打印 QR）',
  accessModeSigned: '需要签名访问',
  accessModeSignedHint: '必须通过签名 URL 进入；大屏展示轮换 QR',
  qrRotationLabel: 'QR 轮换',
  qrRotationPermanent: '永久有效',
  qrRotationRotating: '定时轮换',
  qrRotationPeriod: '轮换周期',
  qrRotation10m: '10 分钟',
  qrRotation30m: '30 分钟',
  qrRotation1h: '1 小时',
  qrRotation4h: '4 小时',
  qrRotation1d: '1 天',
  qrRotationCustom: '自定义（秒）',
  qrGraceLabel: '宽限期（秒）',
  sharedSectionTitle: '共享签到',
  sharedCheckinEnabled: '启用共享签到',
  sharedCompanyIdLabel: '公司 ID',
  sharedCompanyIdHint: '仅小写字母 / 数字 / 横线 / 下划线',
  sharedCompanyLabelLabel: '公司名称',
  partnersSection: '合作伙伴',
  partnerColCompanyId: '公司 ID',
  partnerColCompanyLabel: '公司名称',
  partnerColDisplayLabel: '显示名',
  partnerColTargetUrl: '签到页 URL',
  partnerColActive: '启用',
  partnerColActions: '操作',
  partnerAdd: '添加合作伙伴',
  partnerEdit: '编辑合作伙伴',
  partnerDeleteConfirm: '确认删除该合作伙伴？',
  partnerHostNotAllowed:
    '目标地址不在白名单内，请联系运维添加到 SHARED_CHECKIN_ALLOWED_HOSTS',
  addressSectionTitle: '访问地址',
  addressStandaloneSignin: '独立签到页',
  addressStandaloneHint: 'SIGNED 模式下需附 token，直接访问会被拒绝',
  addressDisplay: '大屏地址（轮换 QR）',
  addressSharedDispatch: '共享分诊页',
  addressCopy: '复制',
  addressOpen: '打开',
  addressCopied: '已复制',
};
