maven
2025-12-08 0100359605ba05638c1f683d68a2948cc273b0d2
src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java
@@ -3,20 +3,27 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.device.dto.DeviceMaintenanceDto;
import com.ruoyi.device.dto.DeviceMonthlyRepairTableDTO;
import com.ruoyi.device.dto.DeviceRepairDto;
import com.ruoyi.device.dto.RepairAmountGroupDTO;
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.device.pojo.DeviceMaintenance;
import com.ruoyi.device.pojo.DeviceRepair;
import com.ruoyi.device.service.IDeviceLedgerService;
import com.ruoyi.device.service.IDeviceMaintenanceService;
import com.ruoyi.device.service.IDeviceRepairService;
import com.ruoyi.framework.web.domain.AjaxResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@Api(tags = "设备保养")
@RestController
@RequestMapping("/device/maintenance")
public class DeviceMaintenanceController {
@@ -25,34 +32,51 @@
    @Autowired
    private IDeviceMaintenanceService deviceMaintenanceService;
    @ApiModelProperty("设备报修列表")
    @Autowired
    private IDeviceLedgerService deviceLedgerService;
    @ApiModelProperty("设备保养列表")
    @GetMapping("/page")
    public AjaxResult page(Page page , DeviceMaintenanceDto deviceMaintenanceDto) {
        return AjaxResult.success(deviceMaintenanceService.queryPage(page,deviceMaintenanceDto));
    }
    @PostMapping()
    @ApiModelProperty("添加设备报修")
    public AjaxResult add(@RequestBody DeviceMaintenance deviceRepair) {
        return deviceMaintenanceService.saveDeviceRepair(deviceRepair);
    @ApiModelProperty("添加设备保养")
    public AjaxResult add(@RequestBody DeviceMaintenance deviceMaintenance) {
        DeviceLedger byId = deviceLedgerService.getById(deviceMaintenance.getDeviceLedgerId());
        deviceMaintenance.setDeviceName(byId.getDeviceName());
        deviceMaintenance.setDeviceModel(byId.getDeviceModel());
        return deviceMaintenanceService.saveDeviceRepair(deviceMaintenance);
    }
    @ApiModelProperty("根据id查询设备报修")
    @ApiModelProperty("根据id查询设备保养")
    @GetMapping("/{id}")
    public AjaxResult detail(@PathVariable Long id) {
        return AjaxResult.success(deviceMaintenanceService.getById(id));
        return AjaxResult.success(deviceMaintenanceService.detailById(id));
    }
    @PutMapping ()
    @ApiModelProperty("修改设备报修")
    @ApiModelProperty("修改设备保养")
    public AjaxResult update(@RequestBody DeviceMaintenance deviceMaintenance) {
        return deviceMaintenanceService.updateDeviceRepair(deviceMaintenance);
        DeviceLedger byId = deviceLedgerService.getById(deviceMaintenance.getDeviceLedgerId());
        deviceMaintenance.setDeviceName(byId.getDeviceName());
        deviceMaintenance.setDeviceModel(byId.getDeviceModel());
        return deviceMaintenanceService.updateDeviceDeviceMaintenance(deviceMaintenance);
    }
    @DeleteMapping("/{id}")
    @ApiModelProperty("删除设备报修")
    public AjaxResult delete(@PathVariable ArrayList<Long> ids) {
        boolean b = deviceMaintenanceService.removeBatchByIds(ids);
    @PostMapping ("maintenance")
    @ApiModelProperty("修改设备保养")
    public AjaxResult maintenance(@RequestBody DeviceMaintenance deviceMaintenance) {
        deviceMaintenance.setStatus(1);
        return deviceMaintenanceService.updateDeviceDeviceMaintenance(deviceMaintenance);
    }
    @DeleteMapping("/{ids}")
    @ApiModelProperty("删除设备保养")
    public AjaxResult delete(@PathVariable("ids") Long[] ids) {
        boolean b = deviceMaintenanceService.removeBatchByIds(Arrays.asList(ids));
        if (!b) {
            return AjaxResult.error("删除失败");
        }
@@ -60,10 +84,33 @@
    }
    @PostMapping("export")
    @ApiModelProperty("导出设备报修")
    @ApiModelProperty("导出设备保养")
    public void export(HttpServletResponse response, Long[] ids) {
        deviceMaintenanceService.export(response, ids);
    }
    /**
     * 按年份查询每月报修金额(按设备台账分组)
     * @param year 前端传入的年份(如2025)
     */
    @GetMapping("/monthlyAmount")
    @ApiModelProperty("按年份查询每月报修金额(按设备台账分组)")
    public AjaxResult getMonthlyAmount(@RequestParam(defaultValue = "2025", required = true,name = "year") String year) {
        List<DeviceMonthlyRepairTableDTO> result = deviceMaintenanceService.getMonthlyRepairAmountByYear(year);
        return AjaxResult.success(result);
    }
    /**
     * 按年份查询报修金额(按设备台账分组)
     * @param year 前端传入的年份(如2025)
     */
    @GetMapping("/yearlyAmount")
    @ApiModelProperty("按年份查询报修金额(按设备台账分组)")
    public AjaxResult yearlyAmount(@RequestParam(defaultValue = "2025", required = true,name = "year") String year) {
        List<RepairAmountGroupDTO> result = deviceMaintenanceService.getRepairAmountByYear(year);
        return AjaxResult.success(result);
    }
}