Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
ims
Commits
d6ccf1f1
提交
d6ccf1f1
authored
9月 18, 2023
作者:
张小凤
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
GambitDao(add)
上级
f99996f3
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
38 个修改的文件
包含
1899 行增加
和
37 行删除
+1899
-37
UserAccountSimpleDTO.java
...java/com/mmc/csf/infomation/dto/UserAccountSimpleDTO.java
+7
-0
CommentVO.java
...src/main/java/com/mmc/csf/release/forum/vo/CommentVO.java
+19
-4
DynamicVO.java
...src/main/java/com/mmc/csf/release/forum/vo/DynamicVO.java
+16
-0
ReplyToAReviewVO.java
...n/java/com/mmc/csf/release/forum/vo/ReplyToAReviewVO.java
+37
-0
UserBaseInfoVO.java
...ain/java/com/mmc/csf/release/forum/vo/UserBaseInfoVO.java
+3
-0
ForumGambitDTO.java
...n/java/com/mmc/csf/release/gambit/dto/ForumGambitDTO.java
+54
-0
AllReviewQO.java
.../main/java/com/mmc/csf/release/gambit/qo/AllReviewQO.java
+45
-0
AppReplyQO.java
...c/main/java/com/mmc/csf/release/gambit/qo/AppReplyQO.java
+48
-0
ForumGambitQO.java
...ain/java/com/mmc/csf/release/gambit/qo/ForumGambitQO.java
+51
-0
TopicDynamicsQO.java
...n/java/com/mmc/csf/release/gambit/qo/TopicDynamicsQO.java
+45
-0
UserTopicDynamicsQO.java
...va/com/mmc/csf/release/gambit/qo/UserTopicDynamicsQO.java
+44
-0
ForumGambitVO.java
...ain/java/com/mmc/csf/release/gambit/vo/ForumGambitVO.java
+52
-0
UserAccountVO.java
...odel/src/main/java/com/mmc/csf/user/vo/UserAccountVO.java
+11
-2
DynamicController.java
...ava/com/mmc/csf/release/controller/DynamicController.java
+38
-10
GambitController.java
...java/com/mmc/csf/release/controller/GambitController.java
+153
-0
DynamicDao.java
...ice/src/main/java/com/mmc/csf/release/dao/DynamicDao.java
+42
-3
GambitDao.java
...c/main/java/com/mmc/csf/release/dao/gambit/GambitDao.java
+117
-0
DynamicGambitDO.java
...ava/com/mmc/csf/release/entity/forum/DynamicGambitDO.java
+40
-0
ForumCountDO.java
...n/java/com/mmc/csf/release/entity/forum/ForumCountDO.java
+43
-0
ForumDynamicDO.java
...java/com/mmc/csf/release/entity/forum/ForumDynamicDO.java
+29
-0
ForumDynamicGambitDO.java
...om/mmc/csf/release/entity/forum/ForumDynamicGambitDO.java
+53
-0
ForumDynamicUserDO.java
.../com/mmc/csf/release/entity/forum/ForumDynamicUserDO.java
+81
-0
ForumFirstLevelReviewDO.java
...mmc/csf/release/entity/forum/ForumFirstLevelReviewDO.java
+48
-0
ForumReviewDO.java
.../java/com/mmc/csf/release/entity/forum/ForumReviewDO.java
+52
-0
ForumTwoLevelReviewDO.java
...m/mmc/csf/release/entity/forum/ForumTwoLevelReviewDO.java
+54
-0
MyAttentionDO.java
.../java/com/mmc/csf/release/entity/forum/MyAttentionDO.java
+37
-0
MyFansDO.java
.../main/java/com/mmc/csf/release/entity/forum/MyFansDO.java
+37
-0
ForumAttentionDO.java
...a/com/mmc/csf/release/entity/gambit/ForumAttentionDO.java
+37
-0
ForumGambitDO.java
...java/com/mmc/csf/release/entity/gambit/ForumGambitDO.java
+85
-0
MqConsumer.java
...main/java/com/mmc/csf/release/mq/listener/MqConsumer.java
+1
-0
DynamicService.java
...main/java/com/mmc/csf/release/service/DynamicService.java
+9
-0
GambitService.java
...ava/com/mmc/csf/release/service/gambit/GambitService.java
+43
-0
GambitServiceImpl.java
...mc/csf/release/service/gambit/impl/GambitServiceImpl.java
+241
-0
BackstageForumServiceImpl.java
...c/csf/release/service/impl/BackstageForumServiceImpl.java
+37
-6
DynamicServiceImpl.java
.../com/mmc/csf/release/service/impl/DynamicServiceImpl.java
+0
-0
DynamicMapper.xml
...service/src/main/resources/mapper/forum/DynamicMapper.xml
+189
-12
GambitDao.xml
...se-service/src/main/resources/mapper/gambit/GambitDao.xml
+0
-0
not-check.yml
release-service/src/main/resources/not-check.yml
+1
-0
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/dto/UserAccountSimpleDTO.java
浏览文件 @
d6ccf1f1
...
...
@@ -8,6 +8,7 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
...
...
@@ -50,4 +51,10 @@ public class UserAccountSimpleDTO implements Serializable {
private
Integer
companyAuthStatus
;
@ApiModelProperty
(
value
=
"用户合作标签"
)
private
List
<
CooperationTagVO
>
cooperationTagVOS
;
@ApiModelProperty
(
value
=
"地区"
)
private
String
region
;
@ApiModelProperty
(
value
=
"个人简介"
)
private
String
briefIntroduction
;
@ApiModelProperty
(
value
=
"封面背景图"
)
private
String
coverPicture
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/CommentVO.java
浏览文件 @
d6ccf1f1
...
...
@@ -18,12 +18,27 @@ import java.io.Serializable;
@AllArgsConstructor
@Builder
public
class
CommentVO
implements
Serializable
{
@ApiModelProperty
(
value
=
"根节点路径"
)
private
String
rootPath
;
@ApiModelProperty
(
value
=
"动态id"
)
@ApiModelProperty
(
value
=
"动态id"
,
example
=
"1"
)
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"评论内容"
)
@ApiModelProperty
(
value
=
"评论内容"
,
example
=
"你好"
)
private
String
content
;
@ApiModelProperty
(
value
=
"评论id(注意:单纯评论就为0 ,有回复就评论id) "
,
example
=
"0"
)
private
Integer
reviewId
;
@ApiModelProperty
(
value
=
"用户id"
,
hidden
=
true
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"pid(注意:单纯评论就为0,有回复就上级id)"
,
example
=
"0"
)
private
Integer
pid
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/DynamicVO.java
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
forum
.
vo
;
import
com.mmc.csf.release.model.group.Create
;
import
com.mmc.csf.release.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotBlank
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
...
...
@@ -21,6 +24,19 @@ import java.util.List;
@AllArgsConstructor
@Builder
public
class
DynamicVO
implements
Serializable
{
@ApiModelProperty
(
value
=
"话题名称"
,
example
=
"#深圳暴雨,#深圳大雨"
)
private
List
<
String
>
gambitName
;
@ApiModelProperty
(
value
=
"话题图标"
,
example
=
"小程序给默认值"
)
@NotBlank
(
message
=
"话题图标不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitIcon
;
@ApiModelProperty
(
value
=
"话题封面"
,
example
=
"小程序给默认封面"
)
@NotBlank
(
message
=
"话题封面不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitCover
;
@ApiModelProperty
(
value
=
"发布动态用户信息"
)
private
UserBaseInfoVO
userBaseInfo
;
...
...
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/ReplyToAReviewVO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
forum
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/9/16 17:30
* @Version 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
ReplyToAReviewVO
{
@ApiModelProperty
(
value
=
"动态id"
,
example
=
"172"
)
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"评论内容"
,
example
=
"内容"
)
private
String
content
;
@ApiModelProperty
(
value
=
"被回复者用户id"
)
private
Integer
replyUserAccountId
;
@ApiModelProperty
(
value
=
"被回复的一级用户"
)
private
Integer
replyOneUserAccountId
;
@ApiModelProperty
(
value
=
"被回复的二级用户"
)
private
Integer
replyTwoUserAccountId
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/UserBaseInfoVO.java
浏览文件 @
d6ccf1f1
...
...
@@ -30,4 +30,7 @@ public class UserBaseInfoVO implements Serializable {
@ApiModelProperty
(
value
=
"UID"
)
private
String
uid
;
@ApiModelProperty
(
value
=
"地区"
)
private
String
region
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/gambit/dto/ForumGambitDTO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
gambit
.
dto
;
import
com.mmc.csf.release.model.group.Create
;
import
com.mmc.csf.release.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/13 17:57
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
ForumGambitDTO
{
@NotNull
(
message
=
"话题id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"话题名称"
,
example
=
"深圳暴雨"
)
@NotBlank
(
message
=
"话题不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitName
;
@ApiModelProperty
(
value
=
"话题图标"
,
example
=
"http:"
)
@NotBlank
(
message
=
"话题图标不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitIcon
;
@ApiModelProperty
(
value
=
"话题封面"
,
example
=
"http:"
)
@NotBlank
(
message
=
"话题封面不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitCover
;
@ApiModelProperty
(
value
=
"话题属性"
,
example
=
"话题属性 1普通 2热门 3推荐 "
)
@NotNull
(
message
=
"话题属性不能为空"
)
private
Integer
gambitProperty
;
@ApiModelProperty
(
value
=
"发贴用户"
,
example
=
"1"
,
hidden
=
true
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"贴子数"
,
example
=
"2"
)
private
Integer
postCount
;
@ApiModelProperty
(
value
=
"话题参与讨论数量"
,
example
=
"1"
)
private
Integer
discussionCount
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/gambit/qo/AllReviewQO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
gambit
.
qo
;
import
com.mmc.csf.release.model.group.Freeze
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/18 14:22
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
AllReviewQO
{
@ApiModelProperty
(
value
=
"页码"
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageNo不能少于1"
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageSize不能少于1"
)
private
Integer
pageSize
;
@ApiModelProperty
(
value
=
"动态id"
,
example
=
"1"
)
private
String
dynamicId
;
/**
* 初始化起始查询行并返回当前页
*/
public
Integer
buildCurrentPage
()
{
Integer
pageNo
=
this
.
pageNo
;
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
return
pageNo
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/gambit/qo/AppReplyQO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
gambit
.
qo
;
import
com.mmc.csf.release.model.group.Freeze
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/18 14:34
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
AppReplyQO
{
@ApiModelProperty
(
value
=
"页码"
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageNo不能少于1"
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageSize不能少于1"
)
private
Integer
pageSize
;
@ApiModelProperty
(
value
=
"评论id"
,
example
=
"1"
)
private
String
id
;
@ApiModelProperty
(
value
=
"动态id"
,
example
=
"1"
)
private
Integer
dynamicId
;
/**
* 初始化起始查询行并返回当前页
*/
public
Integer
buildCurrentPage
()
{
Integer
pageNo
=
this
.
pageNo
;
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
return
pageNo
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/gambit/qo/ForumGambitQO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
gambit
.
qo
;
import
com.mmc.csf.release.model.group.Freeze
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/13 18:00
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ForumGambitQO
{
@ApiModelProperty
(
value
=
"页码"
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageNo不能少于1"
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageSize不能少于1"
)
private
Integer
pageSize
;
@ApiModelProperty
(
value
=
"话题名称"
,
example
=
"深圳暴雨"
)
private
String
gambitName
;
@ApiModelProperty
(
value
=
"话题属性"
,
example
=
"话题属性 1普通 2热门 3推荐 "
)
private
Integer
gambitProperty
;
/**
* 初始化起始查询行并返回当前页
*/
public
Integer
buildCurrentPage
()
{
Integer
pageNo
=
this
.
pageNo
;
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
return
pageNo
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/gambit/qo/TopicDynamicsQO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
gambit
.
qo
;
import
com.mmc.csf.release.model.group.Freeze
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/18 11:01
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
TopicDynamicsQO
{
@ApiModelProperty
(
value
=
"页码"
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageNo不能少于1"
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageSize不能少于1"
)
private
Integer
pageSize
;
@ApiModelProperty
(
value
=
"话题id"
,
example
=
"1"
)
private
Integer
gambitId
;
/**
* 初始化起始查询行并返回当前页
*/
public
Integer
buildCurrentPage
()
{
Integer
pageNo
=
this
.
pageNo
;
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
return
pageNo
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/gambit/qo/UserTopicDynamicsQO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
gambit
.
qo
;
import
com.mmc.csf.release.model.group.Freeze
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/18 14:49
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
UserTopicDynamicsQO
{
@ApiModelProperty
(
value
=
"页码"
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageNo不能少于1"
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
,
Freeze
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
,
message
=
"pageSize不能少于1"
)
private
Integer
pageSize
;
@ApiModelProperty
(
value
=
"用户id"
,
example
=
"1"
)
private
Integer
userAccountId
;
/**
* 初始化起始查询行并返回当前页
*/
public
Integer
buildCurrentPage
()
{
Integer
pageNo
=
this
.
pageNo
;
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
return
pageNo
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/gambit/vo/ForumGambitVO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
gambit
.
vo
;
import
com.mmc.csf.release.model.group.Create
;
import
com.mmc.csf.release.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/13 15:43
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
ForumGambitVO
{
@NotNull
(
message
=
"话题id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"话题名称"
,
example
=
"深圳暴雨"
)
@NotBlank
(
message
=
"话题不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitName
;
@ApiModelProperty
(
value
=
"话题图标"
,
example
=
"http:"
)
@NotBlank
(
message
=
"话题图标不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitIcon
;
@ApiModelProperty
(
value
=
"话题封面"
,
example
=
"http:"
)
@NotBlank
(
message
=
"话题封面不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitCover
;
@ApiModelProperty
(
value
=
"话题属性"
,
example
=
"话题属性 1普通 2热门 3推荐 "
)
@NotNull
(
message
=
"话题属性不能为空"
)
private
Integer
gambitProperty
;
@ApiModelProperty
(
value
=
"发贴用户"
,
example
=
"1"
,
hidden
=
true
)
private
Integer
userAccountId
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/user/vo/UserAccountVO.java
浏览文件 @
d6ccf1f1
...
...
@@ -10,6 +10,7 @@ import lombok.NoArgsConstructor;
import
javax.validation.constraints.Email
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
...
...
@@ -24,8 +25,8 @@ public class UserAccountVO implements Serializable {
@ApiModelProperty
(
value
=
"用户id"
)
@NotNull
(
message
=
"用户id不能为空"
,
groups
=
{
Update
.
class
})
message
=
"用户id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户类型"
)
...
...
@@ -85,4 +86,12 @@ public class UserAccountVO implements Serializable {
@ApiModelProperty
(
value
=
"是否删除"
)
private
Integer
deleted
;
@ApiModelProperty
(
value
=
"地区"
)
private
String
region
;
@ApiModelProperty
(
value
=
"个人简介"
)
private
String
briefIntroduction
;
@ApiModelProperty
(
value
=
"封面背景图"
)
private
String
coverPicture
;
}
release-service/src/main/java/com/mmc/csf/release/controller/DynamicController.java
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
controller
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.release.dao.gambit.GambitDao
;
import
com.mmc.csf.release.entity.forum.ForumDynamicUserDO
;
import
com.mmc.csf.release.forum.vo.CommentVO
;
import
com.mmc.csf.release.forum.vo.DynamicVO
;
import
com.mmc.csf.release.forum.vo.ReplyToAReviewVO
;
import
com.mmc.csf.release.gambit.dto.ForumGambitDTO
;
import
com.mmc.csf.release.gambit.qo.ForumGambitQO
;
import
com.mmc.csf.release.gambit.vo.ForumGambitVO
;
import
com.mmc.csf.release.service.DynamicService
;
import
io.swagger.annotations.*
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -26,8 +33,7 @@ public class DynamicController extends BaseController {
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"/publish"
)
public
ResultBody
publishDynamic
(
@RequestBody
DynamicVO
dynamicVO
,
HttpServletRequest
request
)
{
return
dynamicService
.
insertDynamic
(
dynamicVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
request
);
return
dynamicService
.
insertDynamic
(
dynamicVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
request
);
}
@ApiOperation
(
value
=
"点赞或取消点赞"
)
...
...
@@ -39,21 +45,28 @@ public class DynamicController extends BaseController {
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
dynamicId
);
}
@ApiOperation
(
value
=
"
评论动态或回复评论
"
)
@ApiOperation
(
value
=
"
update-评论动态/回复
"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"/comment"
)
public
ResultBody
commentDynamic
(
@RequestBody
CommentVO
commentVO
,
HttpServletRequest
request
)
{
return
dynamicService
.
commentDynamic
(
commentVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
request
);
return
dynamicService
.
commentDynamic
(
commentVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
request
);
}
@ApiOperation
(
value
=
"
删除评论
"
)
@
ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)}
)
@DeleteMapping
(
"/removeComment"
)
public
ResultBody
removeComment
(
@RequestParam
Integer
id
)
{
return
dynamicService
.
deleteComment
(
id
);
@ApiOperation
(
value
=
"
对评论/及回复的点赞或者取消
"
)
@
GetMapping
(
"/reviewLikes"
)
public
ResultBody
reviewLikes
(
@RequestParam
Integer
id
,
HttpServletRequest
request
,
@RequestParam
Boolean
status
){
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
return
dynamicService
.
reviewLikes
(
id
,
userAccountId
,
status
);
}
/* @ApiOperation(value = "删除评论")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@DeleteMapping("/removeComment")
public ResultBody removeComment(@RequestParam Integer id) {
return dynamicService.deleteComment(id);
}
*/
@ApiOperation
(
value
=
"动态详情"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@GetMapping
(
"/dynamicDetails"
)
...
...
@@ -71,4 +84,19 @@ public class DynamicController extends BaseController {
dynamicService
.
dynamicList
(
pageNo
,
pageSize
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
request
));
}
@ApiOperation
(
value
=
"new-小程序-返回最新5条带动态的图片"
)
@GetMapping
(
"/recentNews"
)
public
ResultBody
<
ForumDynamicUserDO
>
recentNewsList
(
@ApiParam
(
value
=
"用户id"
)
@RequestParam
(
required
=
false
)
Integer
userAccountId
){
return
dynamicService
.
recentNewsList
(
userAccountId
);
}
@ApiOperation
(
value
=
"new-小程序-话题列表"
)
@PostMapping
(
"/appGambitList"
)
public
ResultBody
<
ForumGambitDTO
>
appGambitList
(
@RequestBody
ForumGambitQO
forumGambitQO
){
return
ResultBody
.
success
(
dynamicService
.
appGambitList
(
forumGambitQO
));
}
}
release-service/src/main/java/com/mmc/csf/release/controller/GambitController.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
controller
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.release.entity.forum.ForumDynamicGambitDO
;
import
com.mmc.csf.release.entity.forum.ForumReviewDO
;
import
com.mmc.csf.release.gambit.dto.ForumGambitDTO
;
import
com.mmc.csf.release.gambit.qo.*
;
import
com.mmc.csf.release.gambit.vo.ForumGambitVO
;
import
com.mmc.csf.release.service.gambit.GambitService
;
import
io.swagger.annotations.*
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletRequest
;
/**
* @Author small
* @Date 2023/9/13 15:29
* @Version 1.0
*/
@Api
(
tags
=
{
"web-小程序-论坛社区-模块发布话题"
})
@RestController
@RequestMapping
(
"/gambit"
)
public
class
GambitController
extends
BaseController
{
@Autowired
private
GambitService
gambitService
;
@ApiOperation
(
value
=
"添加话题"
)
@PostMapping
(
"/insertGambit"
)
public
ResultBody
insertGambit
(
@RequestBody
ForumGambitVO
forumGambitVO
,
HttpServletRequest
request
){
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
forumGambitVO
.
setUserAccountId
(
userAccountId
);
return
gambitService
.
insertGambit
(
forumGambitVO
);
}
@ApiOperation
(
value
=
"编辑话题"
)
@PostMapping
(
"/updateGambit"
)
public
ResultBody
updateGambit
(
@RequestBody
ForumGambitVO
forumGambitVO
,
HttpServletRequest
request
){
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
forumGambitVO
.
setUserAccountId
(
userAccountId
);
return
gambitService
.
updateGambit
(
forumGambitVO
);
}
@ApiOperation
(
value
=
"删除话题"
)
@GetMapping
(
"/deleteGambit"
)
public
ResultBody
deleteGambit
(
@RequestParam
(
value
=
"id"
)
Integer
id
){
return
gambitService
.
deleteGambit
(
id
);
}
@ApiOperation
(
value
=
"后台管理话题列表"
)
@PostMapping
(
"/listGambit"
)
public
ResultBody
<
ForumGambitDTO
>
listGambit
(
@RequestBody
ForumGambitQO
forumGambitQO
){
return
ResultBody
.
success
(
gambitService
.
listGambit
(
forumGambitQO
));
}
@ApiOperation
(
value
=
"关注"
)
@GetMapping
(
"/attention"
)
@ApiImplicitParams
(
value
=
{
@ApiImplicitParam
(
name
=
"status"
,
value
=
"关注状态 true"
,
dataType
=
"Boolean"
,
required
=
true
),
@ApiImplicitParam
(
name
=
"userAccountId"
,
value
=
"被关注的用户"
,
dataType
=
"Integer"
,
required
=
true
)
})
public
ResultBody
attention
(
@RequestParam
(
value
=
"status"
)
Boolean
status
,
@RequestParam
(
value
=
"userAccountId"
)
Integer
userAccountId
,
HttpServletRequest
request
){
Integer
attentionUserAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
return
gambitService
.
attention
(
status
,
userAccountId
,
attentionUserAccountId
);
}
@ApiOperation
(
value
=
"转发数"
)
@GetMapping
(
"/transPond"
)
public
ResultBody
transPond
(
@RequestParam
(
value
=
"dynamicId"
)
Integer
dynamicId
,
HttpServletRequest
request
){
Integer
userAccountId
=
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
();
return
gambitService
.
transPond
(
dynamicId
,
userAccountId
);
}
/* @ApiOperation(value = "评论下面——点赞或取消点赞")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("/commentLikes")
public ResultBody commentLikes(HttpServletRequest request, @ApiParam(value = "dynamicId") @RequestParam Integer dynamicId) {
return gambitService.commentLikes(this.getUserLoginInfoFromRedis(request).getUserAccountId(), dynamicId);
}*/
@ApiOperation
(
value
=
"小程序——自己删除自己的贴子"
)
@GetMapping
(
"/appRemove"
)
public
ResultBody
appRemove
(
HttpServletRequest
request
,
@ApiParam
(
value
=
"dynamicId"
)
@RequestParam
Integer
dynamicId
){
return
gambitService
.
appRemove
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
(),
dynamicId
);
}
@ApiOperation
(
value
=
"小程序话题下面的动态列表"
)
@PostMapping
(
"/appGambitList"
)
public
ResultBody
<
ForumDynamicGambitDO
>
appGambitList
(
HttpServletRequest
request
,
@RequestBody
TopicDynamicsQO
topicDynamicsQO
){
return
ResultBody
.
success
(
gambitService
.
appGambitList
(
topicDynamicsQO
));
}
@ApiOperation
(
value
=
"动态对应的所有评论"
)
@PostMapping
(
"/allCommentList"
)
public
ResultBody
<
ForumReviewDO
>
allCommentList
(
HttpServletRequest
request
,
@RequestBody
AllReviewQO
allReviewQO
){
return
ResultBody
.
success
(
gambitService
.
allCommentList
(
allReviewQO
));
}
@ApiOperation
(
value
=
"某一条动态下面的所有回复"
)
@PostMapping
(
"/replyList"
)
public
ResultBody
<
ForumReviewDO
>
replyList
(
HttpServletRequest
request
,
@RequestBody
AppReplyQO
replyQO
){
return
ResultBody
.
success
(
gambitService
.
replyList
(
replyQO
));
}
@ApiModelProperty
(
value
=
"用户发的动态"
)
@PostMapping
(
"/userDynamicList"
)
public
ResultBody
<
ForumDynamicGambitDO
>
userDynamicList
(
HttpServletRequest
request
,
@RequestBody
UserTopicDynamicsQO
userTopicDynamicsQO
){
return
ResultBody
.
success
(
gambitService
.
userDynamicList
(
userTopicDynamicsQO
));
}
@ApiOperation
(
value
=
"赞过"
)
@PostMapping
(
"/liked"
)
public
ResultBody
<
ForumDynamicGambitDO
>
liked
(
HttpServletRequest
request
,
@RequestBody
UserTopicDynamicsQO
userTopicDynamicsQO
){
return
ResultBody
.
success
(
gambitService
.
liked
(
userTopicDynamicsQO
));
}
@ApiOperation
(
value
=
"我的关注"
)
@PostMapping
(
"/myInterestList"
)
public
ResultBody
myInterestList
(
HttpServletRequest
request
,
@RequestBody
UserTopicDynamicsQO
userTopicDynamicsQO
){
return
ResultBody
.
success
(
gambitService
.
myInterestList
(
userTopicDynamicsQO
));
}
@ApiOperation
(
value
=
"我的粉丝"
)
@PostMapping
(
"/myFansList"
)
public
ResultBody
myFansList
(
HttpServletRequest
request
,
@RequestBody
UserTopicDynamicsQO
userTopicDynamicsQO
){
return
ResultBody
.
success
(
gambitService
.
myFansList
(
userTopicDynamicsQO
));
}
}
release-service/src/main/java/com/mmc/csf/release/dao/DynamicDao.java
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.release.entity.forum.
ForumDynamicDO
;
import
com.mmc.csf.release.entity.
forum.ForumResource
DO
;
import
com.mmc.csf.release.
entity.forum.ForumVideoD
O
;
import
com.mmc.csf.release.entity.forum.
*
;
import
com.mmc.csf.release.entity.
gambit.ForumGambit
DO
;
import
com.mmc.csf.release.
gambit.qo.ForumGambitQ
O
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -151,4 +151,43 @@ public interface DynamicDao {
int
getGambitReleaseCount
();
void
insertforumGambit
(
ForumGambitDO
forumGambitDO
);
void
insertDynamicGambit
(
DynamicGambitDO
dynamicGambitDO
);
void
updateDynamic
(
Integer
gambitId
);
void
updateDynamicNO
(
Integer
gambitId
);
void
updateDiscussionCount
(
Integer
gambitId
,
Long
count
);
void
forumCount
(
Integer
userAccountId
);
void
forumCountNO
(
Integer
userAccountId
);
void
insertForumCount
(
Integer
userAccountId
);
int
selectForumCount
(
Integer
userAccountId
);
List
<
ForumDynamicUserDO
>
recentNewsList
(
Integer
userAccountId
);
List
<
ForumGambitDO
>
appGambitList
(
ForumGambitQO
forumGambitQO
);
int
appGambitListCount
(
ForumGambitQO
forumGambitQO
);
List
<
ForumGambitDO
>
selectGambit
(
Integer
id
);
void
insertforumFirstLevelReview
(
ForumFirstLevelReviewDO
forumFirstLevelReviewDO
);
void
updateLikeCountAdd
(
Integer
id
);
void
insertReviewLikes
(
Integer
id
,
Integer
userAccountId
);
void
subtractLikeCount
(
Integer
id
);
void
deleteReview
(
Integer
id
,
Integer
userAccountId
);
}
release-service/src/main/java/com/mmc/csf/release/dao/gambit/GambitDao.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
dao
.
gambit
;
import
com.mmc.csf.release.entity.forum.*
;
import
com.mmc.csf.release.entity.gambit.ForumAttentionDO
;
import
com.mmc.csf.release.entity.gambit.ForumGambitDO
;
import
com.mmc.csf.release.gambit.qo.*
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/9/13 15:31
* @Version 1.0
*/
@Mapper
public
interface
GambitDao
{
ForumGambitDO
insertGambit
(
ForumGambitDO
forumGambitDO
);
int
selectGambit
(
String
gambitName
);
int
selectUpdate
(
ForumGambitDO
forumGambitDO
);
void
updateGambit
(
ForumGambitDO
forumGambitDO
);
void
deleteGambit
(
Integer
id
);
List
<
ForumGambitDO
>
listGambit
(
ForumGambitQO
forumGambitQO
);
int
listGambitCount
(
ForumGambitQO
forumGambitQO
);
List
<
ForumGambitDO
>
recommendCount
(
ForumGambitDO
forumGambitDO
);
List
<
ForumGambitDO
>
recommendCountNO
(
ForumGambitDO
forumGambitDO
);
ForumGambitDO
selectGambitMessage
(
String
gambitName
);
void
updateDynamicGambit
(
Integer
dynamicId
,
Integer
checkStatus
);
List
<
DynamicGambitDO
>
selectGambitDynamic
(
Integer
dynamicId
);
void
updateForumGambit
(
DynamicGambitDO
gambitDO
);
void
forumDynamicGambit
(
Integer
id
);
void
insertAttention
(
Integer
userAccountId
,
Integer
attentionUserAccountId
,
Boolean
status
);
void
removeAttention
(
Integer
userAccountId
,
Integer
attentionUserAccountId
);
void
insertTransPond
(
Integer
dynamicId
,
Integer
userAccountId
);
void
commentLikes
(
Integer
dynamicId
,
Integer
userAccountId
);
int
selectGambitM
(
Integer
dynamicId
,
Integer
userAccountId
);
void
appRemove
(
Integer
dynamicId
);
void
RemoveDynamicGambit
(
Integer
dynamicId
);
void
deleteForumGambit
(
Integer
dynamicId
);
void
dedateForumGambitTrue
(
Integer
id
);
List
<
DynamicGambitDO
>
selectGambitList
();
List
<
ForumGambitDO
>
selectCountList
();
void
forumCountFansYes
(
Integer
userAccountId
);
void
forumCountAttentionYes
(
Integer
userAccountId
);
void
forumCountFansNO
(
Integer
userAccountId
);
void
forumCountAttentionNO
(
Integer
attentionUserAccountId
);
ForumAttentionDO
selectAttention
(
Integer
userAccountId
,
Integer
attentionUserAccountId
);
void
updateAttention
(
Integer
userAccountId
,
Integer
attentionUserAccountId
,
Boolean
status
);
void
updateAttentionExchange
(
Integer
userAccountId
,
Integer
attentionUserAccountId
);
ForumAttentionDO
selectAttentionMessage
(
Integer
userAccountId
,
Integer
attentionUserAccountId
);
List
<
ForumDynamicGambitDO
>
appGambitList
(
TopicDynamicsQO
topicDynamicsQO
);
int
appGambitListCount
(
TopicDynamicsQO
topicDynamicsQO
);
void
transPondCount
(
Integer
dynamicId
);
int
allCommentListCount
(
AllReviewQO
allReviewQO
);
List
<
ForumReviewDO
>
allCommentList
(
AllReviewQO
allReviewQO
);
int
replyListCount
(
AppReplyQO
allReviewQO
);
List
<
ForumReviewDO
>
replyList
(
AppReplyQO
allReviewQO
);
int
userDynamicListCount
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
List
<
ForumDynamicGambitDO
>
userDynamicList
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
int
likedCount
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
List
<
ForumDynamicGambitDO
>
likedList
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
int
myInterestListCount
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
List
<
MyAttentionDO
>
myInterestList
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
int
myFansListCount
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
List
<
MyFansDO
>
myFansList
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/DynamicGambitDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
com.mmc.csf.release.entity.gambit.ForumGambitDO
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/9/14 10:50
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
DynamicGambitDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
570379773690905364L
;
private
Integer
id
;
private
Integer
dynamicId
;
private
Integer
gambitId
;
private
Integer
userAccountId
;
private
Integer
checkStatus
;
public
DynamicGambitDO
(
ForumDynamicDO
forumDynamicDO
,
ForumGambitDO
forumGambitDO
){
this
.
dynamicId
=
forumDynamicDO
.
getId
();
this
.
gambitId
=
forumGambitDO
.
getId
();
this
.
userAccountId
=
forumGambitDO
.
getUserAccountId
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/ForumCountDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/9/18 15:42
* @Version 1.0
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
public
class
ForumCountDO
implements
Serializable
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户id"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"获赞数量"
)
private
Integer
likeCount
;
@ApiModelProperty
(
value
=
"粉丝数量"
)
private
Integer
fansCount
;
@ApiModelProperty
(
value
=
"关注数量"
)
private
Integer
attentionCount
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
String
createTime
;
@ApiModelProperty
(
value
=
"修改时间"
)
private
String
updateTime
;
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/ForumDynamicDO.java
浏览文件 @
d6ccf1f1
...
...
@@ -3,13 +3,18 @@ package com.mmc.csf.release.entity.forum;
import
com.mmc.csf.release.entity.common.BaseDO
;
import
com.mmc.csf.release.forum.dto.DynamicInfoDTO
;
import
com.mmc.csf.release.forum.vo.DynamicVO
;
import
com.mmc.csf.release.model.group.Create
;
import
com.mmc.csf.release.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
javax.validation.constraints.NotBlank
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
* 动态信息表(ForumDynamicDO)实体类
...
...
@@ -23,6 +28,8 @@ import java.math.BigDecimal;
@Accessors
(
chain
=
true
)
public
class
ForumDynamicDO
extends
BaseDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
570379773690905364L
;
/**
* 版本字段
*/
...
...
@@ -62,7 +69,28 @@ public class ForumDynamicDO extends BaseDO implements Serializable {
private
Integer
checkStatus
;
@ApiModelProperty
(
value
=
"话题图标"
,
example
=
"小程序给默认值"
)
@NotBlank
(
message
=
"话题图标不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitIcon
;
@ApiModelProperty
(
value
=
"话题封面"
,
example
=
"小程序给默认封面"
)
@NotBlank
(
message
=
"话题封面不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitCover
;
@ApiModelProperty
(
value
=
"话题名称"
,
example
=
"#深圳暴雨"
)
private
List
<
String
>
gambitName
;
private
Integer
dynamicId
;
public
ForumDynamicDO
(
DynamicVO
dynamicVO
)
{
this
.
gambitIcon
=
dynamicVO
.
getGambitIcon
();
this
.
gambitCover
=
dynamicVO
.
getGambitCover
();
this
.
gambitName
=
dynamicVO
.
getGambitName
();
this
.
description
=
dynamicVO
.
getDescription
();
this
.
location
=
dynamicVO
.
getLocation
();
this
.
lat
=
dynamicVO
.
getLat
();
...
...
@@ -80,6 +108,7 @@ public class ForumDynamicDO extends BaseDO implements Serializable {
.
lon
(
lon
)
.
location
(
location
)
.
dynamicPublishTime
(
this
.
getCreateTime
())
.
gambitName
(
this
.
gambitName
)
.
build
();
}
...
...
release-service/src/main/java/com/mmc/csf/release/entity/forum/ForumDynamicGambitDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
com.mmc.csf.release.entity.gambit.ForumGambitDO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/9/18 11:17
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ForumDynamicGambitDO
implements
Serializable
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"描述"
)
private
String
description
;
@ApiModelProperty
(
value
=
"发布者用户"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"点赞数"
)
private
Integer
likesCount
;
@ApiModelProperty
(
value
=
"评论数"
)
private
Integer
commentsCount
;
@ApiModelProperty
(
value
=
"转发数"
)
private
Integer
transpond
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
String
createTime
;
@ApiModelProperty
(
"图片"
)
private
List
<
ForumResourceDO
>
forumResourceDOList
;
@ApiModelProperty
(
"话题"
)
private
List
<
ForumGambitDO
>
forumGambitDOList
;
@ApiModelProperty
(
"评论"
)
private
ForumReviewDO
forumReviewDO
;
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/ForumDynamicUserDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
com.mmc.csf.release.entity.gambit.ForumGambitDO
;
import
com.mmc.csf.user.vo.UserAccountVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
* @Author small
* @Date 2023/9/16 9:57
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ForumDynamicUserDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
570379773690905364L
;
private
Integer
id
;
/**
* 版本字段
*/
private
Integer
version
;
/**
* 发布用户ID
*/
private
Integer
userAccountId
;
/**
* 动态描述
*/
private
String
description
;
/**
* 发布动态具体位置
*/
private
String
location
;
/**
* 发布动态纬度
*/
private
BigDecimal
lat
;
/**
* 发布动态经度
*/
private
BigDecimal
lon
;
/**
* 点赞数
*/
private
Integer
likesCount
;
/**
* 评论数
*/
private
Integer
commentsCount
;
/**
* 记录父节点id
*/
private
String
rootPath
;
private
Integer
checkStatus
;
private
List
<
ForumResourceDO
>
forumResourceDOList
;
private
List
<
ForumGambitDO
>
forumGambitDOList
;
private
UserAccountVO
userAccountVO
;
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/ForumFirstLevelReviewDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
com.mmc.csf.release.forum.vo.CommentVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/9/16 17:19
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ForumFirstLevelReviewDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
570379773690905364L
;
@ApiModelProperty
(
value
=
"动态id"
)
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"评论内容"
)
private
String
content
;
@ApiModelProperty
(
value
=
"评论id,没有回复就为0 有就是评论id "
)
private
Integer
reviewId
;
@ApiModelProperty
(
value
=
"用户id"
,
hidden
=
true
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"pid(注意:pid为0表示评论,回复需要上级评论id)"
,
example
=
"0"
)
private
Integer
pid
;
public
ForumFirstLevelReviewDO
(
CommentVO
commentVO
){
this
.
dynamicId
=
commentVO
.
getDynamicId
();
this
.
content
=
commentVO
.
getContent
();
this
.
reviewId
=
commentVO
.
getReviewId
();
this
.
userAccountId
=
commentVO
.
getUserAccountId
();
this
.
pid
=
commentVO
.
getPid
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/ForumReviewDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
lombok.experimental.Accessors
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/9/18 13:54
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ForumReviewDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
678578415154893126L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户id"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"动态id"
)
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"评论内容"
)
private
String
content
;
@ApiModelProperty
(
value
=
"回复id"
)
private
Integer
reviewId
;
@ApiModelProperty
(
value
=
"评论点赞数"
)
private
Integer
likeCount
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
String
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
)
private
String
updateTime
;
@ApiModelProperty
(
value
=
"pid"
)
private
Integer
pid
;
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/ForumTwoLevelReviewDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
com.mmc.csf.release.forum.vo.ReplyToAReviewVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/9/16 17:37
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
ForumTwoLevelReviewDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
570379773690905364L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"二级评论点赞数"
)
private
Integer
firstLikeCount
;
@ApiModelProperty
(
value
=
"动态id"
,
example
=
"172"
)
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"评论内容"
,
example
=
"内容"
)
private
String
content
;
@ApiModelProperty
(
value
=
"被回复者用户id"
)
private
Integer
replyUserAccountId
;
@ApiModelProperty
(
value
=
"被回复的一级用户"
)
private
Integer
replyOneUserAccountId
;
@ApiModelProperty
(
value
=
"被回复的二级用户"
)
private
Integer
replyTwoUserAccountId
;
public
ForumTwoLevelReviewDO
(
ReplyToAReviewVO
replyToAReviewVO
){
this
.
dynamicId
=
replyToAReviewVO
.
getDynamicId
();
this
.
content
=
replyToAReviewVO
.
getContent
();
this
.
replyUserAccountId
=
replyToAReviewVO
.
getReplyUserAccountId
();
this
.
replyOneUserAccountId
=
replyToAReviewVO
.
getReplyOneUserAccountId
();
this
.
replyTwoUserAccountId
=
replyToAReviewVO
.
getReplyTwoUserAccountId
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/MyAttentionDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/9/18 15:38
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
MyAttentionDO
implements
Serializable
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户id"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"是否互相关注"
)
private
Integer
mutualAttention
;
@ApiModelProperty
(
value
=
"作品数"
)
private
Integer
dynamicCount
;
@ApiModelProperty
(
value
=
"用户信息"
)
private
ForumCountDO
countDO
;
}
release-service/src/main/java/com/mmc/csf/release/entity/forum/MyFansDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @Author small
* @Date 2023/9/18 16:10
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
MyFansDO
implements
Serializable
{
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户id"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"是否互相关注"
)
private
Integer
mutualAttention
;
@ApiModelProperty
(
value
=
"作品数"
)
private
Integer
dynamicCount
;
@ApiModelProperty
(
value
=
"用户信息"
)
private
ForumCountDO
countDO
;
}
release-service/src/main/java/com/mmc/csf/release/entity/gambit/ForumAttentionDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
gambit
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/9/15 14:26
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
ForumAttentionDO
{
private
Integer
id
;
@ApiModelProperty
(
value
=
"被关注的用户"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"关注用户"
)
private
Integer
attentionUserAccountId
;
@ApiModelProperty
(
value
=
"关注状态"
)
private
Boolean
status
;
@ApiModelProperty
(
value
=
"是否相互关注"
)
private
Boolean
mutualAttention
;
private
String
createTime
;
private
String
updateTime
;
}
release-service/src/main/java/com/mmc/csf/release/entity/gambit/ForumGambitDO.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
entity
.
gambit
;
import
com.mmc.csf.release.entity.forum.ForumDynamicDO
;
import
com.mmc.csf.release.gambit.dto.ForumGambitDTO
;
import
com.mmc.csf.release.gambit.vo.ForumGambitVO
;
import
com.mmc.csf.release.model.group.Create
;
import
com.mmc.csf.release.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
/**
* @Author small
* @Date 2023/9/13 16:06
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
ForumGambitDO
{
private
Integer
id
;
@ApiModelProperty
(
value
=
"话题名称"
,
example
=
"深圳暴雨"
)
@NotBlank
(
message
=
"话题不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitName
;
@ApiModelProperty
(
value
=
"话题图标"
,
example
=
"小程序给默认值"
)
@NotBlank
(
message
=
"话题图标不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitIcon
;
@ApiModelProperty
(
value
=
"话题封面"
,
example
=
"小程序给默认封面"
)
@NotBlank
(
message
=
"话题封面不能为空"
,
groups
=
{
Create
.
class
,
Update
.
class
})
private
String
gambitCover
;
@ApiModelProperty
(
value
=
"话题属性"
,
example
=
"话题属性 1普通 2热门 3推荐 (小程序默认普通:1)"
)
@NotNull
(
message
=
"话题属性不能为空"
)
private
Integer
gambitProperty
;
@ApiModelProperty
(
value
=
"发贴用户"
,
example
=
"1"
,
hidden
=
true
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"贴子数"
,
example
=
"11"
)
private
Integer
postCount
;
@ApiModelProperty
(
value
=
"话题参与讨论数量"
,
example
=
"1"
)
private
Integer
discussionCount
;
public
ForumGambitDO
(
ForumGambitVO
forumGambitVO
){
this
.
gambitName
=
forumGambitVO
.
getGambitName
();
this
.
gambitIcon
=
forumGambitVO
.
getGambitIcon
();
this
.
gambitCover
=
forumGambitVO
.
getGambitCover
();
this
.
gambitProperty
=
forumGambitVO
.
getGambitProperty
();
this
.
userAccountId
=
forumGambitVO
.
getUserAccountId
();
}
public
ForumGambitDO
(
ForumDynamicDO
forumDynamicDO
){
this
.
gambitIcon
=
forumDynamicDO
.
getGambitIcon
();
this
.
gambitCover
=
forumDynamicDO
.
getGambitCover
();
this
.
userAccountId
=
forumDynamicDO
.
getUserAccountId
();
}
public
ForumGambitDTO
buildForumGambitDTO
(){
return
ForumGambitDTO
.
builder
()
.
id
(
this
.
id
)
.
gambitName
(
this
.
gambitName
)
.
gambitIcon
(
this
.
gambitIcon
)
.
gambitCover
(
this
.
gambitCover
)
.
gambitProperty
(
this
.
gambitProperty
)
.
postCount
(
this
.
postCount
)
.
userAccountId
(
this
.
userAccountId
)
.
discussionCount
(
this
.
discussionCount
)
.
build
();
}
}
release-service/src/main/java/com/mmc/csf/release/mq/listener/MqConsumer.java
浏览文件 @
d6ccf1f1
...
...
@@ -30,6 +30,7 @@ public class MqConsumer {
@Autowired
LikeDAO
likeDAO
;
@RabbitListener
(
queues
=
RabbitmqConstant
.
USER_INFO_UPDATE_FANOUT_FORUM_QUEUE
)
public
void
subscribeFanoutQueue
(
@Payload
String
userAccount
,
Channel
channel
,
Message
message
)
{
UserAccountVO
userAccountVO
=
JSONObject
.
parseObject
(
userAccount
,
UserAccountVO
.
class
);
...
...
release-service/src/main/java/com/mmc/csf/release/service/DynamicService.java
浏览文件 @
d6ccf1f1
...
...
@@ -4,6 +4,9 @@ import com.mmc.csf.common.util.page.PageResult;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.release.forum.vo.CommentVO
;
import
com.mmc.csf.release.forum.vo.DynamicVO
;
import
com.mmc.csf.release.forum.vo.ReplyToAReviewVO
;
import
com.mmc.csf.release.gambit.qo.ForumGambitQO
;
import
com.mmc.csf.release.gambit.vo.ForumGambitVO
;
import
javax.servlet.http.HttpServletRequest
;
...
...
@@ -56,4 +59,10 @@ public interface DynamicService {
PageResult
dynamicList
(
Integer
pageNo
,
Integer
pageSize
,
Integer
userAccountId
,
HttpServletRequest
request
);
ResultBody
recentNewsList
(
Integer
userAccountId
);
PageResult
appGambitList
(
ForumGambitQO
forumGambitQO
);
ResultBody
reviewLikes
(
Integer
id
,
Integer
userAccountId
,
Boolean
status
);
}
release-service/src/main/java/com/mmc/csf/release/service/gambit/GambitService.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
service
.
gambit
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.release.gambit.qo.*
;
import
com.mmc.csf.release.gambit.vo.ForumGambitVO
;
/**
* @Author small
* @Date 2023/9/13 15:30
* @Version 1.0
*/
public
interface
GambitService
{
ResultBody
insertGambit
(
ForumGambitVO
forumGambitVO
);
ResultBody
updateGambit
(
ForumGambitVO
forumGambitVO
);
ResultBody
deleteGambit
(
Integer
id
);
PageResult
listGambit
(
ForumGambitQO
forumGambitQO
);
ResultBody
attention
(
Boolean
status
,
Integer
userAccountId
,
Integer
attentionUserAccountId
);
ResultBody
transPond
(
Integer
dynamicId
,
Integer
userAccountId
);
ResultBody
commentLikes
(
Integer
userAccountId
,
Integer
dynamicId
);
ResultBody
appRemove
(
Integer
userAccountId
,
Integer
dynamicId
);
PageResult
appGambitList
(
TopicDynamicsQO
topicDynamicsQO
);
PageResult
allCommentList
(
AllReviewQO
allReviewQO
);
PageResult
replyList
(
AppReplyQO
allReviewQO
);
PageResult
userDynamicList
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
PageResult
liked
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
PageResult
myInterestList
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
PageResult
myFansList
(
UserTopicDynamicsQO
userTopicDynamicsQO
);
}
release-service/src/main/java/com/mmc/csf/release/service/gambit/impl/GambitServiceImpl.java
0 → 100644
浏览文件 @
d6ccf1f1
package
com
.
mmc
.
csf
.
release
.
service
.
gambit
.
impl
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.release.dao.DynamicDao
;
import
com.mmc.csf.release.dao.gambit.GambitDao
;
import
com.mmc.csf.release.entity.forum.ForumDynamicGambitDO
;
import
com.mmc.csf.release.entity.forum.ForumReviewDO
;
import
com.mmc.csf.release.entity.forum.MyAttentionDO
;
import
com.mmc.csf.release.entity.forum.MyFansDO
;
import
com.mmc.csf.release.entity.gambit.ForumAttentionDO
;
import
com.mmc.csf.release.entity.gambit.ForumGambitDO
;
import
com.mmc.csf.release.gambit.dto.ForumGambitDTO
;
import
com.mmc.csf.release.gambit.qo.*
;
import
com.mmc.csf.release.gambit.vo.ForumGambitVO
;
import
com.mmc.csf.release.service.gambit.GambitService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* @Author small
* @Date 2023/9/13 15:30
* @Version 1.0
*/
@Service
public
class
GambitServiceImpl
implements
GambitService
{
@Autowired
private
GambitDao
gambitDao
;
@Autowired
private
DynamicDao
dynamicDao
;
/**
* 添加话题
* @param forumGambitVO
* @return
*/
@Override
public
ResultBody
insertGambit
(
ForumGambitVO
forumGambitVO
)
{
ForumGambitDO
forumGambitDO
=
new
ForumGambitDO
(
forumGambitVO
);
List
<
ForumGambitDO
>
forumGambitDOS
=
gambitDao
.
recommendCount
(
forumGambitDO
);
if
(
"3"
.
equals
(
forumGambitDO
.
getGambitProperty
().
toString
())){
int
size
=
forumGambitDOS
.
size
();
if
(
size
>=
3
){
return
ResultBody
.
error
(
"推荐最多只能三个"
);
}
}
if
(
"2"
.
equals
(
forumGambitDO
.
getGambitProperty
().
toString
())){
int
size
=
forumGambitDOS
.
size
();
if
(
size
>=
3
){
return
ResultBody
.
error
(
"热门最多只能三个"
);
}
}
int
i
=
gambitDao
.
selectGambit
(
forumGambitDO
.
getGambitName
());
if
(
i
!=
0
){
return
ResultBody
.
error
(
"话题名称已存在"
);
}
gambitDao
.
insertGambit
(
forumGambitDO
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
updateGambit
(
ForumGambitVO
forumGambitVO
)
{
ForumGambitDO
forumGambitDO
=
new
ForumGambitDO
(
forumGambitVO
);
List
<
ForumGambitDO
>
forumGambitDOS
=
gambitDao
.
recommendCountNO
(
forumGambitDO
);
if
(
"3"
.
equals
(
forumGambitDO
.
getGambitProperty
().
toString
())){
int
size
=
forumGambitDOS
.
size
();
if
(
size
>=
3
){
return
ResultBody
.
error
(
"推荐最多只能三个"
);
}
}
if
(
"2"
.
equals
(
forumGambitDO
.
getGambitProperty
().
toString
())){
int
size
=
forumGambitDOS
.
size
();
if
(
size
>=
3
){
return
ResultBody
.
error
(
"热门最多只能三个"
);
}
}
int
i
=
gambitDao
.
selectUpdate
(
forumGambitDO
);
if
(
i
!=
0
){
return
ResultBody
.
error
(
"话题名称不能重复"
);
}
gambitDao
.
updateGambit
(
forumGambitDO
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
deleteGambit
(
Integer
id
)
{
gambitDao
.
deleteGambit
(
id
);
gambitDao
.
forumDynamicGambit
(
id
);
return
ResultBody
.
success
();
}
@Override
public
PageResult
listGambit
(
ForumGambitQO
forumGambitQO
)
{
Integer
pageNo
=
forumGambitQO
.
getPageNo
();
forumGambitQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
listGambitCount
(
forumGambitQO
);
List
<
ForumGambitDO
>
forumGambitDO
=
gambitDao
.
listGambit
(
forumGambitQO
);
List
<
ForumGambitDTO
>
collect
=
forumGambitDO
.
stream
().
map
(
ForumGambitDO:
:
buildForumGambitDTO
).
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
forumGambitQO
.
getPageSize
(),
count
,
collect
);
}
@Override
public
ResultBody
attention
(
Boolean
status
,
Integer
userAccountId
,
Integer
attentionUserAccountId
)
{
if
(
status
.
equals
(
true
)){
//插入用户
int
count
=
dynamicDao
.
selectForumCount
(
userAccountId
);
if
(
count
==
0
){
dynamicDao
.
insertForumCount
(
userAccountId
);
}
int
count1
=
dynamicDao
.
selectForumCount
(
attentionUserAccountId
);
if
(
count1
==
0
){
dynamicDao
.
insertForumCount
(
attentionUserAccountId
);
}
ForumAttentionDO
forumAttentionDO
=
gambitDao
.
selectAttentionMessage
(
userAccountId
,
attentionUserAccountId
);
if
(!
forumAttentionDO
.
equals
(
null
)){
gambitDao
.
updateAttention
(
userAccountId
,
attentionUserAccountId
,
true
);
gambitDao
.
forumCountFansYes
(
userAccountId
);
gambitDao
.
forumCountAttentionYes
(
attentionUserAccountId
);
}
else
{
gambitDao
.
insertAttention
(
userAccountId
,
attentionUserAccountId
,
status
);
gambitDao
.
forumCountFansYes
(
userAccountId
);
gambitDao
.
forumCountAttentionYes
(
attentionUserAccountId
);
}
}
else
{
ForumAttentionDO
forumAttentionDO
=
gambitDao
.
selectAttentionMessage
(
userAccountId
,
attentionUserAccountId
);
if
(
forumAttentionDO
.
getMutualAttention
().
equals
(
false
)){
gambitDao
.
removeAttention
(
userAccountId
,
attentionUserAccountId
);
gambitDao
.
forumCountFansNO
(
userAccountId
);
gambitDao
.
forumCountAttentionNO
(
attentionUserAccountId
);
}
else
{
gambitDao
.
updateAttentionExchange
(
userAccountId
,
attentionUserAccountId
);
gambitDao
.
forumCountFansNO
(
userAccountId
);
gambitDao
.
forumCountAttentionNO
(
attentionUserAccountId
);
}
}
return
ResultBody
.
success
();
}
@Override
public
ResultBody
transPond
(
Integer
dynamicId
,
Integer
userAccountId
)
{
gambitDao
.
insertTransPond
(
dynamicId
,
userAccountId
);
gambitDao
.
transPondCount
(
dynamicId
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
commentLikes
(
Integer
userAccountId
,
Integer
dynamicId
)
{
gambitDao
.
commentLikes
(
dynamicId
,
userAccountId
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
appRemove
(
Integer
userAccountId
,
Integer
dynamicId
)
{
int
i
=
gambitDao
.
selectGambitM
(
dynamicId
,
userAccountId
);
if
(
i
!=
0
){
return
ResultBody
.
error
(
"只能删除自己的贴子"
);
}
gambitDao
.
appRemove
(
dynamicId
);
gambitDao
.
RemoveDynamicGambit
(
dynamicId
);
return
ResultBody
.
success
();
}
@Override
public
PageResult
appGambitList
(
TopicDynamicsQO
topicDynamicsQO
)
{
Integer
pageNo
=
topicDynamicsQO
.
getPageNo
();
topicDynamicsQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
appGambitListCount
(
topicDynamicsQO
);
List
<
ForumDynamicGambitDO
>
forumDynamicGambitDOS
=
gambitDao
.
appGambitList
(
topicDynamicsQO
);
return
PageResult
.
buildPage
(
pageNo
,
topicDynamicsQO
.
getPageSize
(),
count
,
forumDynamicGambitDOS
);
}
@Override
public
PageResult
userDynamicList
(
UserTopicDynamicsQO
userTopicDynamicsQO
){
Integer
pageNo
=
userTopicDynamicsQO
.
getPageNo
();
userTopicDynamicsQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
userDynamicListCount
(
userTopicDynamicsQO
);
List
<
ForumDynamicGambitDO
>
forumDynamicGambitDOS
=
gambitDao
.
userDynamicList
(
userTopicDynamicsQO
);
return
PageResult
.
buildPage
(
pageNo
,
userTopicDynamicsQO
.
getPageSize
(),
count
,
forumDynamicGambitDOS
);
}
@Override
public
PageResult
liked
(
UserTopicDynamicsQO
userTopicDynamicsQO
)
{
Integer
pageNo
=
userTopicDynamicsQO
.
getPageNo
();
userTopicDynamicsQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
likedCount
(
userTopicDynamicsQO
);
List
<
ForumDynamicGambitDO
>
forumDynamicGambitDOS
=
gambitDao
.
likedList
(
userTopicDynamicsQO
);
return
PageResult
.
buildPage
(
pageNo
,
userTopicDynamicsQO
.
getPageSize
(),
count
,
forumDynamicGambitDOS
);
}
@Override
public
PageResult
myInterestList
(
UserTopicDynamicsQO
userTopicDynamicsQO
)
{
Integer
pageNo
=
userTopicDynamicsQO
.
getPageNo
();
userTopicDynamicsQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
myInterestListCount
(
userTopicDynamicsQO
);
List
<
MyAttentionDO
>
myAttentionDOS
=
gambitDao
.
myInterestList
(
userTopicDynamicsQO
);
return
PageResult
.
buildPage
(
pageNo
,
userTopicDynamicsQO
.
getPageSize
(),
count
,
myAttentionDOS
);
}
@Override
public
PageResult
myFansList
(
UserTopicDynamicsQO
userTopicDynamicsQO
)
{
Integer
pageNo
=
userTopicDynamicsQO
.
getPageNo
();
userTopicDynamicsQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
myFansListCount
(
userTopicDynamicsQO
);
List
<
MyFansDO
>
myAttentionDOS
=
gambitDao
.
myFansList
(
userTopicDynamicsQO
);
return
PageResult
.
buildPage
(
pageNo
,
userTopicDynamicsQO
.
getPageSize
(),
count
,
myAttentionDOS
);
}
@Override
public
PageResult
allCommentList
(
AllReviewQO
allReviewQO
)
{
Integer
pageNo
=
allReviewQO
.
getPageNo
();
allReviewQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
allCommentListCount
(
allReviewQO
);
List
<
ForumReviewDO
>
forumReviewDOS
=
gambitDao
.
allCommentList
(
allReviewQO
);
return
PageResult
.
buildPage
(
pageNo
,
allReviewQO
.
getPageSize
(),
count
,
forumReviewDOS
);
}
@Override
public
PageResult
replyList
(
AppReplyQO
allReviewQO
)
{
Integer
pageNo
=
allReviewQO
.
getPageNo
();
allReviewQO
.
buildCurrentPage
();
int
count
=
gambitDao
.
replyListCount
(
allReviewQO
);
List
<
ForumReviewDO
>
forumReviewDOS
=
gambitDao
.
replyList
(
allReviewQO
);
return
PageResult
.
buildPage
(
pageNo
,
allReviewQO
.
getPageSize
(),
count
,
forumReviewDOS
);
}
}
release-service/src/main/java/com/mmc/csf/release/service/impl/BackstageForumServiceImpl.java
浏览文件 @
d6ccf1f1
...
...
@@ -8,9 +8,12 @@ import com.mmc.csf.release.constant.TokenConstant;
import
com.mmc.csf.release.dao.BackstageForumDao
;
import
com.mmc.csf.release.dao.DynamicDao
;
import
com.mmc.csf.release.dao.LikeDAO
;
import
com.mmc.csf.release.dao.gambit.GambitDao
;
import
com.mmc.csf.release.entity.forum.DynamicGambitDO
;
import
com.mmc.csf.release.entity.forum.ForumDynamicDO
;
import
com.mmc.csf.release.entity.forum.ForumLikeDO
;
import
com.mmc.csf.release.entity.forum.ForumResourceDO
;
import
com.mmc.csf.release.entity.gambit.ForumGambitDO
;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.forum.dto.DynamicInfoDTO
;
import
com.mmc.csf.release.forum.qo.DynamicQO
;
...
...
@@ -37,11 +40,13 @@ public class BackstageForumServiceImpl implements BackstageForumService {
@Autowired
BackstageForumDao
backstageForumDao
;
@Autowired
DynamicDao
dynamicD
AO
;
DynamicDao
dynamicD
ao
;
@Autowired
UserAppApi
userAppApi
;
@Autowired
LikeDAO
likeDAO
;
@Autowired
private
GambitDao
gambitDao
;
@Override
public
PageResult
listDynamic
(
DynamicQO
dynamic
,
HttpServletRequest
request
)
{
...
...
@@ -75,7 +80,7 @@ public class BackstageForumServiceImpl implements BackstageForumService {
List
<
Integer
>
ids
=
dynamicList
.
stream
().
map
(
ForumDynamicDO:
:
getId
).
collect
(
Collectors
.
toList
());
// 根据id集合查询图片
List
<
ForumResourceDO
>
forumImageList
=
dynamicD
AO
.
listDynamicPicture
(
ids
);
List
<
ForumResourceDO
>
forumImageList
=
dynamicD
ao
.
listDynamicPicture
(
ids
);
Map
<
Integer
,
List
<
ForumResourceDO
>>
ImageMap
=
forumImageList
.
stream
().
collect
(
Collectors
.
groupingBy
(
ForumResourceDO:
:
getDynamicId
));
// 获取用户信息
...
...
@@ -120,13 +125,13 @@ public class BackstageForumServiceImpl implements BackstageForumService {
@Override
public
ResultBody
deleteDynamic
(
Integer
dynamicId
)
{
dynamicD
AO
.
deleteDynamic
(
dynamicId
);
dynamicD
ao
.
deleteDynamic
(
dynamicId
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
hiddenDynamic
(
Integer
dynamicId
)
{
dynamicD
AO
.
hiddenDynamic
(
dynamicId
);
dynamicD
ao
.
hiddenDynamic
(
dynamicId
);
return
ResultBody
.
success
();
}
...
...
@@ -160,9 +165,35 @@ public class BackstageForumServiceImpl implements BackstageForumService {
@Override
public
ResultBody
checkDynamic
(
Integer
dynamicId
,
Boolean
status
)
{
if
(
status
)
{
dynamicDAO
.
updateCheckDynamic
(
dynamicId
,
1
);
//审核通过
dynamicDao
.
updateCheckDynamic
(
dynamicId
,
1
);
gambitDao
.
updateDynamicGambit
(
dynamicId
,
1
);
List
<
DynamicGambitDO
>
gambitDOList
=
gambitDao
.
selectGambitDynamic
(
dynamicId
);
for
(
DynamicGambitDO
gambitDO
:
gambitDOList
)
{
Integer
checkStatus
=
gambitDO
.
getCheckStatus
();
if
(
checkStatus
!=
1
){
gambitDO
.
setCheckStatus
(
1
);
gambitDao
.
updateForumGambit
(
gambitDO
);
}
dynamicDao
.
updateDynamic
(
gambitDO
.
getGambitId
());
}
List
<
DynamicGambitDO
>
ga
=
gambitDao
.
selectGambitList
();
List
<
ForumGambitDO
>
gambitDOS
=
gambitDao
.
selectCountList
();
for
(
ForumGambitDO
gambitDO
:
gambitDOS
)
{
long
count
=
ga
.
stream
().
filter
(
u
->
u
.
getGambitId
().
equals
(
gambitDO
.
getId
())).
count
();
dynamicDao
.
updateDiscussionCount
(
gambitDO
.
getId
(),
count
);
}
}
else
{
dynamicDAO
.
updateCheckDynamic
(
dynamicId
,
2
);
dynamicDao
.
updateCheckDynamic
(
dynamicId
,
2
);
List
<
DynamicGambitDO
>
gambitDOList
=
gambitDao
.
selectGambitDynamic
(
dynamicId
);
for
(
DynamicGambitDO
gambitDO
:
gambitDOList
)
{
Integer
checkStatus
=
gambitDO
.
getCheckStatus
();
if
(
checkStatus
!=
1
){
gambitDO
.
setCheckStatus
(
2
);
gambitDao
.
dedateForumGambitTrue
(
gambitDO
.
getGambitId
());
}
}
gambitDao
.
deleteForumGambit
(
dynamicId
);
}
return
ResultBody
.
success
();
}
...
...
release-service/src/main/java/com/mmc/csf/release/service/impl/DynamicServiceImpl.java
浏览文件 @
d6ccf1f1
差异被折叠。
点击展开。
release-service/src/main/resources/mapper/forum/DynamicMapper.xml
浏览文件 @
d6ccf1f1
...
...
@@ -4,6 +4,54 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.csf.release.dao.DynamicDao"
>
<resultMap
id=
"recentNewsListMap"
type=
"com.mmc.csf.release.entity.forum.ForumDynamicUserDO"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"version"
column=
"version"
/>
<result
property=
"userAccountId"
column=
"user_account_id"
/>
<result
property=
"description"
column=
"description"
/>
<result
property=
"location"
column=
"location"
/>
<result
property=
"lat"
column=
"lat"
/>
<result
property=
"lon"
column=
"lon"
/>
<result
property=
"likesCount"
column=
"likes_count"
/>
<result
property=
"commentsCount"
column=
"comments_count"
/>
<result
property=
"checkStatus"
column=
"create_time"
/>
<collection
property=
"forumResourceDOList"
ofType=
"com.mmc.csf.release.entity.forum.ForumResourceDO"
select=
"selectResourceList"
column=
"{dynamicId=id}"
>
</collection>
<collection
property=
"forumGambitDOList"
ofType=
"com.mmc.csf.release.entity.gambit.ForumGambitDO"
select=
"selectGambitList"
column=
"{dynamicId=id}"
>
</collection>
</resultMap>
<select
id=
"selectResourceList"
resultType=
"com.mmc.csf.release.entity.forum.ForumResourceDO"
>
select dynamic_id,resource_url,create_time,update_time,`type` from forum_resource where dynamic_id=#{dynamicId}
</select>
<select
id=
"selectGambitList"
resultType=
"com.mmc.csf.release.entity.gambit.ForumGambitDO"
>
SELECT
fdg.dynamic_id,
fdg.gambit_id,
fg.gambit_name
FROM
forum_dynamic_gambit fdg
LEFT JOIN forum_gambit fg ON fdg.gambit_id = fg.id
WHERE
fdg.dynamic_id = #{dynamicId}
</select>
<select
id=
"getDynamicCount"
resultType=
"java.lang.Integer"
>
select count(*)
from forum_dynamic
where root_path is null
</select>
<select
id=
"getGambitReleaseCount"
resultType=
"java.lang.Integer"
>
select count(*)
from forum_gambit
</select>
<insert
id=
"insertPicture"
>
insert into forum_image(dynamic_id, url)
values (#{dynamicId}, #{url})
...
...
@@ -17,6 +65,144 @@
INSERT INTO forum_dynamic(user_account_id, description, location, lat, lon, root_path, check_status)
VALUES (#{userAccountId}, #{description}, #{location}, #{lat}, #{lon}, #{rootPath}, #{checkStatus})
</insert>
<insert
id=
"insertforumGambit"
parameterType=
"com.mmc.csf.release.entity.gambit.ForumGambitDO"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into forum_gambit(gambit_name,gambit_icon,gambit_cover,
user_account_id,create_time,update_time)
values (#{gambitName},#{gambitIcon},#{gambitCover},
#{userAccountId},NOW(),NOW())
</insert>
<insert
id=
"insertDynamicGambit"
parameterType=
"com.mmc.csf.release.entity.forum.DynamicGambitDO"
>
insert into forum_dynamic_gambit(dynamic_id,gambit_id,user_account_id,create_time,update_time)
values (#{dynamicId},#{gambitId},#{userAccountId},NOW(),NOW())
</insert>
<update
id=
"updateDynamic"
>
update forum_gambit
set post_count=post_count+1,
update_time=NOW()
where id=#{gambitId}
</update>
<update
id=
"updateDynamicNO"
>
update forum_gambit
set post_count=post_count-1,
update_time=NOW()
where id=#{gambitId}
</update>
<update
id=
"updateDiscussionCount"
>
update forum_gambit
set discussion_count=#{count},
update_time=NOW()
where id=#{gambitId}
</update>
<update
id=
"forumCount"
>
update forum_count
set like_count=like_count+1,
update_time=NOW()
where user_account_id=#{userAccountId}
</update>
<update
id=
"forumCountNO"
>
update forum_count
set like_count=like_count-1,
update_time=NOW()
where user_account_id=#{userAccountId}
</update>
<update
id=
"updateLikeCountAdd"
>
update forum_review
set like_count=like_count+1,
update_time=NOW()
where id=#{id}
</update>
<update
id=
"subtractLikeCount"
>
update forum_review
set like_count=like_count-1,
update_time=NOW()
where id=#{id}
</update>
<delete
id=
"deleteReview"
>
delete from forum_review_likes where user_account_id=#{userAccountId} and review_id=#{id}
</delete>
<insert
id=
"insertReviewLikes"
>
insert into forum_review_likes(user_account_id,review_id,create_time,update_time) values(#{userAccountId},#{id},NOW(),NOW())
</insert>
<insert
id=
"insertForumCount"
parameterType=
"java.lang.Integer"
>
insert into forum_count(user_account_id,create_time,update_time)
values (#{userAccountId},NOW(),NOW())
</insert>
<select
id=
"selectForumCount"
parameterType=
"java.lang.Integer"
resultType=
"java.lang.Integer"
>
select count(*) from forum_count where user_account_id=#{userAccountId}
</select>
<select
id=
"recentNewsList"
resultMap=
"recentNewsListMap"
>
SELECT DISTINCT
fd.id,
fd.version,
fd.user_account_id,
fd.description,
fd.location,
fd.lat,
fd.lon,
fd.likes_count,
fd.comments_count
FROM
forum_dynamic fd
LEFT JOIN forum_dynamic_gambit fdg ON fd.id = fdg.dynamic_id
WHERE
fd.check_status = 1
<if
test=
"userAccountId!=null"
>
and fd.user_account_id=#{userAccountId}
</if>
ORDER BY
fd.id DESC
LIMIT 5
</select>
<select
id=
"appGambitList"
resultType=
"com.mmc.csf.release.entity.gambit.ForumGambitDO"
parameterType=
"com.mmc.csf.release.gambit.qo.ForumGambitQO"
>
select id,gambit_name,gambit_icon,gambit_cover,post_count,gambit_property,user_account_id,discussion_count
from forum_gambit where check_status=1
<if
test=
"gambitName!='' and gambitName!=null"
>
and gambit_name like concat ('%',#{gambitName},'%')
</if>
ORDER BY gambit_property,create_time DESC
limit #{pageNo}, #{pageSize}
</select>
<select
id=
"appGambitListCount"
resultType=
"java.lang.Integer"
>
select count(*) from forum_gambit where check_status=1
<if
test=
"gambitName!='' and gambitName!=null"
>
gambit_name like concat ('%',#{gambitName},'%')
</if>
ORDER BY gambit_property,create_time DESC
</select>
<select
id=
"selectGambit"
resultType=
"com.mmc.csf.release.entity.gambit.ForumGambitDO"
>
SELECT DISTINCT
gf.id,
gf.gambit_name
FROM
forum_dynamic_gambit fdg
INNER JOIN forum_gambit gf
WHERE
fdg.gambit_id = gf.id
AND fdg.check_status = 1
AND fdg.dynamic_id = #{id}
</select>
<insert
id=
"insertforumFirstLevelReview"
parameterType=
"com.mmc.csf.release.entity.forum.ForumFirstLevelReviewDO"
>
insert into forum_review(user_account_id,dynamic_id,content,review_id,pid,create_time,update_time)
values(#{userAccountId},#{dynamicId},#{content},#{reviewId},#{pid},NOW(),NOW())
</insert>
<insert
id=
"insertResource"
>
insert into forum_resource(dynamic_id, resource_url, `type`)
values (#{dynamicId}, #{url}, #{type})
...
...
@@ -100,7 +286,8 @@
lon,
likes_count,
comments_count,
create_time
create_time,
id AS dynamicId
from forum_dynamic
where is_deleted = 0
and root_path is null
...
...
@@ -217,13 +404,4 @@
ORDER BY
create_time DESC
</select>
<select
id=
"getDynamicCount"
resultType=
"java.lang.Integer"
>
select count(*)
from forum_dynamic
where root_path is null
</select>
<select
id=
"getGambitReleaseCount"
resultType=
"java.lang.Integer"
>
select count(*)
from forum_gambit
</select>
</mapper>
\ No newline at end of file
</mapper>
release-service/src/main/resources/mapper/gambit/GambitDao.xml
0 → 100644
浏览文件 @
d6ccf1f1
差异被折叠。
点击展开。
release-service/src/main/resources/not-check.yml
浏览文件 @
d6ccf1f1
...
...
@@ -38,3 +38,4 @@ data-filter:
-
/release/licence/background/appListOrgPage
-
/release/licence/background/webListOrgPage
-
/release/requirements/appPublishList
-
/release/dynamic/recentNews
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论