/**
 * index:序号
 * txt:正常数据
 * img:图片
 * txtChange:判断显示不同字段
 * text:文字比较多的情况、获取使用其他标签（没有的需要自己配置）
 */
// export const A1tableCFu = (type: "video" | "poster") => {
//   return [
//     ["index", "序号"],
//     ["txt", "标题", "name"]
//     ["img", type === "video" ? "视频封面" : "海报", "thumb"],
//     ["txtChange", "自动播放", "display", { 0: "否", 1: "是" }],
//     ["text", "创建日期",'description', 50,A],
//   ];

import { D6typeArr } from '@/pages/D_storeManage/D6putsStor/data'
import { selectObj } from './select'
import { SON_TYPE_NAME } from '@/pages/D_storeManage/D3staff/types'

// 附件归档
export const ZypFileTable = [
  ['txt', '附件名称', 'fileName'],
  ['txt', '归档人', 'creatorName'],
  ['txt', '归档时间', 'createTime']
]

// 库存状态obj
export const statusStorageObj: any = {}
selectObj['库存状态'].forEach(v => {
  statusStorageObj[v.value] = v.label
})

// 入藏状态obj
export const statusCollectObj: any = {}
selectObj['入藏状态'].forEach(v => {
  statusCollectObj[v.value] = v.label
})

// 业务类型obj
export const businessTypeObj: any = {}
selectObj['业务类型'].forEach(v => {
  businessTypeObj[v.value] = v.label
})

// 处理情况obj
export const accountTypeObj: any = {}
selectObj['入藏去向'].forEach(v => {
  accountTypeObj[v.value] = v.label
})

// 申请状态
export const statusObj = {
  1: '草稿',
  2: '待审批',
  3: '审批不通过',
  4: '已完成',
  6: '待提交'
  // 5: '待盘点'
}

// 业务中心
export const A2tableC = [
  ['txt', '业务类型', 'typeName'],
  ['txt', '业务编号', 'num'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

// 藏品征集
export const B1TableC = [
  ['txt', '业务单号', 'num'],
  ['dateRes', '征集日期', 'date'],
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

// 藏品征集里面的藏品清单
export const B1TableC2 = [
  ['img', '封面图', 'thumb'],
  ['txt', '名称', 'name'],
  ['txtC', '初定年代', 'dictAgeFirst'],
  ['txtC', '年代', 'dictAge'],
  ['txtC', '品种', 'dictType'],
  ['size', '尺寸', 'sizeUnit'],
  ['ping', '重量', 'quality', 'qualityUnit'],
  ['text', '介绍', 'intro', 50],
  ['txt', '报价（万元）', 'offer'],
  ['txt', '原持有人', 'holder'],
  ['txtC', '征集方式', 'source']
]

// 藏品征集表格导入
export const B1TableC2up = (val: string, flag: boolean) => {
  let arr: any = [['txt', '藏品名称', 'name']]
  if (val === '失败') {
    arr.push(['txtArr', '失败原因', 'error'])
  }

  if (flag) arr.unshift(['txt', '藏品编号', 'num'])
  else arr.unshift(['txt', '数据行数', 'row'])

  return arr
}

// 藏品鉴定里面的藏品清单
export const B2TableC2 = [
  ['txt', '登记号类型', 'numName'],
  ['img', '封面图', 'thumb'],
  ['txt', '分类号', 'numType'],
  ['txt', '文物名称', 'name'],
  ['ping', '数量', 'pcs', 'pcsUnit'],
  ['txtC', '质地', 'dictTexture3'],
  ['txtC', '年代', 'dictAge'],
  ['size', '尺寸', 'sizeUnit'],
  ['ping', '重量', 'quality', 'qualityUnit'],
  ['txtC', '现状', 'dictTorn'],
  ['txt', '文物级别', 'dictLevel'],
  ['text', '备注', 'intro', 50]
]

// 藏品入馆、入藏
export const B34TableC = (type: '入馆' | '入藏') => {
  return [
    ['dateRes', `${type}日期`, 'date'],
    ['txt', `${type}凭证号`, 'num'],
    ['txt', '发起部门', 'deptName'],
    ['txt', '发起人', 'creatorName'],
    ['txt', '发起日期', 'createTime'],
    ['txtChange', '申请状态', 'status', statusObj]
  ]
}

// 藏品入馆、入藏里面的表单
export const B34TableC2 = [
  ['txt', '登记号类型', 'numName'],
  ['img', '封面图', 'thumb'],
  ['txt', '名称', 'name'],
  ['ping', '数量/单位', 'pcs', 'pcsUnit'],
  ['txtC', '时代', 'dictAge'],
  ['txtC', '质地', 'dictTexture3'],
  ['txtC', '完残情况', 'dictTorn'],
  ['txt', '具体来源', 'sourceInfo'],
  ['txtChange', '处理情况', 'accountType', accountTypeObj],
  ['text', '备注', 'intro', 50]
]

export const B3eTableC = [
  ['img', '封面图', 'thumb'],
  ['txt', '编号类型', 'numName'],
  ['txt', '藏品名称', 'name'],
  ['txt', '文物级别', 'dictLevel'],
  ['txtC', '文物类别', 'dictType'],
  ['txtC', '年代', 'dictAge'],
  ['ping', '数量', 'pcs', 'pcsUnit'],
  ['txtC', '质地', 'dictTexture3'],
  ['txtC', '完残程度', 'dictTorn'],
  ['txtC', '来源', 'source']
]

export const B3FtableC = [
  ['txt', '节点名称', 'nodeName'],
  ['txt', '提交日期', 'createTime'],
  ['txt', '处理人', 'handler']
]

export const D1GtableC = [
  ['txt', '编号类型', 'numName'],
  ['txt', '库位号', 'siteNum'],
  // ['img', '封面图', 'thumb'],
  ['txt', '藏品名称', 'name'],
  ['ping', '数量', 'pcs', 'pcsUnit'],
  ['txtChange', '库存状态', 'statusStorage', statusStorageObj]
  // ['txt', '区域名称', 'regionName'],
  // ['txt', '排架', 'layer1'],
  // ['txt', '层数', 'layer2'],
  // ['txt', '层格', 'layer3'],
  // ['txt', '库位说明', 'description']
]

export const B3tableC = [
  ['txt', '业务单号', 'num'],
  ['txt', '申请名称', 'name'],
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

export const C1tableC = [
  ['img', '封面图', 'thumb'],
  ['txt', '编号类型', 'numName'],
  ['txt', '藏品名称', 'name'],
  ['txt', '文物级别', 'dictLevel'],
  ['txtC', '文物类别', 'dictType'],
  ['txtC', '年代', 'dictAge'],
  ['txtC', '质地', 'dictTexture3'],
  ['txtC', '完残程度', 'dictTorn'],
  ['txtC', '来源', 'source'],
  ['txtChange', '入藏状态', 'statusCollect', statusCollectObj],
  ['txtChange', '库存状态', 'statusStorage', statusStorageObj]
]

// 藏品附件 的藏品编号可以不用点击
export const C2tableC = [
  ['txt', '藏品名称', 'goodName'],
  ['txt', '编号类型', 'goodNumName'],
  ['txt', '藏品编号', 'goodNum'],
  ['txt', '附件名称', 'fileName'],
  ['txt', '上传日期', 'updateTime'],
  ['txt', '上传人', 'creatorName'],
  ['fileSize', '附件大小(MB)', 'fileSize']
]

export const C4tableCFu = (val: string) => {
  let arr: any = [
    ['txt', '文件名称', 'fileName'],
    ['txt', '导入数据', 'pcsTotal'],
    ['txt', '成功数据', 'pcsSuccess'],
    ['txt', '失败数据', 'pcsError'],
    ['txt', '导入日期', 'createTime'],
    ['txt', '导入用户', 'creatorName']
  ]

  if (val === '导入藏品数据')
    arr.unshift(['txtChange', '数据类型', 'type', { '1': '一普数据', '2': '省平台数据' }])

  return arr
}

// V1.1.1藏品编辑
export const C6tableC = [
  ['txt', '藏品名称', 'goodsName'],
  ['txt', '业务单号', 'num'],
  ['txt', '编辑类型', 'typeName'],
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

export const D1tableC = [
  ['txt', '区域名称', 'regionName'],
  ['txt', '排架', 'layer1'],
  ['txt', '层数', 'layer2'],
  ['txt', '层格', 'layer3'],
  ['txt', '库位说明', 'description']
]

export const D2tableC = [
  ['txt', '仓库名称', 'name'],
  ['txt', '分库缩写', 'num'],
  ['txt', '仓库负责人', 'managerUser'],
  ['text', '仓库说明', 'description', 100],
  ['txtChange', '仓库状态', 'enable', { 0: '禁用', 1: '启用' }],
  ['txt', '排序', 'sort']
]

export const D2tableCSon = [
  ['txt', '区域名称', 'regionName'],
  ['txt', '排架', 'layer1'],
  ['txt', '层数', 'layer2'],
  ['txt', '库位', 'layer3'],
  ['text', '库位说明', 'description', 50]
]

export const D4tableC = [
  ['dateRes', '入库日期', 'date'],
  ['txt', '入库单编号', 'num'],
  ['txt', '分库缩写', 'sonNum'],
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

// 移库
export const D5tableC = [
  ['dateRes', '移库日期', 'date'],
  ['txt', '移库单编号', 'num'],
  ['txt', '出库分库缩写', 'sonNum2'],
  ['txt', '入库分库缩写', 'sonNum'],
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

// 提退类型obj
export const sonTypeNameObj = {
  [SON_TYPE_NAME.IN]: '内部人员',
  [SON_TYPE_NAME.OUT]: '外部人员'
}
D6typeArr.forEach(v => {
  businessTypeObj[v.value] = v.label
})

// 旧版的入库里面的表单 -太多地方用了 不改了
export const D4goodsTableC = [
  ['img', '封面图', 'thumb'],
  ['txt', '编号类型', 'numName'],
  ['txt', '藏品名称', 'name'],
  ['ping', '数量', 'pcs', 'pcsUnit'],
  ['txtChange', '库存状态', 'statusStorage', statusStorageObj]
]
// 新版的入库里面的表单
export const D4tableCgoods = [
  ['txt', '名称', 'name'],
  ['txtC', '年代', 'dictAge'],
  ['ping', '数量', 'pcs', 'pcsUnit'],
  ['size', '尺寸', 'sizeUnit'],
  ['ping', '重量', 'quality', 'qualityUnit'],
  ['txtC', '完残情况', 'dictTorn']
]

export const D6tableC = [
  ['dateRes', '提用日期', 'date'],
  ['txtChange', '提退类型', 'sonTypeName', businessTypeObj],
  ['txt', '提退单编号', 'num'],
  ['txt', '提用/借入单位', 'sonUnit'],
  ['txt', '分库缩写', 'sonNum'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]
export const D6tableCgoods = (val: '1' | '2' | '3') => {
  let arr = [['txt', '名称', 'name']]
  if (val === '1') {
    arr = [
      ...arr,
      ['txtC', '年代', 'dictAge'],
      ['txtC', '质地', 'dictTexture3'],
      ['ping', '计件数量', 'pcs', 'pcsUnit'],
      ['txt', '级别', 'dictLevel'],
      ['txtC', '文物现状', 'dictTorn']
    ]
  } else if (val === '2') {
    arr = [...arr, ['ping', '数量/单位', 'pcs', 'pcsUnit'], ['txtC', '完残程度', 'dictTorn']]
  } else {
    arr = [
      ...arr,
      ['img', '封面图', 'thumb'],
      ['txtC', '时代', 'dictAge'],
      ['ping', '数量/单位', 'pcs', 'pcsUnit'],
      ['txtC', '质地', 'dictTexture3'],
      ['txtC', '完残情况', 'dictTorn'],
      ['txt', '级别', 'dictLevel']
    ]
  }
  return arr
}

export const D8tableC = [
  ['txt', '业务单号', 'num'],
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

export const D8tableCgoods = [
  ['txt', '编号类型', 'numName'],
  ['txt', '藏品分类号', 'numType'],
  ['txt', '藏品名称', 'name'],
  ['txtC', '年代', 'dictAge'],
  ['ping', '数量', 'pcs', 'pcsUnit'],
  ['size', '尺寸', 'sizeUnit'],
  ['ping', '重量', 'quality', 'qualityUnit'],
  ['txtC', '完残情况', 'dictTorn']
]

export const E1tableC = [
  ['txt', '编号类型', 'numName'],
  ['txt', '申请编号', 'num'],
  ['dateRes', '事故时间', 'date'],
  ['txt', '事故责任', 'sonTypeName'],
  ['txt', '藏品名称', 'goodsName'],
  ['txt', '鉴定人', 'authUser'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

export const E2tableC = [
  ['txt', '业务单号', 'num'],
  ['txt', '申请名称', 'name'],
  ['txt', '关联库房', 'storageName'], //待完善-旧版
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj],
  ['txt', '相关盘点', '待完善-旧版']
]

export const E3tableC = [
  ['txt', '编号类型', 'numName'],
  ['txt', '申请编号', 'num'],
  ['dateRes', '登记日期', 'date'],
  ['txt', '藏品名称', 'goodsName'],
  ['txt', '经手人', 'sonUser'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

//文物修复
export const E4tableC = [
  ['txt', '申请编号', 'num'],
  ['dateRes', '交修日期', 'date'],
  ['txt', '交修部门', 'authUnit'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

export const E4tableCgoods = [
  ['img', '封面图', 'thumb'],
  ['txt', '编号类型', 'numName'],
  ['txt', '藏品名称', 'name'],
  ['txt', '等级', 'dictLevel'],
  ['ping', '数量', 'pcs', 'pcsUnit']
]

export const Y33tableC = [
  ['text', '附件名称', 'fileName', 50],
  ['fileSize', '附件大小(MB)', 'fileSize'],
  ['txt', '上传日期', 'updateTime'],
  ['txt', '上传人', 'creatorName']
]

export const Y44tableC = [
  ['txt', '业务类型', 'typeName'],
  ['txt', '申请编号', 'num'],
  ['txt', '业务名称', 'name'],
  ['txt', '发起部门', 'deptName'],
  ['txt', '发起人', 'creatorName'],
  ['txt', '发起日期', 'createTime'],
  ['txtChange', '申请状态', 'status', statusObj]
]

export const Z2tableC = [
  ['txt', '编号类型', 'name'],
  ['txt', '前缀', 'prefix'],
  ['txt', '日期方式', 'dateType'],
  ['txt', '起始流水编号', 'length']
]

export const Z3tableC = [
  ['txt', '流程类型', 'typeKey'],
  ['txt', '流程名称', 'name'],
  ['text', '流程说明', 'remark', 50],
  ['txtChange', '状态', 'enabled', { 0: '禁用', 1: '启用' }]
]
export const Z3tableC2 = [
  ['index', '序号'],
  ['txt', '节点名称', 'name'],
  ['txt', '排序值', 'sort'],
  [
    'txtChange',
    '办理人',
    'type',
    { user: '指定用户', role: '按角色', dept: '按部门主管', '/': '/' }
  ]
]

export const Z5tableC = [
  ['txt', '角色名称', 'roleName'],
  ['text', '角色说明', 'roleDesc', 50],
  ['txt', '排序值', 'sort']
]

export const Z6tableC = [
  ['txt', '登录账号', 'userName'],
  ['txt', '所属部门', 'deptNameRes'],
  ['txt', '角色', 'roleName'],
  ['txt', '真实姓名', 'realName'],
  ['txt', '创建日期', 'createTime']
]

export const Z7tableC = [
  ['index', '序号'],
  ['txt', '账号', 'userName'],
  ['txt', '操作日期', 'createTime'],
  ['txt', 'IP记录', 'ip'],
  ['txt', '操作模块', 'type'],
  ['txt', '操作事件', 'description']
]
