Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
brandkbs2
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
shenjunjie
brandkbs2
Commits
8bbbc674
Commit
8bbbc674
authored
Jan 06, 2023
by
shenjunjie
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature' into 'dev'
新增用户中心注册功能 See merge request
!142
parents
d300091b
ac156e1e
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
189 additions
and
78 deletions
+189
-78
src/main/java/com/zhiwei/brandkbs2/controller/LoginController.java
+7
-39
src/main/java/com/zhiwei/brandkbs2/controller/admin/UserController.java
+8
-15
src/main/java/com/zhiwei/brandkbs2/es/ChannelEsDao.java
+14
-8
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ChannelSearchDTO.java
+2
-1
src/main/java/com/zhiwei/brandkbs2/pojo/dto/UserDTO.java
+6
-0
src/main/java/com/zhiwei/brandkbs2/service/ChannelService.java
+1
-1
src/main/java/com/zhiwei/brandkbs2/service/UserCenterService.java
+34
-0
src/main/java/com/zhiwei/brandkbs2/service/UserService.java
+3
-2
src/main/java/com/zhiwei/brandkbs2/service/impl/ChannelServiceImpl.java
+6
-4
src/main/java/com/zhiwei/brandkbs2/service/impl/UserCenterServiceImpl.java
+83
-0
src/main/java/com/zhiwei/brandkbs2/service/impl/UserServiceImpl.java
+25
-8
No files found.
src/main/java/com/zhiwei/brandkbs2/controller/LoginController.java
View file @
8bbbc674
...
...
@@ -5,18 +5,14 @@ import com.zhiwei.brandkbs2.auth.Auth;
import
com.zhiwei.brandkbs2.enmus.RoleEnum
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.service.ProjectService
;
import
com.zhiwei.brandkbs2.service.UserCenterService
;
import
com.zhiwei.brandkbs2.service.UserService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpMethod
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.client.RestTemplate
;
import
javax.annotation.Resource
;
...
...
@@ -36,21 +32,15 @@ public class LoginController extends BaseController {
@Value
(
"${jwt.hour}"
)
private
int
jwtHour
;
@Value
(
"${qbjc.userCenter.url}"
)
private
String
yuqingInterface
;
@Value
(
"${qbjc.userCenter.token}"
)
private
String
token
;
@Autowired
private
RestTemplate
restTemplate
;
@Resource
(
name
=
"userServiceImpl"
)
private
UserService
UserService
;
@Resource
(
name
=
"projectServiceImpl"
)
private
ProjectService
ProjectService
;
@Resource
(
name
=
"userCenterServiceImpl"
)
private
UserCenterService
userCenterService
;
@ApiOperation
(
"用户登录"
)
@PostMapping
(
"/user/login"
)
public
ResponseResult
login
()
{
...
...
@@ -105,41 +95,19 @@ public class LoginController extends BaseController {
@ApiOperation
(
"第三方接入-验证External-Token"
)
@GetMapping
(
"/user/login/verify/token"
)
public
ResponseResult
verifyToken
()
{
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
httpHeaders
.
set
(
"External-Origin"
,
"BRANDKBS"
);
httpHeaders
.
set
(
"External-Service"
,
"BRANDKBS"
);
httpHeaders
.
set
(
"External-Token"
,
token
);
HttpEntity
<
String
>
requestEntity
=
new
HttpEntity
<>(
httpHeaders
);
HttpEntity
<
JSONObject
>
entity
=
restTemplate
.
exchange
(
yuqingInterface
+
"/thirdPart/external/verify/token"
,
HttpMethod
.
GET
,
requestEntity
,
JSONObject
.
class
);
if
(
null
!=
entity
.
getBody
()
||
!
entity
.
getBody
().
getBoolean
(
"status"
))
{
String
ticket
=
entity
.
getBody
().
getJSONObject
(
"data"
).
getString
(
"ticket"
);
return
ResponseResult
.
success
(
ticket
);
}
return
ResponseResult
.
failure
(
"ticket获取失败"
);
return
userCenterService
.
verifyToken
();
}
@ApiOperation
(
"第三方接入-验证External-Ticket"
)
@GetMapping
(
"/user/login/verify/ticket"
)
public
ResponseResult
verifyTicket
(
@RequestParam
String
ticket
)
{
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
httpHeaders
.
set
(
"External-Origin"
,
"BRANDKBS"
);
httpHeaders
.
set
(
"External-Token"
,
token
);
httpHeaders
.
set
(
"External-Ticket"
,
ticket
);
HttpEntity
<
String
>
requestEntity
=
new
HttpEntity
<>(
httpHeaders
);
HttpEntity
<
JSONObject
>
entity
=
restTemplate
.
exchange
(
yuqingInterface
+
"/thirdPart/external/verify/ticket"
,
HttpMethod
.
GET
,
requestEntity
,
JSONObject
.
class
);
if
(
null
!=
entity
.
getBody
())
{
JSONObject
userInfo
=
entity
.
getBody
().
getJSONObject
(
"data"
);
return
ResponseResult
.
success
(
userInfo
);
}
return
ResponseResult
.
failure
(
"用户信息获取失败"
);
return
userCenterService
.
verifyTicket
(
ticket
);
}
@ApiOperation
(
"测试接口"
)
@GetMapping
(
"/test"
)
public
ResponseResult
test
()
{
return
ResponseResult
.
success
(
"brandkbs2-success 202
2/12/5
"
);
return
ResponseResult
.
success
(
"brandkbs2-success 202
3/1/6
"
);
}
}
...
...
src/main/java/com/zhiwei/brandkbs2/controller/admin/UserController.java
View file @
8bbbc674
...
...
@@ -31,7 +31,7 @@ import javax.annotation.Resource;
public
class
UserController
extends
BaseController
{
@Resource
(
name
=
"userServiceImpl"
)
private
UserService
U
serService
;
private
UserService
u
serService
;
@Resource
(
name
=
"behaviorServiceImpl"
)
private
BehaviorService
behaviorService
;
...
...
@@ -55,7 +55,7 @@ public class UserController extends BaseController {
@RequestParam
(
value
=
"keyword"
,
defaultValue
=
""
)
String
keyword
,
@RequestParam
(
value
=
"pid"
)
String
pid
,
@RequestParam
(
value
=
"role"
,
defaultValue
=
"-1"
)
int
role
)
{
return
ResponseResult
.
success
(
U
serService
.
findUserList
(
page
,
size
,
keyword
,
pid
,
role
));
return
ResponseResult
.
success
(
u
serService
.
findUserList
(
page
,
size
,
keyword
,
pid
,
role
));
}
@ApiOperation
(
"根据手机号搜索用户信息"
)
...
...
@@ -77,9 +77,7 @@ public class UserController extends BaseController {
@ApiOperation
(
"添加用户"
)
@PostMapping
(
"/add"
)
public
ResponseResult
addUser
(
@RequestBody
UserDTO
userDTO
)
{
UserService
.
addUser
(
userDTO
);
behaviorService
.
pushBehaviorOld
(
OPERATION
,
"添加用户:"
+
userDTO
.
getId
(),
request
);
return
ResponseResult
.
success
();
return
userService
.
addUser
(
userDTO
);
}
@ApiOperation
(
"删除用户"
)
...
...
@@ -89,16 +87,14 @@ public class UserController extends BaseController {
@DeleteMapping
(
"/delete"
)
@Auth
(
role
=
RoleEnum
.
ADMIN
)
public
ResponseResult
deleteUser
(
@RequestParam
(
value
=
"uid"
)
String
userId
,
@RequestParam
(
value
=
"pid"
)
String
pid
)
{
UserService
.
deleteUser
(
userId
,
pid
);
behaviorService
.
pushBehaviorOld
(
OPERATION
,
"删除用户:"
+
userId
,
request
);
userService
.
deleteUser
(
userId
,
pid
);
return
ResponseResult
.
success
();
}
@ApiOperation
(
"编辑用户"
)
@PutMapping
(
"/update"
)
public
ResponseResult
updateUser
(
@RequestBody
UserDTO
userDTO
)
{
UserService
.
updateUser
(
userDTO
);
behaviorService
.
pushBehaviorOld
(
OPERATION
,
"编辑用户:"
+
userDTO
,
request
);
userService
.
updateUser
(
userDTO
);
return
ResponseResult
.
success
();
}
...
...
@@ -113,16 +109,14 @@ public class UserController extends BaseController {
public
ResponseResult
findSuperAdminList
(
@RequestParam
(
value
=
"page"
,
defaultValue
=
"1"
)
int
page
,
@RequestParam
(
value
=
"size"
,
defaultValue
=
"10"
)
int
size
,
@RequestParam
(
value
=
"keyword"
,
defaultValue
=
""
)
String
keyword
)
{
return
ResponseResult
.
success
(
U
serService
.
findSuperAdminList
(
page
,
size
,
keyword
));
return
ResponseResult
.
success
(
u
serService
.
findSuperAdminList
(
page
,
size
,
keyword
));
}
@ApiOperation
(
"添加超级管理员"
)
@PostMapping
(
"/add/superAdmin"
)
@Auth
(
role
=
RoleEnum
.
SUPER_ADMIN
)
public
ResponseResult
addSuperAdmin
(
@RequestBody
UserDTO
userDTO
)
{
UserService
.
addSuperAdmin
(
userDTO
);
behaviorService
.
pushBehaviorOld
(
OPERATION
,
"添加超级管理员:"
+
userDTO
.
getId
(),
request
);
return
ResponseResult
.
success
();
return
userService
.
addSuperAdmin
(
userDTO
);
}
@ApiOperation
(
"删除超级管理员"
)
...
...
@@ -131,8 +125,7 @@ public class UserController extends BaseController {
@DeleteMapping
(
"/delete/superAdmin"
)
@Auth
(
role
=
RoleEnum
.
SUPER_ADMIN
)
public
ResponseResult
deleteSuperAdmin
(
@RequestParam
(
value
=
"uid"
)
String
userId
)
{
UserService
.
deleteSuperAdmin
(
userId
);
behaviorService
.
pushBehaviorOld
(
OPERATION
,
"删除超级管理员:"
+
userId
,
request
);
userService
.
deleteSuperAdmin
(
userId
);
return
ResponseResult
.
success
();
}
...
...
src/main/java/com/zhiwei/brandkbs2/es/ChannelEsDao.java
View file @
8bbbc674
...
...
@@ -73,7 +73,7 @@ public class ChannelEsDao extends EsClientDao {
}
public
void
upsertChannelRecord
(
List
<
ChannelRecord
>
channelRecords
)
{
String
index
=
getChannelRecordIndex
(
);
String
index
=
getChannelRecordIndex
es
().
get
(
0
);
BulkRequest
bulkRequest
=
new
BulkRequest
();
Long
startTime
=
null
;
Long
endTime
=
null
;
...
...
@@ -119,7 +119,7 @@ public class ChannelEsDao extends EsClientDao {
@Override
public
String
[]
getIndexes
()
{
return
new
String
[]{
getChannelRecordIndex
()}
;
return
getChannelRecordIndexes
().
toArray
(
new
String
[
0
])
;
}
@Override
...
...
@@ -127,14 +127,20 @@ public class ChannelEsDao extends EsClientDao {
return
channelEsClient
;
}
public
String
getChannelRecordIndex
()
{
// if (test) {
// return GenericAttribute.ES_CHANNEL_INDEX_TEST;
// }
// 近1年数据库
public
List
<
String
>
getChannelRecordIndexes
()
{
List
<
String
>
res
=
new
ArrayList
<>();
// 近3年数据库
Calendar
date
=
Calendar
.
getInstance
();
int
year
=
date
.
get
(
Calendar
.
YEAR
);
return
GenericAttribute
.
ES_CHANNEL_INDEX_PREFIX
+
year
;
for
(
int
i
=
0
;
i
<
3
;
i
++)
{
year
-=
i
;
// 2022年开始有channel_record库
if
(
year
<
2022
)
{
break
;
}
res
.
add
(
GenericAttribute
.
ES_CHANNEL_INDEX_PREFIX
+
year
);
}
return
res
;
}
private
BoolQueryBuilder
channelUniqueBool
(
String
fid
)
{
...
...
src/main/java/com/zhiwei/brandkbs2/pojo/dto/ChannelSearchDTO.java
View file @
8bbbc674
package
com
.
zhiwei
.
brandkbs2
.
pojo
.
dto
;
import
com.alibaba.fastjson.JSONObject
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -38,6 +39,6 @@ public class ChannelSearchDTO {
private
Integer
[]
articlesCount
;
@ApiModelProperty
(
"排序字段"
)
private
String
sorter
=
"{\"influence\":\"descend\"}"
;
private
JSONObject
sorter
;
}
src/main/java/com/zhiwei/brandkbs2/pojo/dto/UserDTO.java
View file @
8bbbc674
...
...
@@ -35,6 +35,12 @@ public class UserDTO {
private
String
username
;
/**
* 密码
*/
@ApiModelProperty
(
"密码"
)
private
String
password
;
/**
* 电话号码
*/
@ApiModelProperty
(
"电话号码"
)
...
...
src/main/java/com/zhiwei/brandkbs2/service/ChannelService.java
View file @
8bbbc674
...
...
@@ -266,6 +266,6 @@ public interface ChannelService {
Integer
[]
articlesCount
,
String
sorter
);
PageVO
<
ChannelVO
>
getChannelListNew
(
int
page
,
int
pageSize
,
String
keyword
,
List
<
String
>
platforms
,
List
<
Integer
>
emotions
,
List
<
String
>
mediaTypes
,
Integer
[]
articlesCount
,
String
sorter
);
Integer
[]
articlesCount
,
JSONObject
sorter
);
}
src/main/java/com/zhiwei/brandkbs2/service/UserCenterService.java
0 → 100644
View file @
8bbbc674
package
com
.
zhiwei
.
brandkbs2
.
service
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
/**
* @ClassName: UserCenterService
* @Description 用户中心服务接口
* @author: sjj
* @date: 2023-01-06 11:33
*/
public
interface
UserCenterService
{
/**
* 第三方接入-验证External-Token
* @return
*/
ResponseResult
verifyToken
();
/**
* 第三方接入-验证External-Ticket
* @param ticket
* @return
*/
ResponseResult
verifyTicket
(
String
ticket
);
/**
* 用户中心-用户注册
* @param phone 手机号
* @param password 密码
* @return
*/
boolean
registerUser
(
long
phone
,
String
password
);
}
src/main/java/com/zhiwei/brandkbs2/service/UserService.java
View file @
8bbbc674
package
com
.
zhiwei
.
brandkbs2
.
service
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.pojo.UserInfo
;
import
com.zhiwei.brandkbs2.pojo.dto.UserDTO
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
...
...
@@ -56,7 +57,7 @@ public interface UserService {
*
* @param userDTO
*/
void
addUser
(
UserDTO
userDTO
);
ResponseResult
addUser
(
UserDTO
userDTO
);
/**
* 删除用户
...
...
@@ -88,7 +89,7 @@ public interface UserService {
*
* @param userDTO
*/
void
addSuperAdmin
(
UserDTO
userDTO
);
ResponseResult
addSuperAdmin
(
UserDTO
userDTO
);
/**
* 删除超级管理员
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/ChannelServiceImpl.java
View file @
8bbbc674
...
...
@@ -971,7 +971,7 @@ public class ChannelServiceImpl implements ChannelService {
@Override
public
PageVO
<
ChannelVO
>
getChannelListNew
(
int
page
,
int
pageSize
,
String
keyword
,
List
<
String
>
platforms
,
List
<
Integer
>
emotions
,
List
<
String
>
mediaTypes
,
Integer
[]
articlesCount
,
String
sorter
)
{
List
<
Integer
>
emotions
,
List
<
String
>
mediaTypes
,
Integer
[]
articlesCount
,
JSONObject
sorter
)
{
try
{
String
projectId
=
UserThreadLocal
.
getProjectId
();
String
contendId
=
"0"
;
...
...
@@ -979,9 +979,11 @@ public class ChannelServiceImpl implements ChannelService {
BoolQueryBuilder
postFilter
=
getChannelListQuery
(
projectId
,
contendId
,
keyword
,
platforms
,
emotions
,
mediaTypes
,
articlesCount
);
searchHelper
.
setPostFilter
(
postFilter
);
if
(
null
!=
sorter
)
{
for
(
Map
.
Entry
<
String
,
Object
>
entry
:
JSONObject
.
parseObject
(
sorter
).
entrySet
())
{
if
(
entry
.
getValue
().
toString
().
contains
(
"desc"
))
{
if
(
null
==
sorter
||
sorter
.
isEmpty
())
{
searchHelper
.
setSort
(
SortBuilders
.
fieldSort
(
"influence"
).
order
(
SortOrder
.
DESC
));
}
else
{
for
(
Map
.
Entry
<
String
,
Object
>
entry
:
sorter
.
entrySet
())
{
if
(
null
==
entry
.
getValue
()
||
entry
.
getValue
().
toString
().
contains
(
"desc"
))
{
searchHelper
.
setSort
(
SortBuilders
.
fieldSort
(
entry
.
getKey
()).
order
(
SortOrder
.
DESC
));
}
else
{
searchHelper
.
setSort
(
SortBuilders
.
fieldSort
(
entry
.
getKey
()).
order
(
SortOrder
.
ASC
));
...
...
src/main/java/com/zhiwei/brandkbs2/service/impl/UserCenterServiceImpl.java
0 → 100644
View file @
8bbbc674
package
com
.
zhiwei
.
brandkbs2
.
service
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.service.UserCenterService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpMethod
;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.client.RestTemplate
;
/**
* @ClassName: UserCenterServiceImpl
* @Description UserCenterServiceImpl
* @author: sjj
* @date: 2023-01-06 11:36
*/
@Service
(
"userCenterServiceImpl"
)
public
class
UserCenterServiceImpl
implements
UserCenterService
{
@Value
(
"${qbjc.userCenter.url}"
)
private
String
yuqingInterface
;
@Value
(
"${qbjc.userCenter.token}"
)
private
String
token
;
@Autowired
private
RestTemplate
restTemplate
;
private
static
final
String
EXTERNAL_ORIGIN
=
"External-Origin"
;
private
static
final
String
EXTERNAL_SERVICE
=
"External-Service"
;
private
static
final
String
EXTERNAL_TOKEN
=
"External-Token"
;
private
static
final
String
EXTERNAL_TICKET
=
"External-Ticket"
;
private
static
final
String
SERVICE_NAME
=
"BRANDKBS"
;
@Override
public
ResponseResult
verifyToken
()
{
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
httpHeaders
.
set
(
EXTERNAL_ORIGIN
,
SERVICE_NAME
);
httpHeaders
.
set
(
EXTERNAL_SERVICE
,
SERVICE_NAME
);
httpHeaders
.
set
(
EXTERNAL_TOKEN
,
token
);
HttpEntity
<
String
>
requestEntity
=
new
HttpEntity
<>(
httpHeaders
);
HttpEntity
<
JSONObject
>
entity
=
restTemplate
.
exchange
(
yuqingInterface
+
"/thirdPart/external/verify/token"
,
HttpMethod
.
GET
,
requestEntity
,
JSONObject
.
class
);
if
(
null
!=
entity
.
getBody
()
||
!
entity
.
getBody
().
getBoolean
(
"status"
))
{
String
ticket
=
entity
.
getBody
().
getJSONObject
(
"data"
).
getString
(
"ticket"
);
return
ResponseResult
.
success
(
ticket
);
}
return
ResponseResult
.
failure
(
"ticket获取失败"
);
}
@Override
public
ResponseResult
verifyTicket
(
String
ticket
)
{
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
httpHeaders
.
set
(
EXTERNAL_ORIGIN
,
SERVICE_NAME
);
httpHeaders
.
set
(
EXTERNAL_SERVICE
,
token
);
httpHeaders
.
set
(
EXTERNAL_TICKET
,
ticket
);
HttpEntity
<
String
>
requestEntity
=
new
HttpEntity
<>(
httpHeaders
);
HttpEntity
<
JSONObject
>
entity
=
restTemplate
.
exchange
(
yuqingInterface
+
"/thirdPart/external/verify/ticket"
,
HttpMethod
.
GET
,
requestEntity
,
JSONObject
.
class
);
if
(
null
!=
entity
.
getBody
())
{
JSONObject
userInfo
=
entity
.
getBody
().
getJSONObject
(
"data"
);
return
ResponseResult
.
success
(
userInfo
);
}
return
ResponseResult
.
failure
(
"用户信息获取失败"
);
}
@Override
public
boolean
registerUser
(
long
phone
,
String
password
)
{
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
httpHeaders
.
set
(
EXTERNAL_ORIGIN
,
SERVICE_NAME
);
httpHeaders
.
set
(
EXTERNAL_TOKEN
,
token
);
JSONObject
json
=
new
JSONObject
();
json
.
put
(
"phone"
,
phone
);
json
.
put
(
"password"
,
password
);
HttpEntity
<
JSONObject
>
requestEntity
=
new
HttpEntity
<>(
json
,
httpHeaders
);
HttpEntity
<
JSONObject
>
entity
=
restTemplate
.
exchange
(
yuqingInterface
+
"/thirdPart/external/register/phone"
,
HttpMethod
.
POST
,
requestEntity
,
JSONObject
.
class
);
return
null
!=
entity
.
getBody
()
&&
entity
.
getBody
().
getBoolean
(
"status"
);
}
}
src/main/java/com/zhiwei/brandkbs2/service/impl/UserServiceImpl.java
View file @
8bbbc674
...
...
@@ -10,11 +10,13 @@ import com.zhiwei.brandkbs2.enmus.RoleEnum;
import
com.zhiwei.brandkbs2.enmus.response.LoginCodeEnum
;
import
com.zhiwei.brandkbs2.exception.ExceptionCast
;
import
com.zhiwei.brandkbs2.model.CommonCodeEnum
;
import
com.zhiwei.brandkbs2.model.ResponseResult
;
import
com.zhiwei.brandkbs2.pojo.User
;
import
com.zhiwei.brandkbs2.pojo.UserInfo
;
import
com.zhiwei.brandkbs2.pojo.UserRole
;
import
com.zhiwei.brandkbs2.pojo.dto.UserDTO
;
import
com.zhiwei.brandkbs2.pojo.vo.PageVO
;
import
com.zhiwei.brandkbs2.service.UserCenterService
;
import
com.zhiwei.brandkbs2.service.UserService
;
import
com.zhiwei.brandkbs2.util.MongoUtil
;
import
com.zhiwei.brandkbs2.util.Tools
;
...
...
@@ -61,6 +63,9 @@ public class UserServiceImpl implements UserService {
@Autowired
private
com
.
zhiwei
.
middleware
.
auth
.
core
.
UserInfoClient
userInfoClient
;
@Resource
(
name
=
"userCenterServiceImpl"
)
private
UserCenterService
userCenterService
;
@Override
public
UserInfo
login
()
{
String
uid
=
UserThreadLocal
.
getUserId
();
...
...
@@ -119,21 +124,27 @@ public class UserServiceImpl implements UserService {
}
@Override
public
void
addUser
(
UserDTO
userDTO
)
{
public
ResponseResult
addUser
(
UserDTO
userDTO
)
{
if
(
Objects
.
isNull
(
userDTO
.
getRoleId
())
||
userDTO
.
getRoleId
()
<
RoleEnum
.
ADMIN
.
getState
())
{
// 抛出用户权限设置错误异常
ExceptionCast
.
cast
(
CommonCodeEnum
.
INVALID_PARAM
,
"用户权限设置异常"
);
ExceptionCast
.
cast
(
CommonCodeEnum
.
UN_AUTHORISE
);
}
int
roleId
=
UserThreadLocal
.
getRoleId
();
// 只有超管能设置管理员
if
(
roleId
!=
RoleEnum
.
SUPER_ADMIN
.
getState
()
&&
userDTO
.
getRoleId
()
<=
RoleEnum
.
ADMIN
.
getState
())
{
ExceptionCast
.
cast
(
CommonCodeEnum
.
UN_AUTHORISE
);
}
// 有密码则通过用户中心注册
if
(
null
!=
userDTO
.
getPassword
())
{
if
(!
userCenterService
.
registerUser
(
userDTO
.
getPhoneNumber
(),
userDTO
.
getPassword
()))
{
return
ResponseResult
.
failure
(
"用户中心注册账号失败"
);
}
}
User
user
=
userDao
.
findOneById
(
userDTO
.
getId
());
// 新用户
if
(
null
==
user
)
{
userDao
.
insertOne
(
createNewUser
(
userDTO
));
return
;
return
ResponseResult
.
success
()
;
}
List
<
UserRole
>
roles
=
user
.
getRoles
();
// 无任何角色
...
...
@@ -149,6 +160,7 @@ public class UserServiceImpl implements UserService {
Update
update
=
new
Update
();
update
.
set
(
"roles"
,
roles
);
userDao
.
updateOneByIdWithField
(
userDTO
.
getId
(),
update
);
return
ResponseResult
.
success
();
}
@Override
...
...
@@ -191,7 +203,13 @@ public class UserServiceImpl implements UserService {
}
@Override
public
void
addSuperAdmin
(
UserDTO
userDTO
)
{
public
ResponseResult
addSuperAdmin
(
UserDTO
userDTO
)
{
// 有密码则通过用户中心注册
if
(
null
!=
userDTO
.
getPassword
())
{
if
(!
userCenterService
.
registerUser
(
userDTO
.
getPhoneNumber
(),
userDTO
.
getPassword
()))
{
return
ResponseResult
.
failure
(
"用户中心注册账号失败"
);
}
}
User
user
=
userDao
.
findOneById
(
userDTO
.
getId
());
// 老用户
if
(
null
!=
user
)
{
...
...
@@ -200,12 +218,13 @@ public class UserServiceImpl implements UserService {
update
.
set
(
"superAdmin"
,
true
);
update
.
set
(
"roles"
,
null
);
userDao
.
updateOneByIdWithField
(
user
.
getId
(),
update
);
return
;
return
ResponseResult
.
success
()
;
}
}
// 新用户
userDTO
.
setRoleId
(
RoleEnum
.
SUPER_ADMIN
.
getState
());
userDao
.
insertOne
(
createNewUser
(
userDTO
));
return
ResponseResult
.
success
();
}
@Override
...
...
@@ -299,9 +318,7 @@ public class UserServiceImpl implements UserService {
// if (null == userId || null == projectId) {
// ExceptionCast.cast(LoginCodeEnum.LOGIN_EXPIRED_ERROR);
// }
Map
<
String
,
Object
>
userInfoMap
=
queryUserInfo
(
UserThreadLocal
.
getUserId
(),
UserThreadLocal
.
getProjectId
()).
toMap
();
return
userInfoMap
;
return
queryUserInfo
(
UserThreadLocal
.
getUserId
(),
UserThreadLocal
.
getProjectId
()).
toMap
();
}
private
User
createNewUser
(
UserDTO
userDTO
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment