| | |
| | | @ApiModelProperty("平忿¬") |
| | | private BigDecimal averageEnergyCost; |
| | | |
| | | @ApiModelProperty("è½èææ¬è¶å¿") |
| | | private List<EnergyAccountTypeDto> energyAccountTypeDtos; |
| | | |
| | | @ApiModelProperty("è½èç±»åææ¬å æ¯") |
| | | private List<EnergyConsumptionTypeDto> energyConsumptionTypeProportion; |
| | | |
| | |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.energy.dto.EnergyAccountTypeDto; |
| | | import com.ruoyi.energy.dto.EnergyConsumptionDetailDto; |
| | | import com.ruoyi.energy.dto.EnergyConsumptionTypeDto; |
| | | import com.ruoyi.energy.dto.EnergyCostDto; |
| | |
| | | List<EnergyConsumptionTypeDto> energyConsumptionTypeProportion(@Param("c") EnergyStatisticsVo energyStatisticsVo); |
| | | |
| | | List<EnergyCostDto> energyCostDtos(@Param("c") EnergyStatisticsVo energyStatisticsVo); |
| | | |
| | | List<EnergyAccountTypeDto> energyAccountTypeDtos(@Param("c") EnergyStatisticsVo energyStatisticsVo); |
| | | |
| | | List<EnergyConsumptionDetailDto> energyConsumptionDetailDtos(@Param("c") EnergyStatisticsVo energyStatisticsVo); |
| | | } |
| | |
| | | energyStatisticsVo.setType(null);//æ¢å¤æ¥è¯¢å
¨é¨ |
| | | //平忿¬ |
| | | energyAccountDto.setAverageEnergyCost(energyAccountDto.getTotalEnergyCost().divide(new BigDecimal(energyStatisticsVo.getDays()),2, RoundingMode.HALF_UP)); |
| | | //è½èææ¬è¶å¿ |
| | | List<EnergyAccountTypeDto> energyAccountTypeDtos=energyConsumptionDetailMapper.energyAccountTypeDtos(energyStatisticsVo); |
| | | energyAccountDto.setEnergyAccountTypeDtos(energyAccountTypeDtos); |
| | | //è½èç±»åææ¬å æ¯ |
| | | List<EnergyConsumptionTypeDto> energyConsumptionTypeDtos=energyConsumptionDetailMapper.energyConsumptionTypeProportion(energyStatisticsVo); |
| | | energyAccountDto.setEnergyConsumptionTypeProportion(energyConsumptionTypeDtos); |
| | |
| | | on z.meter_reading_date=C.meter_reading_date |
| | | order by z.meter_reading_date |
| | | </select> |
| | | <select id="energyAccountTypeDtos" resultType="com.ruoyi.energy.dto.EnergyAccountTypeDto"> |
| | | select ecd.type energyAccountType, |
| | | SUM(COALESCE(ecd.dosage, 0) * e.unit_price) energyAccount |
| | | from energy_consumption_detail ecd |
| | | left join energy e on ecd.energy_id = e.id |
| | | where ecd.meter_reading_date between #{c.startDate} and #{c.endDate} |
| | | group by ecd.type |
| | | </select> |
| | | <select id="energyConsumptionDetailDtos" |
| | | resultType="com.ruoyi.energy.dto.EnergyConsumptionDetailDto"> |
| | | select ecd.meter_reading_date, |
| | | e.energy_tyep, |
| | | ecd.type, |
| | | e.unit, |
| | | e.unit_price, |
| | | sum(ecd.dosage) dosage, |
| | | sum(ecd.dosage * e.unit_price) cost |
| | |
| | | group by ecd.meter_reading_date, |
| | | e.energy_tyep, |
| | | ecd.type, |
| | | e.unit, |
| | | e.unit_price |
| | | order by ecd.meter_reading_date |
| | | </select> |