import { BasicColumn } from '/@/components/Table'; import { FormSchema } from '/@/components/Table'; import { rules } from '/@/utils/helper/validator'; import { reactive } from 'vue'; import { defineAsyncComponent } from 'vue'; export const resultColumns: BasicColumn[] = [ // { // title: '测风描述', // dataIndex: 'strremark', // width: 120, // align: 'center', // }, { title: '测风设备数量', dataIndex: 'totalcount', width: 100, align: 'center', }, { title: '同时运行数量', dataIndex: 'count', width: 100, align: 'center', }, { title: '总时长', dataIndex: 'runtime', width: 100, align: 'center', }, { title: '开始测风时间', dataIndex: 'begintime', width: 80, align: 'center', }, { title: '结束测风时间', dataIndex: 'endtime', width: 100, align: 'center', sorter: (a: any, b: any) => new Date(a.endtime) - new Date(b.endtime), }, { title: '用时(s)', dataIndex: 'runtime', width: 100, align: 'center', }, { title: '操作人员', dataIndex: 'updateBy', width: 100, align: 'center', }, { title: '操作', dataIndex: 'action', width: 100, align: 'center', }, ]; export const innerResultColumns: BasicColumn[] = [ { title: '设备名称', dataIndex: 'strname', align: 'center', width: 120, }, { title: '平均风速', dataIndex: 'va', align: 'center', width: 100, }, { title: '风量', dataIndex: 'm3', align: 'center', width: 100, }, { title: '用时(s)', dataIndex: 'runtime', align: 'center', width: 80, }, ]; export const columns: BasicColumn[] = [ { title: '名称', dataIndex: 'strname', width: 120, }, { title: '安装位置', dataIndex: 'strinstallpos', width: 100, }, { title: '是否为常闭型', dataIndex: 'bnormalclose', width: 100, // customRender: render.renderAvatar, }, { title: '净宽', dataIndex: 'fclearwidth', width: 80, }, { title: '净高', dataIndex: 'fclearheight', width: 100, }, { title: '风门道数', dataIndex: 'ndoorcount', width: 100, }, { title: '所属分站', width: 150, dataIndex: 'stationname', }, { title: '点表', width: 100, dataIndex: 'strtype', }, { title: '监测类型', dataIndex: 'monitorflag', width: 100, }, { title: '是否模拟数据', dataIndex: 'testflag', width: 100, }, ]; export const recycleColumns: BasicColumn[] = [ { title: '名称', dataIndex: 'strname', width: 100, }, { title: '是否为常闭型', dataIndex: 'bnormalclose', width: 100, }, ]; export const searchFormSchema: FormSchema[] = [ { label: '名称', field: 'strname', component: 'Input', colProps: { span: 6 }, }, { label: '安装位置', field: 'strinstallpos', component: 'Input', colProps: { span: 6 }, }, { label: '是否为常闭型', field: 'bnormalclose', component: 'JDictSelectTag', componentProps: { dictCode: 'user_status', placeholder: '请选择读写类型', stringToNumber: true, }, colProps: { span: 6 }, }, ]; export const formSchema: FormSchema[] = [ { label: '', field: 'id', component: 'Input', show: false, }, { label: '名称', field: 'strname', component: 'Input', }, { label: '安装位置', field: 'strinstallpos', component: 'Input', }, { label: '是否为常闭型', field: 'bnormalclose', component: 'RadioGroup', defaultValue: 1, componentProps: () => { return { options: [ { label: '是', value: 1, key: '1' }, { label: '否', value: 0, key: '2' }, ], }; }, }, { label: '净宽', field: 'fclearwidth', component: 'Input', }, { label: '净高', field: 'fclearheight', component: 'Input', }, { label: '风门道数', field: 'ndoorcount', component: 'Input', }, { label: '所属分站', field: 'stationname', component: 'JDictSelectTag', componentProps: { dictCode: 'user_status', placeholder: '请选择状态', stringToNumber: true, }, }, { label: '点表', field: 'strtype', component: 'JDictSelectTag', componentProps: { dictCode: 'user_status', placeholder: '请选择状态', stringToNumber: true, }, }, { label: '监测类型', field: 'monitorflag', component: 'JDictSelectTag', componentProps: { dictCode: 'user_status', placeholder: '请选择状态', stringToNumber: true, }, }, { label: '是否模拟数据', field: 'testflag', component: 'RadioGroup', defaultValue: 1, componentProps: () => { return { options: [ { label: '是', value: 1, key: '1' }, { label: '否', value: 0, key: '2' }, ], }; }, }, ]; export const formPasswordSchema: FormSchema[] = [ { label: '用户账号', field: 'username', component: 'Input', componentProps: { readOnly: true }, }, { label: '登录密码', field: 'password', component: 'StrengthMeter', componentProps: { placeholder: '请输入登录密码', }, rules: [ { required: true, message: '请输入登录密码', }, ], }, { label: '确认密码', field: 'confirmPassword', component: 'InputPassword', dynamicRules: ({ values }) => rules.confirmPassword(values, true), }, ]; export const formAgentSchema: FormSchema[] = [ { label: '', field: 'id', component: 'Input', show: false, }, { field: 'userName', label: '用户名', component: 'Input', componentProps: { readOnly: true, allowClear: false, }, }, { field: 'agentUserName', label: '代理人用户名', required: true, component: 'JSelectUser', componentProps: { rowKey: 'username', labelKey: 'realname', maxSelectCount: 10, }, }, { field: 'startTime', label: '代理开始时间', component: 'DatePicker', required: true, componentProps: { showTime: true, valueFormat: 'YYYY-MM-DD HH:mm:ss', placeholder: '请选择代理开始时间', }, }, { field: 'endTime', label: '代理结束时间', component: 'DatePicker', required: true, componentProps: { showTime: true, valueFormat: 'YYYY-MM-DD HH:mm:ss', placeholder: '请选择代理结束时间', }, }, { field: 'status', label: '状态', component: 'JDictSelectTag', defaultValue: '1', componentProps: { dictCode: 'valid_status', type: 'radioButton', }, }, ]; export const chartsColumns = [ { legend: '风量', seriesName: 'm³/min', ymax: 10000, yname: 'm³/min', linetype: 'line', yaxispos: 'left', color: '#3DF6FF', sort: 1, xRotate: 0, dataIndex: 'm3', }, { legend: '风速', seriesName: '(m/s)', ymax: 10, yname: 'm/s', linetype: 'line', yaxispos: 'right', color: '#cd5fff', sort: 2, xRotate: 0, dataIndex: 'va', }, ]; export const chartsColumnsHistory = [ { legend: '风量', seriesName: 'm³/min', ymax: 10000, yname: 'm³/min', linetype: 'line', yaxispos: 'left', color: '#3DF6FF', sort: 1, xRotate: 0, dataIndex: 'FL', }, { legend: '风速', seriesName: '(m/s)', ymax: 10, yname: 'm/s', linetype: 'line', yaxispos: 'right', color: '#cd5fff', sort: 2, xRotate: 0, dataIndex: 'windSpeed', }, ]; export const option = { xAxis: { type: 'category', boundaryGap: false, axisLine: { lineStyle: { color: '#57617B' } }, axisLabel: { color: '#ffffffcc' }, splitLine: { show: true, lineStyle: { color: '#57617B22', type: 'dashed' } }, interval: 0, rotate: 40, }, }; export function getModelComponent(is2DModel: boolean = false, sysOrgCode?: string) { // @ts-ignore return defineAsyncComponent(() => { if (!is2DModel) return import('./components/entryThree.vue'); switch (sysOrgCode) { // case '000000': // return import('./components/scanSVG.vue'); default: // return import('./components/fixedSVG.vue'); return import('./components/scanSVG.vue'); } }); }