| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456 |
- import { BasicColumn } from '/@/components/Table';
- import { SCENE_TYPE } from '/@/settings/siteSetting';
- import { Time } from '/@/components/Time';
- import { jyPlatformlist, sceneGroupCount } from '/@/api/jyUserPlatform/index'; //roleLIstApi
- import dayjs from 'dayjs';
- import { h } from 'vue';
- export const columns: BasicColumn[] = [
- {
- title: '场景标题',
- dataIndex: 'sceneName',
- ellipsis: true,
- slots: { customRender: 'href' },
- resizable: true,
- minWidth: 150,
- width: 150,
- },
- {
- title: '人员编号',
- dataIndex: 'userName',
- width: 100,
- },
- {
- title: '姓名',
- dataIndex: 'nickName',
- width: 100,
- customRender: ({ record }) => {
- return record.nickName || '-';
- },
- },
- {
- title: '浏览量',
- dataIndex: 'viewCount',
- width: 80,
- },
- {
- title: '状态',
- dataIndex: 'status',
- slots: { customRender: 'status' },
- width: 120,
- // customRender: ({ record }) => {
- // let str;
- // switch (record.status - 0) {
- // case 0:
- // str = '计算中';
- // break;
- // case 1:
- // str = '计算成功';
- // break;
- // case -2:
- // str = '计算成功';
- // break;
- // case -1:
- // str = '计算失败';
- // break;
- // }
- // return record.payStatus == -2 ? '封存' : str;
- // },
- },
- {
- title: '相机类型',
- dataIndex: 'type',
- defaultHidden: true,
- width: 120,
- customRender: ({ record }) => {
- let str;
- switch (record.type) {
- case 0:
- str = SCENE_TYPE[1];
- break;
- case 1:
- str = SCENE_TYPE[0];
- break;
- case 2:
- str = SCENE_TYPE[2];
- break;
- case 5:
- str = SCENE_TYPE[4];
- break;
- case 6:
- str = SCENE_TYPE[3];
- break;
- case 7:
- str = SCENE_TYPE[3];
- break;
- case 8:
- str = SCENE_TYPE[4];
- break;
- case 9:
- str = SCENE_TYPE[0];
- break;
- case 10:
- str = SCENE_TYPE[2];
- break;
- case 11:
- str = SCENE_TYPE[3];
- break;
- }
- return str;
- },
- },
- {
- title: '场景码',
- dataIndex: 'num',
- ellipsis: true,
- width: 180,
- defaultHidden: true,
- },
- {
- title: '拍摄时间',
- dataIndex: 'createTime',
- width: 180,
- customRender: ({ record }) => {
- return (
- record.createTime &&
- h(Time, {
- value: record.createTime,
- mode: 'datetime',
- })
- );
- },
- },
- {
- title: '是否复制',
- dataIndex: 'isCopy',
- width: 80,
- defaultHidden: true,
- customRender: ({ record }) => {
- return record.isCopy ? '是' : '否';
- },
- },
- {
- title: '计算完成时间',
- dataIndex: 'amount',
- width: 180,
- customRender: ({ record }) => {
- return (
- (record.algorithmTime &&
- h(Time, {
- value: record.algorithmTime,
- mode: 'datetime',
- })) ||
- '-'
- );
- },
- },
- {
- title: '计算时长',
- dataIndex: 'amountdf',
- width: 180,
- customRender: ({ record }) => {
- const startBuildTime = record.startBuildTime;
- if (!record.algorithmTime || !startBuildTime) return '-';
- let seconds = dayjs(record.algorithmTime).diff(dayjs(startBuildTime), 'seconds');
- if (record.statusString == '计算中') {
- seconds = dayjs().diff(dayjs(startBuildTime), 'seconds');
- }
- return convertSeconds(seconds);
- },
- },
- {
- title: 'SN码',
- dataIndex: 'snCode',
- defaultHidden: true,
- width: 180,
- },
- {
- title: '场景大小',
- dataIndex: 'sceneSize',
- width: 80,
- customRender: ({ record }) => {
- return record.sceneSize && record.sceneSize != 0
- ? h('span', { class: 'sceneSize' }, Math.ceil(record.sceneSize / 1024 / 1024) + 'M')
- : '-';
- },
- },
- {
- title: '复制时间',
- dataIndex: 'copyTime',
- width: 180,
- defaultHidden: true,
- customRender: ({ record }) => {
- return record.copyTime
- ? h(Time, {
- value: record.copyTime,
- mode: 'datetime',
- })
- : '-';
- },
- },
- // {
- // title: '平台',
- // dataIndex: 'platformName',
- // ifShow: false,
- // width: 120,
- // },
- {
- title: '操作',
- dataIndex: 'action',
- //ifShow: tableType.value == 2,
- slots: { customRender: 'action' },
- // fixed: 'right',
- flag: 'ACTION',
- width: 400,
- },
- ];
- export const columnsAll: BasicColumn[] = [
- {
- title: '场景标题',
- dataIndex: 'sceneName',
- ellipsis: true,
- slots: { customRender: 'href' },
- resizable: true,
- minWidth: 150,
- width: 150,
- },
- {
- title: '人员编号',
- dataIndex: 'userName',
- width: 100,
- },
- {
- title: '姓名',
- dataIndex: 'nickName',
- width: 100,
- customRender: ({ record }) => {
- return record.nickName || '-';
- },
- },
- {
- title: '状态',
- dataIndex: 'status',
- slots: { customRender: 'status' },
- width: 120,
- // customRender: ({ record }) => {
- // let str;
- // switch (record.status - 0) {
- // case 0:
- // str = '计算中';
- // break;
- // case 1:
- // str = '计算成功';
- // break;
- // case -2:
- // str = '计算成功';
- // break;
- // case -1:
- // str = '计算失败';
- // break;
- // }
- // return record.payStatus == -2 ? '封存' : str;
- // },
- },
- {
- title: '相机类型',
- dataIndex: 'type',
- defaultHidden: true,
- width: 120,
- customRender: ({ record }) => {
- let str;
- switch (record.type) {
- case 0:
- str = SCENE_TYPE[1];
- break;
- case 1:
- str = SCENE_TYPE[0];
- break;
- case 2:
- str = SCENE_TYPE[2];
- break;
- case 5:
- str = SCENE_TYPE[4];
- break;
- case 6:
- str = SCENE_TYPE[3];
- break;
- case 7:
- str = SCENE_TYPE[3];
- break;
- case 8:
- str = SCENE_TYPE[4];
- break;
- case 9:
- str = SCENE_TYPE[0];
- break;
- case 10:
- str = SCENE_TYPE[2];
- break;
- case 11:
- str = SCENE_TYPE[3];
- break;
- }
- return str;
- },
- },
- {
- title: '场景码',
- dataIndex: 'num',
- ellipsis: true,
- width: 180,
- },
- {
- title: '拍摄时间',
- dataIndex: 'createTime',
- width: 180,
- customRender: ({ record }) => {
- return (
- record.createTime &&
- h(Time, {
- value: record.createTime,
- mode: 'datetime',
- })
- );
- },
- },
- {
- title: '计算完成时间',
- dataIndex: 'amount',
- width: 180,
- customRender: ({ record }) => {
- return (
- (record.algorithmTime &&
- h(Time, {
- value: record.algorithmTime,
- mode: 'datetime',
- })) ||
- '-'
- );
- },
- },
- {
- title: '计算时长',
- dataIndex: 'amountdf',
- width: 180,
- customRender: ({ record }) => {
- const startBuildTime = record.startBuildTime;
- if (!record.algorithmTime || !startBuildTime) return '-';
- let seconds = dayjs(record.algorithmTime).diff(dayjs(startBuildTime), 'seconds');
- if (record.statusString == '计算中') {
- seconds = dayjs().diff(dayjs(startBuildTime), 'seconds');
- }
- return convertSeconds(seconds);
- },
- },
- {
- title: 'SN码',
- dataIndex: 'snCode',
- width: 180,
- },
- {
- title: '场景大小',
- dataIndex: 'sceneSize',
- width: 80,
- customRender: ({ record }) => {
- return record.sceneSize && record.sceneSize != 0
- ? h('span', { class: 'sceneSize' }, Math.ceil(record.sceneSize / 1024 / 1024) + 'M')
- : '-';
- },
- },
- {
- title: '所属平台',
- dataIndex: 'platformName',
- width: 120,
- },
- ];
- export const searchFormData = (show) => [
- {
- field: 'sceneName',
- label: '场景标题',
- component: 'Input',
- componentProps: {
- maxLength: 100,
- },
- colProps: {
- span: 6,
- },
- },
- {
- field: 'userName',
- label: '人员编号',
- component: 'Input',
- componentProps: {
- maxLength: 100,
- },
- colProps: {
- span: 6,
- },
- },
- {
- field: 'type',
- label: '相机类型',
- component: 'ApiSelect',
- componentProps: {
- style: { maxWidth: '250px', placeholder: '全部' },
- placeholder: '全部',
- api: sceneGroupCount,
- immediate: false,
- resultField: 'list',
- labelField: 'name',
- valueField: 'id',
- params: { type: 'camera' },
- },
- colProps: {
- span: 6,
- },
- },
- {
- field: 'num',
- label: '场景码',
- component: 'Input',
- componentProps: {
- maxLength: 100,
- },
- colProps: {
- span: 6,
- },
- },
- {
- field: 'snCode',
- label: 'SN 码',
- component: 'Input',
- componentProps: {
- maxLength: 100,
- },
- colProps: {
- span: 6,
- },
- },
- {
- field: 'platform',
- label: '平台',
- component: 'ApiSelect',
- show: !!show,
- componentProps: {
- style: { maxWidth: '250px', placeholder: '全部' },
- placeholder: '全部',
- api: sceneGroupCount,
- immediate: false,
- resultField: 'list',
- labelField: 'name',
- valueField: 'id',
- },
- colProps: {
- span: 6,
- },
- },
- ];
- function convertSeconds(seconds) {
- if (seconds == 'NaN') return;
- const days = seconds > 3600 * 24 ? Math.floor(seconds / (3600 * 24)) : 0;
- const hours = seconds > 3600 ? Math.floor((seconds % (3600 * 24)) / 3600) : 0;
- const minutes = Math.floor((seconds % 3600) / 60);
- const remainingSeconds = seconds % 60;
- return `${(days && days + '天') || ''} ${(hours && hours + '小时') || ''} ${minutes || '0'}分钟 ${
- remainingSeconds || '0'
- }秒`;
- }
|