Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-oss
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xingmin
yd-oss
Commits
06cbc20d
Commit
06cbc20d
authored
Mar 17, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
push
parent
0378b7bd
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
174 additions
and
108 deletions
+174
-108
yd-oss-api/src/main/java/com/yd/oss/api/service/impl/ApiExcelServiceImpl.java
+19
-5
yd-oss-api/src/main/java/com/yd/oss/api/service/impl/ApiOssStsServiceImpl.java
+48
-53
yd-oss-feign/src/main/java/com/yd/oss/feign/request/ApiOssExportAppointmentExcelRequest.java
+1
-1
yd-oss-service/src/main/java/com/yd/oss/service/config/DynamicOssClientProxy.java
+32
-32
yd-oss-service/src/main/java/com/yd/oss/service/config/OssClientFactory.java
+55
-0
yd-oss-service/src/main/java/com/yd/oss/service/config/OssConfig.java
+13
-13
yd-oss-service/src/main/java/com/yd/oss/service/service/AppointmentExcelService.java
+2
-1
yd-oss-service/src/main/java/com/yd/oss/service/service/impl/AliYunOssServiceImpl.java
+0
-0
yd-oss-service/src/main/java/com/yd/oss/service/service/impl/AppointmentExcelServiceImpl.java
+4
-3
No files found.
yd-oss-api/src/main/java/com/yd/oss/api/service/impl/ApiExcelServiceImpl.java
View file @
06cbc20d
package
com
.
yd
.
oss
.
api
.
service
.
impl
;
package
com
.
yd
.
oss
.
api
.
service
.
impl
;
import
com.aliyun.oss.OSS
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.oss.api.service.ApiExcelService
;
import
com.yd.oss.api.service.ApiExcelService
;
...
@@ -10,10 +11,9 @@ import com.yd.oss.feign.response.ApiOssExportAppointmentExcelResponse;
...
@@ -10,10 +11,9 @@ import com.yd.oss.feign.response.ApiOssExportAppointmentExcelResponse;
import
com.yd.oss.feign.dto.ExportParam
;
import
com.yd.oss.feign.dto.ExportParam
;
import
com.yd.oss.feign.dto.ExportResult
;
import
com.yd.oss.feign.dto.ExportResult
;
import
com.yd.oss.feign.result.ImportResult
;
import
com.yd.oss.feign.result.ImportResult
;
import
com.yd.oss.service.service.AppointmentExcelService
;
import
com.yd.oss.service.config.OssClientFactory
;
import
com.yd.oss.service.service.ExcelExportService
;
import
com.yd.oss.service.model.OssProvider
;
import
com.yd.oss.service.service.ExcelImportService
;
import
com.yd.oss.service.service.*
;
import
com.yd.oss.service.service.ExcelParserService
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -41,6 +41,12 @@ public class ApiExcelServiceImpl implements ApiExcelService {
...
@@ -41,6 +41,12 @@ public class ApiExcelServiceImpl implements ApiExcelService {
@Autowired
@Autowired
private
ExcelImportService
excelImportService
;
private
ExcelImportService
excelImportService
;
@Autowired
private
OssClientFactory
ossClientFactory
;
@Autowired
private
IOssProviderService
ossProviderService
;
/**
/**
* 导出excel-预约信息
* 导出excel-预约信息
* @param request
* @param request
...
@@ -49,9 +55,17 @@ public class ApiExcelServiceImpl implements ApiExcelService {
...
@@ -49,9 +55,17 @@ public class ApiExcelServiceImpl implements ApiExcelService {
@Override
@Override
public
Result
<
ApiOssExportAppointmentExcelResponse
>
exportAppointment
(
ApiOssExportAppointmentExcelRequest
request
)
{
public
Result
<
ApiOssExportAppointmentExcelResponse
>
exportAppointment
(
ApiOssExportAppointmentExcelRequest
request
)
{
ApiOssExportAppointmentExcelResponse
response
=
new
ApiOssExportAppointmentExcelResponse
();
ApiOssExportAppointmentExcelResponse
response
=
new
ApiOssExportAppointmentExcelResponse
();
// 根据项目ID获取服务商信息
OssProvider
provider
=
ossProviderService
.
getProviderByProjectId
(
request
.
getProjectBizId
());
if
(
provider
==
null
)
{
log
.
error
(
"未找到项目对应的OSS服务商,projectBizId={}"
,
request
.
getProjectBizId
());
return
Result
.
fail
(
"未找到对应的OSS服务商配置"
);
}
OSS
tempClient
=
ossClientFactory
.
createOssClient
(
provider
);
String
url
=
appointmentExcelService
.
exportAppointment
(
request
.
getData
(),
String
url
=
appointmentExcelService
.
exportAppointment
(
request
.
getData
(),
request
.
getTemplateType
(),
request
.
getTemplateType
(),
request
.
getAppointmentBizId
());
request
.
getAppointmentBizId
(),
request
.
getProjectBizId
());
response
.
setUrl
(
url
);
response
.
setUrl
(
url
);
return
Result
.
success
(
response
);
return
Result
.
success
(
response
);
}
}
...
...
yd-oss-api/src/main/java/com/yd/oss/api/service/impl/ApiOssStsServiceImpl.java
View file @
06cbc20d
...
@@ -13,6 +13,9 @@ import com.yd.common.enums.CommonEnum;
...
@@ -13,6 +13,9 @@ import com.yd.common.enums.CommonEnum;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.common.utils.RandomStringGenerator
;
import
com.yd.common.utils.RandomStringGenerator
;
import
com.yd.oss.api.service.ApiOssStsService
;
import
com.yd.oss.api.service.ApiOssStsService
;
import
com.yd.oss.service.config.OssClientFactory
;
import
com.yd.oss.service.model.OssProvider
;
import
com.yd.oss.service.service.IOssProviderService
;
import
com.yd.oss.service.utils.OssUtils
;
import
com.yd.oss.service.utils.OssUtils
;
import
com.yd.oss.feign.dto.ApiOssFileDto
;
import
com.yd.oss.feign.dto.ApiOssFileDto
;
import
com.yd.oss.feign.request.ApiBatchSaveFilesRequest
;
import
com.yd.oss.feign.request.ApiBatchSaveFilesRequest
;
...
@@ -20,9 +23,7 @@ import com.yd.oss.feign.response.ApiBatchSaveFilesResponse;
...
@@ -20,9 +23,7 @@ import com.yd.oss.feign.response.ApiBatchSaveFilesResponse;
import
com.yd.oss.feign.response.ApiGetStsTokenResponse
;
import
com.yd.oss.feign.response.ApiGetStsTokenResponse
;
import
com.yd.oss.feign.response.ApiOssFileResponse
;
import
com.yd.oss.feign.response.ApiOssFileResponse
;
import
com.yd.oss.service.model.OssFile
;
import
com.yd.oss.service.model.OssFile
;
import
com.yd.oss.service.model.OssProvider
;
import
com.yd.oss.service.service.IOssFileService
;
import
com.yd.oss.service.service.IOssFileService
;
import
com.yd.oss.service.service.OssService
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.io.FilenameUtils
;
import
org.apache.commons.io.FilenameUtils
;
...
@@ -31,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired;
...
@@ -31,6 +32,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.net.MalformedURLException
;
import
java.net.MalformedURLException
;
import
java.net.URL
;
import
java.net.URL
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
...
@@ -41,34 +43,15 @@ import java.util.List;
...
@@ -41,34 +43,15 @@ import java.util.List;
@Service
@Service
public
class
ApiOssStsServiceImpl
implements
ApiOssStsService
{
public
class
ApiOssStsServiceImpl
implements
ApiOssStsService
{
// @Value("${aliyun.oss.access-key-id:LTAI5tFNiaUM3B4vC2bjqvtB}")
// private String accessKeyId;
//
// @Value("${aliyun.oss.access-key-secret:yH2L5YYmUayBYpQXhYevJ6Ghba349D}")
// private String accessKeySecret;
//
@Value
(
"${aliyun.oss.role-arn:acs:ram::1164861558430519:role/oss-upload-role}"
)
@Value
(
"${aliyun.oss.role-arn:acs:ram::1164861558430519:role/oss-upload-role}"
)
private
String
roleArn
;
private
String
roleArn
;
//
// @Value("${aliyun.oss.region:cn-shanghai}")
// private String region;
//
// @Value("${aliyun.oss.bucket:yd-ali-oss}")
// private String bucket;
//
// @Value("${aliyun.oss.endpoint:oss-cn-shanghai-finance-1-pub.aliyuncs.com}")
// private String endpoint;
//
// 注入最大文件大小配置,默认100MB
// 注入最大文件大小配置,默认100MB
@Value
(
"${aliyun.oss.max-size:104857600}"
)
@Value
(
"${aliyun.oss.max-size:104857600}"
)
private
Long
maxSize
;
private
Long
maxSize
;
@Autowired
@Autowired
private
OssService
ossService
;
private
IOssProviderService
ossProviderService
;
// 动态代理的 OSS 客户端,会自动切换到当前服务商
@Autowired
private
OSS
ossClient
;
@Autowired
@Autowired
private
IOssFileService
iOssFileService
;
private
IOssFileService
iOssFileService
;
...
@@ -76,32 +59,40 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
...
@@ -76,32 +59,40 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
@Autowired
@Autowired
private
OssUtils
ossUtils
;
private
OssUtils
ossUtils
;
@Autowired
private
OssClientFactory
ossClientFactory
;
// 如果需要执行OSS操作时使用
/**
/**
*
getStsToken如何根据传入的projectBizId查询对应服务商然后切换对应OSS服务商
*
获取STS临时凭证
* @param projectBizId
* @param projectBizId
项目业务ID,用于确定使用的OSS服务商
* @return
* @return
STS凭证响应
*/
*/
@Override
@Override
public
Result
<
ApiGetStsTokenResponse
>
getStsToken
(
String
projectBizId
)
{
public
Result
<
ApiGetStsTokenResponse
>
getStsToken
(
String
projectBizId
)
{
// 切换服务商
// 根据项目ID获取服务商信息
ossService
.
switchProviderByProjectId
(
projectBizId
);
OssProvider
provider
=
ossProviderService
.
getProviderByProjectId
(
projectBizId
);
if
(
provider
==
null
)
{
// 获取切换后的服务商信息
log
.
error
(
"未找到项目对应的OSS服务商,projectBizId={}"
,
projectBizId
);
OssProvider
currentProvider
=
ossService
.
getCurrentProvider
();
return
Result
.
fail
(
"未找到对应的OSS服务商配置"
);
String
region
=
currentProvider
.
getRegion
();
String
accessKeyId
=
currentProvider
.
getAccessKey
();
String
accessKeySecret
=
currentProvider
.
getSecretKey
();
// 或 ossService.getDefaultBucket()
String
bucket
=
currentProvider
.
getBucketName
();
// 或 ossService.getDefaultEndpoint()
String
endpoint
=
currentProvider
.
getEndpoint
();
//现在 ossClient 已经指向了切换后的服务商,可以直接使用
if
(!
ossClient
.
doesBucketExist
(
bucket
))
{
log
.
warn
(
"当前服务商的桶 {} 不存在,将尝试创建"
,
bucket
);
// 可以创建桶,但通常桶应提前准备好
}
}
String
region
=
provider
.
getRegion
();
String
accessKeyId
=
provider
.
getAccessKey
();
String
accessKeySecret
=
provider
.
getSecretKey
();
String
bucket
=
provider
.
getBucketName
();
String
endpoint
=
provider
.
getEndpoint
();
// 检查bucket是否存在
// 如果需要检查,可以用ossClientFactory创建临时客户端执行操作,然后关闭
OSS
tempClient
=
ossClientFactory
.
createOssClient
(
provider
);
try
{
if
(!
tempClient
.
doesBucketExist
(
bucket
))
{
log
.
warn
(
"当前服务商的桶 {} 不存在,请确认配置"
,
bucket
);
}
}
finally
{
tempClient
.
shutdown
();
}
// 构建STS客户端
// 构建STS客户端
DefaultProfile
profile
=
DefaultProfile
.
getProfile
(
region
,
accessKeyId
,
accessKeySecret
);
DefaultProfile
profile
=
DefaultProfile
.
getProfile
(
region
,
accessKeyId
,
accessKeySecret
);
IAcsClient
client
=
new
DefaultAcsClient
(
profile
);
IAcsClient
client
=
new
DefaultAcsClient
(
profile
);
...
@@ -129,8 +120,8 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
...
@@ -129,8 +120,8 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
tokenResponse
.
setEndpoint
(
endpoint
);
tokenResponse
.
setEndpoint
(
endpoint
);
tokenResponse
.
setMaxSize
(
maxSize
);
tokenResponse
.
setMaxSize
(
maxSize
);
//获取分片文件路径的前缀
//
获取分片文件路径的前缀
String
filePrefix
=
ossUtils
.
getShardFilePrefix
(
projectBizId
,
""
);
String
filePrefix
=
ossUtils
.
getShardFilePrefix
(
projectBizId
,
""
);
tokenResponse
.
setFilePrefix
(
filePrefix
);
tokenResponse
.
setFilePrefix
(
filePrefix
);
return
Result
.
success
(
tokenResponse
);
return
Result
.
success
(
tokenResponse
);
}
catch
(
ClientException
e
)
{
}
catch
(
ClientException
e
)
{
...
@@ -140,19 +131,23 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
...
@@ -140,19 +131,23 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
}
}
/**
/**
* 批量保存文件列表
* 批量保存文件列表
(仅保存元数据,不涉及OSS操作)
*
*
* @return
* @param request 批量保存请求
* @return 保存结果
*/
*/
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Result
<
ApiBatchSaveFilesResponse
>
batchSaveFiles
(
ApiBatchSaveFilesRequest
request
)
{
public
Result
<
ApiBatchSaveFilesResponse
>
batchSaveFiles
(
ApiBatchSaveFilesRequest
request
)
{
// 根据 projectBizId 切换服务商,获取当前服务商信息
// 根据 projectBizId 获取服务商信息(用于填充providerBizId和bucketName)
ossService
.
switchProviderByProjectId
(
request
.
getProjectBizId
());
OssProvider
provider
=
ossProviderService
.
getProviderByProjectId
(
request
.
getProjectBizId
());
OssProvider
currentProvider
=
ossService
.
getCurrentProvider
();
if
(
provider
==
null
)
{
String
providerBizId
=
currentProvider
.
getProviderBizId
();
log
.
error
(
"批量保存文件时未找到服务商配置,projectBizId={}"
,
request
.
getProjectBizId
());
String
bucketName
=
currentProvider
.
getBucketName
();
return
Result
.
fail
(
"未找到对应的OSS服务商配置"
);
}
String
providerBizId
=
provider
.
getProviderBizId
();
String
bucketName
=
provider
.
getBucketName
();
// 获取当前登录用户信息
// 获取当前登录用户信息
AuthUserDto
authUserDto
=
SecurityUtil
.
getCurrentLoginUser
();
AuthUserDto
authUserDto
=
SecurityUtil
.
getCurrentLoginUser
();
...
@@ -227,7 +222,7 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
...
@@ -227,7 +222,7 @@ public class ApiOssStsServiceImpl implements ApiOssStsService {
}
}
}
}
// 批量保存
(修复条件判断:列表不为空时才保存)
// 批量保存
if
(
CollectionUtils
.
isNotEmpty
(
saveOssFileList
))
{
if
(
CollectionUtils
.
isNotEmpty
(
saveOssFileList
))
{
iOssFileService
.
saveOrUpdateBatch
(
saveOssFileList
);
iOssFileService
.
saveOrUpdateBatch
(
saveOssFileList
);
// 构建响应
// 构建响应
...
...
yd-oss-feign/src/main/java/com/yd/oss/feign/request/ApiOssExportAppointmentExcelRequest.java
View file @
06cbc20d
...
@@ -27,5 +27,5 @@ public class ApiOssExportAppointmentExcelRequest {
...
@@ -27,5 +27,5 @@ public class ApiOssExportAppointmentExcelRequest {
/**
/**
* 项目ID
* 项目ID
*/
*/
private
String
projectBizId
=
"project_nKULQBH1Gw9Ma8YM"
;
private
String
projectBizId
;
}
}
yd-oss-service/src/main/java/com/yd/oss/service/config/DynamicOssClientProxy.java
View file @
06cbc20d
package
com
.
yd
.
oss
.
service
.
config
;
//package com.yd.oss.service.config;
//
import
com.aliyun.oss.OSS
;
//import com.aliyun.oss.OSS;
import
com.yd.oss.service.service.OssService
;
//import com.yd.oss.service.service.OssService;
//
import
java.lang.reflect.InvocationHandler
;
//import java.lang.reflect.InvocationHandler;
import
java.lang.reflect.Method
;
//import java.lang.reflect.Method;
import
java.lang.reflect.Proxy
;
//import java.lang.reflect.Proxy;
//
public
class
DynamicOssClientProxy
implements
InvocationHandler
{
//public class DynamicOssClientProxy implements InvocationHandler {
private
final
OssService
ossService
;
// private final OssService ossService;
//
public
DynamicOssClientProxy
(
OssService
ossService
)
{
// public DynamicOssClientProxy(OssService ossService) {
this
.
ossService
=
ossService
;
// this.ossService = ossService;
}
// }
//
public
static
OSS
createProxy
(
OssService
ossService
)
{
// public static OSS createProxy(OssService ossService) {
return
(
OSS
)
Proxy
.
newProxyInstance
(
// return (OSS) Proxy.newProxyInstance(
DynamicOssClientProxy
.
class
.
getClassLoader
(),
// DynamicOssClientProxy.class.getClassLoader(),
new
Class
[]{
OSS
.
class
},
// new Class[]{OSS.class},
new
DynamicOssClientProxy
(
ossService
)
// new DynamicOssClientProxy(ossService)
);
// );
}
// }
//
@Override
// @Override
public
Object
invoke
(
Object
proxy
,
Method
method
,
Object
[]
args
)
throws
Throwable
{
// public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
// 每次方法调用都从 OssService 获取当前客户端
// // 每次方法调用都从 OssService 获取当前客户端
OSS
currentClient
=
ossService
.
getOssClient
();
// OSS currentClient = ossService.getOssClient();
return
method
.
invoke
(
currentClient
,
args
);
// return method.invoke(currentClient, args);
}
// }
}
//}
\ No newline at end of file
\ No newline at end of file
yd-oss-service/src/main/java/com/yd/oss/service/config/OssClientFactory.java
0 → 100644
View file @
06cbc20d
package
com
.
yd
.
oss
.
service
.
config
;
import
com.aliyun.oss.OSS
;
import
com.aliyun.oss.OSSClientBuilder
;
import
com.yd.oss.service.model.OssProvider
;
import
com.yd.oss.service.service.IOssProviderService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Component
;
@Component
public
class
OssClientFactory
{
@Autowired
private
IOssProviderService
ossProviderService
;
/**
* 根据服务商业务ID创建临时OSS客户端
* @param providerBizId 服务商业务ID
* @return OSS客户端(使用后必须调用shutdown())
*/
public
OSS
createOssClient
(
String
providerBizId
)
{
OssProvider
provider
=
ossProviderService
.
getProviderByBizId
(
providerBizId
);
return
new
OSSClientBuilder
().
build
(
provider
.
getEndpoint
(),
provider
.
getAccessKey
(),
provider
.
getSecretKey
()
);
}
/**
* 根据项目ID创建临时OSS客户端
* @param projectBizId 项目业务ID
* @return OSS客户端(使用后必须调用shutdown())
*/
public
OSS
createOssClientByProject
(
String
projectBizId
)
{
OssProvider
provider
=
ossProviderService
.
getProviderByProjectId
(
projectBizId
);
return
new
OSSClientBuilder
().
build
(
provider
.
getEndpoint
(),
provider
.
getAccessKey
(),
provider
.
getSecretKey
()
);
}
/**
* 直接根据OssProvider对象创建客户端(如果调用者已持有provider)
*/
public
OSS
createOssClient
(
OssProvider
provider
)
{
return
new
OSSClientBuilder
().
build
(
provider
.
getEndpoint
(),
provider
.
getAccessKey
(),
provider
.
getSecretKey
()
);
}
}
\ No newline at end of file
yd-oss-service/src/main/java/com/yd/oss/service/config/OssConfig.java
View file @
06cbc20d
...
@@ -39,22 +39,22 @@ public class OssConfig {
...
@@ -39,22 +39,22 @@ public class OssConfig {
}
}
}
}
// @Bean
// @Primary
// public OSS ossClient() {
// return new OSSClientBuilder().build(
// currentProvider.getEndpoint(),
// currentProvider.getAccessKey(),
// currentProvider.getSecretKey()
// );
// }
@Bean
@Bean
public
OSS
ossClient
(
OssService
ossService
)
{
@Primary
// 返回动态代理,每次调用都委托给 ossService.getOssClient()
public
OSS
ossClient
()
{
return
DynamicOssClientProxy
.
createProxy
(
ossService
);
return
new
OSSClientBuilder
().
build
(
currentProvider
.
getEndpoint
(),
currentProvider
.
getAccessKey
(),
currentProvider
.
getSecretKey
()
);
}
}
// @Bean
// public OSS ossClient(OssService ossService) {
// // 返回动态代理,每次调用都委托给 ossService.getOssClient()
// return DynamicOssClientProxy.createProxy(ossService);
// }
@Bean
@Bean
public
String
defaultBucket
()
{
public
String
defaultBucket
()
{
return
defaultBucket
;
return
defaultBucket
;
...
...
yd-oss-service/src/main/java/com/yd/oss/service/service/AppointmentExcelService.java
View file @
06cbc20d
...
@@ -6,5 +6,6 @@ public interface AppointmentExcelService {
...
@@ -6,5 +6,6 @@ public interface AppointmentExcelService {
String
exportAppointment
(
Map
<
String
,
Object
>
data
,
String
exportAppointment
(
Map
<
String
,
Object
>
data
,
String
templateType
,
String
templateType
,
String
appointmentBizId
);
String
appointmentBizId
,
String
projectBizId
);
}
}
yd-oss-service/src/main/java/com/yd/oss/service/service/impl/AliYunOssServiceImpl.java
View file @
06cbc20d
This diff is collapsed.
Click to expand it.
yd-oss-service/src/main/java/com/yd/oss/service/service/impl/AppointmentExcelServiceImpl.java
View file @
06cbc20d
...
@@ -40,7 +40,7 @@ public class AppointmentExcelServiceImpl implements AppointmentExcelService {
...
@@ -40,7 +40,7 @@ public class AppointmentExcelServiceImpl implements AppointmentExcelService {
* @param fileName
* @param fileName
* @return
* @return
*/
*/
public
String
exportAndUploadToOss
(
Map
<
String
,
Object
>
data
,
String
ossObjectKey
,
String
fileName
)
{
public
String
exportAndUploadToOss
(
Map
<
String
,
Object
>
data
,
String
ossObjectKey
,
String
fileName
,
String
projectBizId
)
{
File
tempFile
=
null
;
File
tempFile
=
null
;
File
processedFile
=
null
;
File
processedFile
=
null
;
...
@@ -301,12 +301,13 @@ public class AppointmentExcelServiceImpl implements AppointmentExcelService {
...
@@ -301,12 +301,13 @@ public class AppointmentExcelServiceImpl implements AppointmentExcelService {
@Override
@Override
public
String
exportAppointment
(
Map
<
String
,
Object
>
data
,
public
String
exportAppointment
(
Map
<
String
,
Object
>
data
,
String
templateType
,
String
templateType
,
String
appointmentBizId
)
{
String
appointmentBizId
,
String
projectBizId
)
{
// 获取模板信息
// 获取模板信息
FileProdDto
fileProdDto
=
iFileTemplateService
.
getFileProd
(
""
,
templateType
);
FileProdDto
fileProdDto
=
iFileTemplateService
.
getFileProd
(
""
,
templateType
);
// 生成文件名
// 生成文件名
String
fileName
=
"预约信息_"
+
appointmentBizId
+
"_"
+
System
.
currentTimeMillis
()
+
".xlsx"
;
String
fileName
=
"预约信息_"
+
appointmentBizId
+
"_"
+
System
.
currentTimeMillis
()
+
".xlsx"
;
// 导出并上传到OSS
// 导出并上传到OSS
return
exportAndUploadToOss
(
data
,
fileProdDto
.
getFileKey
(),
fileName
);
return
exportAndUploadToOss
(
data
,
fileProdDto
.
getFileKey
(),
fileName
,
projectBizId
);
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment