parent
40b05f6725
commit
c98b653dd1
@ -1,93 +1,92 @@
|
||||
package ${basePackage}.action.ajax.system;
|
||||
|
||||
import ${basePackage}.frame.auth.LocalData;
|
||||
import com.fasterxml.jackson.core.TreeNode;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import ${basePackage}.frame.excel.WSheet;
|
||||
import ${basePackage}.frame.utils.LogUtil;
|
||||
import ${basePackage}.frame.auth.LocalData;
|
||||
import ${basePackage}.frame.base.ErrorType;
|
||||
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.utils.ResponseUtil;
|
||||
import ${basePackage}.frame.utils.ValidationUtil;
|
||||
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 ${basePackage}.module.system.ent.DictItem;
|
||||
import ${basePackage}.module.system.mgr.DictItemManager;
|
||||
import ${basePackage}.module.system.req.*;
|
||||
import ${basePackage}.module.system.rsp.*;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URLEncoder;
|
||||
import java.util.List;
|
||||
|
||||
public class DictItemAjax {
|
||||
|
||||
@Autowired
|
||||
private DictItemManager dictManager;
|
||||
private DictItemManager dictItemManager;
|
||||
|
||||
public DictItemCreateResponse create(TreeNode jsonParam) {
|
||||
DictItemCreateRequest request = MapperUtil.toJava(jsonParam, DictItemCreateRequest.class);
|
||||
return dictManager.create(request, LocalData.getToken());
|
||||
return dictItemManager.create(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemDeleteResponse delete(TreeNode jsonParam) {
|
||||
DictItemDeleteRequest request = MapperUtil.toJava(jsonParam, DictItemDeleteRequest.class);
|
||||
return dictManager.delete(request, LocalData.getToken());
|
||||
return dictItemManager.delete(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemUpdateResponse update(TreeNode jsonParam) {
|
||||
DictItemUpdateRequest request = MapperUtil.toJava(jsonParam, DictItemUpdateRequest.class);
|
||||
return dictManager.update(request, LocalData.getToken());
|
||||
return dictItemManager.update(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemFindResponse find(TreeNode jsonParam) {
|
||||
DictItemFindRequest request = MapperUtil.toJava(jsonParam, DictItemFindRequest.class);
|
||||
return dictManager.find(request, LocalData.getToken());
|
||||
return dictItemManager.find(request, LocalData.getToken());
|
||||
}
|
||||
|
||||
public DictItemGetResponse get(TreeNode jsonParam) {
|
||||
DictItemGetRequest request = MapperUtil.toJava(jsonParam, DictItemGetRequest.class);
|
||||
return dictManager.get(request, LocalData.getToken());
|
||||
return dictItemManager.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;
|
||||
return ResponseUtil.apply(new WSheet<>(DictItem.class));
|
||||
}
|
||||
|
||||
public Object exports(TreeNode jsonParam) {
|
||||
DictItemFindRequest request = MapperUtil.toJava(jsonParam, DictItemFindRequest.class);
|
||||
DictItemFindResponse response = dictItemManager.find(request, LocalData.getToken());
|
||||
if (response.hasError()) {
|
||||
return response;
|
||||
}
|
||||
return ResponseUtil.apply(new WSheet<>(response.getResult()));
|
||||
}
|
||||
|
||||
public Object imports(MultipartFile file) {
|
||||
BaseResponse baseResponse = new BaseResponse();
|
||||
try {
|
||||
byte[] bytes = file.getBytes();
|
||||
|
||||
WSheet<DictItemCreateRequest> sheet = new WSheet<>(bytes, DictItemCreateRequest.class);
|
||||
WSheet<DictItem> sheet = new WSheet<>(file.getBytes(), DictItem.class, new WSheet.Validator<DictItem>() {
|
||||
@Override
|
||||
public List<String> validate(DictItem o) {
|
||||
DictItemCreateRequest request = MapperUtil.map(o, DictItemCreateRequest.class);
|
||||
return ValidationUtil.validate(request);
|
||||
}
|
||||
});
|
||||
|
||||
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);
|
||||
return ResponseUtil.apply(sheet.getBytes(true), sheet.getName() + "-检查.xlsx");
|
||||
} else {
|
||||
return baseResponse;
|
||||
}
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
LogUtil.dumpException(e);
|
||||
baseResponse.addError(ErrorType.BUSINESS_ERROR, "上传文件出错");
|
||||
} catch (TemplateNotMatchException | ReadErrorException e) {
|
||||
baseResponse.addError(ErrorType.BUSINESS_ERROR, e.getMessage());
|
||||
}
|
||||
|
||||
return baseResponse;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in new issue