chenhj
2026-04-24 2e71bdbcdf853bb35e68016b84f0254f7366bfeb
src/main/java/com/ruoyi/equipmentenergyconsumption/controller/EquipmentEnergyConsumptionController.java
@@ -1,21 +1,29 @@
package com.ruoyi.equipmentenergyconsumption.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.basic.pojo.Customer;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.equipmentenergyconsumption.dto.EquipmentEnergyConsumptionDto;
import com.ruoyi.equipmentenergyconsumption.pojo.EquipmentEnergyConsumption;
import com.ruoyi.equipmentenergyconsumption.service.EquipmentEnergyConsumptionService;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Operation;
import lombok.AllArgsConstructor;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import jakarta.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
@@ -23,16 +31,15 @@
 * @date : 2025/7/29 13:19
 */
@RestController
@Api(tags = "设备能耗")
@Tag(name = "设备能耗")
@RequestMapping("/equipmentEnergyConsumption")
@AllArgsConstructor
public class EquipmentEnergyConsumptionController extends BaseController {
    @Autowired
    private EquipmentEnergyConsumptionService equipmentEnergyConsumptionService;
    @GetMapping("/listPage")
    @ApiOperation("设备能耗-分页查询")
    @Operation(summary = "设备能耗-分页查询")
    @Log(title = "设备能耗-分页查询", businessType = BusinessType.OTHER)
    public AjaxResult listPage(Page page, EquipmentEnergyConsumption equipmentEnergyConsumption) {
        IPage<EquipmentEnergyConsumption> listPage = equipmentEnergyConsumptionService.listPage(page, equipmentEnergyConsumption);
@@ -40,7 +47,7 @@
    }
    @GetMapping("/deviceList")
    @ApiOperation("设备台账-查询")
    @Operation(summary = "设备台账-查询")
    @Log(title = "设备台账-查询", businessType = BusinessType.OTHER)
    public AjaxResult deviceList(DeviceLedger deviceLedger) {
        List<DeviceLedger> listPage = equipmentEnergyConsumptionService.deviceList(deviceLedger);
@@ -48,15 +55,23 @@
    }
    @PostMapping("/add")
    @ApiOperation("设备能耗-新增")
    @Operation(summary = "设备能耗-新增")
    @Log(title = "设备能耗-新增", businessType = BusinessType.INSERT)
    public AjaxResult add(@RequestBody EquipmentEnergyConsumption equipmentEnergyConsumption) {
        boolean save = equipmentEnergyConsumptionService.save(equipmentEnergyConsumption);
        return save ? AjaxResult.success() : AjaxResult.error();
    }
    @PostMapping("/addBatch")
    @Operation(summary = "设备能耗-批量新增")
    @Log(title = "设备能耗-批量新增", businessType = BusinessType.INSERT)
    public AjaxResult addBatch(@RequestBody List<EquipmentEnergyConsumption> list) {
        boolean save = equipmentEnergyConsumptionService.saveBatch(list);
        return save ? AjaxResult.success() : AjaxResult.error();
    }
    @PostMapping("/update")
    @ApiOperation("设备能耗-修改")
    @Operation(summary = "设备能耗-修改")
    @Log(title = "设备能耗-修改", businessType = BusinessType.UPDATE)
    public AjaxResult update(@RequestBody EquipmentEnergyConsumption equipmentEnergyConsumption) {
        boolean update = equipmentEnergyConsumptionService.updateById(equipmentEnergyConsumption);
@@ -64,7 +79,7 @@
    }
    @DeleteMapping("/delete")
    @ApiOperation("设备能耗-删除")
    @Operation(summary = "设备能耗-删除")
    @Log(title = "设备能耗-删除", businessType = BusinessType.DELETE)
    public AjaxResult delete(@RequestBody List<Long> ids) {
        if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("请选择至少一条数据");
@@ -77,18 +92,53 @@
     */
    @Log(title = "导入设备能耗", businessType = BusinessType.IMPORT)
    @PostMapping("/importData")
    @Operation(summary = "导入设备能耗")
    public AjaxResult importData(MultipartFile file) throws Exception {
        return equipmentEnergyConsumptionService.importData(file);
    }
    /**
     * 导出设备能耗
     */
    @Log(title = "导出设备能耗", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    @Operation(summary = "导出设备能耗")
    public void export(HttpServletResponse response) {
        Page page = new Page<>(-1,-1);
        EquipmentEnergyConsumption equipmentEnergyConsumption = new EquipmentEnergyConsumption();
        IPage<EquipmentEnergyConsumption> listPage = equipmentEnergyConsumptionService.listPage(page, equipmentEnergyConsumption);
        ExcelUtil<EquipmentEnergyConsumption> util = new ExcelUtil<EquipmentEnergyConsumption>(EquipmentEnergyConsumption.class);
        util.exportExcel(response, listPage.getRecords() , "导出设备能耗");
    }
    @GetMapping("/listPageByTrend")
    @ApiOperation("设备能耗-能源趋势-分页查询")
    @Operation(summary = "设备能耗-能源趋势-分页查询")
    @Log(title = "设备能耗-能源趋势-分页查询", businessType = BusinessType.OTHER)
    public AjaxResult listPageByTrend(Page page, EquipmentEnergyConsumption equipmentEnergyConsumption) {
        IPage<EquipmentEnergyConsumption> listPage = equipmentEnergyConsumptionService.listPageByTrend(page, equipmentEnergyConsumption);
        return AjaxResult.success(listPage);
    }
    /**
     * 导出能源趋势
     */
    @Log(title = "导出能源趋势", businessType = BusinessType.EXPORT)
    @PostMapping("/exportTwo")
    @Operation(summary = "导出能源趋势")
    public void exportTwo(HttpServletResponse response) {
        Page page = new Page<>(-1,-1);
        EquipmentEnergyConsumption equipmentEnergyConsumption = new EquipmentEnergyConsumption();
        IPage<EquipmentEnergyConsumption> listPage = equipmentEnergyConsumptionService.listPageByTrend(page, equipmentEnergyConsumption);
        List<EquipmentEnergyConsumptionDto> list = new ArrayList<>();
        listPage.getRecords().forEach(item -> {
            EquipmentEnergyConsumptionDto dto = new EquipmentEnergyConsumptionDto();
            BeanUtils.copyProperties(item, dto);
            list.add(dto);
        });
        ExcelUtil<EquipmentEnergyConsumptionDto> util = new ExcelUtil<EquipmentEnergyConsumptionDto>(EquipmentEnergyConsumptionDto.class);
        util.exportExcel(response, list , "导出能源趋势");
    }
}