package com.ruoyi.web.controller.api; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.R; import com.ruoyi.system.model.TRentalReturnRecord; import com.ruoyi.system.query.RentalReturnAuditQuery; import com.ruoyi.system.query.RentalReturnRecordQuery; import com.ruoyi.system.service.ITRentalReturnRecordService; import com.ruoyi.system.vo.RentalReturnRecordVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.RequiredArgsConstructor; import org.springframework.context.annotation.Lazy; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/api/rentalReturnRecord") @RequiredArgsConstructor(onConstructor_ = {@Lazy}) @Api(tags = {"房屋管理-退租申请"}) public class TRentalReturnRecordController extends BaseController { private final ITRentalReturnRecordService rentalReturnRecordService; /** * 申请记录列表 */ @ApiOperation(value = "申请记录列表") @GetMapping("list") @PreAuthorize("@ss.hasPermi('houseManage:apply:list')") public R> list(Page page, RentalReturnRecordQuery query) { return R.ok(rentalReturnRecordService.queryRentalReturnRecordList(page, query)); } /** * 审核记录删除 */ @ApiOperation(value = "审核记录删除") @GetMapping("delete") @PreAuthorize("@ss.hasPermi('houseManage:apply:delete')") public R delete(@ApiParam (value = "id") String id) { boolean remove = rentalReturnRecordService.update(new LambdaUpdateWrapper() .set(TRentalReturnRecord::getIsAdminDelete, true) .eq(TRentalReturnRecord::getId, id) .ne(TRentalReturnRecord::getAuditStatus, 1)); if (!remove){ return R.fail("删除失败"); } return R.ok("删除成功"); } /** * 申请记录详情 */ @ApiOperation(value = "申请记录详情") @GetMapping("detail") @PreAuthorize("@ss.hasPermi('houseManage:apply:detail')") public R detail(@ApiParam (value = "id") String id) { RentalReturnRecordVO rentalReturnRecordVO = rentalReturnRecordService.queryRentalReturnRecordById(id); return R.ok(rentalReturnRecordVO); } /** * 申请审核 */ @ApiOperation(value = "申请审核") @PostMapping("audit") @PreAuthorize("@ss.hasPermi('houseManage:apply:audit')") public R audit(@RequestBody RentalReturnAuditQuery returnAuditQuery) { rentalReturnRecordService.audit(returnAuditQuery, getUserId(), getUsername()); return R.ok("审核成功"); } }