UploadTool.java
1.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package com.xiniunet.my.tool;
import com.xiniunet.foundation.contract.UploadTypeEnum;
import com.xiniunet.foundation.request.FileUploadRequest;
import com.xiniunet.foundation.response.FileUploadResponse;
import com.xiniunet.foundation.service.FoundationService;
import com.xiniunet.framework.log.Log;
import com.xiniunet.framework.log.LogUtil;
import com.xiniunet.framework.security.Passport;
import com.xiniunet.framework.util.SpringContext;
import com.xiniunet.framework.util.excel.Excel;
import com.xiniunet.framework.util.excel.datatable.DataTable;
import java.io.IOException;
/**
* Created on 2014/10/8.
*
* @author 吕浩
* @version 0.1.0
*/
public class UploadTool {
/**
* 从Spring中取得可以获得用户对象的工具类
*/
private static final FoundationService foundationService =
(FoundationService) SpringContext.getApplicationContext().getBean(FoundationService.class);
/**
* 将DataTable转为Excel并上传。
* @param table 要上传的DataTable
* @param passport 护照信息
* @return URL或者错误信息
*/
public static FileUploadResponse uploadDataTable(DataTable table, Passport passport, Boolean flag) {
FileUploadResponse uploadResponse = new FileUploadResponse();
try {
FileUploadRequest uploadRequest = new FileUploadRequest();
uploadRequest.setFileExt("xlsx");
uploadRequest.setType(UploadTypeEnum.TMP);
uploadRequest.setFileStream(new Excel(table, flag).getBytes());
uploadResponse = foundationService.uploadFile(uploadRequest, passport);
} catch (IOException e) {
LogUtil.writeLog(new Log("debug", "web", "", e.getMessage(), passport));
uploadResponse.addError("", "上传文件出现了小错误。");
}
return uploadResponse;
}
}