/** 商户类型 */
export const MERCHANT_TYPE_PERSON = '1'
export const MERCHANT_TYPE_ENTERPRISE = '2'

/** 证件类型 */
export const ID_TYPE_MAINLAND = '1'
export const ID_TYPE_HK_PASS = '2'

/** 有效期类型 */
export const VALID_RANGE = '1'
export const VALID_LONG = '2'

/** 申请状态 */
export const APPLY_STATUS_PENDING = '0'
export const APPLY_STATUS_DONE = '1'
export const APPLY_STATUS_REJECT = '2'
export const APPLY_STATUS_PUBLICITY = '3'

export const APPLY_STATUS_MAP = {
  [APPLY_STATUS_PENDING]: { label: '待审核', color: '#ed6a0c' },
  [APPLY_STATUS_DONE]: { label: '已完成入驻', color: '#2e7d32' },
  [APPLY_STATUS_REJECT]: { label: '审核未通过', color: '#d32f2f' },
  [APPLY_STATUS_PUBLICITY]: { label: '公示中', color: '#1976d2' }
}

export const GENDER_OPTIONS = [
  { label: '男', value: '0' },
  { label: '女', value: '1' },
  { label: '保密', value: '2' }
]

export const ID_TYPE_OPTIONS = [
  { label: '大陆身份证', value: ID_TYPE_MAINLAND },
  { label: '来往内地通行证', value: ID_TYPE_HK_PASS }
]

export const VALID_TYPE_OPTIONS = [
  { label: '区间有效', value: VALID_RANGE },
  { label: '长期有效', value: VALID_LONG }
]

export function formatApplyStatus(status) {
  return APPLY_STATUS_MAP[status] || { label: '未知', color: '#999' }
}

/** 是否存在阻塞中的申请（待审 / 公示中） */
export function hasBlockingApply(list) {
  if (!Array.isArray(list)) return false
  return list.some((item) =>
    item.applyStatus === APPLY_STATUS_PENDING || item.applyStatus === APPLY_STATUS_PUBLICITY
  )
}

/** 是否可重新申请（仅驳回或未通过场景由入口引导） */
export function canSubmitNewApply(list, entryOpen) {
  if (!entryOpen) return false
  return !hasBlockingApply(list)
}
