import { ApiClientFactory } from '../core/api.client.factory'; import { ElectricAccumulationModel, ElectricDeviceAlarmModel, LeakAndTempModel, PowerMonitoringModel, HydropowerList, SubstationMapValues, GreenConstructionHydropowerData, } from '../model/electricAccumulation.model'; export class ElectricAccumulationService { constructor(private factory: ApiClientFactory) {} // 用电量之和 async loadElectricAccumulation(projectId: string): Promise { const Today = await this.factory.entity.get( `/api/web/projects/${projectId}/electric/accumulation` ); return Today; } // 用电设备近一个月预警信息 async loadElectricDeviceAlarm(projectId: string): Promise { const Today = await this.factory.entity.get( `api/web/projects/${projectId}/substations/warnStateCount` ); return Today; } // 用电设备近一个月平均漏电流信息 async loadLeakCurrent(projectId: string, deviceId: string): Promise { const Today = await this.factory.entity.get( `/api/web/projects/${projectId}/substations/devices/${deviceId}/leakages` ); return Today; } // 用电设备近一个月平均温度信息 async loadTempCurrent(projectId: string, deviceId: string): Promise { const Today = await this.factory.entity.get( `/api/web/projects/${projectId}/substations/devices/${deviceId}/temperatures` ); return Today; } // 按地址获取用电设备数量 async loadElectricDeviceCountByAdd(projectId: string): Promise { const Today = await this.factory.entity.get( `/api/web/projects/${projectId}/substations/byAddress` ); return Today; } // 获取用电设备元信息列表 async loadElectricDeviceList(projectId: string): Promise { const Today = await this.factory.entity.get(`/api/web/projects/${projectId}/substations`); return Today; } // 获取区域全部电量监测 async loadPowerMonitoringOfAll(projectId: string, level: number): Promise { const result = await this.factory.entity.get( `/api/web/projects/${projectId}/substationEnergys/positionEnergys?level=${level}` ); return result; } // 获取区域按月电量监测 async loadPowerMonitoringOfMonth(projectId: string, year: string, month: string, level: number): Promise { const result = await this.factory.entity.get( `/api/web/projects/${projectId}/substationEnergys/positionEnergys/${year}/${month}?level=${level}` ); return result; } // 获取每月用电量-全部 async loadElectricityList(projectId: string, type: string, level: number): Promise { return await this.factory.entity.get(`api/web/projects/${projectId}/substationLevel/energySum?type=${type}&level=${level}`); } // 配电箱数字工地二级页面设备弹窗 async loadSubstationMapDetail(projectId: string, deviceId: string): Promise { const substations = await this.factory.entity.get( `/api/web/projects/${projectId}/substations/devices/${deviceId}/details` ); return substations; } // 绿色施工-万元产值用电量与目标值对比 async getTenThousandYuanDataElectric( projectId: string, phaseEnum?: string, level?: number ): Promise { const result = await this.factory.entity.get( `api/web/projects/${projectId}/power/saving/v2/thousandOutput/consume/compare`, { phaseEnum, level } ); return result; } // 绿色施工-各区域用电量汇总接口 async getTotalElectricData(projectId: string, phaseEnum?: string, level?: number): Promise { const result = await this.factory.entity.get( `api/web/projects/${projectId}/power/saving/v2/position/total`, { phaseEnum, level } ); return result; } // 绿色施工-各区域月用电量监测接口 async getMonthTotalElectricData( projectId: string, phaseEnum?: string, date?: string, level?: number ): Promise { const result = await this.factory.entity.get( `api/web/projects/${projectId}/power/saving/v2/position/month/total`, { phaseEnum, date, level } ); return result; } }