Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
ims
Commits
a5b94054
提交
a5b94054
authored
6月 20, 2023
作者:
xiaowang
提交者:
余乾开
7月 01, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
小小优化
上级
16d3e183
隐藏空白字符变更
内嵌
并排
正在显示
25 个修改的文件
包含
903 行增加
和
629 行删除
+903
-629
DynamicInfoDTO.java
...in/java/com/mmc/csf/release/forum/dto/DynamicInfoDTO.java
+35
-0
DynamicQO.java
...src/main/java/com/mmc/csf/release/forum/qo/DynamicQO.java
+31
-0
UserBaseInfoVO.java
...ain/java/com/mmc/csf/release/forum/vo/UserBaseInfoVO.java
+6
-0
BackstageForumController.java
.../mmc/csf/release/controller/BackstageForumController.java
+38
-0
BackstageForumDao.java
.../main/java/com/mmc/csf/release/dao/BackstageForumDao.java
+22
-0
DynamicDAO.java
...ice/src/main/java/com/mmc/csf/release/dao/DynamicDAO.java
+108
-108
LikeDAO.java
...ervice/src/main/java/com/mmc/csf/release/dao/LikeDAO.java
+38
-39
WebsiteDao.java
...ice/src/main/java/com/mmc/csf/release/dao/WebsiteDao.java
+14
-16
ForumCommentDO.java
...java/com/mmc/csf/release/entity/forum/ForumCommentDO.java
+18
-35
ForumDynamicDO.java
...java/com/mmc/csf/release/entity/forum/ForumDynamicDO.java
+53
-68
ForumImageDO.java
...n/java/com/mmc/csf/release/entity/forum/ForumImageDO.java
+14
-28
ForumLikeDO.java
...in/java/com/mmc/csf/release/entity/forum/ForumLikeDO.java
+10
-20
ForumVideoDO.java
...n/java/com/mmc/csf/release/entity/forum/ForumVideoDO.java
+14
-28
DummyFlyerDO.java
...n/java/com/mmc/csf/release/entity/store/DummyFlyerDO.java
+1
-1
DummyUavDO.java
...ain/java/com/mmc/csf/release/entity/store/DummyUavDO.java
+1
-1
MaintainDO.java
...ain/java/com/mmc/csf/release/entity/store/MaintainDO.java
+24
-18
WebsiteInfoDO.java
.../java/com/mmc/csf/release/entity/store/WebsiteInfoDO.java
+23
-14
BackstageForumService.java
...va/com/mmc/csf/release/service/BackstageForumService.java
+15
-0
BackstageForumServiceImpl.java
...c/csf/release/service/impl/BackstageForumServiceImpl.java
+125
-0
DynamicServiceImpl.java
.../com/mmc/csf/release/service/impl/DynamicServiceImpl.java
+201
-182
WebsiteServiceImpl.java
.../com/mmc/csf/release/service/impl/WebsiteServiceImpl.java
+27
-23
BackstageForumDao.xml
...ice/src/main/resources/mapper/forum/BackstageForumDao.xml
+25
-0
DynamicMapper.xml
...service/src/main/resources/mapper/forum/DynamicMapper.xml
+12
-10
LikeMapper.xml
...se-service/src/main/resources/mapper/forum/LikeMapper.xml
+1
-1
WebsiteDao.xml
...-service/src/main/resources/mapper/website/WebsiteDao.xml
+47
-37
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/dto/DynamicInfoDTO.java
0 → 100644
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
forum
.
dto
;
import
com.mmc.csf.release.forum.vo.MediaVO
;
import
com.mmc.csf.release.forum.vo.UserBaseInfoVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author LW
*
* @date 2023/6/19 14:25 概要:
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
DynamicInfoDTO
{
@ApiModelProperty
(
value
=
"动态id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"动态描述"
)
private
String
description
;
@ApiModelProperty
(
value
=
"图片/视频"
)
private
MediaVO
mediaVO
;
@ApiModelProperty
(
value
=
"show: 0显示 1隐藏"
)
private
Integer
show
;
@ApiModelProperty
(
value
=
"发布动态用户信息"
)
private
UserBaseInfoVO
userBaseInfo
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/qo/DynamicQO.java
0 → 100644
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
forum
.
qo
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
/**
* @Author LW
* @date 2023/6/19 11:12
* 概要:
*/
@Data
public
class
DynamicQO
implements
Serializable
{
@ApiModelProperty
(
value
=
"关键字"
,
required
=
true
,
example
=
"作者"
)
private
String
keyword
;
@ApiModelProperty
(
value
=
"页码"
,
required
=
true
,
example
=
"1"
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
{
Page
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
required
=
true
,
example
=
"10"
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
{
Page
.
class
})
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageSize
;
public
void
buildCurrentPage
()
{
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/UserBaseInfoVO.java
浏览文件 @
a5b94054
...
...
@@ -22,4 +22,10 @@ public class UserBaseInfoVO implements Serializable {
private
String
nickName
;
@ApiModelProperty
(
value
=
"用户头像"
)
private
String
userImg
;
@ApiModelProperty
(
value
=
"用户名称"
)
private
String
userName
;
@ApiModelProperty
(
value
=
"手机号"
)
private
String
phone
;
@ApiModelProperty
(
value
=
"UID"
)
private
String
uid
;
}
release-service/src/main/java/com/mmc/csf/release/controller/BackstageForumController.java
0 → 100644
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
controller
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.release.forum.dto.DynamicInfoDTO
;
import
com.mmc.csf.release.forum.qo.DynamicQO
;
import
com.mmc.csf.release.service.BackstageForumService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.servlet.http.HttpServletRequest
;
/**
* @Author LW
*
* @date 2023/6/19 10:44 概要:
*/
@Api
(
tags
=
{
"后台-论坛管理-模块"
})
@RestController
@RequestMapping
(
"/backstage/forum"
)
public
class
BackstageForumController
{
@Autowired
BackstageForumService
backstageForumService
;
@ApiOperation
(
value
=
"动态列表"
)
@PostMapping
(
"/listDynamic"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicInfoDTO
.
class
)})
public
ResultBody
<
DynamicInfoDTO
>
listDynamic
(
@RequestBody
DynamicQO
dynamic
,
HttpServletRequest
request
)
{
return
ResultBody
.
success
(
backstageForumService
.
listDynamic
(
dynamic
,
request
));
}
}
release-service/src/main/java/com/mmc/csf/release/dao/BackstageForumDao.java
0 → 100644
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.release.entity.forum.ForumDynamicDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @Author LW
*
* @date 2023/6/19 10:50 概要:
*/
@Mapper
public
interface
BackstageForumDao
{
int
countDynamic
(
@Param
(
"ids"
)
List
<
Integer
>
ids
);
List
<
ForumDynamicDO
>
listDynamicInfo
(
@Param
(
"ids"
)
List
<
Integer
>
ids
,
@Param
(
"pageNo"
)
int
pageNo
,
@Param
(
"pageSize"
)
Integer
pageSize
);
}
release-service/src/main/java/com/mmc/csf/release/dao/DynamicDAO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.release.entity.ForumDynamicDO
;
import
com.mmc.csf.release.entity.ForumImageDO
;
import
com.mmc.csf.release.entity.ForumVideoDO
;
import
com.mmc.csf.release.entity.
forum.
ForumDynamicDO
;
import
com.mmc.csf.release.entity.
forum.
ForumImageDO
;
import
com.mmc.csf.release.entity.
forum.
ForumVideoDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -10,113 +10,113 @@ import java.util.List;
/**
* @Author LW
*
@date 2023/5/15 10:29
* 概要:动态信息数据访问层
*
*
@date 2023/5/15 10:29
概要:动态信息数据访问层
*/
@Mapper
public
interface
DynamicDAO
{
/**
* 插入动态
*
* @param forumDynamicDO 论坛动态信息
* @return {@link ForumDynamicDO}
*/
void
insertDynamic
(
ForumDynamicDO
forumDynamicDO
);
/**
* 插入图片
*
* @param dynamicId 动态id
* @param url
url
*/
void
insertPicture
(
@Param
(
"dynamicId"
)
Integer
dynamicId
,
@Param
(
"url"
)
String
url
);
/**
* 插入视频
*
* @param dynamicId 动态id
* @param videoUrl
视频网址
*/
void
insertVideo
(
@Param
(
"dynamicId"
)
Integer
dynamicId
,
@Param
(
"videoUrl"
)
String
videoUrl
);
/**
* 更新动态点赞数量
*
* @param dynamicId 动态id
* @param pid
pid
*/
void
updateDynamicLikeCount
(
@Param
(
"dynamicId"
)
Integer
dynamicId
,
@Param
(
"pid"
)
Integer
pid
);
/**
* 得到动态信息
*
* @param dynamicId 动态id
* @return {@link ForumDynamicDO}
*/
ForumDynamicDO
getDynamicInfo
(
Integer
dynamicId
);
/**
* 动态点赞数减
*
* @param dynamicId 动态id
* @param pid
pid
*/
void
updateSubDynamicLikeCount
(
Integer
dynamicId
,
Integer
pid
);
/**
* 更新动态评论数
*
* @param dynamicId 动态id
* @param pid
pid
*/
void
updateDynamicCommentCount
(
Integer
dynamicId
,
Integer
pid
);
/**
* 动态列表计数
*
* @return int
*/
int
countDynamicList
();
/**
* 动态列表
*
* @param itemIndex 项指数
* @param pageSize
页面大小
* @return {@link List}<{@link ForumDynamicDO}>
*/
List
<
ForumDynamicDO
>
dynamicList
(
int
itemIndex
,
Integer
pageSize
);
/**
* 列表动态图片
*
* @param ids id
* @return {@link List}<{@link ForumImageDO}>
*/
List
<
ForumImageDO
>
listDynamicPicture
(
List
<
Integer
>
ids
);
/**
* 动态视频列表
*
* @param ids id
* @return {@link List}<{@link ForumVideoDO}>
*/
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
);
/**
* 插入动态
*
* @param forumDynamicDO 论坛动态信息
* @return {@link ForumDynamicDO}
*/
void
insertDynamic
(
ForumDynamicDO
forumDynamicDO
);
/**
* 插入图片
*
* @param dynamicId 动态id
* @param url
url
*/
void
insertPicture
(
@Param
(
"dynamicId"
)
Integer
dynamicId
,
@Param
(
"url"
)
String
url
);
/**
* 插入视频
*
* @param dynamicId 动态id
* @param videoUrl
视频网址
*/
void
insertVideo
(
@Param
(
"dynamicId"
)
Integer
dynamicId
,
@Param
(
"videoUrl"
)
String
videoUrl
);
/**
* 更新动态点赞数量
*
* @param dynamicId 动态id
* @param pid
pid
*/
void
updateDynamicLikeCount
(
@Param
(
"dynamicId"
)
Integer
dynamicId
,
@Param
(
"pid"
)
Integer
pid
);
/**
* 得到动态信息
*
* @param dynamicId 动态id
* @return {@link ForumDynamicDO}
*/
ForumDynamicDO
getDynamicInfo
(
Integer
dynamicId
);
/**
* 动态点赞数减
*
* @param dynamicId 动态id
* @param pid
pid
*/
void
updateSubDynamicLikeCount
(
Integer
dynamicId
,
Integer
pid
);
/**
* 更新动态评论数
*
* @param dynamicId 动态id
* @param pid
pid
*/
void
updateDynamicCommentCount
(
Integer
dynamicId
,
Integer
pid
);
/**
* 动态列表计数
*
* @return int
*/
int
countDynamicList
();
/**
* 动态列表
*
* @param itemIndex 项指数
* @param pageSize
页面大小
* @return {@link List}<{@link ForumDynamicDO}>
*/
List
<
ForumDynamicDO
>
dynamicList
(
int
itemIndex
,
Integer
pageSize
);
/**
* 列表动态图片
*
* @param ids id
* @return {@link List}<{@link ForumImageDO}>
*/
List
<
ForumImageDO
>
listDynamicPicture
(
List
<
Integer
>
ids
);
/**
* 动态视频列表
*
* @param ids id
* @return {@link List}<{@link ForumVideoDO}>
*/
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/dao/LikeDAO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.release.entity.ForumDynamicDO
;
import
com.mmc.csf.release.entity.forum.ForumDynamicDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -9,45 +8,45 @@ import java.util.List;
/**
* @Author LW
*
@date 2023/5/15 10:29
* 概要:点赞信息数据访问层
*
*
@date 2023/5/15 10:29
概要:点赞信息数据访问层
*/
@Mapper
public
interface
LikeDAO
{
/**
* 插入点赞信息
*
* @param userId
用户id
* @param dynamicId 动态id
*/
void
insertLike
(
@Param
(
"userId"
)
int
userId
,
@Param
(
"dynamicId"
)
int
dynamicId
);
/**
* 删除点赞信息
*
* @param userId
用户id
* @param dynamicId 动态id
* @return int
*/
int
deleteLike
(
@Param
(
"userId"
)
int
userId
,
@Param
(
"dynamicId"
)
int
dynamicId
);
/**
* 是否是点赞过的
*
* @param userId
用户id
* @param dynamicId 动态id
* @return boolean
*/
boolean
isLiked
(
@Param
(
"userId"
)
int
userId
,
@Param
(
"dynamicId"
)
int
dynamicId
);
/**
* 点赞数
*
* @param dynamicId 动态id
* @return int
*/
int
getLikesCount
(
int
dynamicId
);
List
<
ForumDynamicDO
>
selectLiked
(
Integer
userId
,
List
<
Integer
>
ids
);
/**
* 插入点赞信息
*
* @param userId
用户id
* @param dynamicId 动态id
*/
void
insertLike
(
@Param
(
"userId"
)
int
userId
,
@Param
(
"dynamicId"
)
int
dynamicId
);
/**
* 删除点赞信息
*
* @param userId
用户id
* @param dynamicId 动态id
* @return int
*/
int
deleteLike
(
@Param
(
"userId"
)
int
userId
,
@Param
(
"dynamicId"
)
int
dynamicId
);
/**
* 是否是点赞过的
*
* @param userId
用户id
* @param dynamicId 动态id
* @return boolean
*/
boolean
isLiked
(
@Param
(
"userId"
)
int
userId
,
@Param
(
"dynamicId"
)
int
dynamicId
);
/**
* 点赞数
*
* @param dynamicId 动态id
* @return int
*/
int
getLikesCount
(
int
dynamicId
);
List
<
ForumDynamicDO
>
selectLiked
(
Integer
userId
,
List
<
Integer
>
ids
);
}
release-service/src/main/java/com/mmc/csf/release/dao/WebsiteDao.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.release.entity.DummyFlyerDO
;
import
com.mmc.csf.release.entity.DummyUavDO
;
import
com.mmc.csf.release.entity.MaintainDO
;
import
com.mmc.csf.release.entity.WebsiteInfoDO
;
import
com.mmc.csf.release.entity.store.DummyFlyerDO
;
import
com.mmc.csf.release.entity.store.DummyUavDO
;
import
com.mmc.csf.release.entity.store.MaintainDO
;
import
com.mmc.csf.release.entity.store.WebsiteInfoDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @Author LW
*
@date 2022/4/21 19:21
* 概要:
*
*
@date 2022/4/21 19:21
概要:
*/
@Mapper
public
interface
WebsiteDao
{
int
countDummyFlyer
();
List
<
DummyFlyerDO
>
listDummyFlyer
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
int
countDummyFlyer
();
int
countDummyUav
(
);
List
<
DummyFlyerDO
>
listDummyFlyer
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
List
<
DummyUavDO
>
listDummyUav
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
int
countDummyUav
(
);
int
countMaintain
(
);
List
<
DummyUavDO
>
listDummyUav
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
List
<
MaintainDO
>
listMaintain
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
int
countMaintain
(
);
List
<
WebsiteInfoDO
>
getWebsiteList
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
List
<
MaintainDO
>
listMaintain
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
int
countWebsiteList
(
);
List
<
WebsiteInfoDO
>
getWebsiteList
(
Double
lon
,
Double
lat
,
Integer
pageNo
,
Integer
pageSize
);
int
countWebsiteList
();
}
release-service/src/main/java/com/mmc/csf/release/entity/ForumCommentDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
forum/
ForumCommentDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
@@ -19,38 +19,21 @@ import java.util.Date;
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ForumCommentDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
768897358613182410L
;
/**
* 评论id
*/
private
Integer
id
;
/**
* 用户id,外键,关联user表
*/
private
Integer
userId
;
/**
* 动态id,外键,关联dynamic表
*/
private
Integer
dynamicId
;
/**
* 评论内容
*/
private
String
content
;
/**
* 点赞数量
*/
private
Integer
likesCount
;
/**
* 创建时间
*/
private
Date
createTime
;
/**
* 修改时间
*/
private
Date
updateTime
;
/**
* 是否删除,0表示未删除,1表示已删除
*/
private
Integer
deleted
;
private
static
final
long
serialVersionUID
=
768897358613182410L
;
/** 评论id */
private
Integer
id
;
/** 用户id,外键,关联user表 */
private
Integer
userId
;
// todo userAccountId
/** 动态id,外键,关联dynamic表 */
private
Integer
dynamicId
;
/** 评论内容 */
private
String
content
;
/** 点赞数量 */
private
Integer
likesCount
;
/** 创建时间 */
private
Date
createTime
;
/** 修改时间 */
private
Date
updateTime
;
/** 是否删除,0表示未删除,1表示已删除 */
private
Integer
deleted
;
}
release-service/src/main/java/com/mmc/csf/release/entity/ForumDynamicDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
forum/
ForumDynamicDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
com.mmc.csf.release.forum.dto.DynamicInfoDTO
;
import
com.mmc.csf.release.forum.vo.DynamicVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
@@ -21,73 +22,57 @@ import java.util.Date;
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ForumDynamicDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
570379773690905364L
;
/**
* 主键,自增长
*/
private
Integer
id
;
/**
* 版本字段pid
*/
private
Integer
pid
;
/**
* 动态标题
*/
private
String
title
;
/**
* 发布用户ID
*/
private
Integer
userId
;
/**
* 动态描述
*/
private
String
description
;
/**
* 发布动态具体位置
*/
private
String
location
;
/**
* 发布动态纬度
*/
private
BigDecimal
lat
;
/**
* 发布动态经度
*/
private
BigDecimal
lon
;
/**
* 点赞数
*/
private
Integer
likesCount
;
/**
* 评论数
*/
private
Integer
commentsCount
;
/**
* 创建时间
*/
private
Date
createTime
;
/**
* 修改时间
*/
private
Date
updateTime
;
/**
* 是否删除,默认为0表示未删除
*/
private
Integer
deleted
;
private
static
final
long
serialVersionUID
=
570379773690905364L
;
/** 主键,自增长 */
private
Integer
id
;
/** 版本字段pid */
private
Integer
pid
;
// todo 修改为 version
/** 动态标题 */
private
String
title
;
// todo 删除
/** 发布用户ID */
private
Integer
userId
;
// todo 改userAccountId
/** 动态描述 */
private
String
description
;
/** 发布动态具体位置 */
private
String
location
;
/** 发布动态纬度 */
private
BigDecimal
lat
;
/** 发布动态经度 */
private
BigDecimal
lon
;
/** 点赞数 */
private
Integer
likesCount
;
/** 评论数 */
private
Integer
commentsCount
;
/** 创建时间 */
private
Date
createTime
;
/** 修改时间 */
private
Date
updateTime
;
/** 是否删除,默认为0表示未删除 */
private
Integer
deleted
;
public
ForumDynamicDO
(
DynamicVO
dynamicVO
)
{
this
.
title
=
dynamicVO
.
getTitle
();
this
.
description
=
dynamicVO
.
getDescription
();
this
.
location
=
dynamicVO
.
getLocation
();
this
.
lat
=
dynamicVO
.
getLat
();
this
.
lon
=
dynamicVO
.
getLon
();
}
public
ForumDynamicDO
(
DynamicVO
dynamicVO
)
{
this
.
title
=
dynamicVO
.
getTitle
();
this
.
description
=
dynamicVO
.
getDescription
();
this
.
location
=
dynamicVO
.
getLocation
();
this
.
lat
=
dynamicVO
.
getLat
();
this
.
lon
=
dynamicVO
.
getLon
();
}
public
DynamicVO
buildDynamicVO
()
{
return
DynamicVO
.
builder
().
id
(
id
).
description
(
description
)
.
commentCount
(
commentsCount
).
likesCount
(
likesCount
)
.
lat
(
lat
).
lon
(
lon
).
location
(
location
).
title
(
title
)
.
dynamicPublishTime
(
createTime
).
build
();
}
}
public
DynamicVO
buildDynamicVO
()
{
return
DynamicVO
.
builder
()
.
id
(
id
)
.
description
(
description
)
.
commentCount
(
commentsCount
)
.
likesCount
(
likesCount
)
.
lat
(
lat
)
.
lon
(
lon
)
.
location
(
location
)
.
title
(
title
)
.
dynamicPublishTime
(
createTime
)
.
build
();
}
public
DynamicInfoDTO
buildDynamicInfoDTO
()
{
return
DynamicInfoDTO
.
builder
().
id
(
id
).
description
(
description
).
show
(
deleted
).
build
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/ForumImageDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
forum/
ForumImageDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
@@ -19,31 +19,17 @@ import java.util.Date;
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ForumImageDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
678578415154893126L
;
/**
* 主键,自增长
*/
private
Integer
id
;
/**
* 动态ID,必填
*/
private
Integer
dynamicId
;
/**
* 图片URL,必填
*/
private
String
url
;
/**
* 创建时间
*/
private
Date
createTime
;
/**
* 修改时间
*/
private
Date
updateTime
;
/**
* 是否删除,默认为0表示未删除
*/
private
Integer
deleted
;
private
static
final
long
serialVersionUID
=
678578415154893126L
;
/** 主键,自增长 */
private
Integer
id
;
// todo 删除
/** 动态ID,必填 */
private
Integer
dynamicId
;
/** 图片URL,必填 */
private
String
url
;
/** 创建时间 */
private
Date
createTime
;
/** 修改时间 */
private
Date
updateTime
;
/** 是否删除,默认为0表示未删除 */
private
Integer
deleted
;
// todo 删除
}
release-service/src/main/java/com/mmc/csf/release/entity/ForumLikeDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
forum/
ForumLikeDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
@@ -19,23 +19,13 @@ import java.util.Date;
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ForumLikeDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
980171641026737097L
;
/**
* 点赞id
*/
private
Integer
id
;
/**
* 用户id,外键,关联user表
*/
private
Integer
userId
;
/**
* 动态id,外键,关联dynamic表
*/
private
Integer
dynamicId
;
/**
* 创建时间
*/
private
Date
createTime
;
private
static
final
long
serialVersionUID
=
980171641026737097L
;
/** 点赞id */
private
Integer
id
;
/** 用户id,外键,关联user表 */
private
Integer
userId
;
/** 动态id,外键,关联dynamic表 */
private
Integer
dynamicId
;
/** 创建时间 */
private
Date
createTime
;
}
release-service/src/main/java/com/mmc/csf/release/entity/ForumVideoDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
forum/
ForumVideoDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
forum
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
@@ -19,31 +19,17 @@ import java.util.Date;
@NoArgsConstructor
@Accessors
(
chain
=
true
)
public
class
ForumVideoDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
50745508548714291L
;
/**
* 主键,自增长
*/
private
Integer
id
;
/**
* 动态ID,必填
*/
private
Integer
dynamicId
;
/**
* 视频URL,必填
*/
private
String
url
;
/**
* 创建时间
*/
private
Date
createTime
;
/**
* 修改时间
*/
private
Date
updateTime
;
/**
* 是否删除,默认为0表示未删除
*/
private
Integer
deleted
;
private
static
final
long
serialVersionUID
=
-
50745508548714291L
;
/** 主键,自增长 */
private
Integer
id
;
/** 动态ID,必填 */
private
Integer
dynamicId
;
/** 视频URL,必填 */
private
String
url
;
/** 创建时间 */
private
Date
createTime
;
/** 修改时间 */
private
Date
updateTime
;
/** 是否删除,默认为0表示未删除 */
private
Integer
deleted
;
}
release-service/src/main/java/com/mmc/csf/release/entity/DummyFlyerDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
store/
DummyFlyerDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
store
;
import
com.mmc.csf.web.dto.DummyFlyerDTO
;
import
lombok.AllArgsConstructor
;
...
...
release-service/src/main/java/com/mmc/csf/release/entity/DummyUavDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
store/
DummyUavDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
store
;
import
com.mmc.csf.web.dto.DummyUavDTO
;
import
lombok.AllArgsConstructor
;
...
...
release-service/src/main/java/com/mmc/csf/release/entity/MaintainDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
store/
MaintainDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
store
;
import
com.mmc.csf.web.dto.MaintainDTO
;
import
lombok.AllArgsConstructor
;
...
...
@@ -18,26 +18,32 @@ import java.math.BigDecimal;
@AllArgsConstructor
@NoArgsConstructor
public
class
MaintainDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
53401640557659711L
;
private
Integer
id
;
private
String
name
;
private
String
address
;
private
Double
lon
;
private
Double
lat
;
private
static
final
long
serialVersionUID
=
-
53401640557659711L
;
private
Double
distance
;
private
Integer
id
;
private
String
name
;
private
String
address
;
public
MaintainDTO
buildMaintainDTO
()
{
this
.
distance
=
this
.
distance
==
null
?
0
:
(
BigDecimal
.
valueOf
(
this
.
distance
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_DOWN
)).
doubleValue
();
return
MaintainDTO
.
builder
().
name
(
name
).
address
(
address
).
lon
(
this
.
lon
).
lat
(
this
.
lat
).
distance
(
this
.
distance
/
1000
).
build
();
}
private
Double
lon
;
}
private
Double
lat
;
private
Double
distance
;
public
MaintainDTO
buildMaintainDTO
()
{
this
.
distance
=
this
.
distance
==
null
?
0
:
(
BigDecimal
.
valueOf
(
this
.
distance
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_DOWN
))
.
doubleValue
();
return
MaintainDTO
.
builder
()
.
name
(
name
)
.
address
(
address
)
.
lon
(
this
.
lon
)
.
lat
(
this
.
lat
)
.
distance
(
this
.
distance
/
1000
)
.
build
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/WebsiteInfoDO.java
→
release-service/src/main/java/com/mmc/csf/release/entity/
store/
WebsiteInfoDO.java
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
entity
;
package
com
.
mmc
.
csf
.
release
.
entity
.
store
;
import
com.mmc.csf.web.dto.WebsiteRangeDTO
;
import
lombok.AllArgsConstructor
;
...
...
@@ -10,23 +10,32 @@ import java.math.BigDecimal;
/**
* @Author LW
*
@date 2022/4/21 20:09
* 概要:
*
*
@date 2022/4/21 20:09
概要:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
WebsiteInfoDO
implements
Serializable
{
private
Integer
id
;
private
String
name
;
private
String
address
;
private
Double
lat
;
private
Double
lon
;
private
Double
distance
;
private
Integer
id
;
private
String
name
;
private
String
address
;
private
Double
lat
;
private
Double
lon
;
private
Double
distance
;
public
WebsiteRangeDTO
buildWebsiteRangeDTO
()
{
this
.
distance
=
this
.
distance
==
null
?
0
:
(
BigDecimal
.
valueOf
(
this
.
distance
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_DOWN
)).
doubleValue
();
return
WebsiteRangeDTO
.
builder
().
name
(
name
).
address
(
address
).
lon
(
this
.
lon
).
lat
(
this
.
lat
).
distance
(
this
.
distance
/
1000
).
build
();
}
public
WebsiteRangeDTO
buildWebsiteRangeDTO
()
{
this
.
distance
=
this
.
distance
==
null
?
0
:
(
BigDecimal
.
valueOf
(
this
.
distance
).
setScale
(
2
,
BigDecimal
.
ROUND_HALF_DOWN
))
.
doubleValue
();
return
WebsiteRangeDTO
.
builder
()
.
name
(
name
)
.
address
(
address
)
.
lon
(
this
.
lon
)
.
lat
(
this
.
lat
)
.
distance
(
this
.
distance
/
1000
)
.
build
();
}
}
release-service/src/main/java/com/mmc/csf/release/service/BackstageForumService.java
0 → 100644
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
service
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.release.forum.qo.DynamicQO
;
import
javax.servlet.http.HttpServletRequest
;
/**
* @Author LW
*
* @date 2023/6/19 10:47 概要:
*/
public
interface
BackstageForumService
{
PageResult
listDynamic
(
DynamicQO
dynamic
,
HttpServletRequest
request
);
}
release-service/src/main/java/com/mmc/csf/release/service/impl/BackstageForumServiceImpl.java
0 → 100644
浏览文件 @
a5b94054
package
com
.
mmc
.
csf
.
release
.
service
.
impl
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.infomation.dto.UserAccountSimpleDTO
;
import
com.mmc.csf.release.auth.qo.BUserAccountQO
;
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.entity.forum.ForumDynamicDO
;
import
com.mmc.csf.release.entity.forum.ForumImageDO
;
import
com.mmc.csf.release.entity.forum.ForumVideoDO
;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.forum.dto.DynamicInfoDTO
;
import
com.mmc.csf.release.forum.qo.DynamicQO
;
import
com.mmc.csf.release.forum.vo.MediaVO
;
import
com.mmc.csf.release.forum.vo.UserBaseInfoVO
;
import
com.mmc.csf.release.service.BackstageForumService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
/**
* @Author LW
*
* @date 2023/6/19 10:47 概要:
*/
@Service
public
class
BackstageForumServiceImpl
implements
BackstageForumService
{
@Autowired
BackstageForumDao
backstageForumDao
;
@Autowired
DynamicDAO
dynamicDAO
;
@Autowired
UserAppApi
userAppApi
;
@Override
public
PageResult
listDynamic
(
DynamicQO
dynamic
,
HttpServletRequest
request
)
{
List
<
Integer
>
userIds
=
null
;
if
(
dynamic
.
getKeyword
()
!=
null
)
{
BUserAccountQO
bUserAccountQO
=
new
BUserAccountQO
();
bUserAccountQO
.
setKeyword
(
dynamic
.
getKeyword
());
// 获取筛选的用户id
List
<
UserAccountSimpleDTO
>
userAccountSimpleDTOS
=
userAppApi
.
feignListBAccountPage
(
bUserAccountQO
,
request
.
getHeader
(
TokenConstant
.
TOKEN
));
if
(
CollectionUtils
.
isNotEmpty
(
userAccountSimpleDTOS
))
{
// 获取用户id
userIds
=
userAccountSimpleDTOS
.
stream
()
.
map
(
UserAccountSimpleDTO:
:
getId
)
.
collect
(
Collectors
.
toList
());
}
if
(
userIds
==
null
)
{
return
PageResult
.
buildPage
(
dynamic
.
getPageNo
(),
dynamic
.
getPageSize
(),
0
);
}
}
int
count
=
backstageForumDao
.
countDynamic
(
userIds
);
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
dynamic
.
getPageNo
(),
dynamic
.
getPageSize
(),
count
);
}
int
itemIndex
=
(
dynamic
.
getPageNo
()
-
1
)
*
dynamic
.
getPageSize
();
// 获取动态信息
List
<
ForumDynamicDO
>
dynamicList
=
backstageForumDao
.
listDynamicInfo
(
userIds
,
itemIndex
,
dynamic
.
getPageSize
());
// 动态id集合
List
<
Integer
>
ids
=
dynamicList
.
stream
().
map
(
ForumDynamicDO:
:
getId
).
collect
(
Collectors
.
toList
());
// 根据id集合查询图片
List
<
ForumImageDO
>
forumImageList
=
dynamicDAO
.
listDynamicPicture
(
ids
);
Map
<
Integer
,
List
<
ForumImageDO
>>
ImageMap
=
forumImageList
.
stream
().
collect
(
Collectors
.
groupingBy
(
ForumImageDO:
:
getDynamicId
));
// 获取视频信息
List
<
ForumVideoDO
>
forumVideoList
=
dynamicDAO
.
listDynamicVideo
(
ids
);
// 获取查询到的列表用户信息
// 获取用户信息
Set
<
Integer
>
ListUserIds
=
dynamicList
.
stream
().
map
(
ForumDynamicDO:
:
getUserId
).
collect
(
Collectors
.
toSet
());
List
<
Integer
>
userIdList
=
new
ArrayList
<>(
ListUserIds
);
BUserAccountQO
accountQO
=
new
BUserAccountQO
();
accountQO
.
setUserIds
(
userIdList
);
List
<
UserAccountSimpleDTO
>
userAccountSimpleList
=
userAppApi
.
feignListBAccountPage
(
accountQO
,
request
.
getHeader
(
TokenConstant
.
TOKEN
));
Map
<
Integer
,
UserAccountSimpleDTO
>
userAccountInfoMap
=
userAccountSimpleList
.
stream
()
.
collect
(
Collectors
.
toMap
(
UserAccountSimpleDTO:
:
getId
,
Function
.
identity
()));
List
<
DynamicInfoDTO
>
list
=
dynamicList
.
stream
()
.
map
(
d
->
{
DynamicInfoDTO
dynamicInfoDTO
=
d
.
buildDynamicInfoDTO
();
MediaVO
mediaVO
=
new
MediaVO
();
if
(
CollectionUtils
.
isNotEmpty
(
ImageMap
.
get
(
d
.
getId
())))
{
mediaVO
.
setPicture
(
ImageMap
.
get
(
d
.
getId
()).
stream
()
.
map
(
ForumImageDO:
:
getUrl
)
.
collect
(
Collectors
.
toList
()));
}
for
(
ForumVideoDO
forumVideoDO
:
forumVideoList
)
{
if
(
forumVideoDO
.
getDynamicId
().
equals
(
d
.
getId
()))
{
mediaVO
.
setVideoUrl
(
forumVideoDO
.
getUrl
());
break
;
}
}
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAccountInfoMap
.
get
(
d
.
getUserId
());
if
(
userAccountSimpleDTO
!=
null
)
{
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setId
(
d
.
getUserId
());
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
userBaseInfoVO
.
setUserName
(
userAccountSimpleDTO
.
getUserName
());
userBaseInfoVO
.
setPhone
(
userAccountSimpleDTO
.
getPhoneNum
());
userBaseInfoVO
.
setUid
(
userAccountSimpleDTO
.
getUid
());
dynamicInfoDTO
.
setUserBaseInfo
(
userBaseInfoVO
);
}
dynamicInfoDTO
.
setMediaVO
(
mediaVO
);
return
dynamicInfoDTO
;
})
.
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
dynamic
.
getPageNo
(),
dynamic
.
getPageSize
(),
count
,
list
);
}
}
release-service/src/main/java/com/mmc/csf/release/service/impl/DynamicServiceImpl.java
浏览文件 @
a5b94054
...
...
@@ -8,9 +8,9 @@ import com.mmc.csf.release.constant.TokenConstant;
import
com.mmc.csf.release.dao.CommentDAO
;
import
com.mmc.csf.release.dao.DynamicDAO
;
import
com.mmc.csf.release.dao.LikeDAO
;
import
com.mmc.csf.release.entity.ForumDynamicDO
;
import
com.mmc.csf.release.entity.ForumImageDO
;
import
com.mmc.csf.release.entity.ForumVideoDO
;
import
com.mmc.csf.release.entity.
forum.
ForumDynamicDO
;
import
com.mmc.csf.release.entity.
forum.
ForumImageDO
;
import
com.mmc.csf.release.entity.
forum.
ForumVideoDO
;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.forum.vo.*
;
import
com.mmc.csf.release.service.DynamicService
;
...
...
@@ -27,201 +27,220 @@ import java.util.stream.Collectors;
/**
* @Author LW
*
@date 2023/5/15 10:29
* 概要:动态信息实现层
*
*
@date 2023/5/15 10:29
概要:动态信息实现层
*/
@Service
public
class
DynamicServiceImpl
implements
DynamicService
{
@Resource
private
DynamicDAO
dynamicDAO
;
@Resource
private
LikeDAO
likeDAO
;
@Resource
private
CommentDAO
commentDAO
;
@Autowired
private
UserAppApi
userAppApi
;
@Resource
private
DynamicDAO
dynamicDAO
;
@Resource
private
LikeDAO
likeDAO
;
@Resource
private
CommentDAO
commentDAO
;
@Autowired
private
UserAppApi
userAppApi
;
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
insertDynamic
(
DynamicVO
dynamicVO
,
Integer
userAccountId
)
{
// 插入动态基本信息
ForumDynamicDO
forumDynamicDO
=
new
ForumDynamicDO
(
dynamicVO
);
forumDynamicDO
.
setUserId
(
userAccountId
);
dynamicDAO
.
insertDynamic
(
forumDynamicDO
);
// 插入动态图片或视频
MediaVO
mediaVO
=
dynamicVO
.
getMediaVO
();
// 插入图片
if
(
CollectionUtils
.
isNotEmpty
(
mediaVO
.
getPicture
()))
{
for
(
String
url
:
mediaVO
.
getPicture
())
{
dynamicDAO
.
insertPicture
(
forumDynamicDO
.
getId
(),
url
);
}
}
// 插入视频
if
(
mediaVO
.
getVideoUrl
()
!=
null
)
{
dynamicDAO
.
insertVideo
(
forumDynamicDO
.
getId
(),
mediaVO
.
getVideoUrl
());
}
return
ResultBody
.
success
(
"动态发布成功"
);
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
insertDynamic
(
DynamicVO
dynamicVO
,
Integer
userAccountId
)
{
// 插入动态基本信息
ForumDynamicDO
forumDynamicDO
=
new
ForumDynamicDO
(
dynamicVO
);
forumDynamicDO
.
setUserId
(
userAccountId
);
dynamicDAO
.
insertDynamic
(
forumDynamicDO
);
// 插入动态图片或视频
MediaVO
mediaVO
=
dynamicVO
.
getMediaVO
();
// 插入图片
if
(
CollectionUtils
.
isNotEmpty
(
mediaVO
.
getPicture
()))
{
for
(
String
url
:
mediaVO
.
getPicture
())
{
dynamicDAO
.
insertPicture
(
forumDynamicDO
.
getId
(),
url
);
}
}
@Override
public
ResultBody
likeDynamic
(
Integer
userId
,
Integer
dynamicId
)
{
// 获取动态信息
ForumDynamicDO
forumDynamicDO
=
dynamicDAO
.
getDynamicInfo
(
dynamicId
);
if
(!
likeDAO
.
isLiked
(
userId
,
dynamicId
))
{
likeDAO
.
insertLike
(
userId
,
dynamicId
);
dynamicDAO
.
updateDynamicLikeCount
(
dynamicId
,
forumDynamicDO
.
getPid
());
}
else
{
likeDAO
.
deleteLike
(
userId
,
dynamicId
);
dynamicDAO
.
updateSubDynamicLikeCount
(
dynamicId
,
forumDynamicDO
.
getPid
());
}
return
ResultBody
.
success
();
// 插入视频
if
(
mediaVO
.
getVideoUrl
()
!=
null
)
{
dynamicDAO
.
insertVideo
(
forumDynamicDO
.
getId
(),
mediaVO
.
getVideoUrl
());
}
return
ResultBody
.
success
(
"动态发布成功"
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
commentDynamic
(
CommentVO
commentVO
,
Integer
userAccountId
)
{
ForumDynamicDO
forumDynamicDO
=
dynamicDAO
.
getDynamicInfo
(
commentVO
.
getDynamicId
());
if
(
forumDynamicDO
==
null
)
{
return
ResultBody
.
error
(
"动态不存在或已删除"
);
}
if
(
commentVO
.
getParentId
()
==
null
)
{
commentDAO
.
insertComment
(
userAccountId
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
());
}
else
{
commentDAO
.
insertReplyComment
(
userAccountId
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
(),
commentVO
.
getParentId
());
}
dynamicDAO
.
updateDynamicCommentCount
(
commentVO
.
getDynamicId
(),
forumDynamicDO
.
getPid
());
return
ResultBody
.
success
();
@Override
public
ResultBody
likeDynamic
(
Integer
userId
,
Integer
dynamicId
)
{
// 获取动态信息
ForumDynamicDO
forumDynamicDO
=
dynamicDAO
.
getDynamicInfo
(
dynamicId
);
if
(!
likeDAO
.
isLiked
(
userId
,
dynamicId
))
{
likeDAO
.
insertLike
(
userId
,
dynamicId
);
dynamicDAO
.
updateDynamicLikeCount
(
dynamicId
,
forumDynamicDO
.
getPid
());
}
else
{
likeDAO
.
deleteLike
(
userId
,
dynamicId
);
dynamicDAO
.
updateSubDynamicLikeCount
(
dynamicId
,
forumDynamicDO
.
getPid
());
}
return
ResultBody
.
success
();
}
@Override
public
ResultBody
deleteComment
(
Integer
id
)
{
commentDAO
.
deleteComment
(
id
);
return
ResultBody
.
success
();
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
commentDynamic
(
CommentVO
commentVO
,
Integer
userAccountId
)
{
ForumDynamicDO
forumDynamicDO
=
dynamicDAO
.
getDynamicInfo
(
commentVO
.
getDynamicId
());
if
(
forumDynamicDO
==
null
)
{
return
ResultBody
.
error
(
"动态不存在或已删除"
);
}
if
(
commentVO
.
getParentId
()
==
null
)
{
commentDAO
.
insertComment
(
userAccountId
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
());
}
else
{
commentDAO
.
insertReplyComment
(
userAccountId
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
(),
commentVO
.
getParentId
());
}
dynamicDAO
.
updateDynamicCommentCount
(
commentVO
.
getDynamicId
(),
forumDynamicDO
.
getPid
());
return
ResultBody
.
success
();
}
@Override
public
ResultBody
deleteComment
(
Integer
id
)
{
commentDAO
.
deleteComment
(
id
);
return
ResultBody
.
success
();
}
@Override
public
List
<
CommentAndReplyVO
>
getCommentAndReply
(
Integer
dynamicId
,
HttpServletRequest
request
)
{
// 获取评论列表
List
<
CommentAndReplyVO
>
commentList
=
commentDAO
.
selectCommentList
(
dynamicId
);
commentList
=
commentList
.
stream
().
peek
(
d
->
{
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAppApi
.
feignGetUserSimpleInfo
(
d
.
getUserId
(),
request
.
getHeader
(
TokenConstant
.
TOKEN
));
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setId
(
d
.
getUserId
());
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
d
.
setUserBaseInfoVO
(
userBaseInfoVO
);
}).
collect
(
Collectors
.
toList
());
List
<
CommentAndReplyVO
>
topLevelComment
=
new
ArrayList
<>();
Map
<
Integer
,
CommentAndReplyVO
>
commentMap
=
new
HashMap
<>();
// 将每个数据模型对象添加到Map中,以便在递归过程中查找它们的父母
for
(
CommentAndReplyVO
comment
:
commentList
)
{
comment
.
setChildren
(
new
ArrayList
<>());
commentMap
.
put
(
comment
.
getId
(),
comment
);
}
// 构建树结构
for
(
CommentAndReplyVO
comment
:
commentList
)
{
if
(
comment
.
getParentId
()
==
0
)
{
topLevelComment
.
add
(
comment
);
}
else
{
CommentAndReplyVO
parent
=
commentMap
.
get
(
comment
.
getParentId
());
parent
.
getChildren
().
add
(
comment
);
}
}
return
topLevelComment
;
@Override
public
List
<
CommentAndReplyVO
>
getCommentAndReply
(
Integer
dynamicId
,
HttpServletRequest
request
)
{
// 获取评论列表
List
<
CommentAndReplyVO
>
commentList
=
commentDAO
.
selectCommentList
(
dynamicId
);
commentList
=
commentList
.
stream
()
.
peek
(
d
->
{
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAppApi
.
feignGetUserSimpleInfo
(
d
.
getUserId
(),
request
.
getHeader
(
TokenConstant
.
TOKEN
));
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setId
(
d
.
getUserId
());
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
d
.
setUserBaseInfoVO
(
userBaseInfoVO
);
})
.
collect
(
Collectors
.
toList
());
List
<
CommentAndReplyVO
>
topLevelComment
=
new
ArrayList
<>();
Map
<
Integer
,
CommentAndReplyVO
>
commentMap
=
new
HashMap
<>();
// 将每个数据模型对象添加到Map中,以便在递归过程中查找它们的父母
for
(
CommentAndReplyVO
comment
:
commentList
)
{
comment
.
setChildren
(
new
ArrayList
<>());
commentMap
.
put
(
comment
.
getId
(),
comment
);
}
// 构建树结构
for
(
CommentAndReplyVO
comment
:
commentList
)
{
if
(
comment
.
getParentId
()
==
0
)
{
topLevelComment
.
add
(
comment
);
}
else
{
CommentAndReplyVO
parent
=
commentMap
.
get
(
comment
.
getParentId
());
parent
.
getChildren
().
add
(
comment
);
}
}
return
topLevelComment
;
}
@Override
public
PageResult
dynamicList
(
Integer
pageNo
,
Integer
pageSize
,
Integer
userId
,
HttpServletRequest
request
)
{
int
count
=
dynamicDAO
.
countDynamicList
();
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
0
);
}
int
itemIndex
=
(
pageNo
-
1
)
*
pageSize
;
List
<
ForumDynamicDO
>
forumDynamicList
=
dynamicDAO
.
dynamicList
(
itemIndex
,
pageSize
);
// 动态id集合
List
<
Integer
>
ids
=
forumDynamicList
.
stream
().
map
(
ForumDynamicDO:
:
getId
).
collect
(
Collectors
.
toList
());
// 根据id集合查询图片
List
<
ForumImageDO
>
forumImageList
=
dynamicDAO
.
listDynamicPicture
(
ids
);
Map
<
Integer
,
List
<
ForumImageDO
>>
ImageMap
=
forumImageList
.
stream
().
collect
(
Collectors
.
groupingBy
(
ForumImageDO:
:
getDynamicId
));
// 获取视频信息
List
<
ForumVideoDO
>
forumVideoList
=
dynamicDAO
.
listDynamicVideo
(
ids
);
// 获取用户信息
Set
<
Integer
>
userIds
=
forumDynamicList
.
stream
().
map
(
ForumDynamicDO:
:
getUserId
).
collect
(
Collectors
.
toSet
());
List
<
Integer
>
userIdList
=
new
ArrayList
<>(
userIds
);
BUserAccountQO
bUserAccountQO
=
new
BUserAccountQO
();
bUserAccountQO
.
setUserIds
(
userIdList
);
// 解决bug
List
<
UserAccountSimpleDTO
>
userAccountSimpleDTOS
=
userAppApi
.
feignListBAccountPage
(
bUserAccountQO
,
request
.
getHeader
(
TokenConstant
.
TOKEN
));
Map
<
Integer
,
UserAccountSimpleDTO
>
userAccountInfoMap
=
userAccountSimpleDTOS
.
stream
().
collect
(
Collectors
.
toMap
(
UserAccountSimpleDTO:
:
getId
,
Function
.
identity
()));
//获取liked信息
List
<
ForumDynamicDO
>
forumDynamicDOS
=
likeDAO
.
selectLiked
(
userId
,
ids
);
List
<
DynamicVO
>
dynamicVOList
=
forumDynamicList
.
stream
()
.
map
(
d
->
{
MediaVO
mediaVO
=
new
MediaVO
();
if
(
CollectionUtils
.
isNotEmpty
(
ImageMap
.
get
(
d
.
getId
())))
{
mediaVO
.
setPicture
(
ImageMap
.
get
(
d
.
getId
()).
stream
().
map
(
ForumImageDO:
:
getUrl
).
collect
(
Collectors
.
toList
()));
}
for
(
ForumVideoDO
forumVideoDO
:
forumVideoList
)
{
if
(
forumVideoDO
.
getDynamicId
().
equals
(
d
.
getId
()))
{
mediaVO
.
setVideoUrl
(
forumVideoDO
.
getUrl
());
break
;
}
}
DynamicVO
dynamicVO
=
d
.
buildDynamicVO
();
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAccountInfoMap
.
get
(
d
.
getUserId
());
if
(
userAccountSimpleDTO
!=
null
){
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setId
(
d
.
getUserId
());
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
dynamicVO
.
setUserBaseInfo
(
userBaseInfoVO
);
@Override
public
PageResult
dynamicList
(
Integer
pageNo
,
Integer
pageSize
,
Integer
userId
,
HttpServletRequest
request
)
{
int
count
=
dynamicDAO
.
countDynamicList
();
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
0
);
}
int
itemIndex
=
(
pageNo
-
1
)
*
pageSize
;
List
<
ForumDynamicDO
>
forumDynamicList
=
dynamicDAO
.
dynamicList
(
itemIndex
,
pageSize
);
// 动态id集合
List
<
Integer
>
ids
=
forumDynamicList
.
stream
().
map
(
ForumDynamicDO:
:
getId
).
collect
(
Collectors
.
toList
());
// 根据id集合查询图片
List
<
ForumImageDO
>
forumImageList
=
dynamicDAO
.
listDynamicPicture
(
ids
);
Map
<
Integer
,
List
<
ForumImageDO
>>
ImageMap
=
forumImageList
.
stream
().
collect
(
Collectors
.
groupingBy
(
ForumImageDO:
:
getDynamicId
));
// 获取视频信息
List
<
ForumVideoDO
>
forumVideoList
=
dynamicDAO
.
listDynamicVideo
(
ids
);
// 获取用户信息
Set
<
Integer
>
userIds
=
forumDynamicList
.
stream
().
map
(
ForumDynamicDO:
:
getUserId
).
collect
(
Collectors
.
toSet
());
List
<
Integer
>
userIdList
=
new
ArrayList
<>(
userIds
);
BUserAccountQO
bUserAccountQO
=
new
BUserAccountQO
();
bUserAccountQO
.
setUserIds
(
userIdList
);
// 解决bug
List
<
UserAccountSimpleDTO
>
userAccountSimpleDTOS
=
userAppApi
.
feignListBAccountPage
(
bUserAccountQO
,
request
.
getHeader
(
TokenConstant
.
TOKEN
));
Map
<
Integer
,
UserAccountSimpleDTO
>
userAccountInfoMap
=
userAccountSimpleDTOS
.
stream
()
.
collect
(
Collectors
.
toMap
(
UserAccountSimpleDTO:
:
getId
,
Function
.
identity
()));
// 获取liked信息
List
<
ForumDynamicDO
>
forumDynamicDOS
=
likeDAO
.
selectLiked
(
userId
,
ids
);
List
<
DynamicVO
>
dynamicVOList
=
forumDynamicList
.
stream
()
.
map
(
d
->
{
MediaVO
mediaVO
=
new
MediaVO
();
if
(
CollectionUtils
.
isNotEmpty
(
ImageMap
.
get
(
d
.
getId
())))
{
mediaVO
.
setPicture
(
ImageMap
.
get
(
d
.
getId
()).
stream
()
.
map
(
ForumImageDO:
:
getUrl
)
.
collect
(
Collectors
.
toList
()));
}
for
(
ForumVideoDO
forumVideoDO
:
forumVideoList
)
{
if
(
forumVideoDO
.
getDynamicId
().
equals
(
d
.
getId
()))
{
mediaVO
.
setVideoUrl
(
forumVideoDO
.
getUrl
());
break
;
}
dynamicVO
.
setMediaVO
(
mediaVO
);
// 设置是否点赞
for
(
ForumDynamicDO
forumDynamicDO
:
forumDynamicDOS
)
{
if
(
forumDynamicDO
.
getId
().
equals
(
d
.
getId
())){
dynamicVO
.
setLikes
(
true
);
break
;
}
else
{
dynamicVO
.
setLikes
(
false
);
}
}
DynamicVO
dynamicVO
=
d
.
buildDynamicVO
();
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAccountInfoMap
.
get
(
d
.
getUserId
());
if
(
userAccountSimpleDTO
!=
null
)
{
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setId
(
d
.
getUserId
());
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
dynamicVO
.
setUserBaseInfo
(
userBaseInfoVO
);
}
dynamicVO
.
setMediaVO
(
mediaVO
);
// 设置是否点赞
for
(
ForumDynamicDO
forumDynamicDO
:
forumDynamicDOS
)
{
if
(
forumDynamicDO
.
getId
().
equals
(
d
.
getId
()))
{
dynamicVO
.
setLikes
(
true
);
break
;
}
else
{
dynamicVO
.
setLikes
(
false
);
}
return
dynamicVO
;
}).
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
dynamicVOList
);
}
}
return
dynamicVO
;
})
.
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
dynamicVOList
);
}
@Override
public
ResultBody
dynamicDetails
(
Integer
dynamicId
,
Integer
userId
,
HttpServletRequest
request
)
{
// 判断此动态是否还存在
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
);
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAppApi
.
feignGetUserSimpleInfo
(
dynamicInfo
.
getUserId
(),
request
.
getHeader
(
TokenConstant
.
TOKEN
));
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
userBaseInfoVO
.
setId
(
dynamicInfo
.
getUserId
());
dynamicVO
.
setUserBaseInfo
(
userBaseInfoVO
);
dynamicVO
.
setLikes
(
liked
);
// 设置评论信息
dynamicVO
.
setCommentAndReplyVO
(
this
.
getCommentAndReply
(
dynamicId
,
request
));
dynamicVO
.
setMediaVO
(
mediaVO
);
return
ResultBody
.
success
(
dynamicVO
);
@Override
public
ResultBody
dynamicDetails
(
Integer
dynamicId
,
Integer
userId
,
HttpServletRequest
request
)
{
// 判断此动态是否还存在
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
);
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAppApi
.
feignGetUserSimpleInfo
(
dynamicInfo
.
getUserId
(),
request
.
getHeader
(
TokenConstant
.
TOKEN
));
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
userBaseInfoVO
.
setId
(
dynamicInfo
.
getUserId
());
dynamicVO
.
setUserBaseInfo
(
userBaseInfoVO
);
dynamicVO
.
setLikes
(
liked
);
// 设置评论信息
dynamicVO
.
setCommentAndReplyVO
(
this
.
getCommentAndReply
(
dynamicId
,
request
));
dynamicVO
.
setMediaVO
(
mediaVO
);
return
ResultBody
.
success
(
dynamicVO
);
}
}
release-service/src/main/java/com/mmc/csf/release/service/impl/WebsiteServiceImpl.java
浏览文件 @
a5b94054
...
...
@@ -2,8 +2,8 @@ package com.mmc.csf.release.service.impl;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.release.dao.WebsiteDao
;
import
com.mmc.csf.release.entity.MaintainDO
;
import
com.mmc.csf.release.entity.WebsiteInfoDO
;
import
com.mmc.csf.release.entity.
store.
MaintainDO
;
import
com.mmc.csf.release.entity.
store.
WebsiteInfoDO
;
import
com.mmc.csf.release.service.WebsiteService
;
import
com.mmc.csf.web.dto.MaintainDTO
;
import
com.mmc.csf.web.dto.WebsiteRangeDTO
;
...
...
@@ -15,32 +15,36 @@ import java.util.stream.Collectors;
/**
* @Author LW
*
@date 2022/4/21 19:19
* 概要:
*
*
@date 2022/4/21 19:19
概要:
*/
@Service
public
class
WebsiteServiceImpl
implements
WebsiteService
{
@Autowired
private
WebsiteDao
websiteDao
;
@Autowired
private
WebsiteDao
websiteDao
;
@Override
public
PageResult
listMaintainData
(
Integer
pageNo
,
Integer
pageSize
,
Double
lon
,
Double
lat
)
{
int
count
=
websiteDao
.
countMaintain
();
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
);
}
List
<
MaintainDTO
>
list
=
websiteDao
.
listMaintain
(
lon
,
lat
,
(
pageNo
-
1
)
*
pageSize
,
pageSize
).
stream
().
map
(
MaintainDO:
:
buildMaintainDTO
).
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
list
);
@Override
public
PageResult
listMaintainData
(
Integer
pageNo
,
Integer
pageSize
,
Double
lon
,
Double
lat
)
{
int
count
=
websiteDao
.
countMaintain
();
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
);
}
List
<
MaintainDTO
>
list
=
websiteDao
.
listMaintain
(
lon
,
lat
,
(
pageNo
-
1
)
*
pageSize
,
pageSize
).
stream
()
.
map
(
MaintainDO:
:
buildMaintainDTO
)
.
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
list
);
}
@Override
public
PageResult
getWebsiteList
(
Integer
pageNo
,
Integer
pageSize
,
Double
lon
,
Double
lat
)
{
int
count
=
websiteDao
.
countWebsiteList
();
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
);
}
List
<
WebsiteRangeDTO
>
list
=
websiteDao
.
getWebsiteList
(
lon
,
lat
,
(
pageNo
-
1
)
*
pageSize
,
pageSize
).
stream
().
map
(
WebsiteInfoDO:
:
buildWebsiteRangeDTO
).
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
list
);
@Override
public
PageResult
getWebsiteList
(
Integer
pageNo
,
Integer
pageSize
,
Double
lon
,
Double
lat
)
{
int
count
=
websiteDao
.
countWebsiteList
();
if
(
count
==
0
)
{
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
);
}
List
<
WebsiteRangeDTO
>
list
=
websiteDao
.
getWebsiteList
(
lon
,
lat
,
(
pageNo
-
1
)
*
pageSize
,
pageSize
).
stream
()
.
map
(
WebsiteInfoDO:
:
buildWebsiteRangeDTO
)
.
collect
(
Collectors
.
toList
());
return
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
list
);
}
}
release-service/src/main/resources/mapper/forum/BackstageForumDao.xml
0 → 100644
浏览文件 @
a5b94054
<?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.mmc.csf.release.dao.BackstageForumDao"
>
<select
id=
"countDynamic"
resultType=
"java.lang.Integer"
>
select count(*) from forum_dynamic
<where>
<foreach
collection=
"ids"
index=
"index"
separator=
","
open=
"user_id in ("
close=
")"
item=
"ids"
>
#{ids}
</foreach>
</where>
</select>
<select
id=
"listDynamicInfo"
resultType=
"com.mmc.csf.release.entity.forum.ForumDynamicDO"
>
select id,user_id,description,is_deleted as deleted from forum_dynamic
<where>
<foreach
collection=
"ids"
index=
"index"
separator=
","
open=
"user_id in ("
close=
")"
item=
"ids"
>
#{ids}
</foreach>
</where>
limit #{pageNo},#{pageSize}
</select>
</mapper>
\ No newline at end of file
release-service/src/main/resources/mapper/forum/DynamicMapper.xml
浏览文件 @
a5b94054
...
...
@@ -12,7 +12,8 @@
insert into forum_video(dynamic_id, url)
values (#{dynamicId}, #{videoUrl})
</insert>
<insert
id=
"insertDynamic"
keyProperty=
"id"
useGeneratedKeys=
"true"
parameterType=
"com.mmc.csf.release.entity.ForumDynamicDO"
>
<insert
id=
"insertDynamic"
keyProperty=
"id"
useGeneratedKeys=
"true"
parameterType=
"com.mmc.csf.release.entity.forum.ForumDynamicDO"
>
INSERT INTO forum_dynamic(title, user_id, description, location, lat, lon)
VALUES (#{title}, #{userId}, #{description}, #{location}, #{lat}, #{lon})
</insert>
...
...
@@ -33,11 +34,11 @@
<update
id=
"updateDynamicCommentCount"
>
update forum_dynamic
set comments_count = comments_count + 1,
pid = pid + 1
pid
= pid + 1
where id = #{dynamicId}
and pid = #{pid};
</update>
<select
id=
"getDynamicInfo"
resultType=
"com.mmc.csf.release.entity.ForumDynamicDO"
>
<select
id=
"getDynamicInfo"
resultType=
"com.mmc.csf.release.entity.
forum.
ForumDynamicDO"
>
select id,
pid,
title,
...
...
@@ -51,13 +52,14 @@
create_time
from forum_dynamic
where id = #{dynamicId}
and is_deleted = 0
and is_deleted = 0
</select>
<select
id=
"countDynamicList"
resultType=
"java.lang.Integer"
>
select count(*)
from forum_dynamic where is_deleted = 0
from forum_dynamic
where is_deleted = 0
</select>
<select
id=
"dynamicList"
resultType=
"com.mmc.csf.release.entity.ForumDynamicDO"
>
<select
id=
"dynamicList"
resultType=
"com.mmc.csf.release.entity.
forum.
ForumDynamicDO"
>
select id,
pid,
title,
...
...
@@ -75,7 +77,7 @@
LIMIT #{itemIndex}, #{pageSize}
</select>
<select
id=
"listDynamicPicture"
resultType=
"com.mmc.csf.release.entity.ForumImageDO"
>
<select
id=
"listDynamicPicture"
resultType=
"com.mmc.csf.release.entity.
forum.
ForumImageDO"
>
select id, url , dynamic_id
from forum_image
where
...
...
@@ -84,7 +86,7 @@
#{item}
</foreach>
</select>
<select
id=
"listDynamicVideo"
resultType=
"com.mmc.csf.release.entity.ForumVideoDO"
>
<select
id=
"listDynamicVideo"
resultType=
"com.mmc.csf.release.entity.
forum.
ForumVideoDO"
>
select id, url , dynamic_id
from forum_video
where
...
...
@@ -93,7 +95,7 @@
#{item}
</foreach>
</select>
<select
id=
"dynamicPicture"
resultType=
"com.mmc.csf.release.entity.ForumImageDO"
>
<select
id=
"dynamicPicture"
resultType=
"com.mmc.csf.release.entity.
forum.
ForumImageDO"
>
select id,
dynamic_id,
url
...
...
@@ -101,7 +103,7 @@
where dynamic_id = #{dynamicId}
and is_deleted = 0
</select>
<select
id=
"dynamicVideo"
resultType=
"com.mmc.csf.release.entity.ForumVideoDO"
>
<select
id=
"dynamicVideo"
resultType=
"com.mmc.csf.release.entity.
forum.
ForumVideoDO"
>
select id,
dynamic_id,
url
...
...
release-service/src/main/resources/mapper/forum/LikeMapper.xml
浏览文件 @
a5b94054
...
...
@@ -41,7 +41,7 @@
) t
</select>
<select
id=
"selectLiked"
resultType=
"com.mmc.csf.release.entity.ForumDynamicDO"
>
<select
id=
"selectLiked"
resultType=
"com.mmc.csf.release.entity.
forum.
ForumDynamicDO"
>
SELECT fd.id
FROM forum_dynamic fd
INNER JOIN forum_like fl ON fd.id = fl.dynamic_id
...
...
release-service/src/main/resources/mapper/website/WebsiteDao.xml
浏览文件 @
a5b94054
...
...
@@ -4,7 +4,7 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.csf.release.dao.WebsiteDao"
>
<resultMap
id=
"dummyFlyerResultMap"
type=
"com.mmc.csf.release.entity.DummyFlyerDO"
>
<resultMap
id=
"dummyFlyerResultMap"
type=
"com.mmc.csf.release.entity.
store.
DummyFlyerDO"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"flyerName"
column=
"flyer_name"
/>
<result
property=
"phoneNum"
column=
"phone_num"
/>
...
...
@@ -13,7 +13,7 @@
<result
property=
"distance"
column=
"distance"
/>
</resultMap>
<resultMap
id=
"dummyUavResultMap"
type=
"com.mmc.csf.release.entity.DummyUavDO"
>
<resultMap
id=
"dummyUavResultMap"
type=
"com.mmc.csf.release.entity.
store.
DummyUavDO"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"code"
column=
"code"
/>
<result
property=
"online"
column=
"online"
/>
...
...
@@ -23,65 +23,74 @@
<result
property=
"distance"
column=
"distance"
/>
</resultMap>
<select
id=
"getWebsiteByAdCode"
resultType=
"com.mmc.csf.release.entity.WebsiteInfoDO"
>
<select
id=
"getWebsiteByAdCode"
resultType=
"com.mmc.csf.release.entity.
store.
WebsiteInfoDO"
>
select id, ad_code adCode, province, location, create_time createTime
from website_info
where ad_code = #{adCode}
</select>
<select
id=
"countDummyFlyer"
resultType=
"Integer"
>
select count(*) from dummy_flyer
select count(*)
from dummy_flyer
</select>
<select
id=
"listDummyFlyer"
resultMap=
"dummyFlyerResultMap"
>
SELECT id,flyer_name,phone_num,lon,lat,
st_distance_sphere(point(lon,lat),point(${lon},${lat})) as distance
SELECT id,
flyer_name,
phone_num,
lon,
lat,
st_distance_sphere(point(lon, lat), point(${lon}, ${lat})) as distance
FROM dummy_flyer
ORDER BY distance ASC
LIMIT #{pageNo},
#{pageSize}
LIMIT #{pageNo},
#{pageSize}
</select>
<select
id=
"countDummyUav"
resultType=
"Integer"
>
select count(*) from dummy_uav
select count(*)
from dummy_uav
</select>
<select
id=
"listDummyUav"
resultMap=
"dummyUavResultMap"
>
SELECT id,code,online,lon,lat,uav_name,
st_distance_sphere(point(lon,lat),point(${lon},${lat})) as distance
SELECT id,
code,
online,
lon,
lat,
uav_name,
st_distance_sphere(point(lon, lat), point(${lon}, ${lat})) as distance
FROM dummy_uav
ORDER BY distance ASC
LIMIT #{pageNo},
#{pageSize}
LIMIT #{pageNo},
#{pageSize}
</select>
<select
id=
"countMaintain"
resultType=
"java.lang.Integer"
>
select count(*) from maintain
select count(*)
from maintain
</select>
<select
id=
"listMaintain"
resultType=
"com.mmc.csf.release.entity.MaintainDO"
>
SELECT
id,
`name`,
address,
lon,
lat, st_distance_sphere (point (lon,lat),point (${lon},${lat})) AS distance
FROM
maintain
ORDER BY
distance ASC
LIMIT #{pageNo},#{pageSize}
<select
id=
"listMaintain"
resultType=
"com.mmc.csf.release.entity.store.MaintainDO"
>
SELECT id,
`name`,
address,
lon,
lat,
st_distance_sphere(point(lon, lat), point(${lon}, ${lat})) AS distance
FROM maintain
ORDER BY distance ASC
LIMIT #{pageNo}, #{pageSize}
</select>
<select
id=
"countWebsiteList"
resultType=
"java.lang.Integer"
>
select count(*) from website_info
select count(*)
from website_info
</select>
<select
id=
"getWebsiteList"
resultType=
"com.mmc.csf.release.entity.WebsiteInfoDO"
>
SELECT
id,
`name`,
address,
lon,
lat, st_distance_sphere (point (lon,lat),point (${lon},${lat})) AS distance
FROM
website_info
ORDER BY
distance ASC
LIMIT #{pageNo},#{pageSize}
<select
id=
"getWebsiteList"
resultType=
"com.mmc.csf.release.entity.store.WebsiteInfoDO"
>
SELECT id,
`name`,
address,
lon,
lat,
st_distance_sphere(point(lon, lat), point(${lon}, ${lat})) AS distance
FROM website_info
ORDER BY distance ASC
LIMIT #{pageNo}, #{pageSize}
</select>
</mapper>
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论