import { BasicColumn } from '/@/components/Table'; import { FormSchema } from '/@/components/Table'; import { rules } from '/@/utils/helper/validator'; import { reactive } from 'vue'; import type { EChartsOption } from 'echarts'; import { useGlobSetting } from '/@/hooks/setting'; import { cloneDeep } from 'lodash-es'; type CtrlLockOpenType = { CtrlLockOpen: boolean | undefined; CtrlExplosionVentOpen: boolean | undefined; }; export type PointMonitorType = { valueName: string; valueCode: string; value: number | string; warnMin_201: number | string; warnMin_104: number | string; readTime: string; }; 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 tableColumns = [ { title: '', dataIndex: 'isCheck', customCell: (_, index) => { if (index % 2 == 0) { return { rowSpan: 2 }; } else { return { rowSpan: 0 }; } }, }, { title: '安装位置', dataIndex: 'address', customCell: (_, index) => { if (index % 2 == 0) { return { rowSpan: 2 }; } else { return { rowSpan: 0 }; } }, }, { title: '运行风机', dataIndex: 'childName', }, { title: '风机静压(Pa)', dataIndex: 'yc2', }, { title: '风机全压(Pa)', dataIndex: 'dqPa', }, { title: '电机流量(m³/s)', dataIndex: 'fanM3', }, { title: '电机速度(rpm/s)', dataIndex: 'fanSD', }, { title: '电机电压(V)', dataIndex: 'fanU', }, { title: '电机电流(A)', dataIndex: 'fanA', }, { title: '电机频率(Hz/s)', dataIndex: 'fanPL', }, { title: '电机功率(KW/s)', dataIndex: 'fanGL', }, { title: '振动X1(mm/s)', dataIndex: 'zdX1', }, { title: '振动Y1(mm/s)', dataIndex: 'zdY1', }, ]; export const dataColumns = () => { return [ { id: 'UXC', name: '电机轴温设定(℃)', id2: 'bearingFront2_F1', }, { id: 'VXC', name: '电机定温设定(℃)', id2: 'bearingBack2_F1' }, { id: 'WXC', name: '电机前轴温度(℃)', id2: 'stator2A_F1', }, { id: 'QZC', name: '电机后轴温度(℃)', id2: 'stator2B_F1', }, { id: 'ZCZ1C', name: '电机定子1温度(℃)', id2: 'fIA2_F1' }, { id: 'ZCZ2C', name: '电机定子2温度(℃)', id2: 'fIB2_F1' }, { id: 'FTZ1C', name: '电机定3温度(℃)', id2: 'fIC2_F1' }, ]; }; export const stateColumns = () => { return [ // { // id: 'lubeBoxTemperatureF1High', // name: '润滑站油箱油温高报警', // flag: false, // }, { id: 'lubeBoxTemperatureF1Low', name: '润滑站1油箱油温低报警', flag: true, }, { id: 'lubeTemperatureF1High', name: '润滑站1供油油温高报警', flag: true, }, // { // id: 'lubeTemperatureF1Low', // name: '润滑站1供油油温低报警', // flag: false, // }, { id: 'lubePaF1High', name: '润滑站1供油油压高报警', flag: true }, { id: 'lubePaF1Low', name: '润滑站1供油油压低报警', flag: true }, // { id: "ch4_F1High", name: "瓦斯值1高报警", flag: false }, { id: 'singleDoorF1Warn', name: '侧开风门单模报警', flag: true }, { id: 'lubeF1SlightFault', name: '稀油润滑站轻故障', flag: true }, { id: 'lubeF1SevereFault', name: '稀油润滑站重故障', flag: true }, { id: 'f1B1Fault', name: '变频器1故障', flag: true }, { id: 'f1B2Fault', name: '变频器2故障', flag: true }, { id: 'f1Fault', name: '通风机故障', flag: true }, ]; }; export const faultDeviceHeader = [ { title: '测点名称', code: 'valueName', width: '200px', }, { title: '实时数据', code: 'value', width: '110px', }, { title: '预警限值', code: 'warnMin_104', width: '110px', }, { title: '报警限值', code: 'warnMin_201', width: '110px', }, ]; export const rightFaultDeviceColumns = [ { title: '中端X', dataIndex: 'Fault_cd_ZX', // 测点名称 width: 120, }, { title: '中端X', dataIndex: 'Fault_ZX_val', // 中端X实时监测值 width: 120, }, ]; export const modalTypeArr = { centerBtnArr: [ { key: 'startSmoke', value: '一键启动/停止', permission: 'fan:startSmoke', }, { key: 'startFan', value: '一键启动/停止', permission: 'fan:startFan', }, { key: 'startFan', value: '一键启动/停止', permission: 'fan:startAndResetFan', }, { key: 'resetFan', value: '一键复位', permission: 'fan:resetFan', }, { key: 'changeSmoke', value: '不停风倒机', permission: 'fan:changeSmoke', }, { key: 'changeDirection', value: '一键反风', permission: 'fan:changeDirection', }, { key: 'frequency', value: '一键调频', permission: 'fan:frequency', }, { key: 'fbm', value: '防爆门控制', permission: 'fan:fbm', }, { key: 'kkjc', value: '工况辅助决策', permission: 'fan:kkjc', }, { key: 'zhlk', value: '自主联控', permission: 'fan:zhlk', }, ], }; export const fbmControlData = reactive({ CtrlLockOpen: false, // 远程开锁 true 为打开状态, false 为关闭状态 CtrlExplosionVentOpen: false, // 远程开门 true 为打开状态, false 为关闭状态 }); // export const assistanceData = { // '30': { // angle: 0, // Hz: 30.0, //频率 // a: -0.17624, //二次项系数 // b: 34.59747, //一次项系数 // c: 938.98517, //常数项系数 // min: 93.0, //风量下限 // max: 132.0, //风量上限 // }, // '31': { // angle: 0, // Hz: 31.0, // a: -0.17624, // b: 35.055694, // c: 851.596922, // min: 96.1, // max: 136.4, // }, // '32': { // angle: 0, // Hz: 32.0, // a: -0.17624, // b: 35.513918, // c: 768.749733, // min: 99.2, // max: 140.8, // }, // '33': { // angle: 0, // Hz: 33.0, // a: -0.17624, // b: 35.972142, // c: 690.443603, // min: 102.3, // max: 145.2, // }, // '34': { // angle: 0, // Hz: 34.0, // a: -0.17624, // b: 36.430366, // c: 616.678531, // min: 105.4, // max: 149.6, // }, // '35': { // angle: 0, // Hz: 35.0, // a: -0.17624, // b: 36.88859, // c: 547.454517, // min: 108.5, // max: 154.0, // }, // '36': { // angle: 0, // Hz: 36.0, // a: -0.17624, // b: 37.346814, // c: 482.771563, // min: 111.6, // max: 158.4, // }, // '37': { // angle: 0, // Hz: 37.0, // a: -0.17624, // b: 37.805038, // c: 422.629667, // min: 114.7, // max: 162.8, // }, // '38': { // angle: 0, // Hz: 38.0, // a: -0.17624, // b: 38.263262, // c: 367.028829, // min: 117.8, // max: 167.2, // }, // '39': { // angle: 0, // Hz: 39.0, // a: -0.17624, // b: 38.721486, // c: 315.96905, // min: 120.9, // max: 171.6, // }, // '40': { // angle: 0, // Hz: 40.0, // a: -0.17624, // b: 39.17971, // c: 269.45033, // min: 124.0, // max: 176.0, // }, // '41': { // angle: 0, // Hz: 41.0, // a: -0.17624, // b: 39.637934, // c: 227.472668, // min: 127.1, // max: 180.4, // }, // '42': { // angle: 0, // Hz: 42.0, // a: -0.17624, // b: 40.096158, // c: 190.036065, // min: 130.2, // max: 184.8, // }, // '43': { // angle: 0, // Hz: 43.0, // a: -0.17624, // b: 40.554382, // c: 157.140521, // min: 133.3, // max: 189.2, // }, // '44': { // angle: 0, // Hz: 44.0, // a: -0.17624, // b: 41.012606, // c: 128.786035, // min: 136.4, // max: 193.6, // }, // '45': { // angle: 0, // Hz: 45.0, // a: -0.17624, // b: 41.47083, // c: 104.972607, // min: 139.5, // max: 198.0, // }, // '46': { // angle: 0, // Hz: 46.0, // a: -0.17624, // b: 41.929054, // c: 85.700239, // min: 142.6, // max: 202.4, // }, // '47': { // angle: 0, // Hz: 47.0, // a: -0.17624, // b: 42.387278, // c: 70.968929, // min: 145.7, // max: 206.8, // }, // '48': { // angle: 0, // Hz: 48.0, // a: -0.17624, // b: 42.845502, // c: 60.778677, // min: 148.8, // max: 211.2, // }, // '49': { // angle: 0, // Hz: 49.0, // a: -0.17624, // b: 43.303726, // c: 55.129484, // min: 151.9, // max: 215.6, // }, // '50': { // angle: 0, // Hz: 50.0, // a: -0.17624, // b: 43.76195, // c: 54.02135, // min: 155.0, // max: 220.0, // }, // }; export const assistanceData = { '30': { angle: 0, Hz: 30.0, //频率 a: -0.17624, //二次项系数 b: 43.40947, //一次项系数 c: 97.60705999999982, //常数项系数 min: 93.0, //风量下限 max: 132.0, //风量上限 }, '31': { angle: 0, Hz: 31.0, a: -0.17624, b: 43.427094, c: 95.43614590000016, min: 96.1, max: 136.4, }, '32': { angle: 0, Hz: 32.0, a: -0.17624, b: 43.444718, c: 93.26435059999994, min: 99.2, max: 140.8, }, '33': { angle: 0, Hz: 33.0, a: -0.17624, b: 43.462342, c: 91.09167409999964, min: 102.3, max: 145.2, }, '34': { angle: 0, Hz: 34.0, a: -0.17624, b: 43.479966000000005, c: 88.91811639999969, min: 105.4, max: 149.6, }, '35': { angle: 0, Hz: 35.0, a: -0.17624, b: 43.49759, c: 86.74367749999965, min: 108.5, max: 154.0, }, '36': { angle: 0, Hz: 36.0, a: -0.17624, b: 43.515214, c: 84.56835739999997, min: 111.6, max: 158.4, }, '37': { angle: 0, Hz: 37.0, a: -0.17624, b: 43.532838, c: 82.3921561000002, min: 114.7, max: 162.8, }, '38': { angle: 0, Hz: 38.0, a: -0.17624, b: 43.550462, c: 80.21507359999941, min: 117.8, max: 167.2, }, '39': { angle: 0, Hz: 39.0, a: -0.17624, b: 43.568086, c: 78.0371098999999, min: 120.9, max: 171.6, }, '40': { angle: 0, Hz: 40.0, a: -0.17624, b: 43.58571, c: 75.85826499999985, min: 124.0, max: 176.0, }, '41': { angle: 0, Hz: 41.0, a: -0.17624, b: 43.603334, c: 73.67853890000015, min: 127.1, max: 180.4, }, '42': { angle: 0, Hz: 42.0, a: -0.17624, b: 43.620958, c: 71.4979315999999, min: 130.2, max: 184.8, }, '43': { angle: 0, Hz: 43.0, a: -0.17624, b: 43.638582, c: 69.31644309999956, min: 133.3, max: 189.2, }, '44': { angle: 0, Hz: 44.0, a: -0.17624, b: 43.656206000000005, c: 67.13407339999958, min: 136.4, max: 193.6, }, '45': { angle: 0, Hz: 45.0, a: -0.17624, b: 43.67383, c: 64.9508224999995, min: 139.5, max: 198.0, }, '46': { angle: 0, Hz: 46.0, a: -0.17624, b: 43.691454, c: 62.76669039999979, min: 142.6, max: 202.4, }, '47': { angle: 0, Hz: 47.0, a: -0.17624, b: 43.709078, c: 60.58167709999998, min: 145.7, max: 206.8, }, '48': { angle: 0, Hz: 48.0, a: -0.17624, b: 43.726702, c: 58.39578259999962, min: 148.8, max: 211.2, }, '49': { angle: 0, Hz: 49.0, a: -0.17624, b: 43.744326, c: 56.20900689999962, min: 151.9, max: 215.6, }, '50': { angle: 0, Hz: 50.0, a: -0.17624, b: 43.76195, c: 54.021349999999984, min: 155.0, max: 220.0, }, }; export const setOption = (deviceType?) => { let yMax = 4500; const { sysOrgCode } = useGlobSetting(); // const sysOrgCode = 'sdmtjthlgmk'; if (sysOrgCode == 'sdmtjtdltmk') { // 这里判断白家渠还是五当沟 if (deviceType == 'fanmain_bjq') { yMax = 5500; } else if (deviceType == 'fanmain_wdg') { yMax = 1200; } } else if (sysOrgCode == 'sdmtjtswmk') { if (deviceType == 'fanmain_bfj') { yMax = 5000; } else if (deviceType == 'fanmain_nfj') { yMax = 4500; } } else if (sysOrgCode == 'sdmtjtbdmk') { if (deviceType == 'fanmain_ljy') { yMax = 5000; } else if (deviceType == 'fanmain_zl') { yMax = 6000; } } else if (sysOrgCode == 'sdmtjtjjmk') { yMax = 6000; } else if (sysOrgCode == 'sdmtjtsgtmk') { yMax = 3000; } else if (sysOrgCode == 'sdmtjthlgmk') { yMax = 3000; } else if (sysOrgCode == 'sdmtjtdltmkhjtj') { yMax = 3000; } else if (sysOrgCode == 'sdmtjtcctrk') { yMax = 600; } else if (sysOrgCode == 'sdmtjtwlmlmk') { yMax = 4000; } else { yMax = 4500; } return reactive({ title: { text: '风机运行工况辅助曲线图', textStyle: { color: '#BF954D', }, left: 'center', top: 0, }, // backgroundColor: '#39deff', tooltip: { trigger: 'axis', axisPointer: { type: 'cross', label: { backgroundColor: '#6a7985', }, }, }, toolbox: { show: true, }, grid: { left: 8, right: 50, bottom: 0, containLabel: true, }, xAxis: { type: 'category', name: 'm³/s', nameTextStyle: { fontWeight: 600, fontSize: 13, }, splitLine: { show: true, lineStyle: { color: 'rgba(21,80,126,.5)' } }, axisLabel: { margin: 20, fontSize: 14, color: '#f1f1f199', }, boundaryGap: false, data: [], }, yAxis: { type: 'value', axisLine: { show: true, lineStyle: { color: '#006c9d', }, }, splitLine: { show: true, lineStyle: { color: 'rgba(21,80,126,.5)' } }, axisLabel: { show: true, fontSize: 14, formatter: '{value}', color: '#0071A5', }, min: 0, max: yMax, //武当沟 name: 'Pa', nameTextStyle: { fontWeight: 600, fontSize: 13, }, }, series: [], }); }; export const initData1 = () => { const assistanceData = { '30': { angle: 0, Hz: 30.0, //频率 a: -0.17624, //二次项系数 b: 43.40947, //一次项系数 c: 97.60705999999982, //常数项系数 min: 93.0, //风量下限 max: 171.0, //风量上限 }, '31': { angle: 0, Hz: 31.0, a: -0.17624, b: 43.427094, c: 95.43614590000016, min: 96.1, max: 174.4, }, '32': { angle: 0, Hz: 32.0, a: -0.17624, b: 43.444718, c: 93.26435059999994, min: 99.2, max: 177.8, }, '33': { angle: 0, Hz: 33.0, a: -0.17624, b: 43.462342, c: 91.09167409999964, min: 102.3, max: 180.2, }, '34': { angle: 0, Hz: 34.0, a: -0.17624, b: 43.479966000000005, c: 88.91811639999969, min: 105.4, max: 182.0, }, '35': { angle: 0, Hz: 35.0, a: -0.17624, b: 43.49759, c: 86.74367749999965, min: 108.5, max: 184.5, }, '36': { angle: 0, Hz: 36.0, a: -0.17624, b: 43.515214, c: 84.56835739999997, min: 111.6, max: 187.0, }, '37': { angle: 0, Hz: 37.0, a: -0.17624, b: 43.532838, c: 82.3921561000002, min: 114.7, max: 190.8, }, '38': { angle: 0, Hz: 38.0, a: -0.17624, b: 43.550462, c: 80.21507359999941, min: 117.8, max: 193.0, }, '39': { angle: 0, Hz: 39.0, a: -0.17624, b: 43.568086, c: 78.0371098999999, min: 120.9, max: 195.6, }, '40': { angle: 0, Hz: 40.0, a: -0.17624, b: 43.58571, c: 75.85826499999985, min: 123.0, max: 197.0, }, '41': { angle: 0, Hz: 41.0, a: -0.17624, b: 43.603334, c: 73.67853890000015, min: 125.1, max: 199.4, }, '42': { angle: 0, Hz: 42.0, a: -0.17624, b: 43.620958, c: 71.4979315999999, min: 128.2, max: 202.8, }, '43': { angle: 0, Hz: 43.0, a: -0.17624, b: 43.638582, c: 69.31644309999956, min: 130.3, max: 205.8, }, '44': { angle: 0, Hz: 44.0, a: -0.17624, b: 43.656206000000005, c: 67.13407339999958, min: 132.4, max: 208.5, }, '45': { angle: 0, Hz: 45.0, a: -0.17624, b: 43.67383, c: 64.9508224999995, min: 134.5, max: 211.8, }, '46': { angle: 0, Hz: 46.0, a: -0.17624, b: 43.691454, c: 62.76669039999979, min: 136.6, max: 214.4, }, '47': { angle: 0, Hz: 47.0, a: -0.17624, b: 43.709078, c: 60.58167709999998, min: 138.7, max: 217.8, }, '48': { angle: 0, Hz: 48.0, a: -0.17624, b: 43.726702, c: 58.39578259999962, min: 140.8, max: 219.2, }, '49': { angle: 0, Hz: 49.0, a: -0.17624, b: 43.744326, c: 56.20900689999962, min: 143.9, max: 221.6, }, '50': { angle: 0, Hz: 50.0, a: -0.17624, b: 43.76195, c: 54.021349999999984, min: 146.0, max: 223.0, }, }; const num = 21; const a = -0.17624; //-0.17624, const m = 2770.6411125432646, n = -124.15442010894235; let i = 21; const data = []; for (const key in assistanceData) { i -= 1; const p = i; const item = assistanceData[key]; item['b'] = 2 * a * (n + p); item['c'] = a * (n + p) * (n + p) + m - i * 50; // if (sysOrgCode == 'sdmtjtdltmk') { // // 大柳塔井整体向右下移动 // item['min'] = item['min'] + 20; // item['max'] = item['max'] + 20; // item['b'] = 2 * a * (n + p) + 3; // item['c'] = a * (n + p) * (n + p) + m - i * 60; // } else { // item['b'] = 2 * a * (n + p); // item['c'] = a * (n + p) * (n + p) + m - i * 50; // // //白家渠 // // a = -0.13424; // // item['a'] = Math.round((a + 0.002 * (num - i)) * 10000) / 10000; // // item['min'] = item['min'] + 50 + (num - i) * 2; // // item['max'] = item['max'] + 65 + (num - i) * 3.5; // // item['b'] = 2 * item['a'] * (n + p) + 8.8; // // item['c'] = item['a'] * (n + p) * (n + p) + m - i * 60; // // //武当沟 // // a = -0.17724; // // item['a'] = Math.round((a - 0.002 * (num - i)) * 10000) / 10000; // // item['min'] = item['min'] - 40 - (num - i) * 1; // // item['max'] = item['max'] - 60 - (num - i) * 0.5; // // item['b'] = 2 * item['a'] * (n + p) - 16.5; // // item['c'] = item['a'] * (n + p) * (n + p) + m - i * 40; // } data.push(item); } console.log(data); return data; }; // 大柳塔武当沟 export const initData = (deviceType?) => { const { sysOrgCode } = useGlobSetting(); // const sysOrgCode = 'sdmtjtwlmlmk'; if (sysOrgCode == 'sdmtjtdltmk') { return initDataDlt(deviceType); } else if (sysOrgCode == 'sdmtjtswmk') { return initDataSw(deviceType); } else if (sysOrgCode == 'sdmtjtbltmk') { return initDataBlt(); } else if (sysOrgCode == 'sdmtjtbdmk') { return initDataBd(deviceType); } else if (sysOrgCode == 'sdmtjtjjmk') { return initDataJj(); } else if (sysOrgCode == 'sdmtjtdltmkhjtj') { return initDataHjt(); } else if (sysOrgCode == 'sdmtjtsgtmk') { return initDataSgt(); } else if (sysOrgCode == 'sdmtjthlgmk') { return initDataSgt(); } else if (sysOrgCode == 'sdmtjtyjlmk') { return initDataJj(); } else if (sysOrgCode == 'sdmtjtcctrk') { return initDataCctr(); } else if (sysOrgCode == 'sdmtjtwlmlmk') { return initDataWlml(); } else { return initData1(); } }; // 乌兰木伦 const initDataWlml = () => { const data: any[] = []; data.push({ angle: -3, Hz: -3, a: -15.607, b: 6242.3, c: -621571, min: 204, max: 212, }); data.push({ angle: -2, Hz: -2, a: -8.3134, b: 3178.9, c: -300224, min: 204, max: 211, }); data.push({ angle: 0, Hz: 0, a: -8.9632, b: 3751.3, c: -389068, min: 216, max: 227.2, }); data.push({ angle: 1, Hz: 1, a: -12.77, b: 5415.9, c: -571193, min: 216, max: 226.8, }); data.push({ angle: 2, Hz: 2, a: -12.432, b: 5635.5, c: -635361, min: 234.5, max: 242.4, }); data.push({ angle: 3, Hz: 3, a: -2.9424, b: 1147.7, c: -104620, min: 234.5, max: 243.5, }); return data; }; // 石圪台 const initDataCctr = () => { const data: any[] = []; data.push({ angle: 0, Hz: 0, a: -0.0221, b: -1.2494, c: 552.28, min: 52, max: 125, }); data.push({ angle: 3, Hz: 3, a: -0.0232, b: -0.8204, c: 603.39, min: 50, max: 139, }); data.push({ angle: 6, Hz: 6, a: -0.0417, b: 3.1004, c: 498.9, min: 45, max: 150, }); return data; }; // 石圪台 const initDataSgt = () => { const data: any[] = []; data.push({ angle: -6, Hz: -6, a: -0.0438, b: 14.5078, c: 986.6, min: 130, max: 370, }); data.push({ angle: -3, Hz: -3, a: -0.035, b: 11.7875, c: 1226.8, min: 140, max: 400, }); data.push({ angle: 0, Hz: 0, a: -0.0354, b: 13.6986, c: 1078.6, min: 150, max: 430, }); data.push({ angle: 3, Hz: 3, a: -0.0444, b: 19.5673, c: 504, min: 170, max: 445, }); data.push({ angle: 6, Hz: 6, a: -0.0507, b: 24.3336, c: -70, min: 190, max: 460, }); return data; }; // 大柳塔白家渠 const initDataDlt = (deviceType?) => { if (deviceType == 'fanmain_bjq') { const num = 2; const obj = { angle: 0, Hz: -0, a: -0.0656, b: 17.398283350755946, c: 3241.38254718147, min: 300, max: 1100.0, }; const a = -0.0656, m = 17.398283350755946, n = 3241.38254718147; const maxList = [339.4, 359.4, 379.4, 399.4, 419.4]; const minList = [143, 152, 161, 170, 180]; const data = []; for (let i = -2; i <= num; i++) { const item = cloneDeep(obj); item['Hz'] = 0 + i * 3; item['c'] = n + 5 * i; item['b'] = m + i * 2; item['max'] = maxList[i + 2]; item['min'] = minList[i + 2]; data.push(item); } return data; } else if (deviceType == 'fanmain_wdg') { // 武当沟 const num = 2; const obj = { angle: 0, Hz: -0, a: -0.1424, b: 26.316238660115914, c: -370.62808803303426, min: 300, max: 1100.0, }; const a = -0.1424, m = 26.086238660115914, n = -370.62808803303426; const maxList = [138, 148, 158, 168, 178]; const minList = [90, 95, 100, 105, 110]; const data = []; for (let i = -2; i <= num; i++) { const item = cloneDeep(obj); item['Hz'] = 0 + i * 3; item['c'] = n + 1 * i; item['b'] = m + i * 1.3; item['max'] = maxList[i + 2]; item['min'] = minList[i + 2]; data.push(item); } return data; } }; const initDataSw = (deviceType?) => { if (deviceType == 'fanmain_bfj') { // 北风井 const num = 2; const obj = { angle: 0, Hz: 0, a: -0.2486, b: 14.998999006593294, c: 3672.488224167444, min: 300, max: 1100.0, }; const a = -0.2486, m = 14.998999006593294, n = 3672.488224167444; const maxList = [115.67, 130.67, 146.67, 165.67, 185.67]; const minList = [50, 60, 70, 85, 100]; const data = []; for (let i = -2; i <= num; i++) { const item = cloneDeep(obj); item['Hz'] = 0 + i * 3; item['c'] = n + 5 * i; item['b'] = m + i * 8; item['max'] = maxList[i + 2]; item['min'] = minList[i + 2]; data.push(item); } return data; } else if (deviceType == 'fanmain_nfj') { // 南风井 const num = 2; const obj = { angle: 0, Hz: -0, a: -0.0445, b: 15.46559392987956, c: 2607.959183673496, min: 300, max: 1100.0, }; const a = -0.0455, m = 15.46559392987956, n = 2607.959183673496; const maxList = [315, 345, 375, 410, 450, 500]; const minList = [90, 105, 120, 145, 170, 185]; const data = []; for (let i = -3; i <= num; i++) { const item = cloneDeep(obj); item['Hz'] = 0 + i * 3; item['a'] = Math.round((a - 0.003 * (num - i)) * 10000) / 10000; item['c'] = n + 10 * i; item['b'] = m + i * 1.2; item['max'] = maxList[i + 3]; item['min'] = minList[i + 3]; data.push(item); } return data; } }; const initDataHjt = () => { const data: any[] = []; data.push({ angle: -10, Hz: -10, a: -0.0357, b: 13.657, c: 515.38, min: 170, max: 400, }); data.push({ angle: -7, Hz: -7, a: -0.0371, b: 15.478, c: 452.43, min: 170, max: 400, }); data.push({ angle: -5, Hz: -5, a: -0.0357, b: 13.657, c: 515.38, min: 170, max: 400, }); data.push({ angle: -4, Hz: -4, a: -0.0361, b: 16.706, c: 228.85, min: 170, max: 400, }); data.push({ angle: -2, Hz: -2, a: -0.0357, b: 15.478, c: 452.43, min: 170, max: 400, }); data.push({ angle: 1, Hz: 1, a: -0.0361, b: 16.706, c: 228.85, min: 170, max: 400, }); return data; }; const initDataBd = (deviceType?) => { if (deviceType == 'fanmain_ljy') { // 刘家宴 const num = 2; const obj = { angle: 0, Hz: 0, a: -0.02674, b: 10.070078367532346, c: 3048.210229423783, min: 300, max: 1100.0, }; const a = -0.02774, m = 10.090078367532346, n = 3988.210229423783; const maxList = [370, 410, 450, 500, 560, 624]; const minList = [70, 80, 100, 130, 160, 210]; const data = []; let index = 0; for (let i = -3; i <= num; i++) { ++index; const item = cloneDeep(obj); item['a'] = Math.round((a - 0.002 * (6 - index)) * 10000) / 10000; item['Hz'] = 0 + i * 3; item['c'] = n + 10 * i; item['b'] = m + i * 1.3; item['max'] = maxList[i + 3]; item['min'] = minList[i + 3]; data.push(item); } return data; } else if (deviceType == 'fanmain_zl') { // 枣庄 const num = 2; const obj = { angle: 0, Hz: 0, a: -0.02674, b: 10.070078367532346, c: 3048.210229423783, min: 300, max: 1100.0, }; const a = -0.05874, m = 17.090078367532346, n = 3588.210229423783; const maxList = [315, 344, 379, 415, 454]; const minList = [160, 170, 180, 190, 200, 210]; const data = []; let index = 0; for (let i = -2; i <= num; i++) { ++index; const item = cloneDeep(obj); item['a'] = Math.round((a - 0.003 * (6 - index)) * 10000) / 10000; item['Hz'] = 0 + i * 3; item['c'] = n + 6 * i; item['b'] = m + i * 1.9; item['max'] = maxList[i + 2]; item['min'] = minList[i + 2]; data.push(item); } return data; } }; const initDataBlt = () => { const num = 2; const obj = { angle: 0, Hz: 0, a: -0.02674, b: 10.070078367532346, c: 3048.210229423783, min: 300, max: 1100.0, }; const a = -0.02874, m = 10.070078367532346, n = 3048.210229423783; const maxList = [370, 400, 440, 480, 525, 580]; const minList = [70, 80, 100, 130, 160, 210]; const data = []; let index = 0; for (let i = -3; i <= num; i++) { ++index; const item = cloneDeep(obj); item['a'] = Math.round((a - 0.002 * (6 - index)) * 10000) / 10000; item['Hz'] = 0 + i * 3; item['c'] = n + 10 * i; item['b'] = m + i * 1; item['max'] = maxList[i + 3]; item['min'] = minList[i + 3]; data.push(item); } return data; }; const initDataJj = () => { const num = 2; const obj = { angle: 0, Hz: 0, a: -0.02674, b: 10.070078367532346, c: 3048.210229423783, min: 300, max: 1100.0, }; const a = -0.09874, m = 21.090078367532346, n = 3588.210229423783; const maxList = [239, 264, 292, 322, 354]; const minList = [60, 70, 80, 90, 100, 110]; const data = []; let index = 0; for (let i = -2; i <= num; i++) { ++index; const item = cloneDeep(obj); item['a'] = Math.round((a - 0.003 * (6 - index)) * 10000) / 10000; item['Hz'] = 0 + i * 3; item['c'] = n + 10 * i; item['b'] = m + i * 3; item['max'] = maxList[i + 2]; item['min'] = minList[i + 2]; data.push(item); } return data; }; export const fanInfoData = reactive({ fj: '一号回风井', xh: 'FBCDZ No.29', gl: '2×500', edgl: '740', eddy: '10000', eddl: '38.4', flfw: '110~260', fyfw: '200~4100', fbdj: 'ExdI', ccrq: '2010.07', sccj: '南阳防爆', tjfs: '变频调节', plfw: '30~50', }); export const fanInfo = [ { title: '风井', code: 'windWell_mainFanInfo', value: '一号回风井', }, { title: '型号', code: 'modelType_mainFanInfo', value: 'FBCDZ No.29', }, { title: '功率(kW)', code: 'powerRating_mainFanInfo', value: '2×500', }, { title: '额定转速(r/min)', code: 'ratedSpeed_mainFanInfo', value: '740', }, { title: '额定电压(V)', code: 'ratedVoltage_mainFanInfo', value: '10000', }, { title: '额定电流(A)', code: 'ratedCurrent_mainFanInfo', value: '38.4', }, { title: '风量范围(m³/s)', code: 'airflowRange_mainFanInfo', value: '110~260', }, { title: '风压范围(Pa)', code: 'pressureRange_mainFanInfo', value: '200~4100', }, { title: '防爆等级', code: 'explosionProofRating_mainFanInfo', value: 'ExdI', }, { title: '出厂日期', code: 'manufactureDate_mainFanInfo', value: '2010.07', }, { title: '生产厂家', code: 'manufacturer_mainFanInfo', value: '南阳防爆', }, { title: '调节方式', code: 'adjustmentMethod_mainFanInfo', value: '变频调节', }, { title: '频率可调范围(Hz)', code: 'angleAdjustableRange_mainFanInfo', value: '30~50', }, ]; export const getSchamas = (): FormSchema[] => { return [ { field: 'fj', component: 'Input', label: '风井', colProps: { span: 6, }, }, { field: 'xh', component: 'Input', label: '型号', colProps: { span: 6, }, }, { field: 'gl', component: 'Input', label: '功率(kW)', colProps: { span: 6, }, }, { field: 'edgl', component: 'Input', label: '额定转速(r/min)', colProps: { span: 6, }, }, { field: 'eddy', component: 'Input', label: '额定电压(V)', colProps: { span: 6, }, }, { field: 'eddl', component: 'Input', label: '额定电流(A)', colProps: { span: 6, }, }, { field: 'flfw', component: 'Input', label: '风量范围(m³/s)', colProps: { span: 6, }, }, { field: 'fyfw', component: 'Input', label: '风压范围(Pa)', colProps: { span: 6, }, }, { field: 'fbdj', component: 'Select', label: '防爆等级', colProps: { span: 6, }, componentProps: { options: [ { label: 'ExdI', value: 'ExdI', key: '1', }, ], }, }, { field: 'ccrq', component: 'Input', label: '出厂日期', colProps: { span: 6, }, }, { field: 'sccj', component: 'Input', label: '生产厂家', colProps: { span: 6, }, }, { field: 'tjfs', component: 'Select', label: '调节方式', colProps: { span: 6, }, componentProps: { options: [ { label: '变频调节', value: '变频调节', key: '1', }, ], }, }, { field: 'plfw', component: 'Input', label: '频率可调范围(Hz)', colProps: { span: 6, }, }, ]; }; export const getSchamas1 = (): FormSchema[] => { return [ { field: 'Hz', component: 'InputNumber', label: '频率(Hz)', required: true, colProps: { span: 6, }, }, { field: 'a', component: 'InputNumber', label: '二次项系数', required: true, colProps: { span: 6, }, }, { field: 'b', component: 'InputNumber', label: '一次项系数', required: true, colProps: { span: 6, }, }, { field: 'c', component: 'InputNumber', label: '常数项系数', required: true, colProps: { span: 6, }, }, { field: 'min', component: 'InputNumber', label: '风量下限(m³/s)', required: true, colProps: { span: 6, }, }, { field: 'max', component: 'InputNumber', label: '风量上限(m³/s)', required: true, colProps: { span: 6, }, }, ]; }; export const lineFormData = reactive({ Hz: null, a: null, b: null, c: null, min: null, max: null, });