parent
d5c0d98dab
commit
21a3dfb390
@ -1,39 +1,93 @@
|
||||
package ${basePackage}.action.ajax.system;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import ${basePackage}.frame.auth.LocalData;
|
||||
import ${basePackage}.frame.excel.WSheet;
|
||||
import ${basePackage}.frame.utils.MapperUtil;
|
||||
import ${basePackage}.module.system.mgr.DictItemManager;
|
||||
import ${basePackage}.module.system.req.*;
|
||||
import ${basePackage}.module.system.rsp.*;
|
||||
import ${basePackage}.frame.base.BaseResponse;
|
||||
import ${basePackage}.frame.base.ErrorType;
|
||||
import ${basePackage}.frame.excel.exception.ReadErrorException;
|
||||
import ${basePackage}.frame.excel.exception.TemplateNotMatchException;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import com.fasterxml.jackson.core.TreeNode;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URLEncoder;
|
||||
|
||||
public class DictItemAjax {
|
||||
|
||||
@Autowired
|
||||
private DictItemManager dictManager;
|
||||
|
||||
public DictItemCreateResponse create(String jsonParam) {
|
||||
public DictItemCreateResponse create(TreeNode jsonParam) {
|
||||
DictItemCreateRequest request = MapperUtil.toJava(jsonParam, DictItemCreateRequest.class);
|
||||
return dictManager.create(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemDeleteResponse delete(String jsonParam) {
|
||||
public DictItemDeleteResponse delete(TreeNode jsonParam) {
|
||||
DictItemDeleteRequest request = MapperUtil.toJava(jsonParam, DictItemDeleteRequest.class);
|
||||
return dictManager.delete(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemUpdateResponse update(String jsonParam) {
|
||||
public DictItemUpdateResponse update(TreeNode jsonParam) {
|
||||
DictItemUpdateRequest request = MapperUtil.toJava(jsonParam, DictItemUpdateRequest.class);
|
||||
return dictManager.update(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemFindResponse find(String jsonParam) {
|
||||
public DictItemFindResponse find(TreeNode jsonParam) {
|
||||
DictItemFindRequest request = MapperUtil.toJava(jsonParam, DictItemFindRequest.class);
|
||||
return dictManager.find(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemGetResponse get(String jsonParam) {
|
||||
public DictItemGetResponse get(TreeNode jsonParam) {
|
||||
DictItemGetRequest request = MapperUtil.toJava(jsonParam, DictItemGetRequest.class);
|
||||
return dictManager.get(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public Object template(){
|
||||
try {
|
||||
WSheet<DictItemCreateRequest> sheet = new WSheet<>(DictItemCreateRequest.class);
|
||||
byte[] bytes = sheet.getBytes();
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
|
||||
headers.setContentDispositionFormData("attachment", URLEncoder.encode(sheet.getName() + ".xlsx","utf-8"));
|
||||
return new ResponseEntity<>(bytes, headers, HttpStatus.OK);
|
||||
} catch (IOException e) {
|
||||
BaseResponse baseResponse = new BaseResponse();
|
||||
baseResponse.addError(ErrorType.BUSINESS_ERROR, "");
|
||||
return baseResponse;
|
||||
}
|
||||
}
|
||||
|
||||
public Object imports(MultipartFile file) {
|
||||
BaseResponse baseResponse = new BaseResponse();
|
||||
try {
|
||||
byte[] bytes = file.getBytes();
|
||||
|
||||
WSheet<DictItemCreateRequest> sheet = new WSheet<>(bytes, DictItemCreateRequest.class);
|
||||
|
||||
if (sheet.hasError()) {
|
||||
byte[] sheetBytes = sheet.getBytes(true);
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
|
||||
headers.setContentDispositionFormData("attachment", URLEncoder.encode(sheet.getName() + "-err.xlsx","utf-8"));
|
||||
return new ResponseEntity<>(sheetBytes, headers, HttpStatus.OK);
|
||||
} else {
|
||||
return baseResponse;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
baseResponse.addError(ErrorType.BUSINESS_ERROR, "上传文件出错");
|
||||
} catch (TemplateNotMatchException | ReadErrorException e) {
|
||||
baseResponse.addError(ErrorType.BUSINESS_ERROR, e.getMessage());
|
||||
}
|
||||
|
||||
return baseResponse;
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,54 @@
|
||||
package ${basePackage}.action.ajax.system;
|
||||
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import ${basePackage}.frame.base.BaseResponse;
|
||||
import ${basePackage}.frame.base.ErrorType;
|
||||
import ${basePackage}.frame.base.FileUploadResponse;
|
||||
|
||||
import javax.swing.tree.TreeNode;
|
||||
import java.io.IOException;
|
||||
import java.net.URLEncoder;
|
||||
|
||||
public class FileAjax {
|
||||
|
||||
public Object upload(MultipartFile file) {
|
||||
FileUploadResponse fileUploadResponse = new FileUploadResponse();
|
||||
String fileName = file.getOriginalFilename();
|
||||
|
||||
//========
|
||||
// todo 处理文件
|
||||
//========
|
||||
fileUploadResponse.setId(1L);
|
||||
fileUploadResponse.setUrl("example.com\\img\\1.jpg");
|
||||
fileUploadResponse.setDownloadUrl("example.com\\img\\1.jpg");
|
||||
|
||||
if (file != null) {
|
||||
fileUploadResponse.addError(ErrorType.BUSINESS_ERROR, "文件上传成功,但未处理文件[" + fileName + "]!");
|
||||
} else {
|
||||
fileUploadResponse.addError(ErrorType.BUSINESS_ERROR, "文件上传失败!");
|
||||
}
|
||||
|
||||
return fileUploadResponse;
|
||||
}
|
||||
|
||||
public Object download(TreeNode jsonParam) {
|
||||
try {
|
||||
//========
|
||||
// todo 下载示例
|
||||
//========
|
||||
byte[] bytes = "test".getBytes();
|
||||
HttpHeaders headers = new HttpHeaders();
|
||||
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
|
||||
headers.setContentDispositionFormData("attachment", URLEncoder.encode("example.test", "utf-8"));
|
||||
return new ResponseEntity<>(bytes, headers, HttpStatus.OK);
|
||||
} catch (IOException e) {
|
||||
BaseResponse baseResponse = new BaseResponse();
|
||||
baseResponse.addError(ErrorType.BUSINESS_ERROR, "");
|
||||
return baseResponse;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in new issue