Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
ims-ci-test
Commits
dafcbe81
提交
dafcbe81
authored
5月 29, 2023
作者:
余乾开
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'release/0.0.1-529.1625'
上级
6fa3075f
d89773d3
显示空白字符变更
内嵌
并排
正在显示
22 个修改的文件
包含
342 行增加
和
37 行删除
+342
-37
LoginSuccessDTO.java
...in/java/com/mmc/csf/release/auth/dto/LoginSuccessDTO.java
+29
-0
RegistrationVO.java
...ain/java/com/mmc/csf/release/flyer/vo/RegistrationVO.java
+0
-2
CommentAndReplyVO.java
.../java/com/mmc/csf/release/forum/vo/CommentAndReplyVO.java
+3
-1
CommentVO.java
...src/main/java/com/mmc/csf/release/forum/vo/CommentVO.java
+0
-2
DynamicVO.java
...src/main/java/com/mmc/csf/release/forum/vo/DynamicVO.java
+2
-2
UserBaseInfoVO.java
...ain/java/com/mmc/csf/release/forum/vo/UserBaseInfoVO.java
+25
-0
kustomization.yaml
kustomization/overlays/dev/kustomization.yaml
+1
-1
DataFilterYml.java
...src/main/java/com/mmc/csf/release/auth/DataFilterYml.java
+26
-0
MvcConfiguration.java
.../main/java/com/mmc/csf/release/auth/MvcConfiguration.java
+23
-0
NotCheckUriConfig.java
...main/java/com/mmc/csf/release/auth/NotCheckUriConfig.java
+23
-0
TokenCheckHandleInterceptor.java
...com/mmc/csf/release/auth/TokenCheckHandleInterceptor.java
+79
-0
BaseController.java
...n/java/com/mmc/csf/release/controller/BaseController.java
+54
-0
DynamicController.java
...ava/com/mmc/csf/release/controller/DynamicController.java
+12
-11
FlyerTrainingController.java
...m/mmc/csf/release/controller/FlyerTrainingController.java
+4
-3
ForumDynamicDO.java
.../main/java/com/mmc/csf/release/entity/ForumDynamicDO.java
+1
-2
PilotRegistrationDO.java
.../java/com/mmc/csf/release/entity/PilotRegistrationDO.java
+0
-1
DynamicService.java
...main/java/com/mmc/csf/release/service/DynamicService.java
+2
-2
FlyerTrainingService.java
...ava/com/mmc/csf/release/service/FlyerTrainingService.java
+1
-1
DynamicServiceImpl.java
.../com/mmc/csf/release/service/impl/DynamicServiceImpl.java
+31
-8
FlyerTrainingServiceImpl.java
...mc/csf/release/service/impl/FlyerTrainingServiceImpl.java
+2
-1
PathUtil.java
...vice/src/main/java/com/mmc/csf/release/util/PathUtil.java
+16
-0
not-check.yml
release-service/src/main/resources/not-check.yml
+8
-0
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/auth/dto/LoginSuccessDTO.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
auth
.
dto
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @author 作者 geDuo
* @version 创建时间:2021年8月31日 下午8:06:14
* @explain 类说明
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
LoginSuccessDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
1200834589953161925L
;
private
String
token
;
private
Integer
userAccountId
;
private
String
accountNo
;
private
String
uid
;
private
String
phoneNum
;
private
String
userName
;
private
String
nickName
;
// private RoleInfoDTO roleInfo;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/flyer/vo/RegistrationVO.java
浏览文件 @
dafcbe81
...
@@ -18,8 +18,6 @@ import java.util.List;
...
@@ -18,8 +18,6 @@ import java.util.List;
@AllArgsConstructor
@AllArgsConstructor
public
class
RegistrationVO
implements
Serializable
{
public
class
RegistrationVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
3364708963790356041L
;
private
static
final
long
serialVersionUID
=
-
3364708963790356041L
;
@ApiModelProperty
(
value
=
"模拟用户id(后面从token获取,临时传下)"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"姓名"
)
@ApiModelProperty
(
value
=
"姓名"
)
private
String
name
;
private
String
name
;
@ApiModelProperty
(
value
=
"城市"
)
@ApiModelProperty
(
value
=
"城市"
)
...
...
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/CommentAndReplyVO.java
浏览文件 @
dafcbe81
...
@@ -26,8 +26,10 @@ public class CommentAndReplyVO implements Serializable {
...
@@ -26,8 +26,10 @@ public class CommentAndReplyVO implements Serializable {
private
Integer
dynamicId
;
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"父级评论id"
)
@ApiModelProperty
(
value
=
"父级评论id"
)
private
Integer
parentId
;
private
Integer
parentId
;
@ApiModelProperty
(
value
=
"动态发布人的id
(后期返回用户头像昵称信息)
"
)
@ApiModelProperty
(
value
=
"动态发布人的id"
)
private
Integer
userId
;
private
Integer
userId
;
@ApiModelProperty
(
value
=
"用户信息"
)
private
UserBaseInfoVO
userBaseInfoVO
;
@ApiModelProperty
(
value
=
"评论内容"
)
@ApiModelProperty
(
value
=
"评论内容"
)
private
String
content
;
private
String
content
;
@ApiModelProperty
(
value
=
"评论点赞数"
)
@ApiModelProperty
(
value
=
"评论点赞数"
)
...
...
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/CommentVO.java
浏览文件 @
dafcbe81
...
@@ -24,8 +24,6 @@ public class CommentVO implements Serializable {
...
@@ -24,8 +24,6 @@ public class CommentVO implements Serializable {
private
Integer
dynamicId
;
private
Integer
dynamicId
;
@ApiModelProperty
(
value
=
"父级评论id(不传则是评论动态 传了则是回复评论)"
)
@ApiModelProperty
(
value
=
"父级评论id(不传则是评论动态 传了则是回复评论)"
)
private
Integer
parentId
;
private
Integer
parentId
;
@ApiModelProperty
(
value
=
"模拟用户id"
)
private
Integer
userId
;
@ApiModelProperty
(
value
=
"评论内容"
)
@ApiModelProperty
(
value
=
"评论内容"
)
private
String
content
;
private
String
content
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/DynamicVO.java
浏览文件 @
dafcbe81
...
@@ -21,8 +21,8 @@ import java.util.List;
...
@@ -21,8 +21,8 @@ import java.util.List;
@AllArgsConstructor
@AllArgsConstructor
@Builder
@Builder
public
class
DynamicVO
implements
Serializable
{
public
class
DynamicVO
implements
Serializable
{
@ApiModelProperty
(
value
=
"
模拟用户id
"
)
@ApiModelProperty
(
value
=
"
发布动态用户信息
"
)
private
Integer
userId
;
private
UserBaseInfoVO
userBaseInfo
;
@ApiModelProperty
(
value
=
"动态id"
)
@ApiModelProperty
(
value
=
"动态id"
)
private
Integer
id
;
private
Integer
id
;
@ApiModelProperty
(
value
=
"动态标题"
)
@ApiModelProperty
(
value
=
"动态标题"
)
...
...
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/forum/vo/UserBaseInfoVO.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
forum
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
/**
* @Author LW
* @date 2023/5/29 15:30
* 概要:
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
UserBaseInfoVO
implements
Serializable
{
@ApiModelProperty
(
value
=
"用户id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"用户昵称"
)
private
String
nickName
;
@ApiModelProperty
(
value
=
"用户头像"
)
private
String
userImg
;
}
kustomization/overlays/dev/kustomization.yaml
浏览文件 @
dafcbe81
...
@@ -17,4 +17,4 @@ patches:
...
@@ -17,4 +17,4 @@ patches:
images
:
images
:
-
name
:
REGISTRY/NAMESPACE/IMAGE:TAG
-
name
:
REGISTRY/NAMESPACE/IMAGE:TAG
newName
:
mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/ims
newName
:
mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/ims
newTag
:
e905857c0b67d2893424ea05eb538494e0e9955c
newTag
:
8dabcdc0a08b166c3805409a31b306cd95db0c29
release-service/src/main/java/com/mmc/csf/release/auth/DataFilterYml.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
auth
;
import
org.springframework.beans.factory.config.YamlPropertiesFactoryBean
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.support.PropertySourcesPlaceholderConfigurer
;
import
org.springframework.core.io.ClassPathResource
;
import
java.util.Objects
;
/**
* Author: geDuo
* Date: 2022/6/2 17:26
*/
@Configuration
public
class
DataFilterYml
{
@Bean
public
static
PropertySourcesPlaceholderConfigurer
loadYml
(){
PropertySourcesPlaceholderConfigurer
configurer
=
new
PropertySourcesPlaceholderConfigurer
();
YamlPropertiesFactoryBean
yaml
=
new
YamlPropertiesFactoryBean
();
yaml
.
setResources
(
new
ClassPathResource
(
"not-check.yml"
));
configurer
.
setProperties
(
Objects
.
requireNonNull
(
yaml
.
getObject
()));
return
configurer
;
}
}
release-service/src/main/java/com/mmc/csf/release/auth/MvcConfiguration.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
auth
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.web.servlet.config.annotation.InterceptorRegistry
;
import
org.springframework.web.servlet.config.annotation.WebMvcConfigurer
;
/**
* @author: zj
* @Date: 2023/5/28 10:52
*/
@Configuration
public
class
MvcConfiguration
implements
WebMvcConfigurer
{
@Autowired
private
TokenCheckHandleInterceptor
tokenCheckHandleInterceptor
;
@Override
public
void
addInterceptors
(
InterceptorRegistry
registry
)
{
registry
.
addInterceptor
(
tokenCheckHandleInterceptor
);
WebMvcConfigurer
.
super
.
addInterceptors
(
registry
);
}
}
release-service/src/main/java/com/mmc/csf/release/auth/NotCheckUriConfig.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
auth
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.PropertySource
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/5/28 13:54
*/
@Data
@Configuration
@ConfigurationProperties
(
prefix
=
"data-filter"
,
ignoreUnknownFields
=
false
)
@PropertySource
(
"classpath:not-check.yml"
)
public
class
NotCheckUriConfig
{
// 不需要验证token的请求地址
private
List
<
String
>
notAuthPath
;
// 不需要验证token的请求地址;// 不需要验证token的请求地址
private
List
<
String
>
uploadPath
;
}
release-service/src/main/java/com/mmc/csf/release/auth/TokenCheckHandleInterceptor.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
auth
;
import
com.alibaba.fastjson.JSONObject
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.common.util.web.ResultEnum
;
import
com.mmc.csf.release.auth.dto.LoginSuccessDTO
;
import
com.mmc.csf.release.util.PathUtil
;
import
io.micrometer.core.instrument.util.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.servlet.HandlerInterceptor
;
import
org.springframework.web.servlet.ModelAndView
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.PrintWriter
;
/**
* @author: zj
* @Date: 2023/5/28 10:46
*/
@Component
public
class
TokenCheckHandleInterceptor
implements
HandlerInterceptor
{
@Autowired
private
StringRedisTemplate
stringRedisTemplate
;
@Autowired
private
NotCheckUriConfig
notCheckUriConfig
;
@Override
public
boolean
preHandle
(
HttpServletRequest
request
,
HttpServletResponse
response
,
Object
handler
)
throws
Exception
{
// 扫码登录还没做好,暂时先注释
String
requestURI
=
request
.
getRequestURI
();
//根据uri确认是否要拦截
if
(!
shouldFilter
(
requestURI
)){
return
true
;
}
String
token
=
request
.
getHeader
(
"token"
);
String
tokenJson
=
stringRedisTemplate
.
opsForValue
().
get
(
token
);
if
(
StringUtils
.
isBlank
(
tokenJson
)){
exceptionProcess
(
response
);
return
false
;
}
LoginSuccessDTO
loginSuccessDTO
=
JSONObject
.
parseObject
(
tokenJson
,
LoginSuccessDTO
.
class
);
if
(
loginSuccessDTO
!=
null
){
request
.
setAttribute
(
"userAccountId"
,
loginSuccessDTO
.
getUserAccountId
());
}
return
true
;
}
@Override
public
void
postHandle
(
HttpServletRequest
request
,
HttpServletResponse
response
,
Object
handler
,
ModelAndView
modelAndView
)
throws
Exception
{
}
@Override
public
void
afterCompletion
(
HttpServletRequest
request
,
HttpServletResponse
response
,
Object
handler
,
Exception
ex
)
throws
Exception
{
}
public
void
exceptionProcess
(
HttpServletResponse
response
)
throws
Exception
{
response
.
setContentType
(
"application/json;charset=utf-8"
);
PrintWriter
writer
=
response
.
getWriter
();
writer
.
write
(
ResultBody
.
error
(
ResultEnum
.
LOGIN_ACCOUNT_STATUS_ERROR
).
toString
());
writer
.
close
();
}
private
boolean
shouldFilter
(
String
path
)
{
// 路径与配置的相匹配,则执行过滤
for
(
String
pathPattern
:
notCheckUriConfig
.
getNotAuthPath
())
{
if
(
PathUtil
.
isPathMatch
(
pathPattern
,
path
))
{
// 如果匹配
return
false
;
}
}
return
true
;
}
}
release-service/src/main/java/com/mmc/csf/release/controller/BaseController.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
controller
;
import
com.alibaba.fastjson.JSONObject
;
import
com.mmc.csf.common.util.web.BizException
;
import
com.mmc.csf.common.util.web.ResultEnum
;
import
com.mmc.csf.release.auth.dto.LoginSuccessDTO
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
javax.servlet.http.HttpServletRequest
;
/**
* @author: zj
* @Date: 2023/5/25 18:11
*/
public
abstract
class
BaseController
{
@Autowired
private
StringRedisTemplate
stringRedisTemplate
;
/**
* 解析token,获取用户信息
* @param request
* @return
*/
// public BaseAccountDTO getUserLoginInfo(HttpServletRequest request) {
// String token = request.getHeader("token");
// try {
// Claims claims = JwtUtil.parseJwt(token);
// String userId = claims.get(JwtConstant.USER_ACCOUNT_ID).toString();
//// String roleId = claims.get("").toString();
// String tokenType = claims.get(JwtConstant.TOKEN_TYPE).toString();
// return BaseAccountDTO.builder().id(Integer.parseInt(userId)).tokenPort(tokenType).build();
// }catch (Exception e){
// throw new BizException("Invalid token");
// }
// }
/**
* 使用token从redis获取用户信息
* @param request
* @return
*/
public
LoginSuccessDTO
getUserLoginInfoFromRedis
(
HttpServletRequest
request
)
{
String
token
=
request
.
getHeader
(
"token"
);
String
json
=
stringRedisTemplate
.
opsForValue
().
get
(
token
);
if
(
StringUtils
.
isBlank
(
json
)){
throw
new
BizException
(
ResultEnum
.
LOGIN_ACCOUNT_STATUS_ERROR
);
}
LoginSuccessDTO
loginSuccessDTO
=
JSONObject
.
parseObject
(
json
,
LoginSuccessDTO
.
class
);
return
loginSuccessDTO
;
}
}
release-service/src/main/java/com/mmc/csf/release/controller/DynamicController.java
浏览文件 @
dafcbe81
...
@@ -9,6 +9,7 @@ import io.swagger.annotations.*;
...
@@ -9,6 +9,7 @@ import io.swagger.annotations.*;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
/**
/**
* @Author LW
* @Author LW
...
@@ -18,7 +19,7 @@ import javax.annotation.Resource;
...
@@ -18,7 +19,7 @@ import javax.annotation.Resource;
@Api
(
tags
=
{
"web-小程序-论坛社区-模块"
})
@Api
(
tags
=
{
"web-小程序-论坛社区-模块"
})
@RestController
@RestController
@RequestMapping
(
"/dynamic"
)
@RequestMapping
(
"/dynamic"
)
public
class
DynamicController
{
public
class
DynamicController
extends
BaseController
{
@Resource
@Resource
private
DynamicService
dynamicService
;
private
DynamicService
dynamicService
;
...
@@ -26,22 +27,22 @@ public class DynamicController {
...
@@ -26,22 +27,22 @@ public class DynamicController {
@ApiOperation
(
value
=
"动态发布"
)
@ApiOperation
(
value
=
"动态发布"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"/publish"
)
@PostMapping
(
"/publish"
)
public
ResultBody
publishDynamic
(
@RequestBody
DynamicVO
dynamicVO
)
{
public
ResultBody
publishDynamic
(
@RequestBody
DynamicVO
dynamicVO
,
HttpServletRequest
request
)
{
return
dynamicService
.
insertDynamic
(
dynamicVO
);
return
dynamicService
.
insertDynamic
(
dynamicVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
()
);
}
}
@ApiOperation
(
value
=
"点赞或取消点赞"
)
@ApiOperation
(
value
=
"点赞或取消点赞"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"/likeOrCancel"
)
@GetMapping
(
"/likeOrCancel"
)
public
ResultBody
likeOrCancel
(
@ApiParam
(
value
=
"模拟用户id"
)
@RequestParam
Integer
userId
,
@ApiParam
(
value
=
"动态id"
)
@RequestParam
Integer
dynamicId
)
{
public
ResultBody
likeOrCancel
(
HttpServletRequest
request
,
@ApiParam
(
value
=
"动态id"
)
@RequestParam
Integer
dynamicId
)
{
return
dynamicService
.
likeDynamic
(
userId
,
dynamicId
);
return
dynamicService
.
likeDynamic
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
()
,
dynamicId
);
}
}
@ApiOperation
(
value
=
"评论动态或回复评论"
)
@ApiOperation
(
value
=
"评论动态或回复评论"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"/comment"
)
@PostMapping
(
"/comment"
)
public
ResultBody
commentDynamic
(
@RequestBody
CommentVO
commentVO
)
{
public
ResultBody
commentDynamic
(
@RequestBody
CommentVO
commentVO
,
HttpServletRequest
request
)
{
return
dynamicService
.
commentDynamic
(
commentVO
);
return
dynamicService
.
commentDynamic
(
commentVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
()
);
}
}
@ApiOperation
(
value
=
"删除评论"
)
@ApiOperation
(
value
=
"删除评论"
)
...
@@ -61,14 +62,14 @@ public class DynamicController {
...
@@ -61,14 +62,14 @@ public class DynamicController {
@ApiOperation
(
value
=
"动态详情"
)
@ApiOperation
(
value
=
"动态详情"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@GetMapping
(
"/dynamicDetails"
)
@GetMapping
(
"/dynamicDetails"
)
public
ResultBody
dynamicDetails
(
@RequestParam
Integer
dynamicId
,
@RequestParam
Integer
userId
)
{
public
ResultBody
dynamicDetails
(
@RequestParam
Integer
dynamicId
,
HttpServletRequest
request
)
{
return
dynamicService
.
dynamicDetails
(
dynamicId
,
userId
);
return
dynamicService
.
dynamicDetails
(
dynamicId
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
()
);
}
}
@ApiOperation
(
value
=
"动态列表"
)
@ApiOperation
(
value
=
"动态列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
DynamicVO
.
class
)})
@GetMapping
(
"/dynamicList"
)
@GetMapping
(
"/dynamicList"
)
public
ResultBody
dynamicList
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
Integer
userId
)
{
public
ResultBody
dynamicList
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
HttpServletRequest
request
)
{
return
ResultBody
.
success
(
dynamicService
.
dynamicList
(
pageNo
,
pageSize
,
userId
));
return
ResultBody
.
success
(
dynamicService
.
dynamicList
(
pageNo
,
pageSize
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
()
));
}
}
}
}
release-service/src/main/java/com/mmc/csf/release/controller/FlyerTrainingController.java
浏览文件 @
dafcbe81
...
@@ -11,6 +11,7 @@ import io.swagger.annotations.*;
...
@@ -11,6 +11,7 @@ import io.swagger.annotations.*;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
/**
/**
...
@@ -21,7 +22,7 @@ import javax.annotation.Resource;
...
@@ -21,7 +22,7 @@ import javax.annotation.Resource;
@Api
(
tags
=
{
"web-小程序-飞手培训-模块"
})
@Api
(
tags
=
{
"web-小程序-飞手培训-模块"
})
@RestController
@RestController
@RequestMapping
(
"/curriculum/"
)
@RequestMapping
(
"/curriculum/"
)
public
class
FlyerTrainingController
{
public
class
FlyerTrainingController
extends
BaseController
{
@Resource
@Resource
private
FlyerTrainingService
flyerTrainingService
;
private
FlyerTrainingService
flyerTrainingService
;
...
@@ -29,8 +30,8 @@ public class FlyerTrainingController {
...
@@ -29,8 +30,8 @@ public class FlyerTrainingController {
@ApiOperation
(
value
=
"飞手报名"
)
@ApiOperation
(
value
=
"飞手报名"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"/pilotRegistration"
)
@PostMapping
(
"/pilotRegistration"
)
public
ResultBody
pilotRegistration
(
@RequestBody
RegistrationVO
registrationVO
)
{
public
ResultBody
pilotRegistration
(
@RequestBody
RegistrationVO
registrationVO
,
HttpServletRequest
request
)
{
return
flyerTrainingService
.
pilotRegistration
(
registrationVO
);
return
flyerTrainingService
.
pilotRegistration
(
registrationVO
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
()
);
}
}
...
...
release-service/src/main/java/com/mmc/csf/release/entity/ForumDynamicDO.java
浏览文件 @
dafcbe81
...
@@ -78,7 +78,6 @@ public class ForumDynamicDO implements Serializable {
...
@@ -78,7 +78,6 @@ public class ForumDynamicDO implements Serializable {
public
ForumDynamicDO
(
DynamicVO
dynamicVO
)
{
public
ForumDynamicDO
(
DynamicVO
dynamicVO
)
{
this
.
title
=
dynamicVO
.
getTitle
();
this
.
title
=
dynamicVO
.
getTitle
();
this
.
description
=
dynamicVO
.
getDescription
();
this
.
description
=
dynamicVO
.
getDescription
();
this
.
userId
=
dynamicVO
.
getUserId
();
this
.
location
=
dynamicVO
.
getLocation
();
this
.
location
=
dynamicVO
.
getLocation
();
this
.
lat
=
dynamicVO
.
getLat
();
this
.
lat
=
dynamicVO
.
getLat
();
this
.
lon
=
dynamicVO
.
getLon
();
this
.
lon
=
dynamicVO
.
getLon
();
...
@@ -88,7 +87,7 @@ public class ForumDynamicDO implements Serializable {
...
@@ -88,7 +87,7 @@ public class ForumDynamicDO implements Serializable {
return
DynamicVO
.
builder
().
id
(
id
).
description
(
description
)
return
DynamicVO
.
builder
().
id
(
id
).
description
(
description
)
.
commentCount
(
commentsCount
).
likesCount
(
likesCount
)
.
commentCount
(
commentsCount
).
likesCount
(
likesCount
)
.
lat
(
lat
).
lon
(
lon
).
location
(
location
).
title
(
title
)
.
lat
(
lat
).
lon
(
lon
).
location
(
location
).
title
(
title
)
.
userId
(
userId
).
dynamicPublishTime
(
createTime
).
build
();
.
dynamicPublishTime
(
createTime
).
build
();
}
}
}
}
release-service/src/main/java/com/mmc/csf/release/entity/PilotRegistrationDO.java
浏览文件 @
dafcbe81
...
@@ -51,7 +51,6 @@ public class PilotRegistrationDO implements Serializable {
...
@@ -51,7 +51,6 @@ public class PilotRegistrationDO implements Serializable {
private
Integer
deleted
;
private
Integer
deleted
;
public
PilotRegistrationDO
(
RegistrationVO
registrationVO
)
{
public
PilotRegistrationDO
(
RegistrationVO
registrationVO
)
{
this
.
applyUserId
=
registrationVO
.
getId
();
this
.
name
=
registrationVO
.
getName
();
this
.
name
=
registrationVO
.
getName
();
this
.
city
=
registrationVO
.
getCity
();
this
.
city
=
registrationVO
.
getCity
();
this
.
telephone
=
registrationVO
.
getTelephone
();
this
.
telephone
=
registrationVO
.
getTelephone
();
...
...
release-service/src/main/java/com/mmc/csf/release/service/DynamicService.java
浏览文件 @
dafcbe81
...
@@ -20,7 +20,7 @@ public interface DynamicService {
...
@@ -20,7 +20,7 @@ public interface DynamicService {
* @param dynamicVO 动态
* @param dynamicVO 动态
* @return {@link ResultBody}
* @return {@link ResultBody}
*/
*/
ResultBody
insertDynamic
(
DynamicVO
dynamicVO
);
ResultBody
insertDynamic
(
DynamicVO
dynamicVO
,
Integer
userAccountId
);
/**
/**
* 点赞动态
* 点赞动态
...
@@ -37,7 +37,7 @@ public interface DynamicService {
...
@@ -37,7 +37,7 @@ public interface DynamicService {
* @param commentVO 评论信息
* @param commentVO 评论信息
* @return {@link ResultBody}
* @return {@link ResultBody}
*/
*/
ResultBody
commentDynamic
(
CommentVO
commentVO
);
ResultBody
commentDynamic
(
CommentVO
commentVO
,
Integer
userAccountId
);
/**
/**
* 删除评论
* 删除评论
...
...
release-service/src/main/java/com/mmc/csf/release/service/FlyerTrainingService.java
浏览文件 @
dafcbe81
...
@@ -17,7 +17,7 @@ public interface FlyerTrainingService {
...
@@ -17,7 +17,7 @@ public interface FlyerTrainingService {
* @param registrationVO 注册信息
* @param registrationVO 注册信息
* @return {@link ResultBody}
* @return {@link ResultBody}
*/
*/
ResultBody
pilotRegistration
(
RegistrationVO
registrationVO
);
ResultBody
pilotRegistration
(
RegistrationVO
registrationVO
,
Integer
userAccount
);
/**
/**
* 获取无人机飞行员执照
* 获取无人机飞行员执照
...
...
release-service/src/main/java/com/mmc/csf/release/service/impl/DynamicServiceImpl.java
浏览文件 @
dafcbe81
...
@@ -2,10 +2,9 @@ package com.mmc.csf.release.service.impl;
...
@@ -2,10 +2,9 @@ package com.mmc.csf.release.service.impl;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.release.forum.vo.CommentAndReplyVO
;
import
com.mmc.csf.infomation.dto.UserAccountSimpleDTO
;
import
com.mmc.csf.release.forum.vo.CommentVO
;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.forum.vo.DynamicVO
;
import
com.mmc.csf.release.forum.vo.*
;
import
com.mmc.csf.release.forum.vo.MediaVO
;
import
com.mmc.csf.release.dao.CommentDAO
;
import
com.mmc.csf.release.dao.CommentDAO
;
import
com.mmc.csf.release.dao.DynamicDAO
;
import
com.mmc.csf.release.dao.DynamicDAO
;
import
com.mmc.csf.release.dao.LikeDAO
;
import
com.mmc.csf.release.dao.LikeDAO
;
...
@@ -14,6 +13,7 @@ import com.mmc.csf.release.entity.ForumImageDO;
...
@@ -14,6 +13,7 @@ import com.mmc.csf.release.entity.ForumImageDO;
import
com.mmc.csf.release.entity.ForumVideoDO
;
import
com.mmc.csf.release.entity.ForumVideoDO
;
import
com.mmc.csf.release.service.DynamicService
;
import
com.mmc.csf.release.service.DynamicService
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
...
@@ -38,12 +38,15 @@ public class DynamicServiceImpl implements DynamicService {
...
@@ -38,12 +38,15 @@ public class DynamicServiceImpl implements DynamicService {
private
LikeDAO
likeDAO
;
private
LikeDAO
likeDAO
;
@Resource
@Resource
private
CommentDAO
commentDAO
;
private
CommentDAO
commentDAO
;
@Autowired
private
UserAppApi
userAppApi
;
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
insertDynamic
(
DynamicVO
dynamicVO
)
{
public
ResultBody
insertDynamic
(
DynamicVO
dynamicVO
,
Integer
userAccountId
)
{
// 插入动态基本信息
// 插入动态基本信息
ForumDynamicDO
forumDynamicDO
=
new
ForumDynamicDO
(
dynamicVO
);
ForumDynamicDO
forumDynamicDO
=
new
ForumDynamicDO
(
dynamicVO
);
forumDynamicDO
.
setUserId
(
userAccountId
);
dynamicDAO
.
insertDynamic
(
forumDynamicDO
);
dynamicDAO
.
insertDynamic
(
forumDynamicDO
);
// 插入动态图片或视频
// 插入动态图片或视频
MediaVO
mediaVO
=
dynamicVO
.
getMediaVO
();
MediaVO
mediaVO
=
dynamicVO
.
getMediaVO
();
...
@@ -76,15 +79,15 @@ public class DynamicServiceImpl implements DynamicService {
...
@@ -76,15 +79,15 @@ public class DynamicServiceImpl implements DynamicService {
@Override
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
ResultBody
commentDynamic
(
CommentVO
commentVO
)
{
public
ResultBody
commentDynamic
(
CommentVO
commentVO
,
Integer
userAccountId
)
{
ForumDynamicDO
forumDynamicDO
=
dynamicDAO
.
getDynamicInfo
(
commentVO
.
getDynamicId
());
ForumDynamicDO
forumDynamicDO
=
dynamicDAO
.
getDynamicInfo
(
commentVO
.
getDynamicId
());
if
(
forumDynamicDO
==
null
)
{
if
(
forumDynamicDO
==
null
)
{
return
ResultBody
.
error
(
"动态不存在或已删除"
);
return
ResultBody
.
error
(
"动态不存在或已删除"
);
}
}
if
(
commentVO
.
getParentId
()
==
null
)
{
if
(
commentVO
.
getParentId
()
==
null
)
{
commentDAO
.
insertComment
(
commentVO
.
getUserId
()
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
());
commentDAO
.
insertComment
(
userAccountId
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
());
}
else
{
}
else
{
commentDAO
.
insertReplyComment
(
commentVO
.
getUserId
()
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
(),
commentVO
.
getParentId
());
commentDAO
.
insertReplyComment
(
userAccountId
,
commentVO
.
getDynamicId
(),
commentVO
.
getContent
(),
commentVO
.
getParentId
());
}
}
dynamicDAO
.
updateDynamicCommentCount
(
commentVO
.
getDynamicId
(),
forumDynamicDO
.
getPid
());
dynamicDAO
.
updateDynamicCommentCount
(
commentVO
.
getDynamicId
(),
forumDynamicDO
.
getPid
());
return
ResultBody
.
success
();
return
ResultBody
.
success
();
...
@@ -100,6 +103,14 @@ public class DynamicServiceImpl implements DynamicService {
...
@@ -100,6 +103,14 @@ public class DynamicServiceImpl implements DynamicService {
public
List
<
CommentAndReplyVO
>
getCommentAndReply
(
Integer
dynamicId
)
{
public
List
<
CommentAndReplyVO
>
getCommentAndReply
(
Integer
dynamicId
)
{
// 获取评论列表
// 获取评论列表
List
<
CommentAndReplyVO
>
commentList
=
commentDAO
.
selectCommentList
(
dynamicId
);
List
<
CommentAndReplyVO
>
commentList
=
commentDAO
.
selectCommentList
(
dynamicId
);
commentList
=
commentList
.
stream
().
peek
(
d
->
{
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAppApi
.
feignGetUserSimpleInfo
(
d
.
getUserId
());
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
<>();
List
<
CommentAndReplyVO
>
topLevelComment
=
new
ArrayList
<>();
Map
<
Integer
,
CommentAndReplyVO
>
commentMap
=
new
HashMap
<>();
Map
<
Integer
,
CommentAndReplyVO
>
commentMap
=
new
HashMap
<>();
// 将每个数据模型对象添加到Map中,以便在递归过程中查找它们的父母
// 将每个数据模型对象添加到Map中,以便在递归过程中查找它们的父母
...
@@ -147,6 +158,12 @@ public class DynamicServiceImpl implements DynamicService {
...
@@ -147,6 +158,12 @@ public class DynamicServiceImpl implements DynamicService {
}
}
}
}
DynamicVO
dynamicVO
=
d
.
buildDynamicVO
();
DynamicVO
dynamicVO
=
d
.
buildDynamicVO
();
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAppApi
.
feignGetUserSimpleInfo
(
d
.
getUserId
());
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setId
(
d
.
getUserId
());
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
dynamicVO
.
setUserBaseInfo
(
userBaseInfoVO
);
dynamicVO
.
setMediaVO
(
mediaVO
);
dynamicVO
.
setMediaVO
(
mediaVO
);
// 设置是否点赞
// 设置是否点赞
boolean
liked
=
likeDAO
.
isLiked
(
userId
,
d
.
getId
());
boolean
liked
=
likeDAO
.
isLiked
(
userId
,
d
.
getId
());
...
@@ -176,6 +193,12 @@ public class DynamicServiceImpl implements DynamicService {
...
@@ -176,6 +193,12 @@ public class DynamicServiceImpl implements DynamicService {
DynamicVO
dynamicVO
=
dynamicInfo
.
buildDynamicVO
();
DynamicVO
dynamicVO
=
dynamicInfo
.
buildDynamicVO
();
// 设置是否点赞
// 设置是否点赞
boolean
liked
=
likeDAO
.
isLiked
(
userId
,
dynamicId
);
boolean
liked
=
likeDAO
.
isLiked
(
userId
,
dynamicId
);
UserAccountSimpleDTO
userAccountSimpleDTO
=
userAppApi
.
feignGetUserSimpleInfo
(
dynamicInfo
.
getUserId
());
UserBaseInfoVO
userBaseInfoVO
=
new
UserBaseInfoVO
();
userBaseInfoVO
.
setNickName
(
userAccountSimpleDTO
.
getNickName
());
userBaseInfoVO
.
setUserImg
(
userAccountSimpleDTO
.
getUserImg
());
userBaseInfoVO
.
setId
(
dynamicInfo
.
getUserId
());
dynamicVO
.
setUserBaseInfo
(
userBaseInfoVO
);
dynamicVO
.
setLikes
(
liked
);
dynamicVO
.
setLikes
(
liked
);
// 设置评论信息
// 设置评论信息
dynamicVO
.
setCommentAndReplyVO
(
this
.
getCommentAndReply
(
dynamicId
));
dynamicVO
.
setCommentAndReplyVO
(
this
.
getCommentAndReply
(
dynamicId
));
...
...
release-service/src/main/java/com/mmc/csf/release/service/impl/FlyerTrainingServiceImpl.java
浏览文件 @
dafcbe81
...
@@ -33,8 +33,9 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService {
...
@@ -33,8 +33,9 @@ public class FlyerTrainingServiceImpl implements FlyerTrainingService {
private
FlyerTrainingDao
flyerTrainingDao
;
private
FlyerTrainingDao
flyerTrainingDao
;
@Override
@Override
public
ResultBody
pilotRegistration
(
RegistrationVO
registrationVO
)
{
public
ResultBody
pilotRegistration
(
RegistrationVO
registrationVO
,
Integer
userAccountId
)
{
PilotRegistrationDO
pilotRegistrationDO
=
new
PilotRegistrationDO
(
registrationVO
);
PilotRegistrationDO
pilotRegistrationDO
=
new
PilotRegistrationDO
(
registrationVO
);
pilotRegistrationDO
.
setApplyUserId
(
userAccountId
);
if
(
CollectionUtils
.
isNotEmpty
(
registrationVO
.
getIndustryAppAuth
()))
{
if
(
CollectionUtils
.
isNotEmpty
(
registrationVO
.
getIndustryAppAuth
()))
{
// 将行业应用认证的id用逗号拼接
// 将行业应用认证的id用逗号拼接
String
industryAppAuth
=
registrationVO
.
getIndustryAppAuth
().
stream
().
map
(
Object:
:
toString
).
collect
(
Collectors
.
joining
(
","
));
String
industryAppAuth
=
registrationVO
.
getIndustryAppAuth
().
stream
().
map
(
Object:
:
toString
).
collect
(
Collectors
.
joining
(
","
));
...
...
release-service/src/main/java/com/mmc/csf/release/util/PathUtil.java
0 → 100644
浏览文件 @
dafcbe81
package
com
.
mmc
.
csf
.
release
.
util
;
import
org.springframework.util.AntPathMatcher
;
/**
* @author 作者 geDuo
* @version 创建时间:2021年8月31日 下午3:29:28
* @explain 解析地址类
*/
public
class
PathUtil
{
private
static
AntPathMatcher
matcher
=
new
AntPathMatcher
();
public
static
boolean
isPathMatch
(
String
pattern
,
String
path
)
{
return
matcher
.
match
(
pattern
,
path
);
}
}
release-service/src/main/resources/not-check.yml
0 → 100644
浏览文件 @
dafcbe81
data-filter
:
uploadPath
:
#不需要解析的body参数的地址
-
/xxx/x
not-auth-path
:
-
/release/v2/**
-
/release/doc.html
-
/release/swagger-resources/**
-
/release/webjars/**
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论