mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/per-boe/java-servers.git
synced 2025-12-11 03:46:50 +08:00
下载最新案例列表导出功能编写
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.xboe.module.boecase.api;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import com.xboe.common.PageList;
|
||||
import com.xboe.common.Pagination;
|
||||
import com.xboe.common.utils.StringUtil;
|
||||
@@ -217,6 +218,35 @@ public class CasesApi extends ApiBaseController {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 导出案例标题数据
|
||||
* */
|
||||
@PostMapping("/exportCaseTitle")
|
||||
public void exportCaseTitle(CaseVo caseVo,HttpServletResponse response){
|
||||
OutputStream outputStream;
|
||||
try {
|
||||
outputStream = response.getOutputStream();
|
||||
LinkedHashMap<String,String> map = new LinkedHashMap<>();
|
||||
map.put("标题","title");
|
||||
List<Cases> list = casesService.managerCaseTitleList(caseVo);
|
||||
List<CaseExportVo> exportVos = new ArrayList<>();
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
for (Cases c:list){
|
||||
CaseExportVo caseExportVo = new CaseExportVo();
|
||||
caseExportVo.setTitle(c.getTitle());
|
||||
exportVos.add(caseExportVo);
|
||||
}
|
||||
|
||||
response.setContentType("application/octet-stream");
|
||||
String current = LocalDateTimeUtil.format(now,"yyyyMMddHHmmss");
|
||||
response.setHeader("Content-disposition", "attachment;filename=cases-title-"+current+".xls");
|
||||
ExportsExcelSenderUtil.export(map,exportVos, outputStream,"yyyy-MM-dd HH:mm:ss");
|
||||
}catch (Exception e){
|
||||
log.error("导出失败",e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出我的案例
|
||||
* */
|
||||
|
||||
@@ -361,4 +361,8 @@ public class Cases extends BaseEntity {
|
||||
this.favorites=favorites;
|
||||
super.setDeleted(deleted);
|
||||
}
|
||||
|
||||
public Cases(String title) {
|
||||
this.title = title;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,6 +22,8 @@ public interface ICasesService{
|
||||
* */
|
||||
PageList<Cases> managerList(int pageIndex,int pageSize,CaseVo caseVo);
|
||||
|
||||
List<Cases> managerCaseTitleList(CaseVo caseVo);
|
||||
|
||||
/**
|
||||
* 案例分页
|
||||
* */
|
||||
|
||||
@@ -430,6 +430,42 @@ public class CasesServiceImpl implements ICasesService {
|
||||
return page;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Cases> managerCaseTitleList(CaseVo caseVo) {
|
||||
QueryBuilder query = QueryBuilder.from(Cases.class);
|
||||
query.addFilter(FieldFilters.eq("deleted", false));
|
||||
if (StringUtils.isNotBlank(caseVo.getKeyWord())) {
|
||||
query.addFilter(FieldFilters.like("title", LikeMatchMode.ANYWHERE, caseVo.getKeyWord()));
|
||||
}
|
||||
if (StringUtils.isNotBlank(caseVo.getOrgDomain())) {
|
||||
query.addFilter(FieldFilters.eq("orgDomainParent", caseVo.getOrgDomain()));
|
||||
}
|
||||
if (caseVo.getExcellent() != null) {
|
||||
query.addFilter(FieldFilters.eq("excellent", caseVo.getExcellent()));
|
||||
}
|
||||
if (caseVo.getIsTop() != null) {
|
||||
query.addFilter(FieldFilters.eq("isTop", caseVo.getIsTop()));
|
||||
}
|
||||
if (StringUtils.isNotBlank(caseVo.getAuthorName())) {
|
||||
query.addFilter(FieldFilters.like("authorName", LikeMatchMode.ANYWHERE, caseVo.getAuthorName()));
|
||||
}
|
||||
|
||||
OrderCondition order = null;
|
||||
if (StringUtils.isNotBlank(caseVo.getOrderField())) {
|
||||
if (caseVo.getOrderAsc() == null || caseVo.getOrderAsc()) {
|
||||
order = OrderCondition.asc(caseVo.getOrderField());
|
||||
} else {
|
||||
order = OrderCondition.desc(caseVo.getOrderField());
|
||||
}
|
||||
} else {
|
||||
order = OrderCondition.desc("sysCreateTime");
|
||||
}
|
||||
query.addOrder(order);
|
||||
query.addField("new Cases(title)");
|
||||
List<Cases> result = casesDao.findList(query.builder());
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageList<CasesFiledVo> queryList(int pageIndex, int pageSize, CaseVo caseVo) {
|
||||
PageList<CasesFiledVo> pageList = new PageList<>();
|
||||
|
||||
Reference in New Issue
Block a user