type.ts 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682
  1. import { ViewType, DrawerType } from './constant';
  2. /** 场景标签信息 */
  3. export type SceneLabelOrModuleItem = {
  4. /** 标签id */
  5. id: number;
  6. /** 标签代码 */
  7. code: string;
  8. /** 创建时间 */
  9. createdAt: string;
  10. /** 0-未删除,大于0-已删除 */
  11. isDeleted: number;
  12. /** 标签名称 */
  13. name: string;
  14. /** 说明 */
  15. remark: string;
  16. /** 状态: 0-正常,1-不正常 */
  17. status: number;
  18. /** 更新时间 */
  19. updatedAt: string;
  20. };
  21. /** 工位信息 */
  22. export type WorkSpaceInfoItem = {
  23. /** 工位id */
  24. id: number;
  25. /** 所属工厂id */
  26. workshopId: number;
  27. /** 工位名称 */
  28. name: string;
  29. /** 工位code */
  30. code: string;
  31. /** 工位描述 */
  32. remark: string;
  33. /** 状态: 0-启用, 1-禁用 */
  34. status: number;
  35. /** 创建时间 */
  36. createdAt: string;
  37. /** 更新时间 */
  38. updatedAt: string;
  39. /** 0-未删除,大于0-已删除 */
  40. isDeleted: number;
  41. /** 工位负责人 */
  42. principal: string;
  43. /** 排序序号 */
  44. serial: number;
  45. };
  46. /** 工厂信息 */
  47. export type WorkShopInfoItem = {
  48. /** 工厂id */
  49. id: number;
  50. /** 所属公司id */
  51. companyId: number;
  52. /** 1-生产安全 2-安全环保 */
  53. // type: number;
  54. /** 工厂名称 */
  55. name: string;
  56. /** 工厂code */
  57. code: string;
  58. /** 工厂描述 */
  59. remark: string;
  60. /** 状态: 0-启用, 1-禁用 */
  61. status: number;
  62. /** 创建时间 */
  63. createdAt: string;
  64. /** 更新时间 */
  65. updatedAt: string;
  66. /** 0-未删除,大于0-已删除 */
  67. isDeleted: number;
  68. /** 下属工位列表 */
  69. children: WorkSpaceInfoItem[];
  70. /** 场景标签 */
  71. labelName: string;
  72. /** 场景标签id */
  73. sceneLabelId: number;
  74. /** 排序序号 */
  75. serial: number;
  76. /** 车间模板 */
  77. workshopModule: SceneLabelOrModuleItem;
  78. };
  79. /** 公司信息 */
  80. export type CompanyInfoItem = {
  81. /** 公司id */
  82. id: number;
  83. /** 上级公司ID, 无上级为0 */
  84. parentId: number;
  85. /** 公司名称 */
  86. name: string;
  87. /** 公司code */
  88. code: string;
  89. /** 公司描述 */
  90. remark: string;
  91. /** 状态: 0-启用, 1-禁用 */
  92. status: number;
  93. /** 创建时间 */
  94. createdAt: string;
  95. /** 更新时间 */
  96. updatedAt: string;
  97. /** 排序序号 */
  98. serial: number;
  99. /** 0-未删除,大于0-已删除 */
  100. isDeleted: number;
  101. /** 下属工厂列表 */
  102. children: WorkShopInfoItem[];
  103. /** 场景标签列表 */
  104. labelList: SceneLabelOrModuleItem[];
  105. /** 场景模板列表 */
  106. moduleList: SceneLabelOrModuleItem[];
  107. // 模板列表信息
  108. labelModuleList: { sceneLabel: SceneLabelOrModuleItem; sceneModule: SceneLabelOrModuleItem }[];
  109. };
  110. /** 公司主页配置 */
  111. export interface UpdateCompanyLayoutParam extends Omit<UpdateViewLayoutParam, 'targetId'> {
  112. /** 标签id */
  113. labelId: number;
  114. targetId: number;
  115. /** 更新时需要上传layout布局id */
  116. id?: number;
  117. }
  118. /** ??? */
  119. export interface LayoutResp {
  120. /** 创建时间 */
  121. createdAt: string;
  122. /** 自增主键 */
  123. id: number;
  124. /** 页面布局json */
  125. layout: string;
  126. /** 目标id: 对应公司ID/车间ID */
  127. targetId: number;
  128. viewType: ViewType;
  129. integrationState?: number;
  130. }
  131. /** ??? */
  132. export interface UpdateViewLayoutParam {
  133. layout: string;
  134. targetId: string;
  135. viewType: ViewType;
  136. }
  137. /** ??? */
  138. export type CameraItem = {
  139. id: number;
  140. /** 相机名称 */
  141. name: string;
  142. /** 相机code */
  143. code: string;
  144. /** 相机IP地址 */
  145. cameraIp: string;
  146. /** 相机描述 */
  147. remark: string;
  148. /** 状态: 0-启用, 1-禁用 */
  149. status?: number;
  150. /** 推流地址 */
  151. pushstreamIp?: string;
  152. };
  153. export interface ShopMapCamera extends CameraItem {
  154. isSet: number;
  155. /** 工位名称 */
  156. workSpaceName: string;
  157. integrationState?: number;
  158. }
  159. /** ??? */
  160. export type WorkSpaceCameraRelative = WorkSpaceInfoItem & { cameraList: CameraItem[] };
  161. // 传入参数类型 还缺个场景list
  162. export interface ComAddDatas {
  163. code?: string; //公司编码
  164. createdAt?: string; //创建时间
  165. id?: number; //新增后返回的唯一com的id
  166. isDeleted?: number; //是否删除
  167. name: string; //公司名字
  168. parentId?: number; //上级公司id 无上级为0
  169. remark?: string; //描述
  170. // isDisabled?: number; //状态 0-启动 1-禁用
  171. updatedAt?: string;
  172. serial?: number; //排序
  173. labelList?: string[]; //创建的多个场景标签 自定义后面需要修改 这里没
  174. parent?: null | ComAddDatas;
  175. longitude?: number; //经度
  176. latitude?: number; //纬度
  177. regionCode?: string;
  178. thumbnail?: string;
  179. }
  180. // 传入参数类型
  181. export interface WorkshopAddDatas {
  182. code?: string;
  183. companyId?: number; //公司id
  184. sceneLabelId?: number; //类型 1-车间 2-危险点 3-物流 4-生活园区
  185. createdAt?: string;
  186. id?: number;
  187. isDeleted?: number;
  188. name: string;
  189. remark?: string;
  190. // isDisabled?: number; //状态 0-启动 1-禁用
  191. updatedAt?: string;
  192. serial?: number;
  193. parent?: null | WorkshopAddDatas;
  194. workshopModule?: WorkShopTempleteType;
  195. labelList?: WorkShopTempleteType[];
  196. longitude?: number; //经度
  197. latitude?: number; //纬度
  198. // templete?: string; //车间模板
  199. // tag?: string; //场景标签
  200. }
  201. // 传入参数类型
  202. export interface WorkspaceAddDatas {
  203. code?: string;
  204. createdAt?: string;
  205. id?: number;
  206. isDeleted?: number;
  207. name: string;
  208. principal?: string; //工位负责人
  209. remark?: string;
  210. // isDisabled?: number; //状态 0-启动 1-禁用
  211. serial?: number;
  212. updatedAt?: string;
  213. workshopId?: number; //车间id
  214. parent?: null | WorkspaceAddDatas;
  215. longitude?: number; //经度
  216. latitude?: number; //纬度
  217. // tag?: string; //场景标签
  218. }
  219. // 传入参数类型
  220. export interface SceneListType<T, S> {
  221. code?: string;
  222. createdAt?: string;
  223. id?: number;
  224. isDeleted?: number;
  225. name?: string;
  226. parentId?: number;
  227. remark?: string;
  228. status?: number;
  229. serial?: number;
  230. updatedAt?: string;
  231. children?: T[]; //车间-工位信息
  232. labelList?: S[]; //创建的多个场景标签
  233. moduleList?: S[]; //创建得多个模板
  234. }
  235. /** ??? */
  236. export interface LabelModuleListType {
  237. code?: string;
  238. createdAt?: string;
  239. id?: number;
  240. isDeleted?: number;
  241. name?: string;
  242. remark?: string;
  243. status?: number;
  244. updatedAt?: string;
  245. }
  246. /** ??? */
  247. export interface GetListWorkshop<U, A> {
  248. code?: string;
  249. companyId?: number; //公司id
  250. sceneLabelId?: number; //类型 1-车间 2-危险点 3-物流 4-生活园区
  251. labelName?: string;
  252. createdAt?: string;
  253. id?: number;
  254. isDeleted?: number;
  255. name?: string;
  256. remark?: string;
  257. serial?: number;
  258. status?: number;
  259. updatedAt?: string;
  260. children?: U[]; //工位信息
  261. workshopModule?: A; //车间模板
  262. workshopFuncPermissions: number[];
  263. // tag?: string; //场景标签 自定义 后面需要修改
  264. }
  265. //查询场景标签
  266. export interface CompanyType {
  267. tenantId: number;
  268. userId: number;
  269. createDate: string;
  270. modifyDate: string;
  271. tenantCode: string;
  272. tenantName: string;
  273. beginDate: string;
  274. endDate: string;
  275. tenantStatus: number;
  276. isDelete: boolean;
  277. }
  278. //查询场景模板
  279. export interface InputType {
  280. tenantCode: string;
  281. tenantId: number;
  282. type: string;
  283. }
  284. //查询场景标签
  285. export interface SceneLabelType {
  286. code?: string;
  287. createdAt?: string;
  288. id?: number;
  289. isDeleted?: number;
  290. name?: string;
  291. remark?: string;
  292. status?: number;
  293. updatedAt?: string;
  294. }
  295. //查询场景模板
  296. export interface TemplateType {
  297. code?: string;
  298. createdAt?: string;
  299. id?: number;
  300. isDeleted?: number;
  301. name?: string;
  302. remark?: string;
  303. status?: number;
  304. updatedAt?: string;
  305. }
  306. //查询车间模板
  307. export interface WorkshopModuleType {
  308. code?: string;
  309. createdAt?: string;
  310. id?: number;
  311. isDeleted?: number;
  312. name?: string;
  313. remark?: string;
  314. status?: number;
  315. updatedAt?: string;
  316. }
  317. //根据公司ID查询场景标签
  318. export interface SceneLabelByCompanyType {
  319. code?: string;
  320. createdAt?: string;
  321. id?: number;
  322. isDeleted?: number;
  323. name?: string;
  324. remark?: string;
  325. status?: number;
  326. updatedAt?: string;
  327. }
  328. //保存公司-场景标签-场景模板关系
  329. export interface SceneTempleteType {
  330. companyId?: number;
  331. createdAt?: string;
  332. id?: number;
  333. isDeleted?: number;
  334. remark?: string;
  335. sceneLabelId?: number;
  336. sceneModuleId?: number;
  337. updatedAt?: string;
  338. }
  339. //保存车间-车间模板关系
  340. export interface WorkShopTempleteType {
  341. id?: number;
  342. workshopId?: number;
  343. workshopModuleId?: number;
  344. remark?: string;
  345. createdAt?: string;
  346. isDeleted?: number;
  347. updatedAt?: string;
  348. }
  349. /** ---------------------------------------------------------------------------------
  350. * V4版 接口定义修改说明
  351. * date: 2025-01-09
  352. * 修改了原场景相关的接口定义
  353. * 获取公司数据的结构整合为一个树
  354. * 公司-车间-工位单独的结构用于增改查的接口参数
  355. * 原传入参数类型不变
  356. * 区分公司-车间-工位类型的原因为目前树节点结构趋同但不保证以后相同
  357. ------------------------------------------------------------------------------------ */
  358. /** 带指向父节点的公司-车间-工位树结构 */
  359. export interface ComTreeType extends UseComType<UseWorkshopType<UseWorkspaceType>> {}
  360. /** 公司信息类型,注释的属性会返回但不用,下同 */
  361. export interface UseComType<T> {
  362. uniqueCode?: string;
  363. // createdAt: string;
  364. // createdBy: number;
  365. id: number;
  366. // isDeleted: number;
  367. isDisabled: number;
  368. latitude?: number;
  369. longitude?: number;
  370. name: string;
  371. nodeType: DrawerType;
  372. orderNum: number;
  373. parentId: number;
  374. regionCode: string;
  375. remark: string;
  376. tenantId: number;
  377. thumbnail: string;
  378. // updatedAt:string;
  379. // updatedBy:number;
  380. children?: T[];
  381. }
  382. /** 车间信息类型 */
  383. export interface UseWorkshopType<T> {
  384. uniqueCode?: string;
  385. companyId: number;
  386. // createdAt: string;
  387. // createdBy: number;
  388. id: number;
  389. code?: string; //上飞定制需要
  390. // isDeleted: number;
  391. isDisabled: number;
  392. name: string;
  393. nodeType: DrawerType;
  394. orderNum: number;
  395. remark: string;
  396. tenantId: number;
  397. // updatedAt: string;
  398. // updatedBy: number;
  399. children?: T[];
  400. }
  401. /** 工位信息类型 */
  402. export interface UseWorkspaceType {
  403. uniqueCode?: string;
  404. workshopId: number;
  405. companyId: number;
  406. // createdAt: string;
  407. // createdBy: number;
  408. id: number;
  409. code?: string; //上飞定制需要
  410. isDeleted: number;
  411. isDisabled: number;
  412. name: string;
  413. nodeType: DrawerType;
  414. orderNum: number;
  415. principalId: number;
  416. principalName: string;
  417. remark: string;
  418. tenantId: number;
  419. // updatedAt: string;
  420. // updatedBy: number;
  421. }
  422. /** --------------------------------------------------------------------------------- */
  423. // 根据车间id查工位-相机列表
  424. export interface GetCameraStatusByWorkshopRes {
  425. /*节点类型 */
  426. nodeType: string;
  427. /*车间id */
  428. id: number;
  429. /*公司id */
  430. companyId: number;
  431. /*车间名称 */
  432. name: string;
  433. /*车间编号 */
  434. code: string;
  435. /*排序序号 */
  436. orderNum: number;
  437. /*描述 */
  438. remark: string;
  439. /*状态: 0-启用, 1-禁用 */
  440. isDisabled: number;
  441. /*创建人 */
  442. createdBy: number;
  443. /*更新人 */
  444. updatedBy: number;
  445. /*创建时间 */
  446. createdAt: Record<string, unknown>;
  447. /*修改时间 */
  448. updatedAt: Record<string, unknown>;
  449. /*租户ID */
  450. tenantId: number;
  451. /*工位-相机信息 */
  452. children: {
  453. /*节点类型 */
  454. nodeType: string;
  455. /*工位id */
  456. id: number;
  457. /*车间id */
  458. workshopId: number;
  459. /*工位名称 */
  460. name: string;
  461. /*工位编号 */
  462. code: string;
  463. /*描述 */
  464. remark: string;
  465. /*排序序号 */
  466. orderNum: number;
  467. /*工位负责人 */
  468. principalName: string;
  469. /*工位负责人id */
  470. principalId: number;
  471. /*状态: 0-启用, 1-禁用 */
  472. isDisabled: number;
  473. /*创建人 */
  474. createdBy: number;
  475. /*更新人 */
  476. updatedBy: number;
  477. /*创建时间 */
  478. createdAt: Record<string, unknown>;
  479. /*更新时间 */
  480. updatedAt: Record<string, unknown>;
  481. /*租户ID */
  482. tenantId: number;
  483. /*相机信息 */
  484. children: {
  485. /*自增主键 */
  486. id: number;
  487. /*车间id */
  488. workshopId: number;
  489. /*工位id */
  490. workspaceId: number;
  491. /*相机名称 */
  492. name: string;
  493. /*相机编号 */
  494. code: string;
  495. /*相机IP */
  496. cameraIp: string;
  497. /*相机端口 */
  498. cameraPort: string;
  499. /*登录账号(用户名) */
  500. username: string;
  501. /*密码 */
  502. password: string;
  503. /*相机类型: haikang/dahua/anxus/huawei */
  504. cameraType: string;
  505. /*描述 */
  506. remark: string;
  507. /*相机是否支持移动缩放:0-不支持;1-支持 */
  508. isPtz: number;
  509. /*相机的ONVIF端口号 */
  510. onvifPort: string;
  511. /*添加方式: IP,NVR,RTSP */
  512. sourceType: string;
  513. /*rtsp地址 */
  514. rtspUrl: string;
  515. /*NVR id */
  516. nvrId: number;
  517. /*NVR通道号 */
  518. nvrChannel: string;
  519. /*视频编码标准,H264, H265 */
  520. videoStandard: string;
  521. /*视频服务类型,TCP, UDP, AUTO */
  522. videoServiceType: string;
  523. /*状态: 0-启用, 1-禁用 */
  524. isDisabled: number;
  525. /*创建人 */
  526. createdBy: number;
  527. /*更新人 */
  528. updatedBy: number;
  529. /*创建时间 */
  530. createdAt: Record<string, unknown>;
  531. /*更新时间 */
  532. updatedAt: Record<string, unknown>;
  533. /*0-未删除,大于0(时间戳)-已删除 */
  534. isDeleted: number;
  535. /*租户ID */
  536. tenantId: number;
  537. /*联网状态: 0-启用, 1-禁用 */
  538. networkingState: number;
  539. /*接入状态: 0-启用, 1-禁用 */
  540. integrationState: number;
  541. /*渲染选择,无渲染/某个算法 */
  542. render: string;
  543. /*版本 */
  544. version: number;
  545. /*扩展数据 */
  546. extra: string;
  547. /*场景-模板列表 */
  548. sceneTemplateList: {
  549. /*场景id */
  550. sceneId: number;
  551. /*模板id */
  552. templateId: number;
  553. }[];
  554. /* */
  555. pushStreamDTO: {
  556. /* */
  557. videoUrls: {
  558. /*推流地址(前端播放的地址) */
  559. pushstreamIp: string;
  560. /*渲染推流地址(前端播放的渲染地址) */
  561. pushstreamRenderUrl: string;
  562. /*ios推流地址(前端播放的地址) */
  563. m3u8PushstreamIp: string;
  564. /*ios推流地址(前端播放的地址) */
  565. m3u8PushstreamRenderIp: string;
  566. /*推流地址(前端播放的地址) */
  567. pushstreamIpAbs: string;
  568. /*渲染推流地址(前端播放的渲染地址) */
  569. pushstreamRenderUrlAbs: string;
  570. /*ios推流地址(前端播放的地址) */
  571. m3u8PushstreamIpAbs: string;
  572. /*ios推流地址(前端播放的地址) */
  573. m3u8PushstreamRenderIpAbs: string;
  574. };
  575. /*摄像头实时记录的画面 */
  576. imageUrl: string;
  577. };
  578. /*节点类型 */
  579. nodeType: string;
  580. }[];
  581. }[];
  582. }