liujie
2026-01-21 2d368b1f587edfe4e1c87e9dc1d5345cd43b8841
admin-server/src/main/java/com/estate/expert/admin/controller/admin/CheckController.java
@@ -1,19 +1,27 @@
package com.estate.expert.admin.controller.admin;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.estate.expert.admin.domain.business.check.CheckVo;
import com.estate.expert.admin.domain.business.onduty.OnDutyVo;
import com.estate.expert.admin.domain.common.request.OnDutyRequest;
import com.estate.expert.admin.service.CheckService;
import com.estate.expert.admin.service.OnDutyService;
import com.estate.expert.admin.utils.WebUtils;
import com.estate.expert.common.rpc.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.List;
@Slf4j
@@ -46,6 +54,41 @@
    }
    @ApiOperation(value = "批量删除")
    @PostMapping("/delete")
    public Result delete(@RequestBody List<Integer> ids) {
        return Result.success(checkService.removeByIds(ids));
    }
    @ApiOperation(value = "导出")
    @PostMapping(value = "/export")
    public void export(@RequestBody OnDutyRequest query){
        List<CheckVo> list = checkService.exportList(query);
        Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), CheckVo.class, list);
        HttpServletResponse response = WebUtils.response();
        assert response != null;
        response.setContentType("application/vnd.ms-excel");
        response.setCharacterEncoding("utf-8");
        ServletOutputStream outputStream = null;
        try {
            String fileName = URLEncoder.encode("检查情况导出信息.xls", "utf-8");
            response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
            response.setContentType("application/vnd.ms-excel;charset=UTF-8");
            response.setHeader("Pragma", "no-cache");
            response.setHeader("Cache-Control", "no-cache");
            outputStream = response.getOutputStream();
            workbook.write(outputStream);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                outputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
//    @ApiOperation(value = "新增故事简讯")
//    @PostMapping("/add")
//    public Result add(@Validated @RequestBody AccidentBrief dto) {