文件下载

master
chengqf 2 years ago
parent ff584eb6d6
commit af161a4193

@ -12,5 +12,7 @@ import com.glxp.sale.common.res.BaseResponse;
/*文件服务*/
public interface FileService {
BaseResponse fileUpload(HttpServletRequest request,Map<String,Object> params);
BaseResponse fileDownload(HttpServletRequest request,Map<String,Object> params);
BaseResponse downloadFile(HttpServletRequest request,Map<String,Object> params);
BaseResponse receiveFile(HttpServletRequest request,String content,MultipartFile[] files);
}

@ -19,8 +19,10 @@ import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.glxp.sale.admin.idc.dao.DbDao;
import com.glxp.sale.admin.idc.service.FileService;
import com.glxp.sale.admin.idc.service.IdcService;
import com.glxp.sale.admin.idc.utils.IDCUtils;
import com.glxp.sale.admin.util.FileUtils;
import com.glxp.sale.common.res.BaseResponse;
@ -47,6 +49,8 @@ public class FileServiceImpl implements FileService {
@Resource
private DbDao dbDao;
@Resource
private IdcService idcService;
private String imagePath = "register/file/image2/";
@Override
public BaseResponse fileUpload(HttpServletRequest request,Map<String,Object> params) {
@ -78,15 +82,15 @@ public class FileServiceImpl implements FileService {
for(String str:strs) {
if (!StringUtils.isEmpty(str) && FileUtils.isFileExist(filePath + filePathSlash + imagePath + str)) {
files.add(filePath + filePathSlash + imagePath + str);
logger.info("relay--"+filePath + filePathSlash + imagePath + str);
} else {
isExists = false;
}
}
if(!isExists)
return ResultVOUtils.error(9999,"文件不存在");
return ResultVOUtils.error(9999,filePath + filePathSlash + imagePath + strs[0]);
String result = relayFile(files,host);
if (IDCUtils.isJson(result)&&!result.contains("<html")) {
logger.error(result);
if (IDCUtils.isJson(result)) {
BaseResponse baseResponse = JSON.parseObject(result,BaseResponse.class);
return baseResponse;
}
@ -94,6 +98,19 @@ public class FileServiceImpl implements FileService {
return ResultVOUtils.error(9999,"失败");
}
@Override
public BaseResponse fileDownload(HttpServletRequest request,Map<String,Object> params) {
Map<String, Object> map = dbDao.get("select * from sync_data_set limit 1");
if(map!=null&&map.get("syncIp")!=null) {
String result = IDCUtils.post(map.get("syncIp").toString()+"/spssync/file/downloadFile", params);
} else {
return ResultVOUtils.error(9999,"中继服务地址未配置,请至同步设置中进行配置");
}
return ResultVOUtils.success(null);
}
@Override
public BaseResponse receiveFile(HttpServletRequest request,String content,MultipartFile[] files) {
boolean isRelay = false;
@ -118,7 +135,6 @@ public class FileServiceImpl implements FileService {
for (MultipartFile file : files) {
String imageName = filePath + filePathSlash + imagePath + file.getOriginalFilename();
saveFiles.add(imageName);
logger.info("relay->>>"+imageName);
IDCUtils.writeFile(file.getBytes(), filePath + filePathSlash + imagePath, file.getOriginalFilename());
}
} catch (IOException e) {
@ -133,6 +149,7 @@ public class FileServiceImpl implements FileService {
if(isRelay) {
String result = relayFile(saveFiles,host);
logger.info(result);
if (IDCUtils.isJson(result)&&!result.contains("<html")) {
BaseResponse baseResponse = JSON.parseObject(result,BaseResponse.class);
return baseResponse;
@ -198,4 +215,34 @@ public class FileServiceImpl implements FileService {
return result;
}
@Override
public BaseResponse downloadFile(HttpServletRequest request,Map<String,Object> params) {
String host = "";
try {
Map<String,Object> config =dbDao.get("select paramValue from system_param_config where paramKey='upper_server_ip'");
if(config!=null&&config.get("paramValue")!=null)
host = config.get("paramValue").toString();
} catch (Exception ex) {
}
if(!StringUtils.isEmpty(host)) {
String result = IDCUtils.post(host+"/spssync/file/downloadFile", params);
JSONObject object = JSON.parseObject(result);
boolean success = false;
if(object.getInteger("code")==20000) {
String[] files = params.get("fileName").toString().split(",");
success = true;
for(String str:files) {
if(!idcService.signleDownloadFile(host, str))
success = false;
}
}
if(!success)
ResultVOUtils.error(9999,"失败");
}
return ResultVOUtils.success(null);
}
}
Loading…
Cancel
Save