Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
xyqb-user2
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
head_group
xyqb-user2
Commits
a29887b4
Commit
a29887b4
authored
Dec 29, 2021
by
killer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
销户
parent
89edbf40
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
84 additions
and
17 deletions
+84
-17
InnerController.java
...tgroup/xyqb/controller/internal/user/InnerController.java
+20
-0
IUserDeregisterService.java
...ntgroup/xyqb/service/register/IUserDeregisterService.java
+7
-0
IUserDeregisterServiceImpl.java
...yqb/service/register/impl/IUserDeregisterServiceImpl.java
+18
-0
IUserService.java
...in/java/cn/quantgroup/xyqb/service/user/IUserService.java
+2
-2
UserServiceImpl.java
...cn/quantgroup/xyqb/service/user/impl/UserServiceImpl.java
+37
-15
No files found.
src/main/java/cn/quantgroup/xyqb/controller/internal/user/InnerController.java
View file @
a29887b4
...
@@ -49,6 +49,7 @@ import org.springframework.web.bind.annotation.*;
...
@@ -49,6 +49,7 @@ import org.springframework.web.bind.annotation.*;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.Min
;
import
javax.validation.constraints.NotNull
;
import
java.io.UnsupportedEncodingException
;
import
java.io.UnsupportedEncodingException
;
import
java.text.ParseException
;
import
java.text.ParseException
;
import
java.util.*
;
import
java.util.*
;
...
@@ -1597,4 +1598,23 @@ public class InnerController implements IBaseController {
...
@@ -1597,4 +1598,23 @@ public class InnerController implements IBaseController {
cleanDataService
.
cleanData
();
cleanDataService
.
cleanData
();
return
JsonResult
.
buildSuccessResult
(
"已经开始清洗"
);
return
JsonResult
.
buildSuccessResult
(
"已经开始清洗"
);
}
}
/**
* 注销用户
*
* @param userId 用户id
* @return 销户结果
*/
@ApiOperation
(
value
=
"注销用户"
,
httpMethod
=
"GET"
,
notes
=
"注销用户"
)
@GetMapping
(
"/user/delete/{userId}"
)
public
JsonResult
<?>
deregister
(
@NotNull
@PathVariable
(
"userId"
)
Long
userId
)
{
log
.
info
(
"用户id[{}], 销户开始"
,
userId
);
/* 执行销户 */
userService
.
deregister
(
userId
);
log
.
info
(
"用户id[{}], 销户成功"
,
userId
);
return
JsonResult
.
buildSuccessResult
(
"用户销户成功"
,
true
);
}
}
}
\ No newline at end of file
src/main/java/cn/quantgroup/xyqb/service/register/IUserDeregisterService.java
View file @
a29887b4
package
cn
.
quantgroup
.
xyqb
.
service
.
register
;
package
cn
.
quantgroup
.
xyqb
.
service
.
register
;
import
cn.quantgroup.xyqb.entity.User
;
import
cn.quantgroup.xyqb.entity.UserDeregisterRecord
;
import
cn.quantgroup.xyqb.entity.UserDeregisterRecord
;
import
java.util.List
;
import
java.util.List
;
...
@@ -20,4 +21,10 @@ public interface IUserDeregisterService {
...
@@ -20,4 +21,10 @@ public interface IUserDeregisterService {
*/
*/
List
<
UserDeregisterRecord
>
queryByPhoneNo
(
String
phoneNo
);
List
<
UserDeregisterRecord
>
queryByPhoneNo
(
String
phoneNo
);
/**
* 保存用户销户记录
*
* @param user 用户
*/
void
save
(
User
user
);
}
}
src/main/java/cn/quantgroup/xyqb/service/register/impl/IUserDeregisterServiceImpl.java
View file @
a29887b4
package
cn
.
quantgroup
.
xyqb
.
service
.
register
.
impl
;
package
cn
.
quantgroup
.
xyqb
.
service
.
register
.
impl
;
import
cn.quantgroup.xyqb.entity.User
;
import
cn.quantgroup.xyqb.entity.UserDeregisterRecord
;
import
cn.quantgroup.xyqb.entity.UserDeregisterRecord
;
import
cn.quantgroup.xyqb.repository.IUserDeregisterRecordRepository
;
import
cn.quantgroup.xyqb.repository.IUserDeregisterRecordRepository
;
import
cn.quantgroup.xyqb.service.register.IUserDeregisterService
;
import
cn.quantgroup.xyqb.service.register.IUserDeregisterService
;
import
cn.quantgroup.xyqb.util.encrypt.Md5Util
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -26,4 +29,19 @@ public class IUserDeregisterServiceImpl implements IUserDeregisterService {
...
@@ -26,4 +29,19 @@ public class IUserDeregisterServiceImpl implements IUserDeregisterService {
public
List
<
UserDeregisterRecord
>
queryByPhoneNo
(
String
phoneNo
)
{
public
List
<
UserDeregisterRecord
>
queryByPhoneNo
(
String
phoneNo
)
{
return
userDeregisterRecordRepository
.
findByPhoneNo
(
phoneNo
);
return
userDeregisterRecordRepository
.
findByPhoneNo
(
phoneNo
);
}
}
@Override
public
void
save
(
User
user
)
{
UserDeregisterRecord
build
=
UserDeregisterRecord
.
builder
()
.
userId
(
user
.
getId
())
.
deregisterTime
(
new
Date
())
.
password
(
user
.
getPassword
())
.
registeredFrom
(
user
.
getRegisteredFrom
())
.
uuid
(
user
.
getUuid
())
.
phoneNo
(
Md5Util
.
build
(
user
.
getPhoneNo
()))
.
build
();
userDeregisterRecordRepository
.
save
(
build
);
}
}
}
src/main/java/cn/quantgroup/xyqb/service/user/IUserService.java
View file @
a29887b4
...
@@ -105,9 +105,9 @@ public interface IUserService {
...
@@ -105,9 +105,9 @@ public interface IUserService {
void
logout
(
String
token
);
void
logout
(
String
token
);
/**
/**
* 通过userId
删除用户记录
* 通过userId
销户
*
*
* @param userId 用户id
* @param userId 用户id
*/
*/
void
de
leteByUserId
(
Long
userId
);
void
de
register
(
Long
userId
);
}
}
src/main/java/cn/quantgroup/xyqb/service/user/impl/UserServiceImpl.java
View file @
a29887b4
...
@@ -12,10 +12,12 @@ import cn.quantgroup.xyqb.entity.*;
...
@@ -12,10 +12,12 @@ import cn.quantgroup.xyqb.entity.*;
import
cn.quantgroup.xyqb.event.PhoneNoUpdateEvent
;
import
cn.quantgroup.xyqb.event.PhoneNoUpdateEvent
;
import
cn.quantgroup.xyqb.exception.DataException
;
import
cn.quantgroup.xyqb.exception.DataException
;
import
cn.quantgroup.xyqb.exception.UserNotExistException
;
import
cn.quantgroup.xyqb.exception.UserNotExistException
;
import
cn.quantgroup.xyqb.exception.UserRegisterLoginException
;
import
cn.quantgroup.xyqb.model.*
;
import
cn.quantgroup.xyqb.model.*
;
import
cn.quantgroup.xyqb.repository.IUserHashMappingRepository
;
import
cn.quantgroup.xyqb.repository.IUserHashMappingRepository
;
import
cn.quantgroup.xyqb.repository.IUserHashPhoneNoIdNoMappingRepository
;
import
cn.quantgroup.xyqb.repository.IUserHashPhoneNoIdNoMappingRepository
;
import
cn.quantgroup.xyqb.repository.IUserRepository
;
import
cn.quantgroup.xyqb.repository.IUserRepository
;
import
cn.quantgroup.xyqb.service.register.IUserDeregisterService
;
import
cn.quantgroup.xyqb.service.register.IUserRegisterService
;
import
cn.quantgroup.xyqb.service.register.IUserRegisterService
;
import
cn.quantgroup.xyqb.service.session.ISessionService
;
import
cn.quantgroup.xyqb.service.session.ISessionService
;
import
cn.quantgroup.xyqb.service.user.*
;
import
cn.quantgroup.xyqb.service.user.*
;
...
@@ -91,6 +93,9 @@ public class UserServiceImpl implements IUserService, IBaseController {
...
@@ -91,6 +93,9 @@ public class UserServiceImpl implements IUserService, IBaseController {
@Autowired
@Autowired
private
ITenantService
tenantService
;
private
ITenantService
tenantService
;
@Autowired
private
IUserDeregisterService
userDeregisterService
;
@Override
@Override
// @Cacheable(value = "usercache", key = "'xyqbuser' + #phone", unless = "#result == null", cacheManager = "cacheManager")
// @Cacheable(value = "usercache", key = "'xyqbuser' + #phone", unless = "#result == null", cacheManager = "cacheManager")
public
User
findByPhoneInDb
(
String
phone
)
{
public
User
findByPhoneInDb
(
String
phone
)
{
...
@@ -115,7 +120,7 @@ public class UserServiceImpl implements IUserService, IBaseController {
...
@@ -115,7 +120,7 @@ public class UserServiceImpl implements IUserService, IBaseController {
//校验租户ID
//校验租户ID
if
(!
tenantId
.
equals
(
tenantId
))
{
if
(!
tenantId
.
equals
(
tenantId
))
{
users
=
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
users
=
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
}
else
{
}
else
{
users
=
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
users
=
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
}
}
users
.
forEach
(
user
->
userIdAndPhoneMap
.
put
(
user
.
getId
(),
user
.
getPhoneNo
()));
users
.
forEach
(
user
->
userIdAndPhoneMap
.
put
(
user
.
getId
(),
user
.
getPhoneNo
()));
...
@@ -356,28 +361,28 @@ public class UserServiceImpl implements IUserService, IBaseController {
...
@@ -356,28 +361,28 @@ public class UserServiceImpl implements IUserService, IBaseController {
return
JsonResult
.
buildErrorStateResult
(
"登录时微信关联失败"
,
null
);
return
JsonResult
.
buildErrorStateResult
(
"登录时微信关联失败"
,
null
);
}
}
try
{
try
{
String
scDeviceId
=
request
.
getHeader
(
"scDeviceId"
);
String
scDeviceId
=
request
.
getHeader
(
"scDeviceId"
);
if
(!
StringUtils
.
isEmpty
(
scDeviceId
))
{
if
(!
StringUtils
.
isEmpty
(
scDeviceId
))
{
iSensorsAnalytics
.
trackSignUp
(
user
.
getUuid
(),
scDeviceId
);
iSensorsAnalytics
.
trackSignUp
(
user
.
getUuid
(),
scDeviceId
);
}
}
String
terminal
=
request
.
getHeader
(
"terminal"
);
String
terminal
=
request
.
getHeader
(
"terminal"
);
String
channel
=
request
.
getHeader
(
"channel"
);
String
channel
=
request
.
getHeader
(
"channel"
);
log
.
info
(
"--------手机号{}-------scDeviceId{},terminal{},channel{},是否注册{}"
,
phoneNo
,
scDeviceId
,
terminal
,
channel
,
register
);
log
.
info
(
"--------手机号{}-------scDeviceId{},terminal{},channel{},是否注册{}"
,
phoneNo
,
scDeviceId
,
terminal
,
channel
,
register
);
if
(!
StringUtils
.
isEmpty
(
terminal
)&&
"APP"
.
equals
(
terminal
)||!
StringUtils
.
isEmpty
(
channel
)&&(
"214"
.
equals
(
channel
)||
"217"
.
equals
(
channel
)))
{
if
(!
StringUtils
.
isEmpty
(
terminal
)
&&
"APP"
.
equals
(
terminal
)
||
!
StringUtils
.
isEmpty
(
channel
)
&&
(
"214"
.
equals
(
channel
)
||
"217"
.
equals
(
channel
)))
{
if
(
register
)
{
if
(
register
)
{
EventRecord
userRecord
=
EventRecord
.
builder
().
setDistinctId
(
user
.
getUuid
()).
isLoginId
(
Boolean
.
TRUE
)
EventRecord
userRecord
=
EventRecord
.
builder
().
setDistinctId
(
user
.
getUuid
()).
isLoginId
(
Boolean
.
TRUE
)
.
setEventName
(
"App_RegisterEvent"
)
.
setEventName
(
"App_RegisterEvent"
)
.
build
();
.
build
();
iSensorsAnalytics
.
track
(
userRecord
);
iSensorsAnalytics
.
track
(
userRecord
);
}
else
{
}
else
{
EventRecord
userRecord
=
EventRecord
.
builder
().
setDistinctId
(
user
.
getUuid
()).
isLoginId
(
Boolean
.
TRUE
)
EventRecord
userRecord
=
EventRecord
.
builder
().
setDistinctId
(
user
.
getUuid
()).
isLoginId
(
Boolean
.
TRUE
)
.
setEventName
(
"App_LoginEvent"
)
.
setEventName
(
"App_LoginEvent"
)
.
build
();
.
build
();
iSensorsAnalytics
.
track
(
userRecord
);
iSensorsAnalytics
.
track
(
userRecord
);
}
}
iSensorsAnalytics
.
flush
();
iSensorsAnalytics
.
flush
();
}
else
{
}
else
{
log
.
info
(
"老神策埋点{},{}------------"
,
user
.
getRegisteredFrom
(),
user
.
getUuid
());
log
.
info
(
"老神策埋点{},{}------------"
,
user
.
getRegisteredFrom
(),
user
.
getUuid
());
EventRecord
userRecord
=
EventRecord
.
builder
().
setDistinctId
(
user
.
getUuid
()).
isLoginId
(
Boolean
.
TRUE
)
EventRecord
userRecord
=
EventRecord
.
builder
().
setDistinctId
(
user
.
getUuid
()).
isLoginId
(
Boolean
.
TRUE
)
.
setEventName
(
"PD_WUXIEC_UserLoginVccorCash"
)
.
setEventName
(
"PD_WUXIEC_UserLoginVccorCash"
)
.
addProperty
(
"son_channel_id"
,
user
.
getRegisteredFrom
())
.
addProperty
(
"son_channel_id"
,
user
.
getRegisteredFrom
())
...
@@ -506,14 +511,14 @@ public class UserServiceImpl implements IUserService, IBaseController {
...
@@ -506,14 +511,14 @@ public class UserServiceImpl implements IUserService, IBaseController {
List
<
User
>
users
=
userRepository
.
findByIdIn
(
collect
);
List
<
User
>
users
=
userRepository
.
findByIdIn
(
collect
);
if
(!
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
if
(!
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
return
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
return
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
}
else
{
}
else
{
return
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
return
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
}
}
}
else
{
//不是1 就是 uuids
}
else
{
//不是1 就是 uuids
List
<
User
>
users
=
userRepository
.
findByUuidIn
(
vals
);
List
<
User
>
users
=
userRepository
.
findByUuidIn
(
vals
);
if
(!
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
if
(!
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
return
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
return
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
}
else
{
}
else
{
return
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
return
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
}
}
}
}
...
@@ -525,8 +530,25 @@ public class UserServiceImpl implements IUserService, IBaseController {
...
@@ -525,8 +530,25 @@ public class UserServiceImpl implements IUserService, IBaseController {
sessionService
.
deleteSession
(
token
);
sessionService
.
deleteSession
(
token
);
}
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
@Override
public
void
deleteByUserId
(
Long
userId
)
{
public
void
deregister
(
Long
userId
)
{
User
user
=
userRepository
.
findById
(
userId
);
if
(
Objects
.
isNull
(
user
))
{
throw
new
UserRegisterLoginException
(
"用户不存在"
);
}
/* 保存用户销户记录 */
userDeregisterService
.
save
(
user
);
/* 删除用户 */
userRepository
.
deleteById
(
userId
);
userRepository
.
deleteById
(
userId
);
/* 清空session */
sessionService
.
deleteByUserId
(
user
.
getId
());
/* 清空缓存 */
sessionService
.
deleteUserCatch
(
user
);
/* 禁用微信 */
wechatService
.
forbiddenUserWeChat
(
user
.
getId
());
}
}
}
}
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