feat: 企标稽查-导出

This commit is contained in:
2023-09-21 14:29:05 +08:00
parent c568f7647e
commit 789b42be86
4 changed files with 53 additions and 0 deletions
@@ -26,6 +26,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
/**
@@ -113,4 +114,11 @@ public class EnterpriseStandardInspectController extends JeroController<Enterpri
IPage<EnterpriseStandardInspectRectifyPlan> pageList = esInspectRectifyPlanService.getRectifyPlan(inspectId, pageNo, pageSize);
return Result.OK(pageList);
}
@AutoLog(value = "企标稽查-导出")
@ApiOperation(value="企标稽查-导出", notes="企标稽查-导出")
@GetMapping("/exportData")
public void exportData(HttpServletResponse response, ESQueryCommonDTO esQueryCommonDTO) {
esInspectService.export(response, esQueryCommonDTO, "企标稽查", "企标稽查");
}
}
@@ -84,6 +84,12 @@
<if test="param.inspectCreateStartDate != null and param.inspectCreateEndDate != null">
AND i.create_time BETWEEN #{param.inspectCreateStartDate} AND #{param.inspectCreateEndDate}
</if>
<if test="param.idList != null and param.idList.size() > 0">
AND d.id IN
<foreach item="item" index="index" collection="param.idList" open="(" separator="," close=")">
#{item}
</foreach>
</if>
ORDER BY i.create_time DESC
</select>
</mapper>
@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.laws.enterprise.entity.dto.ESQueryCommonDTO;
import com.jero.modules.laws.enterprise.entity.vo.EnterpriseStandardInspectVo;
import javax.servlet.http.HttpServletResponse;
/**
* @author ThinkBook
* @description 针对表【laws_enterprise_standard_inspect(企业标准)】的数据库操作Service
@@ -21,4 +23,13 @@ public interface EnterpriseStandardInspectService extends IService<EnterpriseSta
* @return
*/
IPage<EnterpriseStandardInspectVo> queryPageList(ESQueryCommonDTO esInspect, Integer pageNo, Integer pageSize);
/**
* 企标稽查-导出
* @param response
* @param esQueryCommonDTO
* @param fileName
* @param sheetName
*/
void export(HttpServletResponse response, ESQueryCommonDTO esQueryCommonDTO, String fileName, String sheetName);
}
@@ -14,10 +14,14 @@ import com.jero.modules.laws.enterprise.entity.vo.EnterpriseStandardRecheckPlanV
import com.jero.modules.laws.enterprise.service.EnterpriseStandardInspectService;
import com.jero.modules.laws.enterprise.mapper.EnterpriseStandardInspectMapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.usermodel.Workbook;
import org.jeecgframework.poi.excel.ExcelExportUtil;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.stream.Collectors;
@@ -41,6 +45,30 @@ public class EnterpriseStandardInspectServiceImpl extends ServiceImpl<Enterprise
esInspectMapper.page(page, esInspect);
return page;
}
@Override
public void export(HttpServletResponse response, ESQueryCommonDTO esQueryCommonDTO, String fileName, String sheetName) {
try {
// 获取数据
IPage<EnterpriseStandardInspectVo> enterpriseStandardInspectVoIPage = this.queryPageList(esQueryCommonDTO, 1, Integer.MAX_VALUE);
List<EnterpriseStandardInspectVo> records = enterpriseStandardInspectVoIPage.getRecords();
// 设置导出参数
ExportParams exportParams = new ExportParams(null, sheetName); // 可以为标题添加更多的配置
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, EnterpriseStandardInspectVo.class, records);
// 设置响应头和内容类型
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename=" + fileName + ".xls");
// 写出到响应流
workbook.write(response.getOutputStream());
workbook.close();
} catch (Exception e) {
log.error("导出excel异常", e);
throw new JeroBootException("导出excel异常", e);
}
}
}