main.data.ts 45 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317
  1. import { BasicColumn } from '/@/components/Table';
  2. import { FormSchema } from '/@/components/Table';
  3. import { reactive, defineAsyncComponent } from 'vue';
  4. import type { EChartsOption } from 'echarts';
  5. import { useGlobSetting } from '/@/hooks/setting';
  6. import { cloneDeep } from 'lodash-es';
  7. import EntryThree from './components/entryThree.vue';
  8. type CtrlLockOpenType = {
  9. CtrlLockOpen: boolean | undefined;
  10. CtrlExplosionVentOpen: boolean | undefined;
  11. };
  12. export type PointMonitorType = {
  13. valueName: string;
  14. valueCode: string;
  15. value: number | string;
  16. warnMin_201: number | string;
  17. warnMin_104: number | string;
  18. readTime: string;
  19. };
  20. export const columns: BasicColumn[] = [
  21. {
  22. title: '名称',
  23. dataIndex: 'strname',
  24. width: 120,
  25. },
  26. {
  27. title: '安装位置',
  28. dataIndex: 'strinstallpos',
  29. width: 100,
  30. },
  31. {
  32. title: '是否为常闭型',
  33. dataIndex: 'bnormalclose',
  34. width: 100,
  35. // customRender: render.renderAvatar,
  36. },
  37. {
  38. title: '净宽',
  39. dataIndex: 'fclearwidth',
  40. width: 80,
  41. },
  42. {
  43. title: '净高',
  44. dataIndex: 'fclearheight',
  45. width: 100,
  46. },
  47. {
  48. title: '风门道数',
  49. dataIndex: 'ndoorcount',
  50. width: 100,
  51. },
  52. {
  53. title: '所属分站',
  54. width: 150,
  55. dataIndex: 'stationname',
  56. },
  57. {
  58. title: '点表',
  59. width: 100,
  60. dataIndex: 'strtype',
  61. },
  62. {
  63. title: '监测类型',
  64. dataIndex: 'monitorflag',
  65. width: 100,
  66. },
  67. {
  68. title: '是否模拟数据',
  69. dataIndex: 'testflag',
  70. width: 100,
  71. },
  72. ];
  73. export const recycleColumns: BasicColumn[] = [
  74. {
  75. title: '名称',
  76. dataIndex: 'strname',
  77. width: 100,
  78. },
  79. {
  80. title: '是否为常闭型',
  81. dataIndex: 'bnormalclose',
  82. width: 100,
  83. },
  84. ];
  85. export const searchFormSchema: FormSchema[] = [
  86. {
  87. label: '名称',
  88. field: 'strname',
  89. component: 'Input',
  90. colProps: { span: 6 },
  91. },
  92. {
  93. label: '安装位置',
  94. field: 'strinstallpos',
  95. component: 'Input',
  96. colProps: { span: 6 },
  97. },
  98. {
  99. label: '是否为常闭型',
  100. field: 'bnormalclose',
  101. component: 'JDictSelectTag',
  102. componentProps: {
  103. dictCode: 'user_status',
  104. placeholder: '请选择读写类型',
  105. stringToNumber: true,
  106. },
  107. colProps: { span: 6 },
  108. },
  109. ];
  110. export const formSchema: FormSchema[] = [
  111. {
  112. label: '',
  113. field: 'id',
  114. component: 'Input',
  115. show: false,
  116. },
  117. {
  118. label: '名称',
  119. field: 'strname',
  120. component: 'Input',
  121. },
  122. {
  123. label: '安装位置',
  124. field: 'strinstallpos',
  125. component: 'Input',
  126. },
  127. {
  128. label: '是否为常闭型',
  129. field: 'bnormalclose',
  130. component: 'RadioGroup',
  131. defaultValue: 1,
  132. componentProps: () => {
  133. return {
  134. options: [
  135. { label: '是', value: 1, key: '1' },
  136. { label: '否', value: 0, key: '2' },
  137. ],
  138. };
  139. },
  140. },
  141. {
  142. label: '净宽',
  143. field: 'fclearwidth',
  144. component: 'Input',
  145. },
  146. {
  147. label: '净高',
  148. field: 'fclearheight',
  149. component: 'Input',
  150. },
  151. {
  152. label: '风门道数',
  153. field: 'ndoorcount',
  154. component: 'Input',
  155. },
  156. {
  157. label: '所属分站',
  158. field: 'stationname',
  159. component: 'JDictSelectTag',
  160. componentProps: {
  161. dictCode: 'user_status',
  162. placeholder: '请选择状态',
  163. stringToNumber: true,
  164. },
  165. },
  166. {
  167. label: '点表',
  168. field: 'strtype',
  169. component: 'JDictSelectTag',
  170. componentProps: {
  171. dictCode: 'user_status',
  172. placeholder: '请选择状态',
  173. stringToNumber: true,
  174. },
  175. },
  176. {
  177. label: '监测类型',
  178. field: 'monitorflag',
  179. component: 'JDictSelectTag',
  180. componentProps: {
  181. dictCode: 'user_status',
  182. placeholder: '请选择状态',
  183. stringToNumber: true,
  184. },
  185. },
  186. {
  187. label: '是否模拟数据',
  188. field: 'testflag',
  189. component: 'RadioGroup',
  190. defaultValue: 1,
  191. componentProps: () => {
  192. return {
  193. options: [
  194. { label: '是', value: 1, key: '1' },
  195. { label: '否', value: 0, key: '2' },
  196. ],
  197. };
  198. },
  199. },
  200. ];
  201. export const tableColumns = [
  202. {
  203. title: '',
  204. dataIndex: 'isCheck',
  205. customCell: (_, index) => {
  206. if (index % 2 == 0) {
  207. return { rowSpan: 2 };
  208. } else {
  209. return { rowSpan: 0 };
  210. }
  211. },
  212. },
  213. {
  214. title: '安装位置',
  215. dataIndex: 'address',
  216. customCell: (_, index) => {
  217. if (index % 2 == 0) {
  218. return { rowSpan: 2 };
  219. } else {
  220. return { rowSpan: 0 };
  221. }
  222. },
  223. },
  224. {
  225. title: '运行风机',
  226. dataIndex: 'childName',
  227. },
  228. {
  229. title: '风机静压(Pa)',
  230. dataIndex: 'yc2',
  231. },
  232. {
  233. title: '风机全压(Pa)',
  234. dataIndex: 'dqPa',
  235. },
  236. {
  237. title: '电机流量(m³/s)',
  238. dataIndex: 'fanM3',
  239. },
  240. {
  241. title: '电机速度(rpm/s)',
  242. dataIndex: 'fanSD',
  243. },
  244. {
  245. title: '电机电压(V)',
  246. dataIndex: 'fanU',
  247. },
  248. {
  249. title: '电机电流(A)',
  250. dataIndex: 'fanA',
  251. },
  252. {
  253. title: '电机频率(Hz/s)',
  254. dataIndex: 'fanPL',
  255. },
  256. {
  257. title: '电机功率(KW/s)',
  258. dataIndex: 'fanGL',
  259. },
  260. {
  261. title: '振动X1(mm/s)',
  262. dataIndex: 'zdX1',
  263. },
  264. {
  265. title: '振动Y1(mm/s)',
  266. dataIndex: 'zdY1',
  267. },
  268. ];
  269. export const dataColumns = () => {
  270. return [
  271. {
  272. id: 'UXC',
  273. name: '电机轴温设定(℃)',
  274. id2: 'bearingFront2_F1',
  275. },
  276. { id: 'VXC', name: '电机定温设定(℃)', id2: 'bearingBack2_F1' },
  277. {
  278. id: 'WXC',
  279. name: '电机前轴温度(℃)',
  280. id2: 'stator2A_F1',
  281. },
  282. {
  283. id: 'QZC',
  284. name: '电机后轴温度(℃)',
  285. id2: 'stator2B_F1',
  286. },
  287. { id: 'ZCZ1C', name: '电机定子1温度(℃)', id2: 'fIA2_F1' },
  288. { id: 'ZCZ2C', name: '电机定子2温度(℃)', id2: 'fIB2_F1' },
  289. { id: 'FTZ1C', name: '电机定3温度(℃)', id2: 'fIC2_F1' },
  290. ];
  291. };
  292. export const stateColumns = () => {
  293. return [
  294. // {
  295. // id: 'lubeBoxTemperatureF1High',
  296. // name: '润滑站油箱油温高报警',
  297. // flag: false,
  298. // },
  299. {
  300. id: 'lubeBoxTemperatureF1Low',
  301. name: '润滑站1油箱油温低报警',
  302. flag: true,
  303. },
  304. {
  305. id: 'lubeTemperatureF1High',
  306. name: '润滑站1供油油温高报警',
  307. flag: true,
  308. },
  309. // {
  310. // id: 'lubeTemperatureF1Low',
  311. // name: '润滑站1供油油温低报警',
  312. // flag: false,
  313. // },
  314. { id: 'lubePaF1High', name: '润滑站1供油油压高报警', flag: true },
  315. { id: 'lubePaF1Low', name: '润滑站1供油油压低报警', flag: true },
  316. // { id: "ch4_F1High", name: "瓦斯值1高报警", flag: false },
  317. { id: 'singleDoorF1Warn', name: '侧开风门单模报警', flag: true },
  318. { id: 'lubeF1SlightFault', name: '稀油润滑站轻故障', flag: true },
  319. { id: 'lubeF1SevereFault', name: '稀油润滑站重故障', flag: true },
  320. { id: 'f1B1Fault', name: '变频器1故障', flag: true },
  321. { id: 'f1B2Fault', name: '变频器2故障', flag: true },
  322. { id: 'f1Fault', name: '通风机故障', flag: true },
  323. ];
  324. };
  325. export const faultDeviceHeader = [
  326. {
  327. title: '测点名称',
  328. code: 'valueName',
  329. width: '200px',
  330. },
  331. {
  332. title: '实时数据',
  333. code: 'value',
  334. width: '110px',
  335. },
  336. {
  337. title: '预警限值',
  338. code: 'warnMin_104',
  339. width: '110px',
  340. },
  341. {
  342. title: '报警限值',
  343. code: 'warnMin_201',
  344. width: '110px',
  345. },
  346. ];
  347. export const rightFaultDeviceColumns = [
  348. {
  349. title: '中端X',
  350. dataIndex: 'Fault_cd_ZX', // 测点名称
  351. width: 120,
  352. },
  353. {
  354. title: '中端X',
  355. dataIndex: 'Fault_ZX_val', // 中端X实时监测值
  356. width: 120,
  357. },
  358. ];
  359. export const modalTypeArr = {
  360. centerBtnArr: [
  361. {
  362. key: 'startSmoke',
  363. value: '一键启动/停止',
  364. permission: 'fan:startSmoke',
  365. },
  366. {
  367. key: 'startFan',
  368. value: '一键启动/停止',
  369. permission: 'fan:startFan',
  370. },
  371. {
  372. key: 'startFan',
  373. value: '一键启动/停止',
  374. permission: 'fan:startAndResetFan',
  375. },
  376. {
  377. key: 'resetFan',
  378. value: '一键复位',
  379. permission: 'fan:resetFan',
  380. },
  381. {
  382. key: 'changeSmoke',
  383. value: '不停风倒机',
  384. permission: 'fan:changeSmoke',
  385. },
  386. {
  387. key: 'changeDirection',
  388. value: '一键反风',
  389. permission: 'fan:changeDirection',
  390. },
  391. {
  392. key: 'frequency',
  393. value: '一键调频',
  394. permission: 'fan:frequency',
  395. },
  396. {
  397. key: 'fbm',
  398. value: '防爆门控制',
  399. permission: 'fan:fbm',
  400. },
  401. {
  402. key: 'kkjc',
  403. value: '工况辅助决策',
  404. permission: 'fan:kkjc',
  405. },
  406. {
  407. key: 'zhlk',
  408. value: '自主联控',
  409. permission: 'fan:zhlk',
  410. },
  411. {
  412. key: 'sdyc',
  413. value: '手动/远程',
  414. permission: 'fan:sdyc',
  415. },
  416. {
  417. key: 'zzcz',
  418. value: '终止操作',
  419. permission: 'fan:zzcz',
  420. },
  421. ],
  422. };
  423. export const fbmControlData = <CtrlLockOpenType>reactive({
  424. CtrlLockOpen: false, // 远程开锁 true 为打开状态, false 为关闭状态
  425. CtrlExplosionVentOpen: false, // 远程开门 true 为打开状态, false 为关闭状态
  426. });
  427. // export const assistanceData = {
  428. // '30': {
  429. // angle: 0,
  430. // Hz: 30.0, //频率
  431. // a: -0.17624, //二次项系数
  432. // b: 34.59747, //一次项系数
  433. // c: 938.98517, //常数项系数
  434. // min: 93.0, //风量下限
  435. // max: 132.0, //风量上限
  436. // },
  437. // '31': {
  438. // angle: 0,
  439. // Hz: 31.0,
  440. // a: -0.17624,
  441. // b: 35.055694,
  442. // c: 851.596922,
  443. // min: 96.1,
  444. // max: 136.4,
  445. // },
  446. // '32': {
  447. // angle: 0,
  448. // Hz: 32.0,
  449. // a: -0.17624,
  450. // b: 35.513918,
  451. // c: 768.749733,
  452. // min: 99.2,
  453. // max: 140.8,
  454. // },
  455. // '33': {
  456. // angle: 0,
  457. // Hz: 33.0,
  458. // a: -0.17624,
  459. // b: 35.972142,
  460. // c: 690.443603,
  461. // min: 102.3,
  462. // max: 145.2,
  463. // },
  464. // '34': {
  465. // angle: 0,
  466. // Hz: 34.0,
  467. // a: -0.17624,
  468. // b: 36.430366,
  469. // c: 616.678531,
  470. // min: 105.4,
  471. // max: 149.6,
  472. // },
  473. // '35': {
  474. // angle: 0,
  475. // Hz: 35.0,
  476. // a: -0.17624,
  477. // b: 36.88859,
  478. // c: 547.454517,
  479. // min: 108.5,
  480. // max: 154.0,
  481. // },
  482. // '36': {
  483. // angle: 0,
  484. // Hz: 36.0,
  485. // a: -0.17624,
  486. // b: 37.346814,
  487. // c: 482.771563,
  488. // min: 111.6,
  489. // max: 158.4,
  490. // },
  491. // '37': {
  492. // angle: 0,
  493. // Hz: 37.0,
  494. // a: -0.17624,
  495. // b: 37.805038,
  496. // c: 422.629667,
  497. // min: 114.7,
  498. // max: 162.8,
  499. // },
  500. // '38': {
  501. // angle: 0,
  502. // Hz: 38.0,
  503. // a: -0.17624,
  504. // b: 38.263262,
  505. // c: 367.028829,
  506. // min: 117.8,
  507. // max: 167.2,
  508. // },
  509. // '39': {
  510. // angle: 0,
  511. // Hz: 39.0,
  512. // a: -0.17624,
  513. // b: 38.721486,
  514. // c: 315.96905,
  515. // min: 120.9,
  516. // max: 171.6,
  517. // },
  518. // '40': {
  519. // angle: 0,
  520. // Hz: 40.0,
  521. // a: -0.17624,
  522. // b: 39.17971,
  523. // c: 269.45033,
  524. // min: 124.0,
  525. // max: 176.0,
  526. // },
  527. // '41': {
  528. // angle: 0,
  529. // Hz: 41.0,
  530. // a: -0.17624,
  531. // b: 39.637934,
  532. // c: 227.472668,
  533. // min: 127.1,
  534. // max: 180.4,
  535. // },
  536. // '42': {
  537. // angle: 0,
  538. // Hz: 42.0,
  539. // a: -0.17624,
  540. // b: 40.096158,
  541. // c: 190.036065,
  542. // min: 130.2,
  543. // max: 184.8,
  544. // },
  545. // '43': {
  546. // angle: 0,
  547. // Hz: 43.0,
  548. // a: -0.17624,
  549. // b: 40.554382,
  550. // c: 157.140521,
  551. // min: 133.3,
  552. // max: 189.2,
  553. // },
  554. // '44': {
  555. // angle: 0,
  556. // Hz: 44.0,
  557. // a: -0.17624,
  558. // b: 41.012606,
  559. // c: 128.786035,
  560. // min: 136.4,
  561. // max: 193.6,
  562. // },
  563. // '45': {
  564. // angle: 0,
  565. // Hz: 45.0,
  566. // a: -0.17624,
  567. // b: 41.47083,
  568. // c: 104.972607,
  569. // min: 139.5,
  570. // max: 198.0,
  571. // },
  572. // '46': {
  573. // angle: 0,
  574. // Hz: 46.0,
  575. // a: -0.17624,
  576. // b: 41.929054,
  577. // c: 85.700239,
  578. // min: 142.6,
  579. // max: 202.4,
  580. // },
  581. // '47': {
  582. // angle: 0,
  583. // Hz: 47.0,
  584. // a: -0.17624,
  585. // b: 42.387278,
  586. // c: 70.968929,
  587. // min: 145.7,
  588. // max: 206.8,
  589. // },
  590. // '48': {
  591. // angle: 0,
  592. // Hz: 48.0,
  593. // a: -0.17624,
  594. // b: 42.845502,
  595. // c: 60.778677,
  596. // min: 148.8,
  597. // max: 211.2,
  598. // },
  599. // '49': {
  600. // angle: 0,
  601. // Hz: 49.0,
  602. // a: -0.17624,
  603. // b: 43.303726,
  604. // c: 55.129484,
  605. // min: 151.9,
  606. // max: 215.6,
  607. // },
  608. // '50': {
  609. // angle: 0,
  610. // Hz: 50.0,
  611. // a: -0.17624,
  612. // b: 43.76195,
  613. // c: 54.02135,
  614. // min: 155.0,
  615. // max: 220.0,
  616. // },
  617. // };
  618. export const assistanceData = {
  619. '30': {
  620. angle: 0,
  621. Hz: 30.0, //频率
  622. a: -0.17624, //二次项系数
  623. b: 43.40947, //一次项系数
  624. c: 97.60705999999982, //常数项系数
  625. min: 93.0, //风量下限
  626. max: 132.0, //风量上限
  627. },
  628. '31': {
  629. angle: 0,
  630. Hz: 31.0,
  631. a: -0.17624,
  632. b: 43.427094,
  633. c: 95.43614590000016,
  634. min: 96.1,
  635. max: 136.4,
  636. },
  637. '32': {
  638. angle: 0,
  639. Hz: 32.0,
  640. a: -0.17624,
  641. b: 43.444718,
  642. c: 93.26435059999994,
  643. min: 99.2,
  644. max: 140.8,
  645. },
  646. '33': {
  647. angle: 0,
  648. Hz: 33.0,
  649. a: -0.17624,
  650. b: 43.462342,
  651. c: 91.09167409999964,
  652. min: 102.3,
  653. max: 145.2,
  654. },
  655. '34': {
  656. angle: 0,
  657. Hz: 34.0,
  658. a: -0.17624,
  659. b: 43.479966000000005,
  660. c: 88.91811639999969,
  661. min: 105.4,
  662. max: 149.6,
  663. },
  664. '35': {
  665. angle: 0,
  666. Hz: 35.0,
  667. a: -0.17624,
  668. b: 43.49759,
  669. c: 86.74367749999965,
  670. min: 108.5,
  671. max: 154.0,
  672. },
  673. '36': {
  674. angle: 0,
  675. Hz: 36.0,
  676. a: -0.17624,
  677. b: 43.515214,
  678. c: 84.56835739999997,
  679. min: 111.6,
  680. max: 158.4,
  681. },
  682. '37': {
  683. angle: 0,
  684. Hz: 37.0,
  685. a: -0.17624,
  686. b: 43.532838,
  687. c: 82.3921561000002,
  688. min: 114.7,
  689. max: 162.8,
  690. },
  691. '38': {
  692. angle: 0,
  693. Hz: 38.0,
  694. a: -0.17624,
  695. b: 43.550462,
  696. c: 80.21507359999941,
  697. min: 117.8,
  698. max: 167.2,
  699. },
  700. '39': {
  701. angle: 0,
  702. Hz: 39.0,
  703. a: -0.17624,
  704. b: 43.568086,
  705. c: 78.0371098999999,
  706. min: 120.9,
  707. max: 171.6,
  708. },
  709. '40': {
  710. angle: 0,
  711. Hz: 40.0,
  712. a: -0.17624,
  713. b: 43.58571,
  714. c: 75.85826499999985,
  715. min: 124.0,
  716. max: 176.0,
  717. },
  718. '41': {
  719. angle: 0,
  720. Hz: 41.0,
  721. a: -0.17624,
  722. b: 43.603334,
  723. c: 73.67853890000015,
  724. min: 127.1,
  725. max: 180.4,
  726. },
  727. '42': {
  728. angle: 0,
  729. Hz: 42.0,
  730. a: -0.17624,
  731. b: 43.620958,
  732. c: 71.4979315999999,
  733. min: 130.2,
  734. max: 184.8,
  735. },
  736. '43': {
  737. angle: 0,
  738. Hz: 43.0,
  739. a: -0.17624,
  740. b: 43.638582,
  741. c: 69.31644309999956,
  742. min: 133.3,
  743. max: 189.2,
  744. },
  745. '44': {
  746. angle: 0,
  747. Hz: 44.0,
  748. a: -0.17624,
  749. b: 43.656206000000005,
  750. c: 67.13407339999958,
  751. min: 136.4,
  752. max: 193.6,
  753. },
  754. '45': {
  755. angle: 0,
  756. Hz: 45.0,
  757. a: -0.17624,
  758. b: 43.67383,
  759. c: 64.9508224999995,
  760. min: 139.5,
  761. max: 198.0,
  762. },
  763. '46': {
  764. angle: 0,
  765. Hz: 46.0,
  766. a: -0.17624,
  767. b: 43.691454,
  768. c: 62.76669039999979,
  769. min: 142.6,
  770. max: 202.4,
  771. },
  772. '47': {
  773. angle: 0,
  774. Hz: 47.0,
  775. a: -0.17624,
  776. b: 43.709078,
  777. c: 60.58167709999998,
  778. min: 145.7,
  779. max: 206.8,
  780. },
  781. '48': {
  782. angle: 0,
  783. Hz: 48.0,
  784. a: -0.17624,
  785. b: 43.726702,
  786. c: 58.39578259999962,
  787. min: 148.8,
  788. max: 211.2,
  789. },
  790. '49': {
  791. angle: 0,
  792. Hz: 49.0,
  793. a: -0.17624,
  794. b: 43.744326,
  795. c: 56.20900689999962,
  796. min: 151.9,
  797. max: 215.6,
  798. },
  799. '50': {
  800. angle: 0,
  801. Hz: 50.0,
  802. a: -0.17624,
  803. b: 43.76195,
  804. c: 54.021349999999984,
  805. min: 155.0,
  806. max: 220.0,
  807. },
  808. };
  809. export const setOption = (deviceType?) => {
  810. let yMax = 4500,
  811. yMin = 0;
  812. const { sysOrgCode } = useGlobSetting();
  813. // const sysOrgCode = 'yjmdhswmk';
  814. if (sysOrgCode == 'sdmtjtdltmk') {
  815. // 这里判断白家渠还是五当沟
  816. if (deviceType == 'fanmain_bjq') {
  817. yMax = 5500;
  818. } else if (deviceType == 'fanmain_wdg') {
  819. yMax = 1200;
  820. }
  821. } else if (sysOrgCode == 'sdmtjtswmk') {
  822. if (deviceType == 'fanmain_bfj') {
  823. yMax = 5000;
  824. } else if (deviceType == 'fanmain_nfj') {
  825. yMax = 4500;
  826. }
  827. } else if (sysOrgCode == 'sdmtjtbdmk') {
  828. if (deviceType == 'fanmain_ljy') {
  829. yMax = 5000;
  830. } else if (deviceType == 'fanmain_zl') {
  831. yMax = 6000;
  832. }
  833. } else if (sysOrgCode == 'sdmtjtjjmk') {
  834. yMax = 6000;
  835. } else if (sysOrgCode == 'sdmtjtsgtmk') {
  836. yMax = 3000;
  837. } else if (sysOrgCode == 'sdmtjthlgmk') {
  838. yMax = 3000;
  839. } else if (sysOrgCode == 'sdmtjtdltmkhjtj') {
  840. yMax = 3000;
  841. } else if (sysOrgCode == 'sdmtjtcctrk') {
  842. yMax = 600;
  843. } else if (sysOrgCode == 'sdmtjtwlmlmk') {
  844. yMax = 4000;
  845. } else if (sysOrgCode == 'sdmtjtltmk') {
  846. yMax = 4000;
  847. } else if (sysOrgCode == 'sdtljtdhzmk') {
  848. yMax = 5000;
  849. } else if (sysOrgCode == 'yjmdhswmk') {
  850. yMax = 5000;
  851. } else if (deviceType == 'cy') {
  852. yMax = 4000;
  853. yMin = 800;
  854. } else {
  855. yMax = 4500;
  856. }
  857. return reactive<EChartsOption>({
  858. title: {
  859. text: '风机运行工况辅助曲线图',
  860. textStyle: {
  861. color: '#BF954D',
  862. },
  863. left: 'center',
  864. top: 0,
  865. },
  866. // backgroundColor: '#39deff',
  867. tooltip: {
  868. trigger: 'axis',
  869. axisPointer: {
  870. type: 'cross',
  871. label: {
  872. backgroundColor: '#6a7985',
  873. },
  874. },
  875. },
  876. toolbox: {
  877. show: true,
  878. },
  879. grid: {
  880. left: 8,
  881. right: 50,
  882. bottom: 0,
  883. containLabel: true,
  884. },
  885. xAxis: {
  886. type: 'category',
  887. name: 'm³/s',
  888. nameTextStyle: {
  889. fontWeight: 600,
  890. fontSize: 13,
  891. },
  892. splitLine: { show: true, lineStyle: { color: 'rgba(21,80,126,.5)' } },
  893. axisLabel: {
  894. margin: 20,
  895. fontSize: 14,
  896. color: '#f1f1f199',
  897. },
  898. boundaryGap: false,
  899. data: [],
  900. },
  901. yAxis: {
  902. type: 'value',
  903. axisLine: {
  904. show: true,
  905. lineStyle: {
  906. color: '#006c9d',
  907. },
  908. },
  909. splitLine: { show: true, lineStyle: { color: 'rgba(21,80,126,.5)' } },
  910. axisLabel: {
  911. show: true,
  912. fontSize: 14,
  913. formatter: '{value}',
  914. color: '#0071A5',
  915. },
  916. min: yMin,
  917. max: yMax,
  918. name: 'Pa',
  919. nameTextStyle: {
  920. fontWeight: 600,
  921. fontSize: 13,
  922. },
  923. },
  924. series: [],
  925. });
  926. };
  927. export const initData1 = () => {
  928. const assistanceData = {
  929. '30': {
  930. angle: 0,
  931. Hz: 30.0, //频率
  932. a: -0.17624, //二次项系数
  933. b: 43.40947, //一次项系数
  934. c: 97.60705999999982, //常数项系数
  935. min: 93.0, //风量下限
  936. max: 171.0, //风量上限
  937. },
  938. '31': {
  939. angle: 0,
  940. Hz: 31.0,
  941. a: -0.17624,
  942. b: 43.427094,
  943. c: 95.43614590000016,
  944. min: 96.1,
  945. max: 174.4,
  946. },
  947. '32': {
  948. angle: 0,
  949. Hz: 32.0,
  950. a: -0.17624,
  951. b: 43.444718,
  952. c: 93.26435059999994,
  953. min: 99.2,
  954. max: 177.8,
  955. },
  956. '33': {
  957. angle: 0,
  958. Hz: 33.0,
  959. a: -0.17624,
  960. b: 43.462342,
  961. c: 91.09167409999964,
  962. min: 102.3,
  963. max: 180.2,
  964. },
  965. '34': {
  966. angle: 0,
  967. Hz: 34.0,
  968. a: -0.17624,
  969. b: 43.479966000000005,
  970. c: 88.91811639999969,
  971. min: 105.4,
  972. max: 182.0,
  973. },
  974. '35': {
  975. angle: 0,
  976. Hz: 35.0,
  977. a: -0.17624,
  978. b: 43.49759,
  979. c: 86.74367749999965,
  980. min: 108.5,
  981. max: 184.5,
  982. },
  983. '36': {
  984. angle: 0,
  985. Hz: 36.0,
  986. a: -0.17624,
  987. b: 43.515214,
  988. c: 84.56835739999997,
  989. min: 111.6,
  990. max: 187.0,
  991. },
  992. '37': {
  993. angle: 0,
  994. Hz: 37.0,
  995. a: -0.17624,
  996. b: 43.532838,
  997. c: 82.3921561000002,
  998. min: 114.7,
  999. max: 190.8,
  1000. },
  1001. '38': {
  1002. angle: 0,
  1003. Hz: 38.0,
  1004. a: -0.17624,
  1005. b: 43.550462,
  1006. c: 80.21507359999941,
  1007. min: 117.8,
  1008. max: 193.0,
  1009. },
  1010. '39': {
  1011. angle: 0,
  1012. Hz: 39.0,
  1013. a: -0.17624,
  1014. b: 43.568086,
  1015. c: 78.0371098999999,
  1016. min: 120.9,
  1017. max: 195.6,
  1018. },
  1019. '40': {
  1020. angle: 0,
  1021. Hz: 40.0,
  1022. a: -0.17624,
  1023. b: 43.58571,
  1024. c: 75.85826499999985,
  1025. min: 123.0,
  1026. max: 197.0,
  1027. },
  1028. '41': {
  1029. angle: 0,
  1030. Hz: 41.0,
  1031. a: -0.17624,
  1032. b: 43.603334,
  1033. c: 73.67853890000015,
  1034. min: 125.1,
  1035. max: 199.4,
  1036. },
  1037. '42': {
  1038. angle: 0,
  1039. Hz: 42.0,
  1040. a: -0.17624,
  1041. b: 43.620958,
  1042. c: 71.4979315999999,
  1043. min: 128.2,
  1044. max: 202.8,
  1045. },
  1046. '43': {
  1047. angle: 0,
  1048. Hz: 43.0,
  1049. a: -0.17624,
  1050. b: 43.638582,
  1051. c: 69.31644309999956,
  1052. min: 130.3,
  1053. max: 205.8,
  1054. },
  1055. '44': {
  1056. angle: 0,
  1057. Hz: 44.0,
  1058. a: -0.17624,
  1059. b: 43.656206000000005,
  1060. c: 67.13407339999958,
  1061. min: 132.4,
  1062. max: 208.5,
  1063. },
  1064. '45': {
  1065. angle: 0,
  1066. Hz: 45.0,
  1067. a: -0.17624,
  1068. b: 43.67383,
  1069. c: 64.9508224999995,
  1070. min: 134.5,
  1071. max: 211.8,
  1072. },
  1073. '46': {
  1074. angle: 0,
  1075. Hz: 46.0,
  1076. a: -0.17624,
  1077. b: 43.691454,
  1078. c: 62.76669039999979,
  1079. min: 136.6,
  1080. max: 214.4,
  1081. },
  1082. '47': {
  1083. angle: 0,
  1084. Hz: 47.0,
  1085. a: -0.17624,
  1086. b: 43.709078,
  1087. c: 60.58167709999998,
  1088. min: 138.7,
  1089. max: 217.8,
  1090. },
  1091. '48': {
  1092. angle: 0,
  1093. Hz: 48.0,
  1094. a: -0.17624,
  1095. b: 43.726702,
  1096. c: 58.39578259999962,
  1097. min: 140.8,
  1098. max: 219.2,
  1099. },
  1100. '49': {
  1101. angle: 0,
  1102. Hz: 49.0,
  1103. a: -0.17624,
  1104. b: 43.744326,
  1105. c: 56.20900689999962,
  1106. min: 143.9,
  1107. max: 221.6,
  1108. },
  1109. '50': {
  1110. angle: 0,
  1111. Hz: 50.0,
  1112. a: -0.17624,
  1113. b: 43.76195,
  1114. c: 54.021349999999984,
  1115. min: 146.0,
  1116. max: 223.0,
  1117. },
  1118. };
  1119. const num = 21;
  1120. const a = -0.17624; //-0.17624,
  1121. const m = 2770.6411125432646,
  1122. n = -124.15442010894235;
  1123. let i = 21;
  1124. const data = [];
  1125. for (const key in assistanceData) {
  1126. i -= 1;
  1127. const p = i;
  1128. const item = assistanceData[key];
  1129. item['b'] = 2 * a * (n + p);
  1130. item['c'] = a * (n + p) * (n + p) + m - i * 50;
  1131. // if (sysOrgCode == 'sdmtjtdltmk') {
  1132. // // 大柳塔井整体向右下移动
  1133. // item['min'] = item['min'] + 20;
  1134. // item['max'] = item['max'] + 20;
  1135. // item['b'] = 2 * a * (n + p) + 3;
  1136. // item['c'] = a * (n + p) * (n + p) + m - i * 60;
  1137. // } else {
  1138. // item['b'] = 2 * a * (n + p);
  1139. // item['c'] = a * (n + p) * (n + p) + m - i * 50;
  1140. // // //白家渠
  1141. // // a = -0.13424;
  1142. // // item['a'] = Math.round((a + 0.002 * (num - i)) * 10000) / 10000;
  1143. // // item['min'] = item['min'] + 50 + (num - i) * 2;
  1144. // // item['max'] = item['max'] + 65 + (num - i) * 3.5;
  1145. // // item['b'] = 2 * item['a'] * (n + p) + 8.8;
  1146. // // item['c'] = item['a'] * (n + p) * (n + p) + m - i * 60;
  1147. // // //武当沟
  1148. // // a = -0.17724;
  1149. // // item['a'] = Math.round((a - 0.002 * (num - i)) * 10000) / 10000;
  1150. // // item['min'] = item['min'] - 40 - (num - i) * 1;
  1151. // // item['max'] = item['max'] - 60 - (num - i) * 0.5;
  1152. // // item['b'] = 2 * item['a'] * (n + p) - 16.5;
  1153. // // item['c'] = item['a'] * (n + p) * (n + p) + m - i * 40;
  1154. // }
  1155. data.push(item);
  1156. }
  1157. console.log(data);
  1158. return data;
  1159. };
  1160. export const initData2 = () => {
  1161. const assistanceData = {
  1162. // '30': {
  1163. // angle: 0,
  1164. // Hz: 30.0, //频率
  1165. // a: -0.17624, //二次项系数
  1166. // b: 43.40947, //一次项系数
  1167. // c: 97.60705999999982, //常数项系数
  1168. // min: 93.0, //风量下限
  1169. // max: 171.0, //风量上限
  1170. // },
  1171. // '31': {
  1172. // angle: 0,
  1173. // Hz: 31.0,
  1174. // a: -0.17624,
  1175. // b: 43.427094,
  1176. // c: 95.43614590000016,
  1177. // min: 96.1,
  1178. // max: 174.4,
  1179. // },
  1180. // '32': {
  1181. // angle: 0,
  1182. // Hz: 32.0,
  1183. // a: -0.17624,
  1184. // b: 43.444718,
  1185. // c: 93.26435059999994,
  1186. // min: 99.2,
  1187. // max: 177.8,
  1188. // },
  1189. // '33': {
  1190. // angle: 0,
  1191. // Hz: 33.0,
  1192. // a: -0.17624,
  1193. // b: 43.462342,
  1194. // c: 91.09167409999964,
  1195. // min: 102.3,
  1196. // max: 180.2,
  1197. // },
  1198. // '34': {
  1199. // angle: 0,
  1200. // Hz: 34.0,
  1201. // a: -0.17624,
  1202. // b: 43.479966000000005,
  1203. // c: 88.91811639999969,
  1204. // min: 105.4,
  1205. // max: 182.0,
  1206. // },
  1207. // '35': {
  1208. // angle: 0,
  1209. // Hz: 35.0,
  1210. // a: -0.17624,
  1211. // b: 43.49759,
  1212. // c: 86.74367749999965,
  1213. // min: 108.5,
  1214. // max: 184.5,
  1215. // },
  1216. '36': {
  1217. angle: 0,
  1218. Hz: 36.0,
  1219. a: -0.014,
  1220. b: 11.01024,
  1221. c: 414.6167,
  1222. min: 330,
  1223. max: 710,
  1224. },
  1225. // '37': {
  1226. // angle: 0,
  1227. // Hz: 37.0,
  1228. // a: -0.17624,
  1229. // b: 43.532838,
  1230. // c: 82.3921561000002,
  1231. // min: 114.7,
  1232. // max: 190.8,
  1233. // },
  1234. // '38': {
  1235. // angle: 0,
  1236. // Hz: 38.0,
  1237. // a: -0.17624,
  1238. // b: 43.550462,
  1239. // c: 80.21507359999941,
  1240. // min: 117.8,
  1241. // max: 193.0,
  1242. // },
  1243. '39': {
  1244. angle: 0,
  1245. Hz: 39.0,
  1246. a: -0.0132,
  1247. b: 10.500657,
  1248. c: 785.54678,
  1249. min: 370,
  1250. max: 760,
  1251. },
  1252. // '40': {
  1253. // angle: 0,
  1254. // Hz: 40.0,
  1255. // a: -0.17624,
  1256. // b: 43.58571,
  1257. // c: 75.85826499999985,
  1258. // min: 123.0,
  1259. // max: 197.0,
  1260. // },
  1261. // '41': {
  1262. // angle: 0,
  1263. // Hz: 41.0,
  1264. // a: -0.17624,
  1265. // b: 43.603334,
  1266. // c: 73.67853890000015,
  1267. // min: 125.1,
  1268. // max: 199.4,
  1269. // },
  1270. '42': {
  1271. angle: 0,
  1272. Hz: 42.0,
  1273. a: -0.012,
  1274. b: 10.03424,
  1275. c: 971.438895,
  1276. min: 390,
  1277. max: 820,
  1278. },
  1279. // '43': {
  1280. // angle: 0,
  1281. // Hz: 43.0,
  1282. // a: -0.17624,
  1283. // b: 43.638582,
  1284. // c: 69.31644309999956,
  1285. // min: 130.3,
  1286. // max: 205.8,
  1287. // },
  1288. // '44': {
  1289. // angle: 0,
  1290. // Hz: 44.0,
  1291. // a: -0.17624,
  1292. // b: 43.656206000000005,
  1293. // c: 67.13407339999958,
  1294. // min: 132.4,
  1295. // max: 208.5,
  1296. // },
  1297. // '45': {
  1298. // angle: 0,
  1299. // Hz: 45.0,
  1300. // a: -0.17624,
  1301. // b: 43.67383,
  1302. // c: 64.9508224999995,
  1303. // min: 134.5,
  1304. // max: 211.8,
  1305. // },
  1306. '46': {
  1307. angle: 0,
  1308. Hz: 46.0,
  1309. a: -0.012,
  1310. b: 10.551334,
  1311. c: 967.32433,
  1312. min: 430,
  1313. max: 865,
  1314. },
  1315. // '47': {
  1316. // angle: 0,
  1317. // Hz: 47.0,
  1318. // a: -0.17624,
  1319. // b: 43.709078,
  1320. // c: 60.58167709999998,
  1321. // min: 138.7,
  1322. // max: 217.8,
  1323. // },
  1324. // '48': {
  1325. // angle: 0,
  1326. // Hz: 48.0,
  1327. // a: -0.17624,
  1328. // b: 43.726702,
  1329. // c: 58.39578259999962,
  1330. // min: 140.8,
  1331. // max: 219.2,
  1332. // },
  1333. '49': {
  1334. angle: 0,
  1335. Hz: 49.0,
  1336. a: -0.0115,
  1337. b: 10.8013546,
  1338. c: 913.4355668,
  1339. min: 460,
  1340. max: 921,
  1341. },
  1342. // '50': {
  1343. // angle: 0,
  1344. // Hz: 50.0,
  1345. // a: -0.17624,
  1346. // b: 43.76195,
  1347. // c: 54.021349999999984,
  1348. // min: 146.0,
  1349. // max: 223.0,
  1350. // },
  1351. };
  1352. // const num = 21;
  1353. // const a = -0.17624; //-0.17624,
  1354. // const m = 2770.6411125432646,
  1355. // n = -124.15442010894235;
  1356. // let i = 21;
  1357. const data = [];
  1358. for (const key in assistanceData) {
  1359. // i -= 1;
  1360. // const p = i;
  1361. const item = assistanceData[key];
  1362. // item['b'] = 2 * a * (n + p);
  1363. // item['c'] = a * (n + p) * (n + p) + m - i * 50;
  1364. // if (sysOrgCode == 'sdmtjtdltmk') {
  1365. // // 大柳塔井整体向右下移动
  1366. // item['min'] = item['min'] + 20;
  1367. // item['max'] = item['max'] + 20;
  1368. // item['b'] = 2 * a * (n + p) + 3;
  1369. // item['c'] = a * (n + p) * (n + p) + m - i * 60;
  1370. // } else {
  1371. // item['b'] = 2 * a * (n + p);
  1372. // item['c'] = a * (n + p) * (n + p) + m - i * 50;
  1373. // // //白家渠
  1374. // // a = -0.13424;
  1375. // // item['a'] = Math.round((a + 0.002 * (num - i)) * 10000) / 10000;
  1376. // // item['min'] = item['min'] + 50 + (num - i) * 2;
  1377. // // item['max'] = item['max'] + 65 + (num - i) * 3.5;
  1378. // // item['b'] = 2 * item['a'] * (n + p) + 8.8;
  1379. // // item['c'] = item['a'] * (n + p) * (n + p) + m - i * 60;
  1380. // // //武当沟
  1381. // // a = -0.17724;
  1382. // // item['a'] = Math.round((a - 0.002 * (num - i)) * 10000) / 10000;
  1383. // // item['min'] = item['min'] - 40 - (num - i) * 1;
  1384. // // item['max'] = item['max'] - 60 - (num - i) * 0.5;
  1385. // // item['b'] = 2 * item['a'] * (n + p) - 16.5;
  1386. // // item['c'] = item['a'] * (n + p) * (n + p) + m - i * 40;
  1387. // }
  1388. data.push(item);
  1389. }
  1390. console.log(data);
  1391. return data;
  1392. };
  1393. // 大柳塔武当沟
  1394. export const initData = (deviceType?) => {
  1395. const { sysOrgCode } = useGlobSetting();
  1396. // const sysOrgCode = 'yjmdhswmk';
  1397. if (sysOrgCode == 'sdmtjtdltmk') {
  1398. return initDataDlt(deviceType);
  1399. } else if (sysOrgCode == 'sdmtjtswmk') {
  1400. return initDataSw(deviceType);
  1401. } else if (sysOrgCode == 'sdmtjtbltmk') {
  1402. return initDataBlt();
  1403. } else if (sysOrgCode == 'sdmtjtbdmk') {
  1404. return initDataBd(deviceType);
  1405. } else if (sysOrgCode == 'sdmtjtjjmk') {
  1406. return initDataJj();
  1407. } else if (sysOrgCode == 'sdmtjtdltmkhjtj') {
  1408. return initDataHjt();
  1409. } else if (sysOrgCode == 'sdmtjtsgtmk') {
  1410. return initDataSgt();
  1411. } else if (sysOrgCode == 'sdmtjthlgmk') {
  1412. return initDataSgt();
  1413. } else if (sysOrgCode == 'sdmtjtyjlmk') {
  1414. return initDataJj();
  1415. } else if (sysOrgCode == 'sdmtjtcctrk') {
  1416. return initDataCctr();
  1417. } else if (sysOrgCode == 'sdmtjtwlmlmk') {
  1418. return initDataWlml();
  1419. } else if (sysOrgCode == 'sdmtjtltmk') {
  1420. return initDataLt();
  1421. } else if (sysOrgCode == 'sdtljtdhzmk') {
  1422. return initDataDhz();
  1423. } else if (sysOrgCode == 'yjmdhswmk') {
  1424. //海石湾
  1425. return initDataHsw();
  1426. } else {
  1427. return initData1();
  1428. }
  1429. };
  1430. // 柳塔
  1431. const initDataLt = () => {
  1432. const data: any[] = [];
  1433. data.push({
  1434. angle: -6,
  1435. Hz: -6,
  1436. a: -0.1154,
  1437. b: 17.723,
  1438. c: 2433.2,
  1439. min: 155,
  1440. max: 210,
  1441. });
  1442. data.push({
  1443. angle: -3,
  1444. Hz: -3,
  1445. a: -0.2064,
  1446. b: 57.303,
  1447. c: -1156.1,
  1448. min: 155,
  1449. max: 230,
  1450. });
  1451. data.push({
  1452. angle: 3,
  1453. Hz: 3,
  1454. a: -0.1228,
  1455. b: 35.838,
  1456. c: 541.83,
  1457. min: 155,
  1458. max: 266,
  1459. });
  1460. return data;
  1461. };
  1462. // 乌兰木伦
  1463. const initDataWlml = () => {
  1464. const data: any[] = [];
  1465. data.push({
  1466. angle: -3,
  1467. Hz: -3,
  1468. a: -15.607,
  1469. b: 6242.3,
  1470. c: -621571,
  1471. min: 204,
  1472. max: 212,
  1473. });
  1474. data.push({
  1475. angle: -2,
  1476. Hz: -2,
  1477. a: -8.3134,
  1478. b: 3178.9,
  1479. c: -300224,
  1480. min: 204,
  1481. max: 211,
  1482. });
  1483. data.push({
  1484. angle: 0,
  1485. Hz: 0,
  1486. a: -8.9632,
  1487. b: 3751.3,
  1488. c: -389068,
  1489. min: 216,
  1490. max: 227.2,
  1491. });
  1492. data.push({
  1493. angle: 1,
  1494. Hz: 1,
  1495. a: -12.77,
  1496. b: 5415.9,
  1497. c: -571193,
  1498. min: 216,
  1499. max: 226.8,
  1500. });
  1501. data.push({
  1502. angle: 2,
  1503. Hz: 2,
  1504. a: -12.432,
  1505. b: 5635.5,
  1506. c: -635361,
  1507. min: 234.5,
  1508. max: 242.4,
  1509. });
  1510. data.push({
  1511. angle: 3,
  1512. Hz: 3,
  1513. a: -2.9424,
  1514. b: 1147.7,
  1515. c: -104620,
  1516. min: 234.5,
  1517. max: 243.5,
  1518. });
  1519. return data;
  1520. };
  1521. // 石圪台
  1522. const initDataCctr = () => {
  1523. const data: any[] = [];
  1524. data.push({
  1525. angle: 0,
  1526. Hz: 0,
  1527. a: -0.0221,
  1528. b: -1.2494,
  1529. c: 552.28,
  1530. min: 52,
  1531. max: 125,
  1532. });
  1533. data.push({
  1534. angle: 3,
  1535. Hz: 3,
  1536. a: -0.0232,
  1537. b: -0.8204,
  1538. c: 603.39,
  1539. min: 50,
  1540. max: 139,
  1541. });
  1542. data.push({
  1543. angle: 6,
  1544. Hz: 6,
  1545. a: -0.0417,
  1546. b: 3.1004,
  1547. c: 498.9,
  1548. min: 45,
  1549. max: 150,
  1550. });
  1551. return data;
  1552. };
  1553. // 石圪台
  1554. const initDataSgt = () => {
  1555. const data: any[] = [];
  1556. data.push({
  1557. angle: -6,
  1558. Hz: -6,
  1559. a: -0.0438,
  1560. b: 14.5078,
  1561. c: 986.6,
  1562. min: 130,
  1563. max: 370,
  1564. });
  1565. data.push({
  1566. angle: -3,
  1567. Hz: -3,
  1568. a: -0.035,
  1569. b: 11.7875,
  1570. c: 1226.8,
  1571. min: 140,
  1572. max: 400,
  1573. });
  1574. data.push({
  1575. angle: 0,
  1576. Hz: 0,
  1577. a: -0.0354,
  1578. b: 13.6986,
  1579. c: 1078.6,
  1580. min: 150,
  1581. max: 430,
  1582. });
  1583. data.push({
  1584. angle: 3,
  1585. Hz: 3,
  1586. a: -0.0444,
  1587. b: 19.5673,
  1588. c: 504,
  1589. min: 170,
  1590. max: 445,
  1591. });
  1592. data.push({
  1593. angle: 6,
  1594. Hz: 6,
  1595. a: -0.0507,
  1596. b: 24.3336,
  1597. c: -70,
  1598. min: 190,
  1599. max: 460,
  1600. });
  1601. return data;
  1602. };
  1603. // 大柳塔白家渠
  1604. const initDataDlt = (deviceType?) => {
  1605. if (deviceType == 'fanmain_bjq') {
  1606. const num = 2;
  1607. const obj = {
  1608. angle: 0,
  1609. Hz: -0,
  1610. a: -0.0656,
  1611. b: 17.398283350755946,
  1612. c: 3241.38254718147,
  1613. min: 300,
  1614. max: 1100.0,
  1615. };
  1616. const a = -0.0656,
  1617. m = 17.398283350755946,
  1618. n = 3241.38254718147;
  1619. const maxList = [339.4, 359.4, 379.4, 399.4, 419.4];
  1620. const minList = [143, 152, 161, 170, 180];
  1621. const data = [];
  1622. for (let i = -2; i <= num; i++) {
  1623. const item = cloneDeep(obj);
  1624. item['Hz'] = 0 + i * 3;
  1625. item['c'] = n + 5 * i;
  1626. item['b'] = m + i * 2;
  1627. item['max'] = maxList[i + 2];
  1628. item['min'] = minList[i + 2];
  1629. data.push(item);
  1630. }
  1631. return data;
  1632. } else if (deviceType == 'fanmain_wdg') {
  1633. // 武当沟
  1634. const num = 2;
  1635. const obj = {
  1636. angle: 0,
  1637. Hz: -0,
  1638. a: -0.1424,
  1639. b: 26.316238660115914,
  1640. c: -370.62808803303426,
  1641. min: 300,
  1642. max: 1100.0,
  1643. };
  1644. const a = -0.1424,
  1645. m = 26.086238660115914,
  1646. n = -370.62808803303426;
  1647. const maxList = [138, 148, 158, 168, 178];
  1648. const minList = [90, 95, 100, 105, 110];
  1649. const data = [];
  1650. for (let i = -2; i <= num; i++) {
  1651. const item = cloneDeep(obj);
  1652. item['Hz'] = 0 + i * 3;
  1653. item['c'] = n + 1 * i;
  1654. item['b'] = m + i * 1.3;
  1655. item['max'] = maxList[i + 2];
  1656. item['min'] = minList[i + 2];
  1657. data.push(item);
  1658. }
  1659. return data;
  1660. }
  1661. };
  1662. const initDataSw = (deviceType?) => {
  1663. if (deviceType == 'fanmain_bfj') {
  1664. // 北风井
  1665. const num = 2;
  1666. const obj = {
  1667. angle: 0,
  1668. Hz: 0,
  1669. a: -0.2486,
  1670. b: 14.998999006593294,
  1671. c: 3672.488224167444,
  1672. min: 300,
  1673. max: 1100.0,
  1674. };
  1675. const a = -0.2486,
  1676. m = 14.998999006593294,
  1677. n = 3672.488224167444;
  1678. const maxList = [115.67, 130.67, 146.67, 165.67, 185.67];
  1679. const minList = [50, 60, 70, 85, 100];
  1680. const data = [];
  1681. for (let i = -2; i <= num; i++) {
  1682. const item = cloneDeep(obj);
  1683. item['Hz'] = 0 + i * 3;
  1684. item['c'] = n + 5 * i;
  1685. item['b'] = m + i * 8;
  1686. item['max'] = maxList[i + 2];
  1687. item['min'] = minList[i + 2];
  1688. data.push(item);
  1689. }
  1690. return data;
  1691. } else if (deviceType == 'fanmain_nfj') {
  1692. // 南风井
  1693. const num = 2;
  1694. const obj = {
  1695. angle: 0,
  1696. Hz: -0,
  1697. a: -0.0445,
  1698. b: 15.46559392987956,
  1699. c: 2607.959183673496,
  1700. min: 300,
  1701. max: 1100.0,
  1702. };
  1703. const a = -0.0455,
  1704. m = 15.46559392987956,
  1705. n = 2607.959183673496;
  1706. const maxList = [315, 345, 375, 410, 450, 500];
  1707. const minList = [90, 105, 120, 145, 170, 185];
  1708. const data = [];
  1709. for (let i = -3; i <= num; i++) {
  1710. const item = cloneDeep(obj);
  1711. item['Hz'] = 0 + i * 3;
  1712. item['a'] = Math.round((a - 0.003 * (num - i)) * 10000) / 10000;
  1713. item['c'] = n + 10 * i;
  1714. item['b'] = m + i * 1.2;
  1715. item['max'] = maxList[i + 3];
  1716. item['min'] = minList[i + 3];
  1717. data.push(item);
  1718. }
  1719. return data;
  1720. }
  1721. };
  1722. const initDataHjt = () => {
  1723. const data: any[] = [];
  1724. data.push({
  1725. angle: -10,
  1726. Hz: -10,
  1727. a: -0.0357,
  1728. b: 13.657,
  1729. c: 515.38,
  1730. min: 170,
  1731. max: 400,
  1732. });
  1733. data.push({
  1734. angle: -7,
  1735. Hz: -7,
  1736. a: -0.0371,
  1737. b: 15.478,
  1738. c: 452.43,
  1739. min: 170,
  1740. max: 400,
  1741. });
  1742. data.push({
  1743. angle: -5,
  1744. Hz: -5,
  1745. a: -0.0357,
  1746. b: 13.657,
  1747. c: 515.38,
  1748. min: 170,
  1749. max: 400,
  1750. });
  1751. data.push({
  1752. angle: -4,
  1753. Hz: -4,
  1754. a: -0.0361,
  1755. b: 16.706,
  1756. c: 228.85,
  1757. min: 170,
  1758. max: 400,
  1759. });
  1760. data.push({
  1761. angle: -2,
  1762. Hz: -2,
  1763. a: -0.0357,
  1764. b: 15.478,
  1765. c: 452.43,
  1766. min: 170,
  1767. max: 400,
  1768. });
  1769. data.push({
  1770. angle: 1,
  1771. Hz: 1,
  1772. a: -0.0361,
  1773. b: 16.706,
  1774. c: 228.85,
  1775. min: 170,
  1776. max: 400,
  1777. });
  1778. return data;
  1779. };
  1780. const initDataBd = (deviceType?) => {
  1781. if (deviceType == 'fanmain_ljy') {
  1782. // 刘家宴
  1783. const num = 2;
  1784. const obj = {
  1785. angle: 0,
  1786. Hz: 0,
  1787. a: -0.02674,
  1788. b: 10.070078367532346,
  1789. c: 3048.210229423783,
  1790. min: 300,
  1791. max: 1100.0,
  1792. };
  1793. const a = -0.02774,
  1794. m = 10.090078367532346,
  1795. n = 3988.210229423783;
  1796. const maxList = [370, 410, 450, 500, 560, 624];
  1797. const minList = [70, 80, 100, 130, 160, 210];
  1798. const data = [];
  1799. let index = 0;
  1800. for (let i = -3; i <= num; i++) {
  1801. ++index;
  1802. const item = cloneDeep(obj);
  1803. item['a'] = Math.round((a - 0.002 * (6 - index)) * 10000) / 10000;
  1804. item['Hz'] = 0 + i * 3;
  1805. item['c'] = n + 10 * i;
  1806. item['b'] = m + i * 1.3;
  1807. item['max'] = maxList[i + 3];
  1808. item['min'] = minList[i + 3];
  1809. data.push(item);
  1810. }
  1811. return data;
  1812. } else if (deviceType == 'fanmain_zl') {
  1813. // 枣庄
  1814. const num = 2;
  1815. const obj = {
  1816. angle: 0,
  1817. Hz: 0,
  1818. a: -0.02674,
  1819. b: 10.070078367532346,
  1820. c: 3048.210229423783,
  1821. min: 300,
  1822. max: 1100.0,
  1823. };
  1824. const a = -0.05874,
  1825. m = 17.090078367532346,
  1826. n = 3588.210229423783;
  1827. const maxList = [315, 344, 379, 415, 454];
  1828. const minList = [160, 170, 180, 190, 200, 210];
  1829. const data = [];
  1830. let index = 0;
  1831. for (let i = -2; i <= num; i++) {
  1832. ++index;
  1833. const item = cloneDeep(obj);
  1834. item['a'] = Math.round((a - 0.003 * (6 - index)) * 10000) / 10000;
  1835. item['Hz'] = 0 + i * 3;
  1836. item['c'] = n + 6 * i;
  1837. item['b'] = m + i * 1.9;
  1838. item['max'] = maxList[i + 2];
  1839. item['min'] = minList[i + 2];
  1840. data.push(item);
  1841. }
  1842. return data;
  1843. }
  1844. };
  1845. const initDataBlt = () => {
  1846. const num = 2;
  1847. const obj = {
  1848. angle: 0,
  1849. Hz: 0,
  1850. a: -0.02674,
  1851. b: 10.070078367532346,
  1852. c: 3048.210229423783,
  1853. min: 300,
  1854. max: 1100.0,
  1855. };
  1856. const a = -0.02874,
  1857. m = 10.070078367532346,
  1858. n = 3048.210229423783;
  1859. const maxList = [370, 400, 440, 480, 525, 580];
  1860. const minList = [70, 80, 100, 130, 160, 210];
  1861. const data = [];
  1862. let index = 0;
  1863. for (let i = -3; i <= num; i++) {
  1864. ++index;
  1865. const item = cloneDeep(obj);
  1866. item['a'] = Math.round((a - 0.002 * (6 - index)) * 10000) / 10000;
  1867. item['Hz'] = 0 + i * 3;
  1868. item['c'] = n + 10 * i;
  1869. item['b'] = m + i * 1;
  1870. item['max'] = maxList[i + 3];
  1871. item['min'] = minList[i + 3];
  1872. data.push(item);
  1873. }
  1874. return data;
  1875. };
  1876. const initDataJj = () => {
  1877. const num = 2;
  1878. const obj = {
  1879. angle: 0,
  1880. Hz: 0,
  1881. a: -0.02674,
  1882. b: 10.070078367532346,
  1883. c: 3048.210229423783,
  1884. min: 300,
  1885. max: 1100.0,
  1886. };
  1887. const a = -0.09874,
  1888. m = 21.090078367532346,
  1889. n = 3588.210229423783;
  1890. const maxList = [239, 264, 292, 322, 354];
  1891. const minList = [60, 70, 80, 90, 100, 110];
  1892. const data = [];
  1893. let index = 0;
  1894. for (let i = -2; i <= num; i++) {
  1895. ++index;
  1896. const item = cloneDeep(obj);
  1897. item['a'] = Math.round((a - 0.003 * (6 - index)) * 10000) / 10000;
  1898. item['Hz'] = 0 + i * 3;
  1899. item['c'] = n + 10 * i;
  1900. item['b'] = m + i * 3;
  1901. item['max'] = maxList[i + 2];
  1902. item['min'] = minList[i + 2];
  1903. data.push(item);
  1904. }
  1905. return data;
  1906. };
  1907. const initDataDhz = () => {
  1908. const data: any[] = [];
  1909. data.push({
  1910. Hz: 30,
  1911. a: -0.1686,
  1912. b: 74.953,
  1913. c: -4655.7,
  1914. min: 203,
  1915. max: 360,
  1916. });
  1917. data.push({
  1918. Hz: 40,
  1919. a: -0.1568,
  1920. b: 58.594,
  1921. c: -1986.9,
  1922. min: 213,
  1923. max: 325,
  1924. });
  1925. data.push({
  1926. Hz: 50,
  1927. a: -0.1607,
  1928. b: 68.39,
  1929. c: -4642.5,
  1930. min: 210,
  1931. max: 330,
  1932. });
  1933. // data.push({
  1934. // Hz: 30,
  1935. // a: -0.1407,
  1936. // b: 62.142,
  1937. // c: -3297.7,
  1938. // min: 218,
  1939. // max: 370,
  1940. // });
  1941. // data.push({
  1942. // Hz: 40,
  1943. // a: -0.1551,
  1944. // b: 58.661,
  1945. // c: -1968.9,
  1946. // min: 238,
  1947. // max: 338,
  1948. // });
  1949. // data.push({
  1950. // Hz: 50,
  1951. // a: -0.1823,
  1952. // b: 81.988,
  1953. // c: -6525.7,
  1954. // min: 240,
  1955. // max: 338,
  1956. // });
  1957. return data;
  1958. };
  1959. const initDataHsw = () => {
  1960. const data: any[] = [];
  1961. data.push({
  1962. Hz: 50,
  1963. a: -0.0704,
  1964. b: 6.9552,
  1965. c: 4596.9,
  1966. min: 80,
  1967. max: 300,
  1968. });
  1969. return data;
  1970. };
  1971. export const fanInfoData = reactive({
  1972. fj: '一号回风井',
  1973. xh: 'FBCDZ No.29',
  1974. gl: '2×500',
  1975. edgl: '740',
  1976. eddy: '10000',
  1977. eddl: '38.4',
  1978. flfw: '110~260',
  1979. fyfw: '200~4100',
  1980. fbdj: 'ExdI',
  1981. ccrq: '2010.07',
  1982. sccj: '南阳防爆',
  1983. tjfs: '变频调节',
  1984. plfw: '30~50',
  1985. });
  1986. export const fanInfo = [
  1987. {
  1988. title: '风井',
  1989. code: 'windWell_mainFanInfo',
  1990. value: '一号回风井',
  1991. },
  1992. {
  1993. title: '型号',
  1994. code: 'modelType_mainFanInfo',
  1995. value: 'FBCDZ No.29',
  1996. },
  1997. {
  1998. title: '功率(kW)',
  1999. code: 'powerRating_mainFanInfo',
  2000. value: '2×500',
  2001. },
  2002. {
  2003. title: '额定转速(r/min)',
  2004. code: 'ratedSpeed_mainFanInfo',
  2005. value: '740',
  2006. },
  2007. {
  2008. title: '额定电压(V)',
  2009. code: 'ratedVoltage_mainFanInfo',
  2010. value: '10000',
  2011. },
  2012. {
  2013. title: '额定电流(A)',
  2014. code: 'ratedCurrent_mainFanInfo',
  2015. value: '38.4',
  2016. },
  2017. {
  2018. title: '风量范围(m³/s)',
  2019. code: 'airflowRange_mainFanInfo',
  2020. value: '110~260',
  2021. },
  2022. {
  2023. title: '风压范围(Pa)',
  2024. code: 'pressureRange_mainFanInfo',
  2025. value: '200~4100',
  2026. },
  2027. {
  2028. title: '防爆等级',
  2029. code: 'explosionProofRating_mainFanInfo',
  2030. value: 'ExdI',
  2031. },
  2032. {
  2033. title: '出厂日期',
  2034. code: 'manufactureDate_mainFanInfo',
  2035. value: '2010.07',
  2036. },
  2037. {
  2038. title: '生产厂家',
  2039. code: 'manufacturer_mainFanInfo',
  2040. value: '南阳防爆',
  2041. },
  2042. {
  2043. title: '调节方式',
  2044. code: 'adjustmentMethod_mainFanInfo',
  2045. value: '变频调节',
  2046. },
  2047. {
  2048. title: '频率可调范围(Hz)',
  2049. code: 'angleAdjustableRange_mainFanInfo',
  2050. value: '30~50',
  2051. },
  2052. ];
  2053. export const getSchamas = (): FormSchema[] => {
  2054. return [
  2055. {
  2056. field: 'fj',
  2057. component: 'Input',
  2058. label: '风井',
  2059. colProps: {
  2060. span: 6,
  2061. },
  2062. },
  2063. {
  2064. field: 'xh',
  2065. component: 'Input',
  2066. label: '型号',
  2067. colProps: {
  2068. span: 6,
  2069. },
  2070. },
  2071. {
  2072. field: 'gl',
  2073. component: 'Input',
  2074. label: '功率(kW)',
  2075. colProps: {
  2076. span: 6,
  2077. },
  2078. },
  2079. {
  2080. field: 'edgl',
  2081. component: 'Input',
  2082. label: '额定转速(r/min)',
  2083. colProps: {
  2084. span: 6,
  2085. },
  2086. },
  2087. {
  2088. field: 'eddy',
  2089. component: 'Input',
  2090. label: '额定电压(V)',
  2091. colProps: {
  2092. span: 6,
  2093. },
  2094. },
  2095. {
  2096. field: 'eddl',
  2097. component: 'Input',
  2098. label: '额定电流(A)',
  2099. colProps: {
  2100. span: 6,
  2101. },
  2102. },
  2103. {
  2104. field: 'flfw',
  2105. component: 'Input',
  2106. label: '风量范围(m³/s)',
  2107. colProps: {
  2108. span: 6,
  2109. },
  2110. },
  2111. {
  2112. field: 'fyfw',
  2113. component: 'Input',
  2114. label: '风压范围(Pa)',
  2115. colProps: {
  2116. span: 6,
  2117. },
  2118. },
  2119. {
  2120. field: 'fbdj',
  2121. component: 'Select',
  2122. label: '防爆等级',
  2123. colProps: {
  2124. span: 6,
  2125. },
  2126. componentProps: {
  2127. options: [
  2128. {
  2129. label: 'ExdI',
  2130. value: 'ExdI',
  2131. key: '1',
  2132. },
  2133. ],
  2134. },
  2135. },
  2136. {
  2137. field: 'ccrq',
  2138. component: 'Input',
  2139. label: '出厂日期',
  2140. colProps: {
  2141. span: 6,
  2142. },
  2143. },
  2144. {
  2145. field: 'sccj',
  2146. component: 'Input',
  2147. label: '生产厂家',
  2148. colProps: {
  2149. span: 6,
  2150. },
  2151. },
  2152. {
  2153. field: 'tjfs',
  2154. component: 'Select',
  2155. label: '调节方式',
  2156. colProps: {
  2157. span: 6,
  2158. },
  2159. componentProps: {
  2160. options: [
  2161. {
  2162. label: '变频调节',
  2163. value: '变频调节',
  2164. key: '1',
  2165. },
  2166. ],
  2167. },
  2168. },
  2169. {
  2170. field: 'plfw',
  2171. component: 'Input',
  2172. label: '频率可调范围(Hz)',
  2173. colProps: {
  2174. span: 6,
  2175. },
  2176. },
  2177. ];
  2178. };
  2179. export const getSchamas1 = (): FormSchema[] => {
  2180. return [
  2181. {
  2182. field: 'Hz',
  2183. component: 'InputNumber',
  2184. label: '频率(Hz)',
  2185. required: true,
  2186. colProps: {
  2187. span: 6,
  2188. },
  2189. },
  2190. {
  2191. field: 'a',
  2192. component: 'InputNumber',
  2193. label: '二次项系数',
  2194. required: true,
  2195. colProps: {
  2196. span: 6,
  2197. },
  2198. },
  2199. {
  2200. field: 'b',
  2201. component: 'InputNumber',
  2202. label: '一次项系数',
  2203. required: true,
  2204. colProps: {
  2205. span: 6,
  2206. },
  2207. },
  2208. {
  2209. field: 'c',
  2210. component: 'InputNumber',
  2211. label: '常数项系数',
  2212. required: true,
  2213. colProps: {
  2214. span: 6,
  2215. },
  2216. },
  2217. {
  2218. field: 'min',
  2219. component: 'InputNumber',
  2220. label: '风量下限(m³/s)',
  2221. required: true,
  2222. colProps: {
  2223. span: 6,
  2224. },
  2225. },
  2226. {
  2227. field: 'max',
  2228. component: 'InputNumber',
  2229. label: '风量上限(m³/s)',
  2230. required: true,
  2231. colProps: {
  2232. span: 6,
  2233. },
  2234. },
  2235. ];
  2236. };
  2237. export const lineFormData = reactive({
  2238. Hz: null,
  2239. a: null,
  2240. b: null,
  2241. c: null,
  2242. min: null,
  2243. max: null,
  2244. });
  2245. const componentsCaches = new Map<string, any>();
  2246. export function getModelComponent(is2DModel: boolean = false, modalTyoe: string = '') {
  2247. if (!is2DModel) return EntryThree;
  2248. // @ts-ignore
  2249. return defineAsyncComponent(() => {
  2250. // 为了支持SVG组件切换时不闪烁,先行下载并缓存
  2251. if (!componentsCaches.has('mainFanSVG')) componentsCaches.set('mainFanSVG', import('./components/mainFanSVG.vue'));
  2252. if (!componentsCaches.has('mainFanXJSVG')) componentsCaches.set('mainFanXJSVG', import('./components/mainFanXJSVG.vue'));
  2253. switch (modalTyoe) {
  2254. case 'lijing':
  2255. return componentsCaches.get('mainFanSVG');
  2256. case 'xiejing':
  2257. return componentsCaches.get('mainFanXJSVG');
  2258. case 'lijing1':
  2259. //立井(风筒竖直)
  2260. return componentsCaches.get('mainFanSVG');
  2261. case 'lijing_3':
  2262. //立井(3个井筒)
  2263. return componentsCaches.get('mainFanSVG');
  2264. case 'lijing_1':
  2265. //立井(1个风筒)
  2266. return componentsCaches.get('mainFanSVG');
  2267. default:
  2268. return componentsCaches.get('mainFanSVG');
  2269. }
  2270. });
  2271. }