Commit 0fa3f0bf by guojuxing

导出Excel二级表头添加

parent 8b5a4b09
...@@ -7,6 +7,7 @@ import java.util.stream.Stream; ...@@ -7,6 +7,7 @@ import java.util.stream.Stream;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.gic.auth.web.vo.TestObj;
import com.gic.download.qo.HeaderQO; import com.gic.download.qo.HeaderQO;
import com.gic.enterprise.context.RequestContext; import com.gic.enterprise.context.RequestContext;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
...@@ -69,7 +70,7 @@ public class CollaboratorController extends DownloadUtils{ ...@@ -69,7 +70,7 @@ public class CollaboratorController extends DownloadUtils{
report.setApplyUserId(userDetail.getUserInfo().getUserId()); report.setApplyUserId(userDetail.getUserInfo().getUserId());
report.setDataContent("北丐-测试"); report.setDataContent("北丐-测试");
report.setDataCount(result.getResult().getTotalCount()); report.setDataCount(result.getResult().getTotalCount());
report.setDataType(1); report.setDataType(2);
//只适用于对接gic的登录拦截模块 //只适用于对接gic的登录拦截模块
report.setDataUrl((String) request.getAttribute("moduleMenuUrl")); report.setDataUrl((String) request.getAttribute("moduleMenuUrl"));
LOGGER.info("下载测试:{}", JSON.toJSONString(RequestContext.getContext().getRequest().getAttributeNames())); LOGGER.info("下载测试:{}", JSON.toJSONString(RequestContext.getContext().getRequest().getAttributeNames()));
...@@ -84,19 +85,43 @@ public class CollaboratorController extends DownloadUtils{ ...@@ -84,19 +85,43 @@ public class CollaboratorController extends DownloadUtils{
ExecutorPoolSingleton.getInstance().executeTask(new Runnable() { ExecutorPoolSingleton.getInstance().executeTask(new Runnable() {
@Override @Override
public void run() { public void run() {
DownloadDataLoader<CollaboratorListDTO> loader = new DownloadDataLoader<CollaboratorListDTO>() { List<Map<String, Object>> dataList = new ArrayList<>();
Map<String, Object> map1 = new HashMap<>(8);
map1.put("test1", "test1");
map1.put("2", new TestObj("域名2门店1-1", "域名2门店2-1"));
map1.put("3", new TestObj("域名3门店1-1", "域名3门店2-1"));
dataList.add(map1);
Map<String, Object> map2 = new HashMap<>(8);
map2.put("test1", "test2");
map2.put("2", new TestObj("域名2门店1-2", "域名2门店2-2"));
map2.put("3", new TestObj("域名3门店1-2", "域名3门店2-2"));
dataList.add(map2);
DownloadDataLoader<Map<String, Object>> loader = new DownloadDataLoader<Map<String, Object>>() {
@Override @Override
protected List<CollaboratorListDTO> getDownloadData(Integer pageNum) throws Exception { protected List<Map<String, Object>> getDownloadData(Integer pageNum) throws Exception {
params.setCurrentPage(pageNum); params.setCurrentPage(pageNum);
ServiceResponse<Page<CollaboratorListDTO>> result = collaboratorApiService.page(params); // ServiceResponse<Page<CollaboratorListDTO>> result = collaboratorApiService.page(params);
return result.getResult().getResult(); if (pageNum == 2) {
//第二页结束test
return null;
}
return dataList;
} }
}; };
List<HeaderQO> headerList = Stream.of(new HeaderQO("测试1", Arrays.asList("名称","时间","时间")), LinkedHashMap<String, List<String>> headerList = new LinkedHashMap<>();
new HeaderQO("测试2", null)).collect(Collectors.toList()); headerList.put("测试1", null);
String[] fields = new String[] { "collaboratorName", "phone" , "createTime"}; headerList.put("域名2", Arrays.asList("门店1", "门店2"));
headerList.put("域名3", Arrays.asList("门店1", "门店2"));
LinkedHashMap<String, List<String>> propertyNameList = new LinkedHashMap<>();
propertyNameList.put("test1", null);
propertyNameList.put("2", Arrays.asList("store1", "store2"));
propertyNameList.put("3", Arrays.asList("store1", "store2"));
Map<String, List<String>> needEncryptField = new HashMap<>(16);
needEncryptField.put("test1", null);
needEncryptField.put("2", Arrays.asList("store1"));
needEncryptField.put("3", Arrays.asList("store2"));
try { try {
downloadOfDoubleHeaderTitle(path, reportId, fileName, excelExtensionCode, headerList, Arrays.asList(fields), loader, Arrays.asList("phone"), null); downloadForDoubleHeaderTitle(path, reportId, fileName, excelExtensionCode, headerList, propertyNameList, loader, needEncryptField, null);
} catch (Exception e) { } catch (Exception e) {
LOGGER.warn(e); LOGGER.warn(e);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment