Commit cf3deec2 authored by 周健威's avatar 周健威

添加处理gtdata接口

parent 462a7bb4
......@@ -138,72 +138,69 @@ public class DataTempcacheController extends BaseController<DataTempcacheBiz,Dat
@RequestMapping(value = "/app/unauth/saveDataTempcache",method = RequestMethod.POST)
@IgnoreUserToken
public ObjectRestResponse<FileData> saveDataTempcache(@RequestBody DataTempcache dataTempcache) {
if(null != dataTempcache.getUptype()) {
if(DataTempcache.UPTYPE_GTDATA == dataTempcache.getUptype()) {
if (dataTempcache.getId()!=null){
baseBiz.updateSelectiveById(dataTempcache);
}else {
if(null != dataTempcache.getUptype()) {
if(DataTempcache.UPTYPE_GTDATA == dataTempcache.getUptype()) {
// //gtdtat 获取数据
Map<String, Object> responseMap = gtDataRestClient.list(dataTempcache.getGtdataPath());
if(null != responseMap && null != responseMap.get("HttpStatusCode") && null != responseMap.get("files") && 200 == (Integer) responseMap.get("HttpStatusCode")) {
List<GtFileInfo> gtFileInfos = Convert.toList(GtFileInfo.class, responseMap.get("files"));
GtFileInfo gtFileInfo = gtFileInfos.get(0);
String filename = gtFileInfo.getFilename();
String filesize = gtFileInfo.getSize();
String filetype = filename.substring(filename.lastIndexOf("."));
long fileSize = Long.valueOf(filesize);
// double fileSizeInKB = (double) fileSize / 1024; // 转换为 KB
double fileSizeInMB = (double) fileSize / (1024 * 1024); // 转换为 MB
double roundedFileSizeInMB = Math.round(fileSizeInMB * 100.0) / 100.0; // 保留两位小数
String fileSizeString = String.format("%.2f MB", roundedFileSizeInMB);
Map<String, Object> responseMap = gtDataRestClient.list(dataTempcache.getGtdataPath());
if(null != responseMap && null != responseMap.get("HttpStatusCode") && null != responseMap.get("files") && 200 == (Integer) responseMap.get("HttpStatusCode")) {
List<GtFileInfo> gtFileInfos = Convert.toList(GtFileInfo.class, responseMap.get("files"));
GtFileInfo gtFileInfo = gtFileInfos.get(0);
String filename = gtFileInfo.getFilename();
String filesize = gtFileInfo.getSize();
String filetype = filename.substring(filename.lastIndexOf("."));
long fileSize = Long.valueOf(filesize);
// double fileSizeInKB = (double) fileSize / 1024; // 转换为 KB
double fileSizeInMB = (double) fileSize / (1024 * 1024); // 转换为 MB
double roundedFileSizeInMB = Math.round(fileSizeInMB * 100.0) / 100.0; // 保留两位小数
String fileSizeString = String.format("%.2f MB", roundedFileSizeInMB);
dataTempcache.setHasGtdata(SYS_TRUE);
dataTempcache.setFilename(filename);
dataTempcache.setFiletype(filetype);
dataTempcache.setFilesize(fileSizeString);
}else {
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE, "分布式路径不对");
}
}else if(DataTempcache.UPTYPE_URL == dataTempcache.getUptype()) {
dataTempcache.setHasGtdata(SYS_TRUE);
dataTempcache.setFilename(filename);
dataTempcache.setFiletype(filetype);
dataTempcache.setFilesize(fileSizeString);
}else {
return ObjectRestResponse.createFailedResult(ResultCode.FAILED_CODE, "分布式路径不对");
}
}else if(DataTempcache.UPTYPE_URL == dataTempcache.getUptype()) {
//提前插入
if(null == dataTempcache.getId()) {
baseBiz.insertSelective(dataTempcache);
}
//提前插入
if(null == dataTempcache.getId()) {
baseBiz.insertSelective(dataTempcache);
}
String realPath = tempcachePath+"/"+dataTempcache.getId();
String serverPath = baseUploadPath + realPath;
//创建目录
if(!FileUtil.exist(serverPath)) {
FileUtil.mkdir(serverPath);
}
String realPath = tempcachePath+"/"+dataTempcache.getId();
String serverPath = baseUploadPath + realPath;
//创建目录
if(!FileUtil.exist(serverPath)) {
FileUtil.mkdir(serverPath);
}
String fileName = StrUtil.subAfter(dataTempcache.getUpurl(), "/", true);
//然后获取这个文件名的后缀
String suffix = StrUtil.subAfter(fileName, ".", true);
String fileName = StrUtil.subAfter(dataTempcache.getUpurl(), "/", true);
//然后获取这个文件名的后缀
String suffix = StrUtil.subAfter(fileName, ".", true);
if(StrUtil.isBlank(dataTempcache.getFilename())) {
dataTempcache.setFilename(fileName);
}
if(StrUtil.isBlank(dataTempcache.getFilename())) {
dataTempcache.setFilename(fileName);
}
if(StrUtil.isBlank(dataTempcache.getFiletype())) {
dataTempcache.setFiletype("." + suffix);
}
if(StrUtil.isBlank(dataTempcache.getFiletype())) {
dataTempcache.setFiletype("." + suffix);
//下载文件
Long size = HttpUtil.downloadFile(dataTempcache.getUpurl(), FileUtil.file(serverPath + "/" + dataTempcache.getFilename()));
double fileSizeInMB = (double) size / (1024 * 1024); // 转换为 MB
double roundedFileSizeInMB = Math.round(fileSizeInMB * 100.0) / 100.0; // 保留两位小数
String fileSizeString = String.format("%.2f MB", roundedFileSizeInMB);
dataTempcache.setFilesize(fileSizeString);
dataTempcache.setFilepath(serverPath + "/" + dataTempcache.getFilename());
dataTempcache.setFileurl(xx_url+ SystemConfig.XXMP_URL + realPath + "/" + dataTempcache.getFilename());
}
//下载文件
Long size = HttpUtil.downloadFile(dataTempcache.getUpurl(), FileUtil.file(serverPath + "/" + dataTempcache.getFilename()));
double fileSizeInMB = (double) size / (1024 * 1024); // 转换为 MB
double roundedFileSizeInMB = Math.round(fileSizeInMB * 100.0) / 100.0; // 保留两位小数
String fileSizeString = String.format("%.2f MB", roundedFileSizeInMB);
dataTempcache.setFilesize(fileSizeString);
dataTempcache.setFilepath(serverPath + "/" + dataTempcache.getFilename());
dataTempcache.setFileurl(xx_url+ SystemConfig.XXMP_URL + realPath + "/" + dataTempcache.getFilename());
}
}
if (dataTempcache.getId()!=null){
baseBiz.updateSelectiveById(dataTempcache);
}else {
dataTempcache.setIsDel(0);
baseBiz.insertSelective(dataTempcache);
}
......
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