Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
ims-ci-test
Commits
17f9fbcd
提交
17f9fbcd
authored
5月 22, 2023
作者:
xiaowang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
动态详情接口输出及时间类型配置
上级
3159f9b9
隐藏空白字符变更
内嵌
并排
正在显示
12 个修改的文件
包含
228 行增加
和
9 行删除
+228
-9
CommentAndReplyVO.java
.../java/com/mmc/csf/release/forum/vo/CommentAndReplyVO.java
+4
-1
DynamicVO.java
...src/main/java/com/mmc/csf/release/forum/vo/DynamicVO.java
+7
-0
GlobalFormDateConvert.java
...ava/com/mmc/csf/release/config/GlobalFormDateConvert.java
+71
-0
GlobalJsonDateConvert.java
...ava/com/mmc/csf/release/config/GlobalJsonDateConvert.java
+61
-0
DynamicController.java
...ava/com/mmc/csf/release/controller/DynamicController.java
+8
-1
FlyerTrainingController.java
...m/mmc/csf/release/controller/FlyerTrainingController.java
+0
-2
DynamicDAO.java
...ice/src/main/java/com/mmc/csf/release/dao/DynamicDAO.java
+16
-0
ForumDynamicDO.java
.../main/java/com/mmc/csf/release/entity/ForumDynamicDO.java
+1
-1
DynamicService.java
...main/java/com/mmc/csf/release/service/DynamicService.java
+10
-1
DynamicServiceImpl.java
.../com/mmc/csf/release/service/impl/DynamicServiceImpl.java
+28
-1
CommentMapper.xml
...service/src/main/resources/mapper/forum/CommentMapper.xml
+2
-1
DynamicMapper.xml
...service/src/main/resources/mapper/forum/DynamicMapper.xml
+20
-1
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/CommentAndReplyVO.java
浏览文件 @
17f9fbcd
...
@@ -7,6 +7,7 @@ import lombok.Data;
...
@@ -7,6 +7,7 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -25,11 +26,13 @@ public class CommentAndReplyVO implements Serializable {
...
@@ -25,11 +26,13 @@ public class CommentAndReplyVO implements Serializable {
private
Integer
dynamicId
;
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"父级评论id"
)
@ApiModelProperty
(
value
=
"父级评论id"
)
private
Integer
parentId
;
private
Integer
parentId
;
@ApiModelProperty
(
value
=
"
模拟用户id
"
)
@ApiModelProperty
(
value
=
"
动态发布人的id(后期返回用户头像昵称信息)
"
)
private
Integer
userId
;
private
Integer
userId
;
@ApiModelProperty
(
value
=
"评论内容"
)
@ApiModelProperty
(
value
=
"评论内容"
)
private
String
content
;
private
String
content
;
@ApiModelProperty
(
value
=
"评论点赞数"
)
@ApiModelProperty
(
value
=
"评论点赞数"
)
private
Integer
likesCount
;
private
Integer
likesCount
;
@ApiModelProperty
(
value
=
"评论时间"
)
private
Date
createTime
;
private
List
<
CommentAndReplyVO
>
children
;
private
List
<
CommentAndReplyVO
>
children
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/DynamicVO.java
浏览文件 @
17f9fbcd
...
@@ -8,6 +8,9 @@ import lombok.NoArgsConstructor;
...
@@ -8,6 +8,9 @@ import lombok.NoArgsConstructor;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
/**
/**
* @Author LW
* @Author LW
* @date 2023/5/15 10:29
* @date 2023/5/15 10:29
...
@@ -40,4 +43,8 @@ public class DynamicVO implements Serializable {
...
@@ -40,4 +43,8 @@ public class DynamicVO implements Serializable {
private
Integer
commentCount
;
private
Integer
commentCount
;
@ApiModelProperty
(
value
=
"是否点赞"
)
@ApiModelProperty
(
value
=
"是否点赞"
)
private
Boolean
likes
;
private
Boolean
likes
;
@ApiModelProperty
(
value
=
"动态发布时间"
)
private
Date
dynamicPublishTime
;
@ApiModelProperty
(
value
=
"评论信息"
)
private
List
<
CommentAndReplyVO
>
commentAndReplyVO
;
}
}
release-service/src/main/java/com/mmc/csf/release/config/GlobalFormDateConvert.java
0 → 100644
浏览文件 @
17f9fbcd
package
com
.
mmc
.
csf
.
release
.
config
;
import
org.springframework.core.convert.converter.Converter
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.StringUtils
;
import
java.text.DateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
//Converter<S,T> S: 代表的是源,将要转换的数据类型 T:目标类型,将会转成什么数据类型
@Component
public
class
GlobalFormDateConvert
implements
Converter
<
String
,
Date
>
{
// 静态初始化定义日期字符串参数列表(需要转换的)
private
static
final
List
<
String
>
paramList
=
new
ArrayList
<>();
// 静态初始化可能初夏你的日期格式
private
static
final
String
param1
=
"yyyy-MM"
;
private
static
final
String
param2
=
"yyyy-MM-dd"
;
private
static
final
String
param3
=
"yyyy-MM-dd HH:mm"
;
private
static
final
String
param4
=
"yyyy-MM-dd HH:mm:ss"
;
// 静态代码块,将日期参数加入到列表中
static
{
paramList
.
add
(
param1
);
paramList
.
add
(
param2
);
paramList
.
add
(
param3
);
paramList
.
add
(
param4
);
}
// 自定义函数,将字符串转Date 参1:传入的日期字符串 参2:格式参数
public
Date
parseDate
(
String
source
,
String
format
)
{
System
.
out
.
println
(
"parseDate转换日期"
);
Date
date
=
null
;
try
{
// 日期格式转换器
DateFormat
dateFormat
=
new
SimpleDateFormat
(
format
);
date
=
dateFormat
.
parse
(
source
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
date
;
}
// convert转换方法 ,s是将会传递过来的日期的字符串
@Override
public
Date
convert
(
String
source
)
{
System
.
out
.
println
(
"convert日期格式转换器"
);
if
(
StringUtils
.
isEmpty
(
source
))
{
return
null
;
}
source
=
source
.
trim
();
// 去除首尾空格
// 正则表达式判断是哪一种格式参数
if
(
source
.
matches
(
"^\\d{4}-\\d{1,2}$"
))
{
return
parseDate
(
source
,
paramList
.
get
(
0
));
}
else
if
(
source
.
matches
(
"^\\d{4}-\\d{1,2}-\\d{1,2}$"
))
{
return
parseDate
(
source
,
paramList
.
get
(
1
));
}
else
if
(
source
.
matches
(
"^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}$"
))
{
return
parseDate
(
source
,
paramList
.
get
(
2
));
}
else
if
(
source
.
matches
(
"^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}:\\d{1,2}$"
))
{
return
parseDate
(
source
,
paramList
.
get
(
3
));
}
else
{
throw
new
IllegalArgumentException
(
"还未定义该种字符串转Date的日期转换格式 --> 【日期格式】:"
+
source
);
}
}
}
release-service/src/main/java/com/mmc/csf/release/config/GlobalJsonDateConvert.java
0 → 100644
浏览文件 @
17f9fbcd
package
com
.
mmc
.
csf
.
release
.
config
;
import
com.fasterxml.jackson.databind.util.StdDateFormat
;
import
org.springframework.util.StringUtils
;
import
java.text.FieldPosition
;
import
java.text.ParsePosition
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
public
class
GlobalJsonDateConvert
extends
StdDateFormat
{
private
static
final
long
serialVersionUID
=
-
6738131740618766141L
;
// 静态初始化final,共享
public
static
final
GlobalJsonDateConvert
instance
=
new
GlobalJsonDateConvert
();
// 覆盖parse(String)这个方法即可实现
@Override
public
Date
parse
(
String
dateStr
,
ParsePosition
pos
)
{
return
getDate
(
dateStr
,
pos
);
}
@Override
public
Date
parse
(
String
dateStr
)
{
ParsePosition
pos
=
new
ParsePosition
(
0
);
return
getDate
(
dateStr
,
pos
);
}
private
Date
getDate
(
String
dateStr
,
ParsePosition
pos
)
{
SimpleDateFormat
sdf
=
null
;
if
(
StringUtils
.
isEmpty
(
dateStr
))
{
return
null
;
}
else
if
(
dateStr
.
matches
(
"^\\d{4}-\\d{1,2}$"
))
{
sdf
=
new
SimpleDateFormat
(
"yyyy-MM"
);
return
sdf
.
parse
(
dateStr
,
pos
);
}
else
if
(
dateStr
.
matches
(
"^\\d{4}-\\d{1,2}-\\d{1,2}$"
))
{
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd"
);
return
sdf
.
parse
(
dateStr
,
pos
);
}
else
if
(
dateStr
.
matches
(
"^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}$"
))
{
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm"
);
return
sdf
.
parse
(
dateStr
,
pos
);
}
else
if
(
dateStr
.
matches
(
"^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}:\\d{1,2}$"
))
{
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
return
sdf
.
parse
(
dateStr
,
pos
);
}
else
if
(
dateStr
.
length
()
==
23
)
{
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss.SSS"
);
return
sdf
.
parse
(
dateStr
,
pos
);
}
return
super
.
parse
(
dateStr
,
pos
);
}
@Override
public
StringBuffer
format
(
Date
date
,
StringBuffer
toAppendTo
,
FieldPosition
fieldPosition
)
{
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
return
sdf
.
format
(
date
,
toAppendTo
,
fieldPosition
);
}
@Override
public
GlobalJsonDateConvert
clone
()
{
return
new
GlobalJsonDateConvert
();
}
}
release-service/src/main/java/com/mmc/csf/release/controller/DynamicController.java
浏览文件 @
17f9fbcd
...
@@ -58,10 +58,17 @@ public class DynamicController {
...
@@ -58,10 +58,17 @@ public class DynamicController {
return
ResultBody
.
success
(
dynamicService
.
getCommentAndReply
(
dynamicId
));
return
ResultBody
.
success
(
dynamicService
.
getCommentAndReply
(
dynamicId
));
}
}
@ApiOperation
(
value
=
"动态详情"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@GetMapping
(
"/dynamicDetails"
)
public
ResultBody
dynamicDetails
(
@RequestParam
Integer
dynamicId
,
@RequestParam
Integer
userId
)
{
return
ResultBody
.
success
(
dynamicService
.
dynamicDetails
(
dynamicId
,
userId
));
}
@ApiOperation
(
value
=
"动态列表"
)
@ApiOperation
(
value
=
"动态列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@GetMapping
(
"/dynamicList"
)
@GetMapping
(
"/dynamicList"
)
public
ResultBody
dynamicList
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
Integer
userId
)
{
public
ResultBody
dynamicList
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
Integer
userId
)
{
return
ResultBody
.
success
(
dynamicService
.
dynamicList
(
pageNo
,
pageSize
,
userId
));
return
ResultBody
.
success
(
dynamicService
.
dynamicList
(
pageNo
,
pageSize
,
userId
));
}
}
}
}
release-service/src/main/java/com/mmc/csf/release/controller/FlyerTrainingController.java
浏览文件 @
17f9fbcd
...
@@ -7,8 +7,6 @@ import com.mmc.csf.release.service.FlyerTrainingService;
...
@@ -7,8 +7,6 @@ import com.mmc.csf.release.service.FlyerTrainingService;
import
com.mmc.csf.release.flyer.vo.DronePilotLicenseVO
;
import
com.mmc.csf.release.flyer.vo.DronePilotLicenseVO
;
import
com.mmc.csf.release.flyer.vo.FlightSkillsVO
;
import
com.mmc.csf.release.flyer.vo.FlightSkillsVO
;
import
com.mmc.csf.release.flyer.vo.RegistrationVO
;
import
com.mmc.csf.release.flyer.vo.RegistrationVO
;
import
com.mmc.csf.release.task.qo.TaskServiceQo
;
import
com.mmc.csf.release.task.vo.TaskServiceVO
;
import
io.swagger.annotations.*
;
import
io.swagger.annotations.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
...
...
release-service/src/main/java/com/mmc/csf/release/dao/DynamicDAO.java
浏览文件 @
17f9fbcd
...
@@ -103,4 +103,20 @@ public interface DynamicDAO {
...
@@ -103,4 +103,20 @@ public interface DynamicDAO {
* @return {@link List}<{@link ForumVideoDO}>
* @return {@link List}<{@link ForumVideoDO}>
*/
*/
List
<
ForumVideoDO
>
listDynamicVideo
(
List
<
Integer
>
ids
);
List
<
ForumVideoDO
>
listDynamicVideo
(
List
<
Integer
>
ids
);
/**
* 动态图片
*
* @param dynamicId 动态id
* @return {@link List}<{@link ForumImageDO}>
*/
List
<
ForumImageDO
>
dynamicPicture
(
Integer
dynamicId
);
/**
* 动态视频
*
* @param dynamicId 动态id
* @return {@link ForumVideoDO}
*/
ForumVideoDO
dynamicVideo
(
Integer
dynamicId
);
}
}
release-service/src/main/java/com/mmc/csf/release/entity/ForumDynamicDO.java
浏览文件 @
17f9fbcd
...
@@ -88,7 +88,7 @@ public class ForumDynamicDO implements Serializable {
...
@@ -88,7 +88,7 @@ public class ForumDynamicDO implements Serializable {
return
DynamicVO
.
builder
().
id
(
id
).
description
(
description
)
return
DynamicVO
.
builder
().
id
(
id
).
description
(
description
)
.
commentCount
(
commentsCount
).
likesCount
(
likesCount
)
.
commentCount
(
commentsCount
).
likesCount
(
likesCount
)
.
lat
(
lat
).
lon
(
lon
).
location
(
location
).
title
(
title
)
.
lat
(
lat
).
lon
(
lon
).
location
(
location
).
title
(
title
)
.
userId
(
userId
).
build
();
.
userId
(
userId
).
dynamicPublishTime
(
createTime
).
build
();
}
}
}
}
release-service/src/main/java/com/mmc/csf/release/service/DynamicService.java
浏览文件 @
17f9fbcd
...
@@ -53,7 +53,7 @@ public interface DynamicService {
...
@@ -53,7 +53,7 @@ public interface DynamicService {
* @param dynamicId 动态id
* @param dynamicId 动态id
* @return {@link List}<{@link CommentVO}>
* @return {@link List}<{@link CommentVO}>
*/
*/
List
<
CommentAndReplyVO
>
getCommentAndReply
(
int
dynamicId
);
List
<
CommentAndReplyVO
>
getCommentAndReply
(
Integer
dynamicId
);
/**
/**
* 动态列表
* 动态列表
...
@@ -64,4 +64,13 @@ public interface DynamicService {
...
@@ -64,4 +64,13 @@ public interface DynamicService {
* @return {@link List}<{@link DynamicVO}>
* @return {@link List}<{@link DynamicVO}>
*/
*/
PageResult
dynamicList
(
Integer
pageNo
,
Integer
pageSize
,
Integer
userId
);
PageResult
dynamicList
(
Integer
pageNo
,
Integer
pageSize
,
Integer
userId
);
/**
* 动态细节
*
* @param dynamicId 动态id
* @param userId 用户id
* @return {@link ResultBody}
*/
ResultBody
dynamicDetails
(
Integer
dynamicId
,
Integer
userId
);
}
}
release-service/src/main/java/com/mmc/csf/release/service/impl/DynamicServiceImpl.java
浏览文件 @
17f9fbcd
...
@@ -97,7 +97,7 @@ public class DynamicServiceImpl implements DynamicService {
...
@@ -97,7 +97,7 @@ public class DynamicServiceImpl implements DynamicService {
}
}
@Override
@Override
public
List
<
CommentAndReplyVO
>
getCommentAndReply
(
int
dynamicId
)
{
public
List
<
CommentAndReplyVO
>
getCommentAndReply
(
Integer
dynamicId
)
{
// 获取评论列表
// 获取评论列表
List
<
CommentAndReplyVO
>
commentList
=
commentDAO
.
selectCommentList
(
dynamicId
);
List
<
CommentAndReplyVO
>
commentList
=
commentDAO
.
selectCommentList
(
dynamicId
);
List
<
CommentAndReplyVO
>
topLevelComment
=
new
ArrayList
<>();
List
<
CommentAndReplyVO
>
topLevelComment
=
new
ArrayList
<>();
...
@@ -155,4 +155,31 @@ public class DynamicServiceImpl implements DynamicService {
...
@@ -155,4 +155,31 @@ public class DynamicServiceImpl implements DynamicService {
}).
collect
(
Collectors
.
toList
());
}).
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
dynamicVOList
);
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
dynamicVOList
);
}
}
@Override
public
ResultBody
dynamicDetails
(
Integer
dynamicId
,
Integer
userId
)
{
// 判断此动态是否还存在
ForumDynamicDO
dynamicInfo
=
dynamicDAO
.
getDynamicInfo
(
dynamicId
);
if
(
dynamicInfo
==
null
)
{
return
ResultBody
.
error
(
"动态不存在或已删除!"
);
}
// 获取图片视频
List
<
ForumImageDO
>
forumImage
=
dynamicDAO
.
dynamicPicture
(
dynamicId
);
ForumVideoDO
forumVideoDO
=
dynamicDAO
.
dynamicVideo
(
dynamicId
);
MediaVO
mediaVO
=
new
MediaVO
();
if
(
forumVideoDO
!=
null
)
{
mediaVO
.
setVideoUrl
(
forumVideoDO
.
getUrl
());
}
if
(
CollectionUtils
.
isNotEmpty
(
forumImage
))
{
mediaVO
.
setPicture
(
forumImage
.
stream
().
map
(
ForumImageDO:
:
getUrl
).
collect
(
Collectors
.
toList
()));
}
DynamicVO
dynamicVO
=
dynamicInfo
.
buildDynamicVO
();
// 设置是否点赞
boolean
liked
=
likeDAO
.
isLiked
(
userId
,
dynamicId
);
dynamicVO
.
setLikes
(
liked
);
// 设置评论信息
dynamicVO
.
setCommentAndReplyVO
(
this
.
getCommentAndReply
(
dynamicId
));
dynamicVO
.
setMediaVO
(
mediaVO
);
return
ResultBody
.
success
(
dynamicVO
);
}
}
}
release-service/src/main/resources/mapper/forum/CommentMapper.xml
浏览文件 @
17f9fbcd
...
@@ -28,7 +28,8 @@
...
@@ -28,7 +28,8 @@
user_id,
user_id,
dynamic_id,
dynamic_id,
content,
content,
likes_count
likes_count,
create_time
from forum_comment
from forum_comment
where dynamic_id = #{dynamicId} and is_deleted = 0
where dynamic_id = #{dynamicId} and is_deleted = 0
</select>
</select>
...
...
release-service/src/main/resources/mapper/forum/DynamicMapper.xml
浏览文件 @
17f9fbcd
...
@@ -47,9 +47,11 @@
...
@@ -47,9 +47,11 @@
lat,
lat,
lon,
lon,
likes_count,
likes_count,
comments_count
comments_count,
create_time
from forum_dynamic
from forum_dynamic
where id = #{dynamicId}
where id = #{dynamicId}
and is_deleted = 0
</select>
</select>
<select
id=
"countDynamicList"
resultType=
"java.lang.Integer"
>
<select
id=
"countDynamicList"
resultType=
"java.lang.Integer"
>
select count(*)
select count(*)
...
@@ -91,4 +93,20 @@
...
@@ -91,4 +93,20 @@
#{item}
#{item}
</foreach>
</foreach>
</select>
</select>
<select
id=
"dynamicPicture"
resultType=
"com.mmc.csf.release.entity.ForumImageDO"
>
select id,
dynamic_id,
url
from forum_image
where dynamic_id = #{dynamicId}
and is_deleted = 0
</select>
<select
id=
"dynamicVideo"
resultType=
"com.mmc.csf.release.entity.ForumVideoDO"
>
select id,
dynamic_id,
url
from forum_video
where dynamic_id = #{dynamicId}
and is_deleted = 0
</select>
</mapper>
</mapper>
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论