index.ts 34 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603
  1. import { DictCode } from '@/constants';
  2. import type { IconfontIcon } from '@/icons/fonts/iconfont';
  3. import type { Component, ComponentPublicInstance } from 'vue';
  4. import type { StepProps, UploadProps } from 'ant-design-vue';
  5. import type { Rule, RuleObject } from 'ant-design-vue/es/form';
  6. import type { FormLabelAlign } from 'ant-design-vue/es/form/interface';
  7. import type { Dayjs } from 'dayjs';
  8. import type { DeviceRunningStatus, ProtocolConfigMethod } from '@/constants';
  9. export interface ApiResponse<T> {
  10. data: T;
  11. code: number;
  12. msg: string;
  13. }
  14. export interface PageData<T> {
  15. records: T[];
  16. total: number;
  17. pageIndex: number;
  18. pageSize: number;
  19. pageNum: number;
  20. }
  21. export interface PageParams {
  22. pageIndex: number;
  23. pageSize: number;
  24. pageSorts?: {
  25. column: string;
  26. asc: boolean;
  27. }[];
  28. }
  29. export interface OptionItem<T> {
  30. value: T;
  31. label: string;
  32. }
  33. export type CheckedType = boolean | string | number;
  34. export interface IconObject {
  35. name: IconfontIcon;
  36. size?: number;
  37. color?: string;
  38. }
  39. export interface IframeMsg {
  40. msgType: string;
  41. // eslint-disable-next-line @typescript-eslint/no-explicit-any
  42. [key: string]: any;
  43. }
  44. export type FormRules<T> = {
  45. [K in keyof T]?: Rule[];
  46. } & {
  47. [key: string]: Rule[];
  48. };
  49. export type RuleValidator<T> = (rule: RuleObject, value: T, callback: (error?: string) => void) => Promise<void>;
  50. export type RangeValue = [Dayjs, Dayjs];
  51. export interface DictTypeDataParams {
  52. id?: number;
  53. dictCode?: DictCode;
  54. }
  55. export interface DictTypeData {
  56. dictId: number;
  57. dictCode: string;
  58. dictName: string;
  59. dictEngName: string;
  60. dictOrderNum: number | null;
  61. dictTypeDataList: DictValue[];
  62. }
  63. export interface DictValue {
  64. dictValueId: number;
  65. dictValue: string;
  66. dictEngValue: string;
  67. dictValueOrderNum: number;
  68. isDefault: boolean | null;
  69. }
  70. export interface UseGuideStepItem extends StepProps {
  71. title: string;
  72. stepTitle?: string;
  73. stepDescription?: string;
  74. hideHeader?: boolean;
  75. hideHeaderDivider?: boolean;
  76. headerMargin?: number;
  77. component: Component;
  78. contentOffset?: number;
  79. formLayout?: 'horizontal' | 'vertical' | 'inline';
  80. labelAlign?: FormLabelAlign;
  81. labelCol?: { span?: string | number };
  82. wrapperCol?: { span?: string | number };
  83. isLastStep?: boolean;
  84. exportButtonShow?: boolean;
  85. nextStepButtonHide?: boolean;
  86. nextStepButtonText?: string;
  87. nextStepButtonDisabled?: boolean;
  88. }
  89. export interface UseGuideStepItemProps<T> {
  90. form: T;
  91. steps: UseGuideStepItem[];
  92. stepIndex: number;
  93. goToStep: (index: number) => void;
  94. }
  95. export type UseGuideStepItemExpose = {
  96. exportData?: () => void | Promise<void>;
  97. finish?: () => void | Promise<void>;
  98. };
  99. export type UseGuideStepItemInstance = ComponentPublicInstance<unknown, UseGuideStepItemExpose>;
  100. export interface SetupProtocolForm {
  101. protocolType?: string;
  102. protocolInfo: Partial<ProtocolBaseInfo>;
  103. protocolFile: UploadProps['fileList'];
  104. configMethod: ProtocolConfigMethod;
  105. deviceType?: string;
  106. }
  107. export interface CustomParamsForm {
  108. gatewayParamName: string;
  109. gatewayParamCode: string;
  110. unit: string;
  111. module: string;
  112. readWriteType: string;
  113. parsingType: string;
  114. writeFunctionCode: string;
  115. readFunctionCode: string;
  116. addressLength: number;
  117. registerAddress: number;
  118. coefficient: number;
  119. isHighFrequencyParameter: string;
  120. readCalculationFormula: string;
  121. writeCalculationFormula: string;
  122. decimalPlaces: number;
  123. contiguousAddressingRange: number;
  124. }
  125. export type ProtocolListData = PageData<ProtocolBaseInfo>;
  126. export interface ProtocolBaseInfo {
  127. id: number;
  128. protocolName: string;
  129. protocolType: string;
  130. deviceType: string;
  131. deviceTypeId: number | null;
  132. dataBit: 5 | 6 | 7 | 8;
  133. parityBit: 'N' | 'O' | 'E';
  134. stopBit: '1' | '1.5' | '2';
  135. baudRate: number;
  136. dataSendInterval: number;
  137. highFreqSendInterval: number;
  138. readTimeout: number;
  139. nextDataReadDelay: number;
  140. nextRoundDataReadDelay: number;
  141. readContinuousAddr: string;
  142. readContinuousAddrCode: number;
  143. readContinuousAddrLength: number;
  144. byteOrder: string;
  145. byteOrderCode: string;
  146. addrOrder: string;
  147. addrOrderCode: string;
  148. }
  149. export interface ProtocolListQuery extends PageParams {
  150. searchContent: string;
  151. }
  152. export type ProtocolParamData = PageData<ProtocolParamInfo>;
  153. export interface ProtocolParamInfo {
  154. id: number;
  155. createTime: string;
  156. updateTime: string;
  157. createUserId: number;
  158. updateUserId: number;
  159. baseInfoId: number;
  160. platformParamCode: string;
  161. platformParamName: string;
  162. gatewayParamCode: string;
  163. gatewayParamName: string;
  164. paramCode: string;
  165. paramName: string;
  166. unit: string;
  167. module: string;
  168. readWriteType: string;
  169. readWriteTypeCode: string;
  170. readFuncCode: string;
  171. writeFuncCode: string;
  172. registerAddr: string;
  173. addrNumber: string;
  174. registerType: string;
  175. registerTypeCode: string;
  176. parsingType: string;
  177. parsingTypeCode: string;
  178. addrLength: number;
  179. wordLength: number;
  180. wordLengthCode: string;
  181. quantity: number;
  182. coefficient: number;
  183. isHighFreqParam: string;
  184. isHighFreqParamCode: string;
  185. readCalcFormula: string;
  186. writeCalcFormula: string;
  187. decimalPlace: number;
  188. }
  189. export interface ProtocolParamSearchParams extends PageParams {
  190. baseInfoId: number;
  191. paramCode?: string;
  192. paramName?: string;
  193. }
  194. export type ProtocolStandardParamData = PageData<ProtocolStandardParam>;
  195. export interface ProtocolStandardParam {
  196. id: number;
  197. createTime: string;
  198. updateTime: string;
  199. createUserId: number;
  200. updateUserId: number;
  201. paramCode: string;
  202. paramName: string;
  203. unit: string;
  204. module: string;
  205. deviceTypeId: number;
  206. deviceType: string;
  207. enabled: string;
  208. }
  209. export interface ProtocolStandardParamQuery extends PageParams {
  210. paramCode?: string;
  211. paramName?: string;
  212. }
  213. export interface RegisterGatewayForm extends EquipmentInformation {
  214. snCode: string;
  215. password: string;
  216. modelId: number;
  217. linkType: string;
  218. id: number;
  219. interfaceId?: number;
  220. protocolId?: number;
  221. linkName: string;
  222. protocolName: string;
  223. }
  224. export interface VerificationEquipment {
  225. snCode: string;
  226. password: string;
  227. }
  228. export interface GatewayInformation {
  229. createTime: string;
  230. createUserId: string;
  231. deleted: number;
  232. id: number;
  233. isRegister: number;
  234. modelId: number;
  235. password: string;
  236. snCode: string;
  237. state: number;
  238. updateTime: string;
  239. updateUserId: number;
  240. }
  241. export interface GatewayModelInfo {
  242. createTime: string;
  243. createUserId: string;
  244. deleted: number;
  245. docUrl: string;
  246. iconUrl: string;
  247. id: number;
  248. interfaceId: string;
  249. interfaceNum: string;
  250. modelName: string;
  251. surfMode: string;
  252. surfModeEn: string;
  253. updateTime: string;
  254. updateUserId: string;
  255. }
  256. export interface InterfaceNum {
  257. COM: number;
  258. DI: number;
  259. DO: number;
  260. LAN: number;
  261. WAN: number;
  262. }
  263. export interface EquipmentInformation {
  264. state: number;
  265. docUrl: string;
  266. iconUrl: string;
  267. interfaceNum: string;
  268. modelName: string;
  269. surfMode: string | string[];
  270. surfModeEn: string | string[];
  271. show: boolean;
  272. judgmentRegistration: boolean;
  273. }
  274. export interface GatewayInterface {
  275. comment: string;
  276. createTime: string;
  277. createUserId: string;
  278. deleted: number;
  279. dictCode: string;
  280. dictEngValue: string;
  281. dictValue: string;
  282. enabled: number;
  283. id: number;
  284. isDefault: string;
  285. orderNum: number;
  286. tag: string;
  287. updateTime: string;
  288. updateUserId: string;
  289. }
  290. export interface AddInterface {
  291. interfaceId?: number;
  292. linkName: string;
  293. gatewayId: number;
  294. protocolType: string;
  295. }
  296. export interface InterfaceList {
  297. value: string;
  298. label: string;
  299. }
  300. export interface InterfaceData {
  301. id: number;
  302. createTime: string;
  303. updateTime: string;
  304. createUserId: number;
  305. updateUserId: number;
  306. linkName: string;
  307. gatewayId: number;
  308. interfaceId: number;
  309. protocolType: string;
  310. bindState: number;
  311. dataBit: number;
  312. parityBit: string;
  313. stopBit: string;
  314. baudRate: number;
  315. readTimeout: number;
  316. nextDataReadDelay: number;
  317. nextRoundDataReadDelay: number;
  318. interfaceType: string;
  319. }
  320. export interface AgreementUpdate {
  321. id: number;
  322. linkName: string;
  323. gatewayId: number;
  324. interfaceId: number;
  325. bindState: number;
  326. dataBit: string;
  327. parityBit: string;
  328. stopBit: string;
  329. baudRate: number;
  330. readTimeout: number;
  331. nextDataReadDelay: number;
  332. nextRoundDataReadDelay: number;
  333. protocolType?: string;
  334. }
  335. export interface AgreementData {
  336. protocolType: string;
  337. station: string;
  338. name: string;
  339. protocolName: string;
  340. dataSendInterval: number;
  341. highFreqSendInterval: number;
  342. protocolId?: number;
  343. isStandard: string;
  344. deviceName: string;
  345. }
  346. export interface AgreementForm {
  347. baudRate: number;
  348. dataBit: string;
  349. parityBit: string;
  350. stopBit: string;
  351. readTimeout: number;
  352. nextDataReadDelay: number;
  353. nextRoundDataReadDelay: number;
  354. }
  355. export interface EquipmentGroup {
  356. pageIndex: number;
  357. pageSize: number;
  358. content: string;
  359. }
  360. export interface DeviceGroupItem {
  361. id: number;
  362. createTime: Date | null;
  363. updateTime: Date | null;
  364. createUserId: number | null;
  365. updateUserId: number | null;
  366. groupName: string;
  367. comment: string | null;
  368. parentId: number;
  369. userId: number;
  370. deleted: boolean | null;
  371. deviceGroupChilds: DeviceGroupChild[];
  372. }
  373. export interface DeviceGroupChild {
  374. id: number;
  375. groupName: string;
  376. comment: string | null;
  377. parentId: number;
  378. userId: number;
  379. }
  380. export interface ListInfo {
  381. dataType: number;
  382. }
  383. export interface ProtocolList {
  384. pageIndex: number;
  385. pageSize: number;
  386. searchContent: string;
  387. }
  388. export interface EquipmentInformationForm {
  389. groupId: number;
  390. deviceData: number[];
  391. deviceType: string;
  392. deviceName: string;
  393. brand: number;
  394. model: number;
  395. modelType: number;
  396. controlType: number;
  397. compressionLevel: number;
  398. voltageLevel: number;
  399. powerRating: string;
  400. powerUnload: string;
  401. maximumFlow: string;
  402. pressure: string;
  403. pressureMax: string;
  404. productionDate: string;
  405. productionNum: string;
  406. deviceNum: string;
  407. mainTechData: string;
  408. mountedPosition: string;
  409. department: string;
  410. respPerson: string;
  411. phone: string;
  412. serviceLife?: number;
  413. status: string;
  414. remarks: string;
  415. devId: number;
  416. imgUrl: string;
  417. }
  418. export interface EquipmentTypeItem {
  419. id: number;
  420. createTime: string;
  421. updateTime: string;
  422. createUserId: number;
  423. updateUserId: number;
  424. dataType: number;
  425. dataName: string;
  426. }
  427. export type ProtocolItemData = PageData<ProtocolItem>;
  428. export interface ProtocolItem {
  429. id: number;
  430. createTime: string;
  431. updateTime: string;
  432. createUserId: number;
  433. updateUserId: number;
  434. protocolName: string;
  435. protocolType: string;
  436. deviceTypeId: number | null;
  437. deviceType: string;
  438. dataBit: number;
  439. parityBit: string;
  440. stopBit: string;
  441. baudRate: number;
  442. dataSendInterval: number;
  443. highFreqSendInterval: number;
  444. readTimeout: number | null;
  445. nextDataReadDelay: number;
  446. nextRoundDataReadDelay: number;
  447. addrOrder: string;
  448. addrOrderCode: string;
  449. byteOrder: string;
  450. byteOrderCode: string;
  451. attachment: string;
  452. readContinuousAddr: string;
  453. readContinuousAddrCode: number;
  454. readContinuousAddrLength: number;
  455. }
  456. export interface ProtocolsItem {
  457. /*协议ID */
  458. protocolId?: number;
  459. /*从站号 */
  460. station: string;
  461. /*是否平台标准协议 */
  462. isStandard: string;
  463. /*普通数据上报频率 */
  464. dataSendInterval: number;
  465. /*高频发送间隔 */
  466. highFreqSendInterval: number;
  467. }
  468. export interface ProtocolReset {
  469. linkId: number;
  470. protocols: ProtocolsItem[];
  471. }
  472. export interface VerificationAgreement {
  473. id: number;
  474. createTime: string;
  475. updateTime: string;
  476. createUserId: number;
  477. updateUserId: number;
  478. linkId: number;
  479. protocolId: number;
  480. station: number;
  481. isStandard: number;
  482. dataSendInterval: number;
  483. highFreqSendInterval: number;
  484. protocolName: string;
  485. protocolType: string;
  486. deviceName: string;
  487. }
  488. export interface ProtocolListItem {
  489. pageIndex: number;
  490. pageSize: number;
  491. id?: number;
  492. linkId?: number;
  493. readWriteTypeCode?: string;
  494. monitorType?: string;
  495. searchContent?: string;
  496. }
  497. export type ProtocolListPageItemData = PageData<ProtocolListPageItem>;
  498. export interface ProtocolListPageItem {
  499. id: number;
  500. createTime: string | null;
  501. updateTime: string | null;
  502. createUserId: number | null;
  503. updateUserId: number | null;
  504. baseInfoId: number | null;
  505. platformParamCode: string | null;
  506. platformParamName: string | null;
  507. gatewayParamCode: string;
  508. gatewayParamName: string;
  509. paramCode: string;
  510. paramName: string;
  511. unit: string | null;
  512. module: number;
  513. readWriteType: string | null;
  514. readWriteTypeCode: string | null;
  515. readFuncCode: string | null;
  516. writeFuncCode: string | null;
  517. registerAddr: string | null;
  518. addrNumber: number | null;
  519. registerType: string | null;
  520. registerTypeCode: string | null;
  521. parsingType: string | null;
  522. parsingTypeCode: string | null;
  523. addrLength: number | null;
  524. wordLength: number | null;
  525. wordLengthCode: string | null;
  526. quantity: number | null;
  527. coefficient: number;
  528. isHighFreqParam: boolean | null;
  529. isHighFreqParamCode: string | null;
  530. readCalcFormula: string | null;
  531. writeCalcFormula: string | null;
  532. decimalPlace: number | null;
  533. }
  534. export type SerialNumberItemData = PageData<SerialNumberItem>;
  535. export interface SerialNumberItem {
  536. id: number;
  537. createTime: string;
  538. updateTime: string;
  539. createUserId: number;
  540. updateUserId: number;
  541. snCode: string;
  542. password: string;
  543. modelId: number;
  544. isRegister: number;
  545. state: number;
  546. deleted: number;
  547. modelName: string;
  548. links: PhysicalInterfaceList[];
  549. }
  550. export interface PhysicalInterfaceList {
  551. linkId: number;
  552. linkName: string;
  553. }
  554. export type ListEquipmentParametersItemData = PageData<ListEquipmentParametersItem>;
  555. export interface ListEquipmentParametersItem {
  556. gatewayParamCode: string;
  557. gatewayParamName: string;
  558. id: number;
  559. parsingType?: number;
  560. readWriteType?: string;
  561. readWriteTypeCode?: string;
  562. unit: string;
  563. groupId?: number;
  564. groupSerialNum?: number;
  565. groupParamSerialNum?: number;
  566. isProcessData: boolean;
  567. gatewayId: number;
  568. deviceParamCode: string;
  569. deviceParamName: string;
  570. groupName: string;
  571. groupIdShow: boolean;
  572. linkId: number;
  573. }
  574. export interface EquipmentUpdateForm {
  575. deviceId: number;
  576. gatewayId: number;
  577. gatewayProtocolId: number;
  578. linkId?: number;
  579. }
  580. export interface GetListItem {
  581. deviceId: number;
  582. monitorType: string;
  583. pageIndex: number;
  584. pageSize: number;
  585. gatewayId?: number;
  586. createUserId?: number;
  587. }
  588. export interface PostProtocolPage {
  589. pageIndex: number;
  590. pageSize: number;
  591. deviceIds: number[];
  592. gatewayIds: number[];
  593. }
  594. export type PostProtocolPageItemData = PageData<PostProtocolPageItem>;
  595. export interface PostProtocolPageItem {
  596. id: number;
  597. createTime: string;
  598. updateTime: string;
  599. createUserId: number;
  600. updateUserId: number;
  601. baseInfoId: number;
  602. platformParamCode?: string;
  603. platformParamName?: string;
  604. gatewayParamCode?: string;
  605. gatewayParamName?: string;
  606. paramCode: string;
  607. paramName: string;
  608. unit?: string;
  609. module: string;
  610. readWriteType: string;
  611. readWriteTypeCode: string;
  612. readFuncCode: string;
  613. writeFuncCode?: string;
  614. registerAddr: string;
  615. addrNumber?: string;
  616. registerType: string;
  617. registerTypeCode?: string;
  618. parsingType: string;
  619. parsingTypeCode: string;
  620. addrLength: number;
  621. wordLength?: string;
  622. wordLengthCode?: string;
  623. quantity?: string;
  624. coefficient: number;
  625. isHighFreqParam: string;
  626. isHighFreqParamCode: string;
  627. readCalcFormula?: string;
  628. writeCalcFormula?: string;
  629. decimalPlace?: number;
  630. deviceName: string;
  631. deviceNum: string;
  632. groupSerialNum: number;
  633. groupParamSerialNum: number;
  634. deviceId: number;
  635. isProcessData: boolean;
  636. gatewayId: number;
  637. deviceParamCode: string;
  638. deviceParamName: string;
  639. groupId?: number;
  640. deviceParamCodeShow: boolean;
  641. deviceParamNameShow: boolean;
  642. groupIdShow: boolean;
  643. groupParamSerialNumShow: boolean;
  644. }
  645. export interface ProtocolGatewayListListItem {
  646. pageIndex: number;
  647. pageSize: number;
  648. snCode?: number;
  649. gatewayId?: number;
  650. searchContent: string;
  651. monitorType: string;
  652. }
  653. export interface ParameterVerification {
  654. id: number;
  655. deviceParamGroupName: string;
  656. valueVos: ParameterVerificationList[];
  657. }
  658. export interface ParameterVerificationList {
  659. baseInfoId: number;
  660. platformParamCode: string;
  661. platformParamName: string;
  662. gatewayParamCode: string;
  663. gatewayParamName: string;
  664. paramCode: string;
  665. paramName: string;
  666. unit: string;
  667. module: string;
  668. readWriteType: string;
  669. readWriteTypeCode: string;
  670. readFuncCode: string;
  671. writeFuncCode: string;
  672. registerAddr: string;
  673. addrNumber: string;
  674. registerType: string;
  675. registerTypeCode: string;
  676. parsingType: string;
  677. parsingTypeCode: string;
  678. addrLength: number;
  679. wordLength: string;
  680. wordLengthCode: string;
  681. quantity: number;
  682. coefficient: number;
  683. isHighFreqParam: string;
  684. isHighFreqParamCode: string;
  685. readCalcFormula: string;
  686. writeCalcFormula: string;
  687. decimalPlace: number;
  688. valueId: number;
  689. value: number | string;
  690. }
  691. export interface GroupingList {
  692. groupName: string;
  693. serialNum?: number;
  694. }
  695. export interface GroupingListData {
  696. id: number;
  697. createTime: string;
  698. updateTime: string;
  699. createUserId: number;
  700. updateUserId: number;
  701. groupName: string;
  702. deviceId: number;
  703. serialNum: number;
  704. }
  705. export interface DevicesList {
  706. pageIndex: number;
  707. pageSize: number;
  708. groupId?: number;
  709. deviceType?: number;
  710. searchContent?: string;
  711. brandName?: string;
  712. modelName?: string;
  713. gatewaySnCode?: string;
  714. deviceName?: string;
  715. runningStatus?: number;
  716. runningStatusList?: DeviceRunningStatus[] | null;
  717. errorStatus?: number;
  718. }
  719. export interface ListInterfaces {
  720. id: number;
  721. createTime: string;
  722. updateTime: string;
  723. createUserId: number;
  724. updateUserId: number;
  725. modelId: number;
  726. interfaceType: string;
  727. name: string;
  728. }
  729. export interface ListPhysicalInterfaces {
  730. id: number;
  731. createTime: string;
  732. updateTime: string;
  733. createUserId: number;
  734. updateUserId: number;
  735. interfaceId: number;
  736. protocolName: string;
  737. orderNum: number;
  738. }
  739. export interface CustomizationData {
  740. deviceParamCode: string;
  741. paramNumShow: boolean;
  742. deviceParamName: string;
  743. paramNameShow: boolean;
  744. customFormula: string;
  745. customFormulaShow: boolean;
  746. unit: string;
  747. unitShow: boolean;
  748. decimalDigits?: number;
  749. decimalDigitsShow: boolean;
  750. paramGroupId?: number;
  751. paramGroupName: string;
  752. paramGroupIdShow: boolean;
  753. groupSerialNum?: number;
  754. groupSerialNumShow: boolean;
  755. groupParamSerialNum?: number;
  756. isProcessData: boolean;
  757. }
  758. export interface CustomParameters {
  759. customFormula: string;
  760. unit: string;
  761. decimalDigits?: number;
  762. deviceId: number;
  763. isProcessData: boolean;
  764. paramGroupId?: number;
  765. groupParamSerialNum?: number;
  766. paramType?: number;
  767. deviceParamCode: string;
  768. deviceParamName: string;
  769. paramGroupName: string;
  770. }
  771. export interface SubmitSorting {
  772. protocolParamId?: number;
  773. paramGroupId?: number;
  774. serialNum?: number;
  775. paramType?: number;
  776. isProcessData?: boolean;
  777. deviceParamName?: string;
  778. deviceParamCode?: string;
  779. groupId?: number;
  780. }
  781. export type DevicesListItemData = PageData<DevicesListItem>;
  782. export interface DevicesListItem {
  783. id: number;
  784. deviceName: string;
  785. groupId: number;
  786. deviceType: number;
  787. userId: number;
  788. brand: number;
  789. model: number;
  790. modelType: number;
  791. controlType: number;
  792. compressionLevel: number;
  793. voltageLevel: number;
  794. powerRating: number;
  795. powerUnload: number;
  796. maximumFlow: number;
  797. pressure: number;
  798. pressureMax: number;
  799. productionDate: string;
  800. productionNum: string;
  801. mainTechData: string;
  802. mountedPosition: string;
  803. department: string;
  804. respPerson: string;
  805. phone: string;
  806. serviceLife: number;
  807. status: number;
  808. runningStatus: number;
  809. remarks: string;
  810. deviceNum: string;
  811. deleted: boolean;
  812. deviceGroup: DeviceGroup;
  813. gatewayInfos: GatewayInfos[];
  814. protocolParamInfos: ProtocolParamInfos[];
  815. groupName: string;
  816. deviceTypeName: string;
  817. brandName: string;
  818. modelName: string;
  819. modelTypeName: string;
  820. controlTypeName: string;
  821. compressionLevelName: string;
  822. voltageLevelName: string;
  823. }
  824. export interface DeviceGroup {
  825. id: number;
  826. createTime: string;
  827. updateTime: string;
  828. createUserId: number;
  829. updateUserId: number;
  830. groupName: string;
  831. comment: string;
  832. parentId: number;
  833. userId: number;
  834. deleted: string;
  835. orgId: number;
  836. }
  837. export interface DeviceParamGroup {
  838. id: number;
  839. deviceParamGroupName: string;
  840. valueVos: DeviceParamItem[];
  841. }
  842. export interface DeviceParamItem {
  843. value: string;
  844. valueId: number | null;
  845. serialNum: number | null;
  846. paramName: string;
  847. unit: string | null;
  848. time: string;
  849. deviceParamName: string;
  850. deviceParamCode: string;
  851. }
  852. export interface DeviceTypeCount {
  853. deviceType: number;
  854. deviceTypeName: string;
  855. count: number;
  856. }
  857. export interface DevWorkCardProps<T extends string> {
  858. realTimeData?: Partial<Record<T, number | string>>;
  859. }
  860. export interface DevWorkRealTimeData {
  861. deviceId: number;
  862. deviceParamMapList: {
  863. time: string;
  864. [key: string]: string | number;
  865. }[];
  866. }
  867. export interface DevWorkHisDataQuery {
  868. deviceIds: number[];
  869. deviceParamCode: string[];
  870. startTime?: string;
  871. endTime?: string;
  872. }
  873. export interface DevWorkHistoryData {
  874. deviceId: number;
  875. hisVOS: DevWorkHistoryDataItem[];
  876. }
  877. export interface DevWorkHistoryDataItem {
  878. deviceParamCode: string;
  879. deviceParamName: string;
  880. unit: string;
  881. value: {
  882. time: string;
  883. value: string | number;
  884. }[];
  885. }
  886. export interface GatewayInfos {
  887. id: number;
  888. createTime: string;
  889. updateTime: string;
  890. createUserId: number;
  891. updateUserId: number;
  892. snCode: string;
  893. password: string;
  894. modelId: number;
  895. isRegister: string;
  896. state: string;
  897. deleted: string;
  898. }
  899. export interface ProtocolParamInfos {
  900. id: number;
  901. createTime: string;
  902. updateTime: string;
  903. createUserId: number;
  904. updateUserId: number;
  905. baseInfoId: number;
  906. orgId: number;
  907. recognizeResult: string;
  908. candidateResults: string;
  909. platformParamCode: string;
  910. platformParamName: string;
  911. gatewayParamCode: string;
  912. gatewayParamName: string;
  913. paramCode: string;
  914. paramName: string;
  915. unit: string;
  916. module: string;
  917. readWriteType: string;
  918. readWriteTypeCode: string;
  919. readFuncCode: string;
  920. writeFuncCode: string;
  921. registerAddr: string;
  922. addrNumber: string;
  923. registerType: string;
  924. registerTypeCode: string;
  925. parsingType: string;
  926. parsingTypeCode: string;
  927. addrLength: number;
  928. wordLength: string;
  929. wordLengthCode: string;
  930. quantity: number;
  931. coefficient: number;
  932. isHighFreqParam: string;
  933. isHighFreqParamCode: string;
  934. readCalcFormula: string;
  935. writeCalcFormula: string;
  936. decimalPlace: number;
  937. isDraft: string;
  938. }
  939. export interface GatewayBody {
  940. pageIndex: number;
  941. pageSize: number;
  942. searchContent: string;
  943. state: number;
  944. }
  945. export type GatewayListItemData = PageData<GatewayListItem>;
  946. export interface GatewayListItem {
  947. id: number;
  948. createTime: string;
  949. updateTime: string;
  950. createUserId: number;
  951. updateUserId: number;
  952. snCode: string;
  953. password: string;
  954. modelId: number;
  955. isRegister: string;
  956. state: string;
  957. deleted: string;
  958. modelName: string;
  959. protocolParamInfoQueryVos: protocolParamInfo[];
  960. }
  961. export interface protocolParamInfo {
  962. baseInfoId: number;
  963. orgId: number;
  964. recognizeResult: string;
  965. candidateResults: string;
  966. platformParamCode: string;
  967. platformParamName: string;
  968. gatewayParamCode: string;
  969. gatewayParamName: string;
  970. paramCode: string;
  971. paramName: string;
  972. unit: string;
  973. module: string;
  974. readWriteType: string;
  975. readWriteTypeCode: string;
  976. readFuncCode: string;
  977. writeFuncCode: string;
  978. registerAddr: string;
  979. addrNumber: string;
  980. registerType: string;
  981. registerTypeCode: string;
  982. parsingType: string;
  983. parsingTypeCode: string;
  984. addrLength: number;
  985. wordLength: string;
  986. wordLengthCode: string;
  987. quantity: number;
  988. coefficient: number;
  989. isHighFreqParam: string;
  990. isHighFreqParamCode: string;
  991. readCalcFormula: string;
  992. writeCalcFormula: string;
  993. decimalPlace: number;
  994. isDraft: string;
  995. }
  996. export interface GatewayParameterBody {
  997. pageIndex: number;
  998. pageSize: number;
  999. gatewayId: number;
  1000. gatewayLinkProtocolId: number;
  1001. }
  1002. export type GatewayParameterItemData = PageData<GatewayParameterItem>;
  1003. export interface GatewayParameterItem {
  1004. id: number;
  1005. paramName: string;
  1006. paramCode: string;
  1007. gatewayParamName: string;
  1008. gatewayParamCode: string;
  1009. unit: string;
  1010. readWriteType: string;
  1011. readWriteTypeCode: string;
  1012. value: string | number;
  1013. time: string;
  1014. monitorStatus: string;
  1015. }
  1016. export interface EquipmentDetailsItem {
  1017. deviceQueryVo: BasicInformation;
  1018. gatewayInfoVos: AssociatedGatewayParameters[];
  1019. protocolParamDeviceInfoVos: ConfigureDeviceParameters[];
  1020. protocolParamCustomDevVos: CustomParametersItem[];
  1021. }
  1022. export interface AssociatedGatewayParameters {
  1023. id: number;
  1024. createTime: string;
  1025. updateTime: string;
  1026. createUserId: number;
  1027. updateUserId: number;
  1028. snCode: string;
  1029. password: string;
  1030. modelId: number;
  1031. isRegister: string;
  1032. state: string;
  1033. deleted: string;
  1034. modelName: string;
  1035. linkName: string;
  1036. linkId: number;
  1037. protocolParamInfoQueryVos: protocolParamInfo[];
  1038. }
  1039. export interface BasicInformation {
  1040. id: number;
  1041. deviceName: string;
  1042. groupId: number;
  1043. deviceType: number;
  1044. userId: number;
  1045. brand: number;
  1046. model: number;
  1047. modelType: number;
  1048. controlType: number;
  1049. compressionLevel: number;
  1050. voltageLevel: number;
  1051. powerRating: number;
  1052. powerUnload: number;
  1053. maximumFlow: number;
  1054. pressure: number;
  1055. pressureMax: number;
  1056. productionDate: string;
  1057. productionNum: string;
  1058. mainTechData: string;
  1059. mountedPosition: string;
  1060. department: string;
  1061. respPerson: string;
  1062. phone: string;
  1063. serviceLife: number;
  1064. status: number;
  1065. remarks: string;
  1066. deviceNum: string;
  1067. runningStatus: number;
  1068. deleted: boolean;
  1069. deviceGroup: DeviceGroup;
  1070. gatewayInfos: GatewayInfos[];
  1071. protocolParamInfos: ProtocolParamInfos[];
  1072. groupName: string;
  1073. deviceTypeName: string;
  1074. brandName: string;
  1075. modelName: string;
  1076. modelTypeName: string;
  1077. controlTypeName: string;
  1078. compressionLevelName: string;
  1079. voltageLevelName: string;
  1080. errorStatus: number;
  1081. }
  1082. export interface ConfigureDeviceParameters {
  1083. baseInfoId: number;
  1084. orgId: number;
  1085. recognizeResult: string;
  1086. candidateResults: string;
  1087. platformParamCode: string;
  1088. platformParamName: string;
  1089. gatewayParamCode: string;
  1090. gatewayParamName: string;
  1091. paramCode: string;
  1092. paramName: string;
  1093. unit: string;
  1094. module: string;
  1095. readWriteType: string;
  1096. readWriteTypeCode: string;
  1097. readFuncCode: string;
  1098. writeFuncCode: string;
  1099. registerAddr: string;
  1100. addrNumber: string;
  1101. registerType: string;
  1102. registerTypeCode: string;
  1103. parsingType: string;
  1104. parsingTypeCode: string;
  1105. addrLength: number;
  1106. wordLength: string;
  1107. wordLengthCode: string;
  1108. quantity: number;
  1109. coefficient: number;
  1110. isHighFreqParam: string;
  1111. isHighFreqParamCode: string;
  1112. readCalcFormula: string;
  1113. writeCalcFormula: string;
  1114. decimalPlace: number;
  1115. isDraft: string;
  1116. id: number;
  1117. deviceParamCode: string;
  1118. deviceParamName: string;
  1119. isProcessData: number;
  1120. gatewayId: string;
  1121. groupSerialNum: number;
  1122. groupParamSerialNum: number;
  1123. groupId: number;
  1124. snCode: string;
  1125. serialNum: number;
  1126. groupName: string;
  1127. linkId: string;
  1128. }
  1129. export interface CustomParametersItem {
  1130. id: number;
  1131. customFormula: string;
  1132. unit: string;
  1133. decimalDigits: number;
  1134. deviceId: number;
  1135. serialNum: number;
  1136. isProcessData: boolean;
  1137. groupSerialNum: number;
  1138. groupParamSerialNum: number;
  1139. deviceParamCode: string;
  1140. deviceParamName: string;
  1141. groupName: string;
  1142. }
  1143. export interface AllDevicesList {
  1144. id: number;
  1145. createTime: string;
  1146. updateTime: string;
  1147. createUserId: number;
  1148. updateUserId: number;
  1149. deviceName: string;
  1150. groupId: number;
  1151. deviceType: number;
  1152. userId: number;
  1153. brand: number;
  1154. model: number;
  1155. modelType: number;
  1156. controlType: number;
  1157. compressionLevel: number;
  1158. voltageLevel: number;
  1159. powerRating: number;
  1160. powerUnload: number;
  1161. maximumFlow: number;
  1162. pressure: number;
  1163. pressureMax: number;
  1164. productionDate: string;
  1165. productionNum: string;
  1166. mainTechData: string;
  1167. mountedPosition: string;
  1168. department: string;
  1169. respPerson: string;
  1170. phone: string;
  1171. serviceLife: number;
  1172. status: number;
  1173. remarks: string;
  1174. deleted: number;
  1175. deviceNum: string;
  1176. runningStatus: string;
  1177. }
  1178. export interface GatewayQuery extends PageParams {
  1179. searchContent: string;
  1180. state: number;
  1181. total: number;
  1182. }
  1183. export interface GatewayLinkProtocolQuery {
  1184. linkId: number;
  1185. monitorType: string;
  1186. searchContent: string;
  1187. }
  1188. export interface DeviceBindQuery {
  1189. deviceParamGroups: DeviceParamGroups[];
  1190. deviceGateways: DeviceGateways[];
  1191. deviceParamGroupRels: DeviceParamGroupRels[];
  1192. protocolParamCustomDevDTOS: CustomParameters[];
  1193. }
  1194. export interface DeviceParamGroups {
  1195. groupName: string;
  1196. deviceId: number;
  1197. serialNum?: number;
  1198. }
  1199. export interface DeviceGateways {
  1200. deviceId: number;
  1201. gatewayId: number;
  1202. gatewayProtocolId: number;
  1203. linkId: number;
  1204. }
  1205. export interface DeviceParamGroupRels {
  1206. protocolParamId: number;
  1207. paramGroupName: string;
  1208. paramType: number;
  1209. deviceParamCode: string;
  1210. deviceParamName: string;
  1211. isProcessData: boolean;
  1212. unit: string;
  1213. }
  1214. export interface ParamValueListAutomaticQuery {
  1215. linkId: number;
  1216. deviceTypeId: number;
  1217. }
  1218. export interface ParamValueListAutomaticData {
  1219. id: number;
  1220. createTime: string;
  1221. updateTime: string;
  1222. createUserId: number;
  1223. updateUserId: number;
  1224. baseInfoId: number;
  1225. orgId: number;
  1226. recognizeResult: string;
  1227. candidateResults: string;
  1228. platformParamCode: string;
  1229. platformParamName: string;
  1230. gatewayParamCode: string;
  1231. gatewayParamName: string;
  1232. paramCode: string;
  1233. paramName: string;
  1234. unit: string;
  1235. module: string;
  1236. readWriteType: string;
  1237. readWriteTypeCode: string;
  1238. readFuncCode: string;
  1239. writeFuncCode: string;
  1240. registerAddr: string;
  1241. addrNumber: string;
  1242. registerType: string;
  1243. registerTypeCode: string;
  1244. parsingType: string;
  1245. parsingTypeCode: string;
  1246. addrLength: number;
  1247. wordLength: string;
  1248. wordLengthCode: string;
  1249. quantity: number;
  1250. coefficient: number;
  1251. isHighFreqParam: string;
  1252. isHighFreqParamCode: string;
  1253. readCalcFormula: string;
  1254. writeCalcFormula: string;
  1255. decimalPlace: number;
  1256. isDraft: string;
  1257. }
  1258. export interface BatchUpdate {
  1259. link: LinkType;
  1260. protocols: LinkProtocolType[];
  1261. }
  1262. export interface LinkType {
  1263. id: number;
  1264. createTime?: string;
  1265. updateTime?: string;
  1266. createUserId?: number;
  1267. updateUserId?: number;
  1268. linkName: string;
  1269. gatewayId: number;
  1270. interfaceId: number;
  1271. protocolType: string;
  1272. bindState: number;
  1273. dataBit: number;
  1274. parityBit: string;
  1275. stopBit: string;
  1276. baudRate: number;
  1277. readTimeout: number;
  1278. nextDataReadDelay: number;
  1279. nextRoundDataReadDelay: number;
  1280. }
  1281. export interface LinkProtocolType {
  1282. id: number;
  1283. createTime?: string;
  1284. updateTime?: string;
  1285. createUserId?: number;
  1286. updateUserId?: number;
  1287. linkId: number;
  1288. protocolId: number;
  1289. station: number;
  1290. isStandard: string; // 根据实际情况,如果`isStandard`只包含"true"或"false",可以改为boolean类型
  1291. dataSendInterval: number;
  1292. highFreqSendInterval: number;
  1293. deviceId?: number;
  1294. }
  1295. export interface DeviceGroupListQuery {
  1296. userId?: number;
  1297. orgId?: number;
  1298. parentId: number;
  1299. }
  1300. export interface MonitoringForm {
  1301. id?: number;
  1302. name: string;
  1303. tempHumidityControlMode: string;
  1304. regionId?: number;
  1305. returnDevGroupId?: number;
  1306. returnDevId?: number;
  1307. returnTempParamCode: string;
  1308. returnHumidityParamCode: string;
  1309. supplyDevGroupId?: number;
  1310. supplyDevId?: number;
  1311. supplyTempParamCode: string;
  1312. supplyHumidityParamCode: string;
  1313. tempUpper: number;
  1314. tempLower: number;
  1315. tempPreset: number;
  1316. humidityUpper: number;
  1317. humidityLower: number;
  1318. humidityPreset: number;
  1319. }
  1320. export interface RegionQuery {
  1321. id?: number;
  1322. devGroupId: number;
  1323. regionName?: string;
  1324. canvas?: string;
  1325. }
  1326. export interface GroupRegions {
  1327. id: number;
  1328. createTime: string;
  1329. updateTime: string;
  1330. createUserId: number;
  1331. updateUserId: number;
  1332. orgId: number;
  1333. devGroupId: number;
  1334. regionName: string;
  1335. canvas: string;
  1336. outsideDevGroupId: number;
  1337. outsideDevId: number;
  1338. outsideDevName: string;
  1339. outsideTempParamCode: string;
  1340. outsideTempParamName: string;
  1341. outsideTempParamUnit: string;
  1342. outsideHumidityParamCode: string;
  1343. outsideHumidityParamName: string;
  1344. outsideHumidityParamUnit: string;
  1345. }
  1346. export interface DeviceParams {
  1347. id: number;
  1348. deviceParamCode: string;
  1349. deviceParamName: string;
  1350. unit: string;
  1351. }
  1352. export interface RegionsPointsItem {
  1353. id: number;
  1354. orgId: number;
  1355. devGroupId: number;
  1356. regionName: string;
  1357. canvas: string;
  1358. outsideDevGroupId: number;
  1359. outsideDevId: number;
  1360. outsideTempParamCode: string;
  1361. outsideHumidityParamCode: string;
  1362. outsideEnthalpyParamCode: string;
  1363. outSideTemperature: string;
  1364. outSideHumidity: string;
  1365. outsideEnthalpy: string;
  1366. avgTemperature: string;
  1367. avgHumidity: string;
  1368. points: MonitoringPointData[];
  1369. name?: string;
  1370. }
  1371. export interface MonitoringPointData {
  1372. id: number;
  1373. name: string;
  1374. status: number;
  1375. temperature: string;
  1376. humidity: string;
  1377. tempUpper: number;
  1378. tempLower: number;
  1379. humidityUpper: number;
  1380. humidityLower: number;
  1381. tempData: CurvedData[];
  1382. humidityData: CurvedData[];
  1383. }
  1384. export interface CurvedData {
  1385. time: string;
  1386. value: number;
  1387. }
  1388. export interface MonitorPointInfo extends MonitoringForm {
  1389. id: number;
  1390. createTime: string;
  1391. updateTime: string;
  1392. createUserId: number;
  1393. updateUserId: number;
  1394. status: number;
  1395. returnDevGroupId: number;
  1396. supplyDevGroupId: number;
  1397. returnDevId: number;
  1398. supplyDevId: number;
  1399. }
  1400. export interface RegionNameList {
  1401. name: string;
  1402. id: number;
  1403. }
  1404. export interface OutdooForm {
  1405. regionId?: number;
  1406. outsideDevGroupId?: number;
  1407. outsideDevId?: number;
  1408. outsideTempParamCode: string;
  1409. outsideHumidityParamCode: string;
  1410. outsideEnthalpyParamCode: string;
  1411. }
  1412. export interface LimitForm {
  1413. id?: number;
  1414. regionId?: number;
  1415. tempUpper: number;
  1416. tempLower: number;
  1417. tempPreset: number;
  1418. humidityUpper: number;
  1419. humidityLower: number;
  1420. humidityPreset: number;
  1421. batch: boolean;
  1422. }
  1423. export interface WarningItem {
  1424. id?: number;
  1425. pointId?: number;
  1426. enabled: boolean;
  1427. type: number;
  1428. val: number;
  1429. duration: number;
  1430. }
  1431. export interface MonitorPointItem extends WarningItem {
  1432. createTime: string;
  1433. updateTime: string;
  1434. createUserId: string;
  1435. updateUserId: string;
  1436. orgId: number;
  1437. }
  1438. export interface PointTimeSeriesQuery {
  1439. startTime: string;
  1440. endTime: string;
  1441. }
  1442. export interface TempHumidityControlSettings {
  1443. id: number;
  1444. name: string;
  1445. tempHumidityControlMode: number;
  1446. tempPreset: number;
  1447. humidityPreset: number;
  1448. tempUpper: number;
  1449. tempLower: number;
  1450. humidityUpper: number;
  1451. humidityLower: number;
  1452. supplyTempData: HistoricalDataSequence[];
  1453. supplyHumidityData: HistoricalDataSequence[];
  1454. tempData: HistoricalDataSequence[];
  1455. humidityData: HistoricalDataSequence[];
  1456. }
  1457. export interface HistoricalDataSequence {
  1458. time: string;
  1459. value: number;
  1460. }
  1461. export interface FormatterData {
  1462. componentType: string;
  1463. seriesType: string;
  1464. seriesIndex: number;
  1465. seriesName: string;
  1466. name: string;
  1467. dataIndex: number;
  1468. data: number;
  1469. value: number;
  1470. color: string; // 系列颜色
  1471. dimensionNames: string[];
  1472. encode: object;
  1473. marker: string;
  1474. }