package com.ruoyi.collaborativeApproval.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.collaborativeApproval.dto.HouseLeaseDTO; import com.ruoyi.collaborativeApproval.pojo.HouseLease; import com.ruoyi.collaborativeApproval.service.HouseLeaseService; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.common.utils.poi.ExcelUtil; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import jakarta.servlet.http.HttpServletResponse; import java.util.List; /** * 房屋租赁管理 Controller * * @author ruoyi */ @RestController @RequestMapping("/houseLease") @RequiredArgsConstructor @Tag(name = "房屋租赁管理", description = "房屋租赁相关接口") public class HouseLeaseController { private final HouseLeaseService houseLeaseService; @GetMapping("/listPage") @Operation(summary = "分页查询") public AjaxResult listPage(Page page, HouseLeaseDTO houseLeaseDTO) { return AjaxResult.success(houseLeaseService.listPage(page, houseLeaseDTO)); } @GetMapping("/getDetail") @Operation(summary = "查询详情(含费用子表)") public AjaxResult getDetail(@RequestParam("id") Long id) { return AjaxResult.success(houseLeaseService.getDetail(id)); } @PostMapping("/addOrUpdate") @Operation(summary = "新增/修改(含费用子表)") public AjaxResult addOrUpdate(@RequestBody HouseLeaseDTO houseLeaseDTO) { return AjaxResult.success(houseLeaseService.addOrUpdate(houseLeaseDTO)); } @DeleteMapping("/del") @Operation(summary = "批量删除") public AjaxResult del(@RequestBody List ids) { if (ids == null || ids.isEmpty()) { return AjaxResult.error("请传入要删除的ID"); } return AjaxResult.success(houseLeaseService.removeByIds(ids)); } @PostMapping("/export") @Operation(summary = "导出数据") public void export(HttpServletResponse response, HouseLeaseDTO houseLeaseDTO) { List list = houseLeaseService.getList(houseLeaseDTO); ExcelUtil util = new ExcelUtil<>(HouseLease.class); util.exportExcel(response, list, "房屋租赁数据"); } }