package handler import ( "city_chips/internal/service" "city_chips/pkg/helper/resp" "fmt" "github.com/gin-gonic/gin" "github.com/spf13/viper" "math/rand" ) type EnergyHandler struct { *Handler energyService service.EnergyService conf *viper.Viper } func NewEnergyHandler( handler *Handler, energyService service.EnergyService, conf *viper.Viper, ) *EnergyHandler { return &EnergyHandler{ Handler: handler, energyService: energyService, conf: conf, } } // GetEnergy 获取能源系统数据 func (h *EnergyHandler) GetEnergy(ctx *gin.Context) { m := make(map[string]any) OnedayPowerConsumption := make(map[string]any) OnedayWaterConsumption := make(map[string]any) LastYearEnergyConsumption := make(map[string]any) YearEnergyConsumption := make(map[string]any) LastYearCarbonEmissions := make(map[string]any) YearCarbonEmissions := make(map[string]any) for i := 0; i < 24; i++ { name := fmt.Sprintf("%v时", i+1) OnedayPowerConsumption[name] = rand.Intn(100) OnedayWaterConsumption[name] = rand.Intn(100) } for i := 0; i < 12; i++ { name := fmt.Sprintf("%v月", i+1) LastYearEnergyConsumption[name] = rand.Intn(1000) YearEnergyConsumption[name] = rand.Intn(1000) LastYearCarbonEmissions[name] = rand.Intn(1000) YearCarbonEmissions[name] = rand.Intn(1000) } m["PowerConsumption"] = rand.Intn(1000) //今日实时电耗 m["WaterConsumption"] = rand.Intn(1000) //今日实时水耗 m["YesterdayConsumption"] = rand.Intn(1000) //昨日电耗 m["MonthElectricityConsumption"] = rand.Intn(1000) //本月电耗 m["YesterdayWaterConsumption"] = rand.Intn(1000) //昨日水耗 m["MonthWaterConsumption"] = rand.Intn(1000) //本月水耗 m["OnedayPowerConsumption"] = OnedayPowerConsumption //本月水耗 m["OnedayWaterConsumption"] = OnedayWaterConsumption //本月水耗 m["EnergyCount"] = rand.Intn(10000) //能源总量 m["EnergyIntensity"] = rand.Intn(1000) //能耗强度 m["CarbonEmissions"] = rand.Intn(1000) //碳排总量 m["CarbonIsntensity"] = rand.Intn(1000) //碳排强度 m["LastYearEnergyConsumption"] = LastYearEnergyConsumption //去年能耗 m["YearEnergyConsumption"] = YearEnergyConsumption //今年能耗 m["LastYearCarbonEmissions"] = LastYearCarbonEmissions //去年碳排 m["YearCarbonEmissions"] = YearCarbonEmissions //今年碳排 resp.HandleSuccess(ctx, m) }