package com.sky.ioc.controller.operation;

import com.sky.ioc.entity.params.IocParam;
import com.sky.ioc.service.carbon.CarbonService;
import com.sky.ioc.tool.ReturnMsg;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * TODO
 *
 * @Description
 * @Author LunCe
 * @Date 2023/3/6 10:06
 **/


@Api(tags ="智慧运营----运营分析")
@Slf4j
@RestController
@RequestMapping("/analyse")
public class AnalyseController {


    @Autowired
    private CarbonService carbonService;

    @ApiOperation("核心指标")
    @PostMapping("/getAnalyseCoreIndicators")
    public ReturnMsg getAnalyseCoreIndicators(@RequestBody IocParam iocParam){
        return carbonService.getAnalyseCoreIndicators(iocParam);
    }




    @ApiOperation("用水核心指标")
    @PostMapping("/getAnalyseWaterCoreIndicators")
    public ReturnMsg getAnalyseWaterCoreIndicators(@RequestBody IocParam iocParam){
        return carbonService.getAnalyseWaterCoreIndicators(iocParam);
    }



    @ApiOperation("用电核心指标")
    @PostMapping("/getAnalysePowerCoreIndicators")
    public ReturnMsg getAnalysePowerCoreIndicators(@RequestBody IocParam iocParam){
        return carbonService.getAnalysePowerCoreIndicators(iocParam);
    }


    @ApiOperation("用热核心指标")
    @PostMapping("/getAnalyseHotCoreIndicators")
    public ReturnMsg getAnalyseHotCoreIndicators(@RequestBody IocParam iocParam){
        return carbonService.getAnalyseHotCoreIndicators(iocParam);
    }

    @ApiOperation("用冷核心指标")
    @PostMapping("/getAnalyseColdCoreIndicators")
    public ReturnMsg getAnalyseColdCoreIndicators(@RequestBody IocParam iocParam){
        return carbonService.getAnalyseColdCoreIndicators(iocParam);
    }


    @ApiOperation("光伏核心指标")
    @PostMapping("/getAnalyseCpvCoreIndicators")
    public ReturnMsg getAnalyseCpvCoreIndicators(@RequestBody IocParam iocParam){
        return carbonService.getAnalyseCpvCoreIndicators(iocParam);
    }


    @ApiOperation("总能源趋势")
    @PostMapping("/getEnergyTrendsTotal")
    public ReturnMsg getEnergyTrendsTotal(@RequestBody IocParam iocParam){
        return carbonService.getEnergyTrendsTotal(iocParam);
    }


    @ApiOperation("光伏能源趋势")
    @PostMapping("/getEnergyTrendsAnalyseCpv")
    public ReturnMsg getEnergyTrendsAnalyseCpv(@RequestBody IocParam iocParam){
        return carbonService.getEnergyTrendsAnalyseCpv(iocParam);
    }
    @ApiOperation("光伏能源分布中的图表")
    @PostMapping("/getEnergyTrendsAnalyseCpvInfo")
    public ReturnMsg getEnergyTrendsAnalyseCpvInfo(@RequestBody IocParam iocParam){
        return carbonService.getEnergyTrendsAnalyseCpvInfo(iocParam);
    }

    @ApiOperation("用冷能源趋势")
    @PostMapping("/getEnergyTrendsAnalyseCold")
    public ReturnMsg getEnergyTrendsAnalyseCold(@RequestBody IocParam iocParam){
        return carbonService.getEnergyTrendsAnalyseCold(iocParam);
    }

    @ApiOperation("用热能源趋势")
    @PostMapping("/getEnergyTrendsAnalyseHot")
    public ReturnMsg getEnergyTrendsAnalyseHot(@RequestBody IocParam iocParam){
        return carbonService.getEnergyTrendsAnalyseHot(iocParam);
    }


    @ApiOperation("用电能源趋势")
    @PostMapping("/getEnergyTrendsAnalysePower")
    public ReturnMsg getEnergyTrendsAnalysePower(@RequestBody IocParam iocParam){
        return carbonService.getEnergyTrendsAnalysePower(iocParam);
    }

    @ApiOperation("用热能源趋势")
    @PostMapping("/getEnergyTrendsAnalyseWater")
    public ReturnMsg getEnergyTrendsAnalyseWater(@RequestBody IocParam iocParam){
        return carbonService.getEnergyTrendsAnalyseWater(iocParam);
    }


    @ApiOperation("总能源分析(饼状图)")
    @PostMapping("/getEnergyAnalysisTotal")
    public ReturnMsg getEnergyAnalysisTotal(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisTotal(iocParam);
    }
    @ApiOperation("水能源分析(饼状图)")
    @PostMapping("/getEnergyAnalysisWater")
    public ReturnMsg getEnergyAnalysisWater(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisWater(iocParam);
    }

    @ApiOperation("用电能源分析(饼状图)")
    @PostMapping("/getEnergyAnalysisPower")
    public ReturnMsg getEnergyAnalysisPower(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisPower(iocParam);
    }
    @ApiOperation("热能源分析(饼状图)")
    @PostMapping("/getEnergyAnalysisHot")
    public ReturnMsg getEnergyAnalysisHot(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisHot(iocParam);
    }

    @ApiOperation("总能源分析统计")
    @PostMapping("/getEnergyAnalysisTotalInfo")
    public ReturnMsg getEnergyAnalysisTotalInfo(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisTotalInfo(iocParam);
    }
    @ApiOperation("水能源分析统计")
    @PostMapping("/getEnergyAnalysisWaterInfo")
    public ReturnMsg getEnergyAnalysisWaterInfo(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisWaterInfo(iocParam);
    }

    @ApiOperation("用电能源分析统计")
    @PostMapping("/getEnergyAnalysisPowerInfo")
    public ReturnMsg getEnergyAnalysisPowerInfo(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisPowerInfo(iocParam);
    }
    @ApiOperation("热能源分析统计")
    @PostMapping("/getEnergyAnalysisHotInfo")
    public ReturnMsg getEnergyAnalysisHotInfo(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisHotInfo(iocParam);
    }

    @ApiOperation("冷能源分析")
    @PostMapping("/getEnergyAnalysisClod")
    public ReturnMsg getEnergyAnalysisClod(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisClod(iocParam);
    }
    @ApiOperation("光伏能源分析")
    @PostMapping("/getEnergyAnalysisCpv")
    public ReturnMsg getEnergyAnalysisCpv(@RequestBody IocParam iocParam){
        return carbonService.getEnergyAnalysisCpv(iocParam);
    }
}
