export interface DeviceSummary { deviceId: string; deviceName: string; deviceType: DeviceType; deviceTypeEn: string; deviceSource: string; deviceModelId: string; pictureUrl: string; online: boolean; workAreaId?: string; locationId?: string; locationMaps: { Pixel?: any; Latlng?: any; GPS?: any; BIM?: any; }; metadata: DeviceMetadata; logoType?: string; } export interface ModelList { modelType: string; modelId?: string; } export interface DeviceMetadata { custom: { id: string; projectId: string; deviceSn: string; desc: string; deviceTypeId: string; deviceType: string; deviceBrand: string; deviceIcon: string; devicePin: string; devicePic: string; }; monitorType?: number; // 气体监测类型 customTowerCraneType?: string; // 塔吊类型(尖头塔、平头塔) } // Latlng, GPS, Pixel, BIM export enum DeviceLocationType { Pixel = 'Pixel', Latlng = 'Latlng', GPS = 'GPS', BIM = 'BIM' } export enum DeviceType { EnvironmentControlEquipment = 'EnvironmentControlEquipment', // 环境监控设备 Crane = 'Crane', // 塔吊 TowerCrane = 'TowerCrane', // 塔机 Camera = 'Camera', // 摄像头 BallCamera = 'BallCamera', // 球状摄像头 GunCamera = 'GunCamera', // 枪状摄像头 AttendanceEquipment = 'AttendanceEquipment', // 人员定位 GateEquipment = 'GateEquipment', // 闸机 WeighbridgeEquipment = 'WeighbridgeEquipment', // 地磅 Elevator = 'Elevator', // 电梯 UnloadPlatform = 'UnloadPlatform', // 卸料平台 SprayEquipment = 'SprayEquipment', // 智能控制箱 WaterMeter = 'WaterMeter', // 智能水表 SmokeDetection = 'SmokeDetection', // 烟感组合 Substation = 'Substation', // 配电箱 GuardFence = 'GuardFence', // 临边防护 InfraredAlarm = 'InfraredAlarm', // 周界防护 GantryCrane = 'GantryCrane', // 龙门吊 Treasury = 'Treasury', // 库房监测 CuringRoom = 'CuringRoom', // 养护室监测 WifiEducate = 'WifiEducate', // wifi教育 LaunchingGantry = 'LaunchingGantry', // 架桥机 PitchMixStation = 'PitchMixStation', // 沥青拌合站 Compactor = 'Compactor', // 压实机 Paver = 'Paver', // 摊铺机 SewageDetection = 'SewageDetection', //污水监测 HarmfulGas = 'HarmfulGas', // 气体含量监测 HangBasket = 'HangBasket', // 吊篮监测 AntiOverturn = 'AntiOverturn', // 塔吊防倾翻 VehicleGate = 'VehicleGate', // 车辆闸机 WireRopeDamage = 'WireRopeDamage', // 钢丝绳损伤 ElectronicLock = 'ElectronicLock' // 电子锁 } export interface INewLoadAllDevicesParams { projectId?: string; hasStatus?: boolean; } export interface ISimpleDevice { // 设备id id: string; // 设备名 deviceName: string; } export interface LocationMaps { Pixel: Pixel; BIM: Bim; } export interface Bim { x: number; y: number; z: number; } export interface Pixel { x: number; y: number; } export interface CraneDriverModel { id?: string; tenantId?: string; projectId?: string; entityId?: string; driverName?: string; driverID?: string; sex?: string; idCardNo?: string; age?: string; workAge?: string; certificateNo?: string; } export interface CraneDeviceModel { id?: string; tenantId?: string; projectId?: string; entityId?: string; model?: string; recordNumber?: string; manufacturer?: string; propertyUnit?: string; installationUnit?: string; verifyDate?: string; recordDate?: string; foreArmLength?: string; rearArmLength?: string; armHeight?: string; maxLoad?: string; ratedTorque?: string; } // 设备编号 export interface ISimpleDevice { // 设备id id: string; // 设备名 deviceName: string; } export interface IDevicesMenuList { name: string; code: string; authCode: string; } export interface DevicePosition { type: string; location: { x: number; y: number }; } export interface IEnvDefinitionsItem { // 规则开始时间 startTime?: number; // 规则结束时间 endTime?: number; // 规则类型 eventType?: string; // 规则级别(废弃) alertLevel?: number; // 规则提示语 notifications?: string; // 规则最小限制 lowerLimit?: number; // 规则最大限制 ruleExpression?: string; // 规则类型(新增字段) warningType?: number; } export interface IEnvItem { // id id?: string; // 租户id tenantId?: string; // 项目id projectId: string; ownerId?: string; // 环境模型id deviceModelId?: string; // 环境code deviceAttrCode: string; // 环境name deviceAttrName: string; // 主表最大值 maxValue: number; // 主表最小值 minValue: number; // 是否启用规则(新增字段) enable?: boolean; // 字表列表 definitions: IEnvDefinitionsItem[]; } // 智能设备 export interface RealTimeMachineryData { returnCode?: number; result?: RealTimeMachineryRowData[]; } export interface RealTimeMachineryRowData { modelName?: string; deviceCount?: number; } export interface CraneSimpleInfo { deviceId: string; foreArmLength: number; rearArmLength: number; rotation: number; amplitude: number; height: number; isAlarm: boolean; deviceName: string; sn: string; } export interface CraneSimpleInfoList extends Array { } export interface DriverInfo { driverID?: string; driverName?: string; sex?: string; idCardNo?: string; age?: number; workAge?: number; certificateNo?: string; driverAuthStatus?: string; driverAuthTime?: string; CraneDetailInfo?: string; driverIDCard?: string; photoUrl?: string; } export interface DeviceInfo { id?: string; tenantId?: string; projectId?: string; appointNo?: string; // 建委编号 model?: string; // 规格型号 recordNumber?: string; // 设备备案编号 deviceTypeName?: string; // 设备名称 manufacturingLicense?: string; // 制造许可编号 manufacturer?: string; // 制造厂家 propertyUnit?: string; // 设备产权单位 manufactureDate?: string; // 出厂日期 manufacturingNo?: string; // 出厂编号 contactNumber?: string; // 联系电话 dismantleUnit?: string; // 拆除单位 detectionUnit?: string; // 检测机构 deviceNumber?: string; // 设备编号 installationUnit?: string; // 安装单位 verifyDate?: string; // 检验合格日期 recordDate?: string; // 使用登记日期 maxLoad?: number; // 最大起重量: ratedTorque?: number; // 最大起重力矩 customTowerCraneType?: string // 塔吊类型 } export interface CraneDetailInfo { id?: string; online?: boolean; isAlarm?: boolean; rotation?: number; isOnline?: boolean; alarmFbnZone?: number; alarmHwFault?: number; alarmIncline?: number; alarmLimit?: number; alarmLoad?: number; alarmObCollision?: number; alarmTorque?: number; alarmTrCollision?: number; alarmWindspeed?: number; amplitude?: number; height?: number; windspeed?: number; weight?: number; angle?: number; loadRatio?: number; torqueRatio?: number; limitState?: string; foreArmLength?: number; rearArmLength?: number; armHeight?: number; deviceName?: string; driverInfo?: DriverInfo; deviceInfo?: DeviceInfo; } export interface IBorderGuardState { deviceId: string; onlineStatus: boolean; // 在线状态 status: number; // 报警/正常状态(筑连) } // 小车额定吊重 export interface IGantryCraneCar { mainWeight: number; // 主钩额定吊重 subWeight: number; // 副钩额定吊重 } // 龙门吊设备详情 export interface IGantryCraneDeviceInfo { deviceId: string; // 设备id deviceNo: string; // 产品编号 deviceName: string; //设备名称 specNo: string; // 规格型号 factory: string; // 制造厂家 checkInstitution: string; // 检测机构 qualifiedTime: string; // 检验合格日期(yyyy-MM-dd) useTime: string; // 使用登记日期(yyyy-MM-dd) span: number; // 跨度 height: number; // 高度 carWeight: Array; // 小车组额定吊重 } // 龙门吊司机详情 export interface IGantryCraneDriverInfo { deviceId: string; // 设备id driverName: string; // 司机姓名 gender: string; // 性别 idCard: string; // 身份证 age: number; // 年龄 workingLife: number; // 工作年限 certNo: string; // 证书编号 } // 龙门吊======设备模型 export interface IGantryCraneDynamicData { deviceId: string; // 设备id cartDis: number; // 大车行程 cartSpeed: number; // 大车速度 windSpeed: number; // 风速 cartSkew: number; // 大车运行偏斜 overload: number; // 累计超载次数 windproof: number; // 累计抗风作业次数 duration: number; // 累计工作时长 单位:小时,精确到小时 workCount: number; // 累计吊装次数 startTime: number; // 工作循环开始时间 时间戳,精确到s endTime: number; // 工作循环结束时间 时间戳,精确到s heightUp: number; // 吊钩高度上限值 trolDisUp: number; // 小车行程上限值 heightLow: number; // 吊钩高度下限值 // isShowTrol1: boolean; // 是否显示小车1 // isShowTrol1SubHook: boolean; // 是否显示小车1的副钩 mainLoad1: number; // 主钩吊重1 mainHeight1: number; // 主钩高度1 subLoad1: number; // 副钩吊重1 subHeight1: number; // 副钩高度1 trolDis1: number; // 小车行程1 trolSpeed1: number; // 小车速度1 // isShowTrol2: boolean; // 是否显示小车2 // isShowTrol2SubHook: boolean; // 是否显示小车2的副钩 mainLoad2: number; // 主钩吊重2 mainHeight2: number; // 主钩高度2 subLoad2: number; // 副钩吊重2 subHeight2: number; // 副钩高度2 trolDis2: number; // 小车行程2 trolSpeed2: number; // 小车速度2 } type TGantryCraneAlarmValue = 0 | 1; // 0:正常 1:报警 // 龙门吊======报警信息 export interface IGantryCraneAlarm { distanceAlarmByCar: TGantryCraneAlarmValue; // 大车行程限位 distanceAlarmByTrol: TGantryCraneAlarmValue; // 小车行程超限 windAlarm: TGantryCraneAlarmValue; // 风速 biasAlarm: TGantryCraneAlarmValue; // 大车倾斜 weightAlarm: TGantryCraneAlarmValue; // 吊重超限 heightAlarm: TGantryCraneAlarmValue; // 起吊高度超限 collideAlarm: TGantryCraneAlarmValue; // 机钩碰撞 alarmCartDis: TGantryCraneAlarmValue; // 大车行程报警 alarmCartSkew: TGantryCraneAlarmValue; // 大车运行偏斜报警 alarmWindSpeed: TGantryCraneAlarmValue; // 风速报警 isNormal: TGantryCraneAlarmValue; // 操作是否正常报警 alarmTrolDis1: TGantryCraneAlarmValue; // 小车1行程报警 alarmMainHeight1: TGantryCraneAlarmValue; // 小车1主钩高度报警 alarmMainLoad1: TGantryCraneAlarmValue; // 小车1主钩重量报警 alarmSubHeight1: TGantryCraneAlarmValue; // 小车1副钩高度报警 alarmSubLoad1: TGantryCraneAlarmValue; // 小车1副钩重量报警 alarmTrolDis2: TGantryCraneAlarmValue; // 小车2行程报警 alarmMainHeight2: TGantryCraneAlarmValue; // 小车2主钩高度报警 alarmMainLoad2: TGantryCraneAlarmValue; // 小车2主钩重量报警 alarmSubHeight2: TGantryCraneAlarmValue; // 小车2副钩高度报警 alarmSubLoad2: TGantryCraneAlarmValue; // 小车2副钩重量报警 } type TGantryCraneStateValue = 0 | 1; // 0:静止 1:移动 type TGantryCraneBrakeStateValue = 0 | 1; // 闸状态 0:闭闸 1:开闸 // 龙门吊======状态信息 export interface IGantryCraneState { cartLeft: TGantryCraneStateValue; // 大车左移 cartRight: TGantryCraneStateValue; // 大车右移 trolBefore1: TGantryCraneStateValue; // 小车1前移 trolAfter1: TGantryCraneStateValue; // 小车1后移 mainUp1: TGantryCraneStateValue; // 小车1主钩上升 mainDown1: TGantryCraneStateValue; // 小车1主钩下降 subUp1: TGantryCraneStateValue; // 小车1副钩上升 subDown1: TGantryCraneStateValue; // 小车1副钩下降 trolBefore2: TGantryCraneStateValue; // 小车2前移 trolAfter2: TGantryCraneStateValue; // 小车2后移 mainUp2: TGantryCraneStateValue; // 小车2主钩上升 mainDown2: TGantryCraneStateValue; // 小车2主钩下降 subUp2: TGantryCraneStateValue; // 小车2副钩上升 subDown2: TGantryCraneStateValue; // 小车2副钩下降 mainBrake1: TGantryCraneBrakeStateValue; // 小车1主钩抱闸状态 subBrake1: TGantryCraneBrakeStateValue; // 小车1副钩抱闸状态 mainBrake2: TGantryCraneBrakeStateValue; // 小车2主钩抱闸状态 subBrake2: TGantryCraneBrakeStateValue; // 小车2副钩抱闸状态 } type TGantryCraneLimitAlarmValue = 0 | 1; // 限位报警 0:正常 1:到达限位 // 龙门吊======限位报警信息 export interface IGantryCraneLimitAlarm { limitCartSkew: TGantryCraneLimitAlarmValue; // 大车运行偏斜限位 limitDoor: TGantryCraneLimitAlarmValue; // 门限位 limitCartColLeft: TGantryCraneLimitAlarmValue; // 大车左防撞限位 limitCartColRight: TGantryCraneLimitAlarmValue; // 大车右防撞限位 limitMainHeightU1: TGantryCraneLimitAlarmValue; // 小车1主钩高度上限位 limitMainHeightD1: TGantryCraneLimitAlarmValue; // 小车1主钩高度下限位 limitSubHeightU1: TGantryCraneLimitAlarmValue; // 小车1副钩高度上限位 limitSubHeightD1: TGantryCraneLimitAlarmValue; // 小车1副钩高度下限位 limitTrolDisBefore1: TGantryCraneLimitAlarmValue; // 小车1行程前限位 limitTrolDisAfter1: TGantryCraneLimitAlarmValue; // 小车1行程后限位 limitMainHeightU2: TGantryCraneLimitAlarmValue; // 小车2主钩高度上限位 limitMainHeightD2: TGantryCraneLimitAlarmValue; // 小车2主钩高度下限位 limitSubHeightU2: TGantryCraneLimitAlarmValue; // 小车2副钩高度上限位 limitSubHeightD2: TGantryCraneLimitAlarmValue; // 小车2副钩高度下限位 limitTrolDisBefore2: TGantryCraneLimitAlarmValue; // 小车2行程前限位 limitTrolDisAfter2: TGantryCraneLimitAlarmValue; // 小车2行程后限位 } // 龙门吊======动态详情数据 export interface IGantryCraneDynamicDetailInfo extends IGantryCraneDynamicData { alarm: IGantryCraneAlarm; // 报警信息 status: IGantryCraneState; // 状态信息 limit: IGantryCraneLimitAlarm; // 限位报警信息 isAlarm: boolean; } // 龙门吊======违章吊装次数 export interface LmIllegalLiftingData { statisticDate: string; cyclicCount: number; overloadCount: number; windCount: number; } // 龙门吊-工时分析(近30天) export interface LmManhourAnalysislist { time: string; workTime: string; } export interface LmManhourAnalysisData { deviceName: string; details: LmManhourAnalysislist[]; } // 龙门吊-设备情况汇总 export interface LmEquipmentConditionData { projectId: string; totalCount: number; onlineCount: number; offlineCount: number; } // 龙门吊-设备情况汇总二级页面 export interface LmEquipmentConditionSecondLevel { status: string; deviceName: string; driverName: string; } // 龙门吊-报警类别分析 export interface LmAlarmCategoryData { type: string; typeDesc: string; alarmCount: number; } // 龙门吊-二级页面 export interface LmAlarmCategorySecondLevelData { deviceName: string; driverName: string; alarmTimeTs: string; recoverTimeTs: string; alarmTypeDesc: string; subAlarmTypeDesc?: string; } export interface LmAlarmCategorySecondLevel { totalPage: number; totalCount: number; pageSize: number; data: LmAlarmCategorySecondLevelData[]; } // 斑马进度 export interface UpdataZebraProgress { returnCode: number; result: boolean; } export interface ZebraProgressParams { projectId: string; zebraId: number; rawName: string; newName: string; flag: number; tenantId: number; userId: number; } export interface QueryZebraProgress { returnCode: number; result: ZebraProgressTable[]; } export interface ZebraProgressTable { id: number; zebraId: number; userId: number; rawName: string; newName: string; flag: number; createTime: number; } export interface CarameListFromCraneModel { id: string; tenantId: string; projectId: string; craneDeviceId: string; deviceId: string; deviceName: string; positionName: string; } export interface CarameList { deviceId: string; deviceName: string; deviceType: string; deviceTypeEn: string; deviceTypeName: string; deviceSource: string; pictureUrl: string; online: boolean; metadata: any; hasExist: boolean; } export interface SaveCarameList { deviceId: string; deviceName: string; positionName: string; id?: string; } // 塔吊司机基本信息 export interface ICraneDriverBaseInfo { id?: string; // 司机id // projectId?: number | string; driverName: string; // 司机姓名 idCardNo: string; // 身份证号 certificateNo?: string; // 证书编号 workAge?: string; // 工作年限 photoUrl?: string; // 头像地址 } // 塔吊司机列表项 export interface ICraneDriverListItem extends ICraneDriverBaseInfo { id: string; createdAt: string; // 创建时间 projectId: string; // 项目id deviceId: string; // 设备id driverID: string; // 司机id // driverName: string; // 司机姓名 sex: string; // 性别 type?: number; // 认证类型 } // 电梯设备信息 export interface IElevatorDevice { id: string; deviceId: string; projectId: string; deviceTypeName: string; recordNumber: string; model: string; manufacturer: string; propertyUnit: string; installationUnit: string; dismantleUnit: string; detectionUnit: string; verifyDate: number; recordDate: number; ratedLoad: number; ratedPerson: number; } export interface IDriverInfos { id: string; createdAt: number; updatedAt: number; projectId: string; deviceId: string; driverName: string; idCardNo: string; age: number; sex: string; workAge: string; certificateNo: string; type: number; photoUrl: string; orderNo: string; } export interface TypeStatistical { statisticsName: string; inspectionCount: number; missingCount: number; } export interface TypeStatisticalDetail { statisticsName: string; planCount: number; inspectionCount: number; missingCount: number; inspectionCountRadio: number; missingCountRadio: number; }