配置统计Excel调整为后台导出
This commit is contained in:
@@ -264,15 +264,15 @@ public class ExcelCsv {
|
||||
* @param <E>
|
||||
* @return list 数据列表
|
||||
*/
|
||||
public static <E> Map<String, List<String>> setDataList(Properties msgProp, Map<String,List> dataMap, Map<Object,Object> map){
|
||||
Map<String, List<String>> dataList=new HashMap<String, List<String>>();
|
||||
public static <E> Map<String,List<List<String>>> setDataList(Properties msgProp, Map<String,List> dataMap, Map<Object,Object> map){
|
||||
Map<String,List<List<String>>> dataList=new HashMap<String, List<List<String>>>();
|
||||
Set<String> keyList=dataMap.keySet();
|
||||
for (String key : keyList) {
|
||||
List<E> list=dataMap.get(key);
|
||||
List<String> listT=new ArrayList<String>();
|
||||
List<List<String>> listT=new ArrayList<List<String>>();
|
||||
for (E e : list){
|
||||
int colunm = 0;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
List<String> lisb=new ArrayList<String>();
|
||||
for (Object[] os : annotationMap.get(key)){
|
||||
ExcelField ef = (ExcelField)os[0];
|
||||
Object val = null;
|
||||
@@ -332,16 +332,17 @@ public class ExcelCsv {
|
||||
log.error("Get entity value failed",ex);
|
||||
val = "";
|
||||
}
|
||||
sb.append(val + "┆~");
|
||||
lisb.add(String.valueOf(val));
|
||||
}
|
||||
listT.add(String.valueOf(sb));
|
||||
listT.add(lisb);
|
||||
//listT.add(String.valueOf(sb));
|
||||
}
|
||||
dataList.put(key, listT);
|
||||
}
|
||||
return dataList;
|
||||
}
|
||||
|
||||
public static <T> void writeCSVFile(HttpServletResponse response,List<String> titleList,Map<String, List<String>> headMap, Map<String, List<String>> dataMap,String fileName,
|
||||
public static <T> void writeCSVFile(HttpServletResponse response,List<String> titleList,Map<String, List<String>> headMap, Map<String,List<List<String>>> dataMap,String fileName,
|
||||
String titleTime,Properties msgProp) {
|
||||
try {
|
||||
// 写入临时文件
|
||||
@@ -369,9 +370,9 @@ public class ExcelCsv {
|
||||
// 写入文件头部
|
||||
writeHead(heads, cs);
|
||||
//获取文件内容
|
||||
List<String> datas=dataMap.get(titleList.get(i));
|
||||
List<List<String>> datas=dataMap.get(titleList.get(i));
|
||||
// 写入文件内容
|
||||
for (String row : datas) {
|
||||
for (List<String> row: datas) {
|
||||
writeRow(row, cs);
|
||||
}
|
||||
}
|
||||
@@ -421,12 +422,11 @@ public class ExcelCsv {
|
||||
csvWriter.newLine();
|
||||
}
|
||||
|
||||
private static <T> void writeRow(String data, BufferedWriter csvWriter) throws Exception {
|
||||
private static <T> void writeRow(List<String> data, BufferedWriter csvWriter) throws Exception {
|
||||
// 写入文件内容
|
||||
//Html 解码
|
||||
data = Encodes.unescapeHtml(data.toString());
|
||||
String [] datas=data.split("┆~");
|
||||
for (String tag : datas) {
|
||||
for (String tag : data) {
|
||||
tag = Encodes.unescapeHtml(tag.toString());
|
||||
StringBuffer sb = new StringBuffer();
|
||||
if("null".equals(tag.trim())){
|
||||
tag=null;
|
||||
|
||||
Reference in New Issue
Block a user