| | |
| | | import com.ruoyi.common.security.annotation.RequiresPermissions; |
| | | import com.ruoyi.other.api.domain.TNotice; |
| | | import com.ruoyi.other.api.domain.TScreenContent; |
| | | import com.ruoyi.other.api.domain.TSystemConfiguration; |
| | | import com.ruoyi.other.api.dto.NoticeQueryDto; |
| | | import com.ruoyi.other.service.TNoticeService; |
| | | import com.ruoyi.other.service.TScreenContentService; |
| | | import com.ruoyi.other.service.TSystemConfigurationService; |
| | | import com.ruoyi.other.util.EnergyRefreshService; |
| | | import com.ruoyi.other.vo.*; |
| | | import io.swagger.annotations.ApiOperation; |
| | |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.math.BigDecimal; |
| | | import java.math.RoundingMode; |
| | | import java.util.Arrays; |
| | | import java.time.LocalDateTime; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | |
| | | private TScreenContentService screenContentService; |
| | | @Resource |
| | | private EnergyRefreshService energyRefreshService; |
| | | @Resource |
| | | private TSystemConfigurationService systemConfigurationService; |
| | | |
| | | /** |
| | | * 顶部-累计电量 |
| | |
| | | @GetMapping(value = "/photovoltaicAndConsumption") |
| | | public AjaxResult<PhotovoltaicAndConsumptionVO> photovoltaicAndConsumption() { |
| | | //需调用接口 获取光伏发电量 |
| | | List<Integer> siteIds= Arrays.asList(25,26); |
| | | PhotovoltaicAndConsumptionVO vo = new PhotovoltaicAndConsumptionVO(); |
| | | List<TScreenContent> list = screenContentService.list(new LambdaQueryWrapper<TScreenContent>().in(TScreenContent::getSiteId, siteIds)); |
| | | if(list==null|| list.isEmpty()){ |
| | | return AjaxResult.success(vo); |
| | | } |
| | | vo.setGreenElectricityToday(list.get(0).getGreenElectricityToday()); |
| | | list.remove(0); |
| | | list.forEach(x->{ |
| | | vo.setGreenElectricityToday(vo.getGreenElectricityToday().add(x.getGreenElectricityToday())); |
| | | }); |
| | | |
| | | return AjaxResult.success(new PhotovoltaicAndConsumptionVO()); |
| | | TSystemConfiguration sysConfig = systemConfigurationService.getOne(new LambdaQueryWrapper<TSystemConfiguration>() |
| | | .eq(TSystemConfiguration::getType,4)); |
| | | BigDecimal refreshValueOne = new BigDecimal(sysConfig.getContent()); |
| | | vo.setTodayGenerateElectricity(refreshValueOne); |
| | | vo.setGreenElectricityToday(refreshValueOne.multiply(new BigDecimal("0.94")).setScale(2, RoundingMode.HALF_UP)); |
| | | |
| | | |
| | | return AjaxResult.success(vo); |
| | | } |
| | | |
| | | |
| | |
| | | public AjaxResult<EnergyStorageDischargeVO> energyStorageDischarge() { |
| | | //需调用接口 获取光伏发电量 |
| | | EnergyStorageDischargeVO vo = new EnergyStorageDischargeVO(); |
| | | vo.setTodayDischarge(energyRefreshService.getCurrentValue()); |
| | | //今日放能 10:00-11:59 每1分钟随机增值0.5-1,放满90停止;用第一次放能值为基数(85)开始累加,17:00-21:59 每1分钟随机增值0.5-1,放满90停止。 |
| | | vo.setTodayDischarge(energyRefreshService.getTodayDischarge()); |
| | | //今日储能 00:00-次日7:59 每1分钟随机增长0.5-1,储满115停止,12:00-16:59 每1分钟随机增长0.5-1,增加到115减第一次放能剩余值(如放能值为85,则放能剩余值为90-85)结束; |
| | | vo.setTodayStorage(energyRefreshService.getTodayStorage()); |
| | | return AjaxResult.success(vo); |
| | | } |
| | | |