From d8a4d842d57c183322324f324396c33df7265479 Mon Sep 17 00:00:00 2001 From: zhouxiantao <1026371446@qq.com> Date: Sun, 08 Sep 2024 10:07:35 +0800 Subject: [PATCH] 综合查询 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java | 82 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 82 insertions(+), 0 deletions(-) diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java index 1c6dddd..b67fbeb 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/controller/web/CaseInfoWebController.java @@ -5,22 +5,33 @@ import cn.huge.base.common.utils.ReturnFailUtils; import cn.huge.base.common.utils.ReturnSucUtils; import cn.huge.base.config.CurrentUser; +import cn.huge.module.cases.domain.dto.CaseInfoWeExcelDTO; +import cn.huge.module.cases.domain.dto.CasePageDTO; +import cn.huge.module.cases.domain.dto.CasePersonWeDTO; import cn.huge.module.cases.domain.dto.RegisterSaveDTO; import cn.huge.module.cases.domain.po.CaseInfo; import cn.huge.module.cases.service.CaseInfoService; import cn.huge.module.client.api.impl.CustClientImpl; import cn.huge.module.cust.dto.CtUserDTO; +import com.alibaba.excel.EasyExcel; import com.google.common.collect.Maps; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Sort; import org.springframework.web.bind.annotation.*; +import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.net.URLEncoder; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import java.util.Map; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -520,4 +531,75 @@ } + /** + * 综合查询 + * @url {ctx}/api/web/caseInfo/pageQueryAll + * @param page 页码 + * @param size 每页数量 + * @return Object + */ + @GetMapping("/pageQueryAll") + public Object pageQueryAll(@RequestParam(value = "page") int page, @RequestParam(value = "size") int size) { + try { + Map<String, Object> terms = getParameter(); + Sort sort = Sort.by(Sort.Direction.DESC, "a.create_time"); + PageRequest pageRequest = PageRequest.of(page-1, size, sort); + Page<CasePageDTO> caseInfoPage = service.pageQueryAll(pageRequest, terms); + return ReturnSucUtils.getRepInfo( "处理成功", caseInfoPage); + } catch (Exception e) { + log.error("Controller接口[CaseInfoWebController.pageQueryAll]请求异常:"+e, e); + return ReturnFailUtils.getRepInfo(); + } + } + + /** + * 综合查询-导出 + * + * @return Object + * @url {ctx}/api/web/caseInfo/exportQueryAll + */ + @RequestMapping("/exportQueryAll") + public void exportQueryAll(HttpServletResponse response) { + try { + Map<String, Object> terms = getParameter(); + Sort sort = Sort.by(Sort.Direction.DESC, "a.create_time"); + PageRequest pageRequest = PageRequest.of(0, 1000000, sort); + Page<CasePageDTO> caseInfoPage = service.pageQueryAll(pageRequest, terms); + List<CaseInfoWeExcelDTO> excelList = new ArrayList<>(); + if(ObjectUtils.isNotEmpty(caseInfoPage.getContent())){ + for (CasePageDTO casePageDTO : caseInfoPage.getContent()) { + CaseInfoWeExcelDTO caseInfoWeExcelDTO = new CaseInfoWeExcelDTO(); + BeanUtils.copyProperties(casePageDTO,caseInfoWeExcelDTO); + if(ObjectUtils.isNotEmpty(casePageDTO.getPlaintiffList())){ + StringBuffer sb = new StringBuffer(); + for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getPlaintiffList()) { + sb.append(casePersonWeDTO.getTrueName()).append(","); + } + if(ObjectUtils.isNotEmpty(sb)){ + caseInfoWeExcelDTO.setPlaintiffStr(sb.substring(0,sb.length()-1)); + } + } + if(ObjectUtils.isNotEmpty(casePageDTO.getDefendantList())){ + StringBuffer sb = new StringBuffer(); + for (CasePersonWeDTO casePersonWeDTO : casePageDTO.getDefendantList()) { + sb.append(casePersonWeDTO.getTrueName()).append(","); + } + if(ObjectUtils.isNotEmpty(sb)){ + caseInfoWeExcelDTO.setDefendantStr(sb.substring(0,sb.length()-1)); + } + } + excelList.add(caseInfoWeExcelDTO); + } + } + String fileName = "综合查询.xlsx"; + response.setCharacterEncoding("UTF-8"); + response.setHeader("content-Type", "application/vnd.ms-excel;charset=UTF-8"); + response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8")); + ServletOutputStream outputStream = response.getOutputStream(); + EasyExcel.write(outputStream, CaseInfoWeExcelDTO.class).sheet("综合查询").doWrite(excelList); + } catch (Exception e) { + log.error("Controller接口[CaseInfoWebController.exportQueryAll]请求异常:"+e, e); + } + + } } -- Gitblit v1.8.0