index.ts 34 KB

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