获取fileKey接口优化调整

This commit is contained in:
tianliyong 2022-12-29 18:00:01 +08:00
parent f86f5f557d
commit f613fe87d9

View File

@ -49,12 +49,6 @@ public class FileServiceImpl implements FileService {
private static final String FILE_UPLOAD_CODE = "OSS_FILE_UPLOAD";
private static final String FILE_UPLOAD_NAME = "文件上传";
private static final String APPCODE_FACE = "face";
private static final String SCENE_FACE = "face";
private static final String APPCODE_IDCARD = "idcard";
private static final String SCENE_IDCARD = "idcard";
private static final String APPCODE_BANKCARD = "bankcard";
private static final String SCENE_BANKCARD = "bankcard";
private static final String IS_URL = "https://";
@ -102,7 +96,7 @@ public class FileServiceImpl implements FileService {
}
//String tgtFileKey = Utility.generateFileKey(file.getDirectory(), file.getFileUuid(), file.getFileFormat());
//兼容app端oss历史上传文件的url处理
String tgtFileKey = file.getFileUrl().substring(file.getFileUrl().indexOf(".com/") + 5);
String tgtFileKey = file.getFileUrl().substring(file.getFileUrl().indexOf(HTTP_COM) + 5);
log.debug("delete tgtFileKey = {}", tgtFileKey);
String bucketName = file.getBucketName();
if (file.getFileUrl().contains(APP_PRO_BUCKET_NAME)) {
@ -171,7 +165,7 @@ public class FileServiceImpl implements FileService {
}
//String tgtFileKey = Utility.generateFileKey(file.getDirectory(), file.getFileUuid(), file.getFileFormat());
//兼容app端oss历史上传文件的url处理
String tgtFileKey = file.getFileUrl().substring(file.getFileUrl().indexOf(".com/") + 5);
String tgtFileKey = file.getFileUrl().substring(file.getFileUrl().indexOf(HTTP_COM) + 5);
log.info("file download tgtFileKey = {}", tgtFileKey);
String bucketName = file.getBucketName();
if (file.getFileUrl().contains(APP_PRO_BUCKET_NAME)) {
@ -356,6 +350,9 @@ public class FileServiceImpl implements FileService {
}
private void asyncSaveFile(List<FindFileKeyResponse> resList) {
if (CollectionUtil.isEmpty(resList)) {
return;
}
List<CompletableFuture<Void>> completableFutures = new ArrayList<>(resList.size() / 10 + 1);
Lists.partition(resList, 10).forEach(findFileKeyResponses ->
completableFutures.add(CompletableFuture.runAsync(() ->
@ -366,19 +363,10 @@ public class FileServiceImpl implements FileService {
private File saveFile(FindFileKeyResponse response) {
String url = response.getUrl();
String appCode = "", bizScene = "";
if (url.contains(APPCODE_FACE)) {
appCode = APPCODE_FACE;
bizScene = SCENE_FACE;
} else if(url.contains(APPCODE_IDCARD)) {
appCode = APPCODE_IDCARD;
bizScene = SCENE_IDCARD;
} else if(url.contains(APPCODE_BANKCARD)) {
appCode = APPCODE_BANKCARD;
bizScene = SCENE_BANKCARD;
}
if (StringUtils.isEmpty(appCode) || StringUtils.isEmpty(bizScene)) {
String tgtFileKey = url.substring(url.indexOf(HTTP_COM) + 5);
String appCode = tgtFileKey.substring(0, tgtFileKey.indexOf("/"));
String bizScene = getBizScene(appCode);
if (StringUtils.isEmpty(bizScene)) {
throw new BizException(CodeEnum.APP_CODE_NOT_FOUND);
}
// 通过appcode获取文件渠道桶信息
@ -414,6 +402,24 @@ public class FileServiceImpl implements FileService {
return ossFile;
}
private String getBizScene(String appCode) {
String bizScene = "";
switch (appCode) {
case "face":
bizScene = "face";
break;
case "idcard":
bizScene = "idcard";
break;
case "bankcard":
bizScene = "bankcard";
break;
default:
break;
}
return bizScene;
}
private List<FindFileKeyResponse> setFileKeyResByUrl(List<String> urlList) {
List<FindFileKeyResponse> resList = new ArrayList<>();
urlList.stream().forEach(url -> {