jiangping
2024-11-15 e1310d24b502fea752afb403b080aa4eda4046b0
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/board/EnergyController.java
@@ -2,12 +2,15 @@
import com.doumee.api.BaseController;
import com.doumee.config.annotation.LoginNoRequired;
import com.doumee.core.haikang.model.param.respose.RegionEnergyListResponse;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.utils.Constants;
import com.doumee.dao.web.response.platformReport.*;
import com.doumee.service.business.third.BoardService;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@@ -30,36 +33,16 @@
@Slf4j
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/energy")
public class EnergyController extends BaseController {
    @Autowired
    private BoardService boardService;
    @LoginNoRequired
    @ApiOperation("中心数据")
    @GetMapping("/centerData")
    public ApiResponse<EnergyBoardVO> centerData() {
        EnergyBoardVO data = new EnergyBoardVO();
        Random random = new Random();
        data.setSmokeBoxTotal(random.nextInt(20000));
        data.setCarbon(new BigDecimal(random.nextInt(1000)));
        data.setElectricityQuantity(random.nextInt(1000));
        data.setElectricityYear(new BigDecimal(random.nextInt(10)));
        data.setElectricityMonth(new BigDecimal(random.nextInt(10)));
        data.setWaterQuantity(new BigDecimal(random.nextInt(1000)));
        data.setWaterYear(new BigDecimal(random.nextInt(10)));
        data.setWaterMonth(new BigDecimal(random.nextInt(10)));
        EnergyBoardVO data =boardService.centerEnergyData();
        data.setGasQuantity(new BigDecimal(random.nextInt(1000)));
        data.setGasYear(new BigDecimal(random.nextInt(10)));
        data.setGasMonth(new BigDecimal(random.nextInt(10)));
        data.setOfficeQuantity(random.nextInt(20));
        data.setPowerQuantity(random.nextInt(20));
        data.setWorkHouseQuantity(random.nextInt(20));
        data.setParkQuantity(random.nextInt(20));
        data.setTodayElectricity(random.nextInt(20));
        data.setMonthElectricity(random.nextInt(20));
        data.setYesterdayElectricity(random.nextInt(20));
        return ApiResponse.success(data);
    }
@@ -68,17 +51,18 @@
    @LoginNoRequired
    @ApiOperation("用电总能耗同比、环比和区域用电量集合")
    @GetMapping("/energyRegionData")
    public ApiResponse< RegionEnergyListResponse> energyRegionData() {
         RegionEnergyListResponse  data=boardService.energyRegionData();
        return ApiResponse.success(data);
    }
    @LoginNoRequired
    @ApiOperation("实时负荷曲线")
    @GetMapping("/loadCurve")
    public ApiResponse<List<EnergyDataVO>> loadCurve() {
        List<EnergyDataVO> loadCurveList = new ArrayList<>();
        Random random = new Random();
        for (int i = 1; i <= 23; i++) {
            EnergyDataVO data = new EnergyDataVO();
            data.setTimeData(StringUtils.leftPad(i+"",2,"0") +":00");
            data.setEnergy(new BigDecimal(random.nextInt(200)));
            loadCurveList.add(data);
        }
        List<EnergyDataVO> loadCurveList =boardService.loadEnergyCurve();
        return ApiResponse.success(loadCurveList);
    }
@@ -88,17 +72,10 @@
    @ApiOperation("月能耗、油耗分析")
    @GetMapping("/energyDataList")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "查询类型:0=水;1=气;2=电;3=油耗", required = true),
            @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "查询类型:0=水;1=气;2=油耗;3=用电", required = true),
    })
    public ApiResponse<List<EnergyDataVO>> energyDataList(@RequestParam Integer type) {
        List<EnergyDataVO> energyDataVOList = new ArrayList<>();
        Random random = new Random();
        for (int i = 1; i <= 12; i++) {
            EnergyDataVO data = new EnergyDataVO();
            data.setTimeData(i +"月");
            data.setEnergy(new BigDecimal(random.nextInt(200)));
            energyDataVOList.add(data);
        }
        List<EnergyDataVO> energyDataVOList = boardService.energyDataList(type);
        return ApiResponse.success(energyDataVOList);
    }
@@ -107,23 +84,7 @@
    @ApiOperation("上月油耗排行")
    @GetMapping("/lastMonthOil")
    public ApiResponse<List<OilDataVO>> lastMonthOil() {
        List<OilDataVO> oilDataVOList = new ArrayList<>();
        Random random = new Random();
        BigDecimal maxOil = BigDecimal.ZERO;
        BigDecimal lastOil = BigDecimal.ZERO;
        for (int i = 1; i <= 7; i++) {
            OilDataVO oilDataVO = new OilDataVO();
            oilDataVO.setCarNo("皖A8" + random.nextInt(9) + random.nextInt(9) + random.nextInt(9) + random.nextInt(9));
            if(i==1){
                oilDataVO.setQuantity(new BigDecimal(random.nextInt(100)));
                maxOil = oilDataVO.getQuantity();
            }else{
                oilDataVO.setQuantity(new BigDecimal(random.nextInt(lastOil.intValue())));
            }
            lastOil = oilDataVO.getQuantity();
            oilDataVO.setMaxOil(maxOil);
            oilDataVOList.add(oilDataVO);
        }
        List<OilDataVO> oilDataVOList = boardService.energyLastMonthOilSort();
        return ApiResponse.success(oilDataVOList);
    }
}