chenhj
13 小时以前 f3a2e64d96e59bed492bb3eec8705a5f9ca269d7
src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
@@ -1,9 +1,11 @@
package com.ruoyi.device.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.approve.pojo.ApproveProcess;
import com.ruoyi.approve.service.IApproveProcessService;
import com.ruoyi.device.dto.DeviceRepairDto;
import com.ruoyi.device.pojo.DeviceLedger;
import com.ruoyi.device.pojo.DeviceRepair;
import com.ruoyi.device.service.IDeviceLedgerService;
import com.ruoyi.device.service.IDeviceRepairService;
@@ -11,11 +13,12 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
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 = "设备报修管理")
@RequestMapping("/device/repair")
@@ -27,6 +30,8 @@
    @Autowired
    private IDeviceLedgerService deviceLedgerService;
    @Autowired
    private IApproveProcessService approveProcessService;
    @ApiModelProperty("设备报修列表")
    @GetMapping("/page")
@@ -35,9 +40,30 @@
    }
    @PostMapping()
    @Transactional(rollbackFor = Exception.class)
    @ApiModelProperty("添加设备报修")
    public AjaxResult add( @RequestBody DeviceRepair deviceRepair) {
        return deviceRepairService.saveDeviceRepair(deviceRepair);
    public AjaxResult add( @RequestBody DeviceRepair deviceRepair) throws Exception {
        deviceRepairService.saveDeviceRepair(deviceRepair);
        // todo 前端代码不匹配,待处理
//        ApproveProcessVO approveProcessVO = new ApproveProcessVO();
//        LoginUser loginUser = SecurityUtils.getLoginUser();
//        // 获取当前登录公司
//        Long tenantId = loginUser.getTenantId();
//        if(null != tenantId){
//            //获取当前登录部门id
//            approveProcessVO.setApproveDeptId(tenantId);
//            //获取当前登录用户id
//            approveProcessVO.setApproveUser(loginUser.getUserId());
//            //获取当前时间
//            approveProcessVO.setApproveTime(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
//            approveProcessVO.setApproveType(4);
//            approveProcessVO.setApproveUserIds(deviceRepair.getApproverId().toString());
//            approveProcessVO.setApproveReason(deviceRepair.getRemark());
//            approveProcessVO.setDeviceRepairId(deviceRepair.getId());
//            approveProcessVO.setMaintenancePrice(deviceRepair.getMaintenancePrice());
//            approveProcessService.addApprove(approveProcessVO);
//        }
        return AjaxResult.success();
    }
    @ApiModelProperty("根据id查询设备报修")
@@ -56,13 +82,23 @@
    @PostMapping ("repair")
    @ApiModelProperty("设备维修")
    public AjaxResult repair( @RequestBody DeviceRepair deviceRepair) {
        deviceRepair.setStatus(1);
        return deviceRepairService.updateDeviceRepair(deviceRepair);
    }
    @DeleteMapping("/{ids}")
    @ApiModelProperty("删除设备报修")
    public AjaxResult delete(@PathVariable("ids") Long[] ids) {
        LambdaQueryWrapper<ApproveProcess> QueryWrapper = new LambdaQueryWrapper<>();
        QueryWrapper.in(ApproveProcess::getDeviceRepairId,ids);
        List<ApproveProcess> approveProcessList = approveProcessService.list(QueryWrapper);
        if(!approveProcessList.isEmpty()){
            approveProcessList.forEach(approveProcess -> {
                if (approveProcess.getApproveStatus() != 0){
                    //抛出异常
                    throw new RuntimeException("有正在处理中的审批流程,不能删除");
                }
            });
        }
        boolean b = deviceRepairService.removeBatchByIds(Arrays.asList(ids));
        if (!b) {
            return AjaxResult.error("删除失败");