You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ocr-web/src/config/final.ts

257 lines
6.9 KiB

import { defineAsyncComponent } from 'vue'
import type { AsideEntity } from './aside'
export interface RowData {
id: string
fromtaskname: string
approvalnode: string
states: number
similarity: string
fromuptime: string
updatetime: string
title: string
fromtaskid: string
}
export interface ColumnEntity {
title: string
fixed: boolean// 固定显示,不可隐藏
key: string
fixLeft?: boolean// 列固定显示左侧
width: number
}
// 表格列默认配置
export const ColumnsMap: Recordable<ColumnEntity> = {
id: {
title: '任务Id',
fixed: true,
fixLeft: true,
key: 'id',
width: 100,
},
name: {
title: '任务名称',
fixed: true,
key: 'name',
width: 200,
},
approvalnode: {
title: '审批节点',
fixed: true,
key: 'approvalnode',
width: 100,
},
approvalstatus: {
title: '审批状态',
fixed: true,
key: 'approvalstatus',
width: 100,
},
similarity: {
title: '图片相似度',
fixed: false,
key: 'similarity',
width: 100,
},
uptime: {
title: '提报时间',
fixed: false,
key: 'uptime',
width: 200,
},
updatetime: {
title: '更新时间',
fixed: false,
key: 'updatetime',
width: 200,
},
}
export const headRules = ['任务Id', '任务名称', '审批节点', '审批状态', '图片相似度', '提报时间', '更新时间']
export function findKey(columns: any[], header: string) {
const item = columns.find((column) => {
return (column as any).title === header
})
return (item as any).key
}
// 终审左侧配置
export const asideMap: Recordable<AsideEntity> = {
izupuser: {
label: '提报人',
defaultValue: null,
isDefaultFilter: true,
key: 'izupuser',
// component: ReportUserVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/ReportUser.vue')),
},
izproject: {
label: '所属项目',
defaultValue: null,
isDefaultFilter: true,
key: 'izproject',
// component: IzProjectVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzProject.vue')),
},
izplan: {
label: '所属计划',
defaultValue: null,
isDefaultFilter: true,
key: 'izplan',
// component: PlanVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Plan.vue')),
},
izstatus: {
label: '审批状态',
defaultValue: null,
isDefaultFilter: false,
key: 'izstatus',
// component: IzStatus, // todo
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzStatus.vue')),
},
izyear: {
label: '提报时间',
defaultValue: null,
isDefaultFilter: true,
key: 'izyear',
// component: TimeVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Time.vue')),
},
iztaskrrom: {
label: '任务来源',
defaultValue: null,
isDefaultFilter: false,
key: 'iztaskrrom',
// component: IztaskrromVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Iztaskrrom.vue')),
},
izshowall: {
label: '显示全部任务数据',
defaultValue: false,
isDefaultFilter: false,
key: 'izshowall',
// component: IzShowAll,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzShowAll.vue')),
inFilterList: false,
},
}
// 审批添加筛选配置 (左侧)
export const asideTaskMap: Recordable<AsideEntity> = {
izApprovalStatus: {
label: '审批状态',
defaultValue: null,
isDefaultFilter: true,
key: 'izApprovalStatus',
// component: IzApprovalStatus, // todo
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzApprovalStatus.vue')),
},
izuptime: {
label: '提报时间',
defaultValue: null,
isDefaultFilter: true,
key: 'izuptime',
// component: TimeVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Time.vue')),
},
izupuser: {
label: '提报人',
defaultValue: null,
isDefaultFilter: true,
key: 'izupuser',
// component: ReportUserVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/ReportUser.vue')),
},
iztaskrrom: {
label: '任务来源',
defaultValue: null,
isDefaultFilter: true,
key: 'iztaskrrom',
// component: IztaskrromVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Iztaskrrom.vue')),
},
izcustomname: {
label: '拜访客户',
defaultValue: null,
isDefaultFilter: true,
key: 'izcustomname',
// component: IzCustomname,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzCustomname.vue')),
},
izcustomtype: {
label: '客户类型',
defaultValue: null,
isDefaultFilter: true,
key: 'izcustomtype',
// component: IzCustomtype,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzCustomtype.vue')),
},
izproject: {
label: '所属项目',
defaultValue: null,
isDefaultFilter: true,
key: 'izproject',
// component: IzProjectVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzProject.vue')),
},
izplan: {
label: '所属计划',
defaultValue: null,
isDefaultFilter: true,
key: 'izplan',
// component: PlanVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Plan.vue')),
},
izvisitpro: {
label: '拜访省份/直辖市',
defaultValue: null,
isDefaultFilter: true,
key: 'izvisitpro',
// component: IzVisitcity,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzVisitcity.vue')),
},
izcustomlevel: {
label: '客户级别',
defaultValue: null,
isDefaultFilter: true,
key: 'izcustomlevel',
// component: IzCustomlevel,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzCustomlevel.vue')),
},
izprojecttype: {
label: '项目类别',
defaultValue: null,
isDefaultFilter: true,
key: 'izprojecttype',
// component: IzProjecttype,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzProjecttype.vue')),
},
izproductname: {
label: '产品名称',
defaultValue: null,
isDefaultFilter: true,
key: 'izproductname',
// component: IzProductVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/IzProduct.vue')),
},
izvisitcity: {
label: '拜访城市',
defaultValue: null,
isDefaultFilter: true,
key: 'izvisitcity',
// component: IzvisitproVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Izvisitpro.vue')),
},
izfirm: {
label: '厂商',
defaultValue: null,
isDefaultFilter: true,
key: 'izfirm',
// component: IzfirmVue,
component: defineAsyncComponent(() => import('@/views/home/aside/comp/items/Izfirm.vue')),
},
}