mitao
1 天以前 bdd967acce69d2420d9866789dfcee42c7e77023
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/OaApprovalApplicationsController.java
@@ -12,10 +12,26 @@
import com.ruoyi.system.emums.ApprovalFlowNodeEnum;
import com.ruoyi.system.emums.ApprovalTypeEnum;
import com.ruoyi.system.model.*;
import com.ruoyi.system.service.*;
import com.ruoyi.system.model.OaApprovalApplications;
import com.ruoyi.system.service.ISysUserService;
import com.ruoyi.system.service.OaApprovalApplicationAdvertisementService;
import com.ruoyi.system.service.OaApprovalApplicationAttendanceService;
import com.ruoyi.system.service.OaApprovalApplicationContactService;
import com.ruoyi.system.service.OaApprovalApplicationContractService;
import com.ruoyi.system.service.OaApprovalApplicationMoneyService;
import com.ruoyi.system.service.OaApprovalApplicationPaymentService;
import com.ruoyi.system.service.OaApprovalApplicationReimbursementItemService;
import com.ruoyi.system.service.OaApprovalApplicationReimbursementService;
import com.ruoyi.system.service.OaApprovalApplicationsService;
import com.ruoyi.system.service.OaApprovalFlowNodeService;
import com.ruoyi.system.service.OaApprovalService;
import com.ruoyi.system.service.OaApprovalTodoService;
import com.ruoyi.system.service.TDeptService;
import com.ruoyi.system.utils.UUIDUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -31,6 +47,8 @@
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
import com.ruoyi.system.emums.ApprovalStatusEnum;
import com.ruoyi.common.exception.ServiceException;
/**
 * <p>
@@ -561,5 +579,23 @@
                Integer.valueOf(sysUser.getDeptId()));
        return R.ok();
    }
    @Log(title = "审批-撤回通用审批单", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "撤回审批单:仅更新状态为已撤回")
    @PutMapping(value = "/withdraw/{id}")
    public R withdraw(@PathVariable Integer id) {
        OaApprovalApplications current = approvalApplicationsService.getById(id);
        if (current == null) {
            throw new ServiceException("审批单不存在");
        }
        if (!ApprovalStatusEnum.PENDING.getCode().equals(current.getApprovalStatus())) {
            throw new ServiceException("仅待审批状态可撤回");
        }
        OaApprovalApplications update = new OaApprovalApplications();
        update.setId(id);
        update.setApprovalStatus(ApprovalStatusEnum.CANCELED.getCode());
        approvalApplicationsService.updateById(update);
        return R.ok();
    }
}