import mockjs from 'mockjs'

export const icons = [
  'CertMine',
  'CertVerify',
  'CertDeferredReview',
  'CertMake',
  'CertFile',
  'CompanyTransfer',
  'OriginPreSelect',
  'WhitelistReview',
  'ExporterHandle',
  'ExportVerify',
  'ExporterReview',
  'ExportInfoManage'
] as const

export const colorTypes = ['primary', 'success', 'info', 'warning', 'danger']

export const sex = ['男', '女', '未知']

export const universities = [
  '清华大学',
  '北京大学',
  '西安交通大学',
  '西北工业大学',
  '复旦大学',
  '浙江大学',
  '南京大学',
  '四川大学',
  '电子科技大学'
]

export const educational = ['小学', '初中', '高中', '大专', '本科', '研究生']

export const profession = ['计算机', '土木', '电气', '幼教', '金融', '考古']

const reasons = ['不再需要', '信息错误', '重复提交', '不符合条件', '审核未通过', '用户取消', '资料补全']

const taxInvoiceSource = [
  '客户提交',
  '供应商提供',
  '在线平台',
  '手动录入',
  '第三方代开',
  '电子发票系统',
  '纸质发票扫描',
  '自动导入',
  '其他'
]

const goods = [
  { name: '笔记本电脑', desc: '轻薄便携笔记本电脑' },
  { name: '智能电脑', desc: '高清智能4k电视' },
  { name: '蓝牙耳机', desc: '无线蓝牙降噪耳机' },
  { name: '吸尘器', desc: '多功能手持吸尘器' },
  { name: '冰箱', desc: '高效节能家用冰箱' },
  { name: '相机', desc: '拍立得相机' },
  { name: '背包', desc: '防水户外登山包' }
]

const units = ['件', '个', '台', '套', '箱']

const shipNames = [
  '报关单与货物',
  '报关单与提单',
  '报关单与发票',
  '海关税号与商品',
  '进出口许可证与商品',
  '海关查验与货物',
  '关税与商品',
  '海关统计与贸易数据'
]

const jobTitle = [
  { name: '报关员', code: 'C001' },
  { name: '审计员', code: 'C002' },
  { name: '查验员', code: 'C003' },
  { name: '监督员', code: 'C004' },
  { name: '关税分析师', code: 'C005' },
  { name: '统计分析师', code: 'C006' },
  { name: '稽查员', code: 'C007' },
  { name: '安全检查员', code: 'C008' },
  { name: '海关事务顾问', code: 'C009' }
]
const foreignTrade = ['国际贸易', '机械与设备', '计算机设备', '消费电子', '化工产品']
const cuntries = ['中国', '美国', '日本', '澳大利亚', '英国', '法国', '德国', '俄罗斯', '印度尼西亚']
const expertTags = ['初级', '中级', '高级', '资深', '专家', '架构师']
const product = ['儿童', '商务', '家庭', '学生', '专业级']
const jobQualifications = [
  '计算机科学学士学位',
  '5年开发经验',
  'CSM认证',
  '产品经理认证',
  '注册会计师(CPA)',
  'CFA认证',
  '销售管理和CRM'
]
const expertise = ['精通Java', '精通Python', '擅长UI/UX设计', '精通审计', '打乒乓球', '踢足球']
mockjs.Random.extend({
  sex: function () {
    return this.pick(sex)
  },

  colorTypes: function () {
    return this.pick(colorTypes)
  },

  icons: function () {
    return this.pick(icons)
  },

  universities: function () {
    return this.pick(universities)
  },

  educational: function () {
    return this.pick(educational)
  },

  profession: function () {
    return this.pick(profession)
  },

  phone: function () {
    return this.integer(130, 199) + '' + this.integer(10000000, 99999999)
  },
  types: function () {
    return this.pick(['更新', '创建', '修改'])
  },
  reason: function () {
    return this.pick(reasons)
  },
  taxInvoiceSource: function () {
    return this.pick(taxInvoiceSource)
  },
  goods: function (value?: string) {
    const g = this.pick(goods)
    if (value) return g[value]
    return g
  },
  unit: function () {
    return this.pick(units)
  },
  shipNames: function () {
    return this.pick(shipNames)
  },
  randomJob: function () {
    return this.pick(jobTitle)
  },
  foreignTrade: function () {
    return this.pick(foreignTrade)
  },
  country: function () {
    return this.pick(cuntries)
  },
  expertTags: function () {
    return this.pick(expertTags)
  },
  product: function () {
    return this.pick(product)
  },
  jobQualifications: function () {
    return this.pick(jobQualifications)
  },
  expertise: function () {
    return this.pick(expertise)
  }
})
