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
c9c8ac28
Commit
c9c8ac28
authored
Jan 09, 2026
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
oss-v1版本
parent
729ff8e6
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
123 additions
and
8 deletions
+123
-8
yd-oss-api/src/main/java/com/yd/oss/api/service/impl/ApiMaterialServiceImpl.java
+18
-0
yd-oss-feign/src/main/java/com/yd/oss/feign/response/ApiRelObjectMaterialPageResponse.java
+6
-0
yd-oss-service/src/main/java/com/yd/oss/service/handler/StringToListTypeHandler.java
+52
-0
yd-oss-service/src/main/java/com/yd/oss/service/model/OssFile.java
+1
-1
yd-oss-service/src/main/java/com/yd/oss/service/service/IRelObjectMaterialService.java
+2
-0
yd-oss-service/src/main/java/com/yd/oss/service/service/impl/RelObjectMaterialServiceImpl.java
+5
-0
yd-oss-service/src/main/resources/mappers/RelObjectMaterialMapper.xml
+39
-7
No files found.
yd-oss-api/src/main/java/com/yd/oss/api/service/impl/ApiMaterialServiceImpl.java
View file @
c9c8ac28
...
...
@@ -2,15 +2,19 @@ package com.yd.oss.api.service.impl;
import
com.yd.common.result.Result
;
import
com.yd.oss.api.service.ApiMaterialService
;
import
com.yd.oss.feign.dto.ApiMaterialDto
;
import
com.yd.oss.feign.request.ApiMaterialDownloadRequest
;
import
com.yd.oss.feign.request.ApiMaterialListRequest
;
import
com.yd.oss.feign.response.ApiMaterialDownloadResponse
;
import
com.yd.oss.feign.response.ApiMaterialListResponse
;
import
com.yd.oss.service.dto.MaterialDto
;
import
com.yd.oss.service.model.Material
;
import
com.yd.oss.service.model.RelObjectMaterial
;
import
com.yd.oss.service.service.CompressedFileService
;
import
com.yd.oss.service.service.IMaterialService
;
import
com.yd.oss.service.service.IRelObjectMaterialService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -28,6 +32,9 @@ public class ApiMaterialServiceImpl implements ApiMaterialService {
@Autowired
private
CompressedFileService
compressedFileService
;
@Autowired
private
IRelObjectMaterialService
iRelObjectMaterialService
;
/**
* 列表查询-材料基础信息
* @param request
...
...
@@ -54,6 +61,17 @@ public class ApiMaterialServiceImpl implements ApiMaterialService {
*/
@Override
public
Result
<
ApiMaterialDownloadResponse
>
downloadCompressedFile
(
ApiMaterialDownloadRequest
request
)
{
// if (StringUtils.isNotBlank(request.getObjectBizId())) {
// List<ApiMaterialDto> apiMaterialDtoList = new ArrayList<>();
// List<RelObjectMaterial> relObjectMaterialList = iRelObjectMaterialService.queryList(request.getObjectBizId());
// if (!CollectionUtils.isEmpty(relObjectMaterialList)) {
// List<String> materialBizIdList = relObjectMaterialList.stream().map(RelObjectMaterial::getMaterialBizId).collect(Collectors.toList());
//
// for (RelObjectMaterial relObjectMaterial : relObjectMaterialList) {
//
// }
// }
// }
return
compressedFileService
.
downloadCompressedFile
(
request
);
}
...
...
yd-oss-feign/src/main/java/com/yd/oss/feign/response/ApiRelObjectMaterialPageResponse.java
View file @
c9c8ac28
package
com
.
yd
.
oss
.
feign
.
response
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ApiRelObjectMaterialPageResponse
{
...
...
@@ -40,4 +41,9 @@ public class ApiRelObjectMaterialPageResponse {
*/
private
String
precautions
;
/**
* 文件URL列表(完整路径)
*/
private
List
<
String
>
fileUrlList
;
}
yd-oss-service/src/main/java/com/yd/oss/service/handler/StringToListTypeHandler.java
0 → 100644
View file @
c9c8ac28
package
com
.
yd
.
oss
.
service
.
handler
;
import
org.apache.ibatis.type.BaseTypeHandler
;
import
org.apache.ibatis.type.JdbcType
;
import
org.apache.ibatis.type.MappedTypes
;
import
java.sql.CallableStatement
;
import
java.sql.PreparedStatement
;
import
java.sql.ResultSet
;
import
java.sql.SQLException
;
import
java.util.Arrays
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@MappedTypes
(
List
.
class
)
public
class
StringToListTypeHandler
extends
BaseTypeHandler
<
List
<
String
>>
{
@Override
public
void
setNonNullParameter
(
PreparedStatement
ps
,
int
i
,
List
<
String
>
parameter
,
JdbcType
jdbcType
)
throws
SQLException
{
ps
.
setString
(
i
,
String
.
join
(
";"
,
parameter
));
}
@Override
public
List
<
String
>
getNullableResult
(
ResultSet
rs
,
String
columnName
)
throws
SQLException
{
String
value
=
rs
.
getString
(
columnName
);
return
convertStringToList
(
value
);
}
@Override
public
List
<
String
>
getNullableResult
(
ResultSet
rs
,
int
columnIndex
)
throws
SQLException
{
String
value
=
rs
.
getString
(
columnIndex
);
return
convertStringToList
(
value
);
}
@Override
public
List
<
String
>
getNullableResult
(
CallableStatement
cs
,
int
columnIndex
)
throws
SQLException
{
String
value
=
cs
.
getString
(
columnIndex
);
return
convertStringToList
(
value
);
}
private
List
<
String
>
convertStringToList
(
String
value
)
{
if
(
value
==
null
||
value
.
trim
().
isEmpty
())
{
return
Collections
.
emptyList
();
}
return
Arrays
.
stream
(
value
.
split
(
";"
))
.
map
(
String:
:
trim
)
.
filter
(
s
->
!
s
.
isEmpty
())
.
collect
(
Collectors
.
toList
());
}
}
\ No newline at end of file
yd-oss-service/src/main/java/com/yd/oss/service/model/OssFile.java
View file @
c9c8ac28
...
...
@@ -34,7 +34,7 @@ public class OssFile implements Serializable {
private
String
objectType
;
/**
* 对象所属表名(预约表、新单跟进表等)
* 对象所属表名(
对象材料关系表、
预约表、新单跟进表等)
*/
@TableField
(
"object_table_name"
)
private
String
objectTableName
;
...
...
yd-oss-service/src/main/java/com/yd/oss/service/service/IRelObjectMaterialService.java
View file @
c9c8ac28
...
...
@@ -25,4 +25,6 @@ public interface IRelObjectMaterialService extends IService<RelObjectMaterial> {
RelObjectMaterial
queryOne
(
String
relObjectMaterialBizId
);
Boolean
delByObjectBizId
(
String
objectBizId
);
List
<
RelObjectMaterial
>
queryList
(
String
objectBizId
);
}
yd-oss-service/src/main/java/com/yd/oss/service/service/impl/RelObjectMaterialServiceImpl.java
View file @
c9c8ac28
...
...
@@ -40,4 +40,9 @@ public class RelObjectMaterialServiceImpl extends ServiceImpl<RelObjectMaterialM
public
Boolean
delByObjectBizId
(
String
objectBizId
)
{
return
this
.
remove
(
new
LambdaQueryWrapper
<
RelObjectMaterial
>().
eq
(
RelObjectMaterial:
:
getObjectBizId
,
objectBizId
));
}
@Override
public
List
<
RelObjectMaterial
>
queryList
(
String
objectBizId
)
{
return
this
.
baseMapper
.
selectList
(
new
LambdaQueryWrapper
<
RelObjectMaterial
>().
eq
(
RelObjectMaterial:
:
getObjectBizId
,
objectBizId
));
}
}
yd-oss-service/src/main/resources/mappers/RelObjectMaterialMapper.xml
View file @
c9c8ac28
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yd.oss.service.dao.RelObjectMaterialMapper"
>
<!-- 结果映射 -->
<resultMap
id=
"RelObjectMaterialResponseMap"
type=
"com.yd.oss.feign.response.ApiRelObjectMaterialPageResponse"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"relObjectMaterialBizId"
column=
"rel_object_material_biz_id"
/>
<result
property=
"materialBizId"
column=
"material_biz_id"
/>
<result
property=
"status"
column=
"status"
/>
<result
property=
"dataPerson"
column=
"data_person"
/>
<result
property=
"dataType"
column=
"data_type"
/>
<result
property=
"precautions"
column=
"precautions"
/>
<!-- 使用类型处理器将分号分隔的字符串转换为List -->
<result
property=
"fileUrlList"
column=
"file_urls"
typeHandler=
"com.yd.oss.service.handler.StringToListTypeHandler"
/>
</resultMap>
<select
id=
"page"
resultType=
"com.yd.oss.feign.response.ApiRelObjectMaterialPageResponse"
>
select rom.id,rom.rel_object_material_biz_id,rom.material_biz_id,
rom.status,m.data_person,m.data_type,m.precautions
from rel_object_material rom
left join material m on m.material_biz_id = rom.material_biz_id and m.is_deleted = 0
<select
id=
"page"
resultMap=
"RelObjectMaterialResponseMap"
>
SELECT
rom.id,
rom.rel_object_material_biz_id,
rom.material_biz_id,
rom.status,
m.data_person,
m.data_type,
m.precautions,
GROUP_CONCAT(
CONCAT('https://', f.bucket_name, '.', p.endpoint, '/', f.file_key)
SEPARATOR ';'
) as file_urls
FROM rel_object_material rom
LEFT JOIN material m ON m.material_biz_id = rom.material_biz_id AND m.is_deleted = 0
LEFT JOIN oss_file f ON f.object_biz_id = rom.rel_object_material_biz_id
AND f.object_table_name = 'rel_object_material'
AND f.is_deleted = 0
LEFT JOIN oss_provider p ON p.provider_biz_id = f.provider_biz_id
AND p.is_active = 1
AND p.is_deleted = 0
<where>
<if
test=
"request.objectBizId != null and request.objectBizId != ''"
>
and
rom.object_biz_id = #{request.objectBizId}
AND
rom.object_biz_id = #{request.objectBizId}
</if>
and
rom.is_deleted = 0
AND
rom.is_deleted = 0
</where>
GROUP BY rom.id
</select>
</mapper>
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