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
3fca5558
Commit
3fca5558
authored
Jun 21, 2023
by
王亮
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
delete tables of oauth_client_details、customer_info、product_login、customer_login。
parent
904e15ef
Changes
30
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
68 additions
and
1980 deletions
+68
-1980
UserController.java
...n/quantgroup/xyqb/controller/external/UserController.java
+1
-23
AppController.java
...antgroup/xyqb/controller/internal/user/AppController.java
+3
-10
InnerController.java
...tgroup/xyqb/controller/internal/user/InnerController.java
+6
-47
WxController.java
...ntgroup/xyqb/controller/middleoffice/wx/WxController.java
+12
-60
TenantController.java
...n/quantgroup/xyqb/controller/tenant/TenantController.java
+0
-61
CustomerInfoEntity.java
...in/java/cn/quantgroup/xyqb/entity/CustomerInfoEntity.java
+0
-300
CustomerLoginEntity.java
...n/java/cn/quantgroup/xyqb/entity/CustomerLoginEntity.java
+0
-104
EntityBuilder.java
src/main/java/cn/quantgroup/xyqb/entity/EntityBuilder.java
+0
-32
OauthClientDetailsEntity.java
...a/cn/quantgroup/xyqb/entity/OauthClientDetailsEntity.java
+0
-224
ProductLoginEntity.java
...in/java/cn/quantgroup/xyqb/entity/ProductLoginEntity.java
+0
-213
ICustomerInfoRepository.java
...n/quantgroup/xyqb/repository/ICustomerInfoRepository.java
+0
-15
ICustomerLoginRepository.java
.../quantgroup/xyqb/repository/ICustomerLoginRepository.java
+0
-15
IOauthClientDetailsRepository.java
...tgroup/xyqb/repository/IOauthClientDetailsRepository.java
+0
-16
IProductLoginRepository.java
...n/quantgroup/xyqb/repository/IProductLoginRepository.java
+0
-49
IWeChatInfoRelationRepository.java
...tgroup/xyqb/repository/IWeChatInfoRelationRepository.java
+0
-5
AppletServiceImpl.java
...b/service/middleoffice/applet/impl/AppletServiceImpl.java
+45
-102
ICustomerInfoService.java
...cn/quantgroup/xyqb/service/user/ICustomerInfoService.java
+0
-12
ICustomerLoginService.java
...n/quantgroup/xyqb/service/user/ICustomerLoginService.java
+0
-10
IOauthClientDetailsService.java
...ntgroup/xyqb/service/user/IOauthClientDetailsService.java
+0
-17
IOauthLoginInfoService.java
.../quantgroup/xyqb/service/user/IOauthLoginInfoService.java
+0
-13
IProductLoginService.java
...cn/quantgroup/xyqb/service/user/IProductLoginService.java
+0
-29
ITenantService.java
.../java/cn/quantgroup/xyqb/service/user/ITenantService.java
+0
-39
CustomerInfoServiceImpl.java
...group/xyqb/service/user/impl/CustomerInfoServiceImpl.java
+0
-30
CustomerLoginServiceImpl.java
...roup/xyqb/service/user/impl/CustomerLoginServiceImpl.java
+0
-24
OauthClientDetailsServiceImpl.java
...xyqb/service/user/impl/OauthClientDetailsServiceImpl.java
+0
-55
OauthLoginInfoServiceImpl.java
...oup/xyqb/service/user/impl/OauthLoginInfoServiceImpl.java
+0
-195
ProductLoginServiceImpl.java
...group/xyqb/service/user/impl/ProductLoginServiceImpl.java
+0
-61
TenantServiceImpl.java
.../quantgroup/xyqb/service/user/impl/TenantServiceImpl.java
+0
-176
UserCenterServiceImpl.java
...ntgroup/xyqb/service/user/impl/UserCenterServiceImpl.java
+1
-19
UserServiceImpl.java
...cn/quantgroup/xyqb/service/user/impl/UserServiceImpl.java
+0
-24
No files found.
src/main/java/cn/quantgroup/xyqb/controller/external/UserController.java
View file @
3fca5558
...
...
@@ -81,9 +81,6 @@ public class UserController implements IBaseController {
@Autowired
private
IUserRegisterService
userRegisterService
;
@Autowired
private
ITenantService
tenantService
;
@Value
(
"${xyqb.user.service.host}"
)
private
String
userHost
;
...
...
@@ -528,22 +525,7 @@ public class UserController implements IBaseController {
}
}
User
user
=
sessionStruct
.
getValues
().
getUser
();
Integer
sessionTenantId
=
sessionStruct
.
getValues
().
getLoginProperties
().
getTenantId
();
//默认羊小咩租户
if
(
TenantUtil
.
validationTenantIdIsNullOrZero
(
sessionTenantId
))
{
sessionTenantId
=
TenantUtil
.
TENANT_DEFAULT
;
}
//校验非羊小咩租户
if
(!
sessionTenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
if
(
sessionTenantId
.
equals
(
tenantId
))
{
user
=
tenantService
.
getTenantUser
(
user
,
tenantId
);
if
(
user
==
null
)
{
return
JsonResult
.
buildSuccessResult
(
null
,
result
);
}
}
else
{
return
JsonResult
.
buildSuccessResult
(
null
,
result
);
}
}
String
phoneNo
=
user
.
getPhoneNo
();
result
.
put
(
"phoneNo"
,
phoneNo
);
result
.
put
(
"userId"
,
user
.
getId
());
...
...
@@ -647,10 +629,6 @@ public class UserController implements IBaseController {
return
JsonResult
.
buildSuccessResult
(
""
,
brief
);
}
String
tenantId
=
getCurrentTenantIdRedis
();
if
(
tenantId
!=
null
&&
!
TenantUtil
.
TENANT_DEFAULT
.
equals
(
Integer
.
parseInt
(
tenantId
)))
{
brief
=
tenantService
.
getTenantCustomerInfo
(
userDetail
,
Integer
.
parseInt
(
tenantId
));
}
return
JsonResult
.
buildSuccessResult
(
null
,
brief
);
}
...
...
src/main/java/cn/quantgroup/xyqb/controller/internal/user/AppController.java
View file @
3fca5558
...
...
@@ -15,7 +15,6 @@ import cn.quantgroup.xyqb.security.AuthorizationPoint;
import
cn.quantgroup.xyqb.service.merchant.IMerchantService
;
import
cn.quantgroup.xyqb.service.register.IUserRegisterService
;
import
cn.quantgroup.xyqb.service.session.ISessionService
;
import
cn.quantgroup.xyqb.service.user.IOauthLoginInfoService
;
import
cn.quantgroup.xyqb.service.user.IUserService
;
import
cn.quantgroup.xyqb.util.IpUtil
;
import
cn.quantgroup.xyqb.util.TenantUtil
;
...
...
@@ -53,8 +52,7 @@ public class AppController implements IBaseController {
private
ISessionService
sessionService
;
@Autowired
private
IUserService
userService
;
@Autowired
private
IOauthLoginInfoService
oauthLoginInfoService
;
@Autowired
private
IMerchantService
merchantService
;
@Autowired
...
...
@@ -94,8 +92,7 @@ public class AppController implements IBaseController {
isRegister
=
true
;
user
=
userRegisterService
.
register
(
registerFrom
,
phoneNumber
,
name
,
channelId
,
createdFrom
,
tenantId
);
}
// 无论是否注册过都添加映射
oauthLoginInfoService
.
addLoginInfo
(
user
,
tenantId
);
if
(
user
==
null
)
{
result
=
JsonResult
.
buildErrorStateResult
(
USER_ERROR_OR_PASSWORD_ERROR
,
null
);
...
...
@@ -239,9 +236,6 @@ public class AppController implements IBaseController {
return
JsonResult
.
buildErrorStateResult
(
"无效的商户"
,
null
);
}
//租户下新增用户
oauthLoginInfoService
.
addLoginInfo
(
user
,
tenantId
);
log
.
info
(
"=addLoginInfo end"
);
LoginProperties
loginProperties
=
new
LoginProperties
(
""
,
4
,
channelId
,
registerFrom
,
appChannel
,
merchant
.
getId
(),
merchant
.
getName
(),
tenantId
);
AuthBean
bean
=
sessionService
.
createSession
(
user
,
loginProperties
,
LoginType
.
SUPERLOGIN
.
ordinal
());
...
...
@@ -339,8 +333,7 @@ public class AppController implements IBaseController {
if
(!
user
.
getEnable
())
{
return
JsonResult
.
buildErrorStateResult
(
USER_ERROR_OR_ENABLE_ERROR
,
null
);
}
//校验租户ID tenantId
oauthLoginInfoService
.
addLoginInfo
(
user
,
tenantId
);
LoginProperties
loginProperties
=
new
LoginProperties
(
""
,
4
,
channelId
,
registerFrom
,
appChannel
,
null
,
""
,
tenantId
);
AuthBean
bean
=
sessionService
.
createSession
(
user
,
loginProperties
,
LoginType
.
SUPERLOGINTWO
.
ordinal
());
// 不同渠道用户补签不同模板合同
...
...
src/main/java/cn/quantgroup/xyqb/controller/internal/user/InnerController.java
View file @
3fca5558
...
...
@@ -18,7 +18,9 @@ import cn.quantgroup.xyqb.service.register.IUserDeregisterService;
import
cn.quantgroup.xyqb.service.register.IUserRegisterService
;
import
cn.quantgroup.xyqb.service.session.ISessionService
;
import
cn.quantgroup.xyqb.service.sms.ISmsService
;
import
cn.quantgroup.xyqb.service.user.*
;
import
cn.quantgroup.xyqb.service.user.IUserBtRegisterService
;
import
cn.quantgroup.xyqb.service.user.IUserDetailService
;
import
cn.quantgroup.xyqb.service.user.IUserService
;
import
cn.quantgroup.xyqb.service.user.vo.UserDetailVO
;
import
cn.quantgroup.xyqb.service.wechat.IWechatService
;
import
cn.quantgroup.xyqb.util.*
;
...
...
@@ -86,12 +88,6 @@ public class InnerController implements IBaseController {
@Autowired
private
StmsRemoteService
stmsRemoteService
;
@Autowired
private
ITenantService
tenantService
;
@Autowired
private
IOauthLoginInfoService
iOauthLoginInfoService
;
@Autowired
private
IUserDeregisterService
userDeregisterService
;
@Autowired
...
...
@@ -130,13 +126,7 @@ public class InnerController implements IBaseController {
if
(
user
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"查无此人"
,
null
,
4L
);
}
if
(
tenantId
!=
null
&&
!
TenantUtil
.
TENANT_DEFAULT
.
equals
(
tenantId
))
{
// userId 查询对应productLogin 获取手机号和customerId
user
=
tenantService
.
getTenantUser
(
user
,
tenantId
);
if
(
user
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"查无此人"
,
null
,
4L
);
}
}
return
JsonResult
.
buildSuccessResult
(
""
,
new
UserRet
(
user
));
}
...
...
@@ -150,14 +140,6 @@ public class InnerController implements IBaseController {
return
JsonResult
.
buildErrorStateResult
(
"查无此人"
,
null
);
}
if
(
tenantId
!=
null
&&
!
TenantUtil
.
TENANT_DEFAULT
.
equals
(
tenantId
))
{
// userId 查询对应productLogin 获取手机号和customerId
user
=
tenantService
.
getTenantUser
(
user
,
tenantId
);
if
(
user
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"查无此人"
,
null
);
}
}
return
JsonResult
.
buildSuccessResult
(
""
,
new
UserRet
(
user
));
}
...
...
@@ -254,16 +236,13 @@ public class InnerController implements IBaseController {
return
JsonResult
.
buildErrorStateResult
(
USER_ERROR_OR_ENABLE_ERROR
,
null
);
}
// 插入关联数据
iOauthLoginInfoService
.
addLoginInfo
(
user
,
tenantId
);
//已存在用户
return
JsonResult
.
buildSuccessResult
(
null
,
new
UserRet
(
user
));
}
//注册新用户
user
=
userRegisterService
.
register
(
registeredFrom
,
phoneNo
,
null
,
0L
,
0L
,
tenantId
);
//校验租户ID tenantId
iOauthLoginInfoService
.
addLoginInfo
(
user
,
tenantId
);
return
JsonResult
.
buildSuccessResult
(
null
,
new
UserRet
(
user
));
}
...
...
@@ -351,12 +330,6 @@ public class InnerController implements IBaseController {
return
JsonResult
.
buildErrorStateResult
(
"该用户无实名信息"
,
null
);
}
if
(
tenantId
!=
null
&&
!
TenantUtil
.
TENANT_DEFAULT
.
equals
(
tenantId
))
{
userDetail
=
tenantService
.
getTenantUserDetail
(
userDetail
,
tenantId
);
if
(
userDetail
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"该用户详情信息不存在"
,
null
);
}
}
return
JsonResult
.
buildSuccessResult
(
"用户实名信息"
,
UserDetailRet
.
getUserDetail
(
userDetail
));
}
...
...
@@ -367,15 +340,7 @@ public class InnerController implements IBaseController {
public
JsonResult
findUserByUserId
(
Long
userId
,
Integer
tenantId
)
{
User
user
=
userService
.
findById
(
userId
);
if
(
user
!=
null
)
{
if
(
tenantId
!=
null
&&
!
TenantUtil
.
TENANT_DEFAULT
.
equals
(
tenantId
))
{
// userId 查询对应productLogin 获取手机号和customerId
user
=
tenantService
.
getTenantUser
(
user
,
tenantId
);
if
(
user
!=
null
)
{
return
JsonResult
.
buildSuccessResult
(
null
,
new
UserRet
(
user
));
}
}
else
{
return
JsonResult
.
buildSuccessResult
(
null
,
new
UserRet
(
user
));
}
return
JsonResult
.
buildSuccessResult
(
null
,
new
UserRet
(
user
));
}
return
JsonResult
.
buildErrorStateResult
(
"查无此人"
,
null
);
...
...
@@ -390,12 +355,6 @@ public class InnerController implements IBaseController {
UserDetail
userDetail
=
null
;
userDetail
=
userDetailService
.
findSlaveByPhoneNo
(
phoneNo
);
if
(
userDetail
!=
null
)
{
if
(
tenantId
!=
null
&&
!
TenantUtil
.
TENANT_DEFAULT
.
equals
(
tenantId
))
{
userDetail
=
tenantService
.
getTenantUserDetail
(
userDetail
,
tenantId
);
if
(
userDetail
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"该用户详情信息不存在"
,
null
);
}
}
return
JsonResult
.
buildSuccessResult
(
null
,
UserDetailRet
.
getUserDetail
(
userDetail
));
}
...
...
src/main/java/cn/quantgroup/xyqb/controller/middleoffice/wx/WxController.java
View file @
3fca5558
package
cn
.
quantgroup
.
xyqb
.
controller
.
middleoffice
.
wx
;
import
cn.quantgroup.xyqb.entity.CustomerInfoEntity
;
import
cn.quantgroup.xyqb.entity.User
;
import
cn.quantgroup.xyqb.entity.WechatUserInfo
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.service.user.ITenantService
;
import
cn.quantgroup.xyqb.service.user.IUserService
;
import
cn.quantgroup.xyqb.service.wechat.IWechatService
;
import
cn.quantgroup.xyqb.util.TenantUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -28,9 +24,6 @@ public class WxController {
@Resource
private
IWechatService
wechatService
;
@Autowired
private
ITenantService
tenantService
;
@Autowired
private
IUserService
userService
;
...
...
@@ -43,19 +36,9 @@ public class WxController {
@GetMapping
(
"/userId/{userId}"
)
public
JsonResult
openId
(
@PathVariable
Long
userId
,
@RequestParam
(
required
=
false
)
Integer
tenantId
)
{
String
openId
=
null
;
if
(
TenantUtil
.
validationTenantIdIsNullOrZero
(
tenantId
)
||
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
WechatUserInfo
wechatUserInfo
=
wechatService
.
queryByUserId
(
userId
);
if
(
wechatUserInfo
!=
null
)
{
openId
=
wechatUserInfo
.
getOpenId
();
}
}
else
{
User
user
=
userService
.
findById
(
userId
);
if
(
user
!=
null
)
{
CustomerInfoEntity
tenantCustomerInfo
=
tenantService
.
getTenantCustomerInfo
(
user
,
tenantId
);
if
(
tenantCustomerInfo
!=
null
)
{
openId
=
tenantCustomerInfo
.
getSourceOpenId
();
}
}
WechatUserInfo
wechatUserInfo
=
wechatService
.
queryByUserId
(
userId
);
if
(
wechatUserInfo
!=
null
)
{
openId
=
wechatUserInfo
.
getOpenId
();
}
return
JsonResult
.
buildSuccessResultGeneric
(
openId
);
}
...
...
@@ -69,28 +52,11 @@ public class WxController {
*/
@GetMapping
(
"/userId/{userId}/{appName}"
)
public
JsonResult
openId
(
@PathVariable
Long
userId
,
@PathVariable
String
appName
,
@RequestParam
(
required
=
false
)
Integer
tenantId
)
{
//默认羊小咩租户
if
(
TenantUtil
.
validationTenantIdIsNullOrZero
(
tenantId
))
{
tenantId
=
TenantUtil
.
TENANT_DEFAULT
;
}
if
(
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
WechatUserInfo
wechatUserInfo
=
wechatService
.
queryByUserId
(
userId
,
appName
);
if
(
wechatUserInfo
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
return
JsonResult
.
buildSuccessResultGeneric
(
wechatUserInfo
.
getOpenId
());
}
else
{
User
user
=
userService
.
findById
(
userId
);
if
(
user
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
CustomerInfoEntity
tenantCustomerInfo
=
tenantService
.
getTenantCustomerInfo
(
user
,
tenantId
);
if
(
tenantCustomerInfo
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
return
JsonResult
.
buildSuccessResultGeneric
(
tenantCustomerInfo
.
getSourceOpenId
());
WechatUserInfo
wechatUserInfo
=
wechatService
.
queryByUserId
(
userId
,
appName
);
if
(
wechatUserInfo
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
return
JsonResult
.
buildSuccessResultGeneric
(
wechatUserInfo
.
getOpenId
());
}
/**
...
...
@@ -101,26 +67,12 @@ public class WxController {
*/
@GetMapping
(
"/phoneNo/{phoneNo}"
)
public
JsonResult
openId
(
@PathVariable
String
phoneNo
,
@RequestParam
(
required
=
false
)
Integer
tenantId
)
{
if
(
TenantUtil
.
validationTenantIdIsNullOrZero
(
tenantId
))
{
tenantId
=
TenantUtil
.
TENANT_DEFAULT
;
}
if
(
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
WechatUserInfo
wechatUserInfo
=
wechatService
.
findWechatUserInfoByPhoneNo
(
phoneNo
);
if
(
wechatUserInfo
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
return
JsonResult
.
buildSuccessResultGeneric
(
wechatUserInfo
.
getOpenId
());
}
else
{
User
user
=
userService
.
findByPhoneInDb
(
phoneNo
);
if
(
user
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
CustomerInfoEntity
tenantCustomerInfo
=
tenantService
.
getTenantCustomerInfo
(
user
,
tenantId
);
if
(
tenantCustomerInfo
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
return
JsonResult
.
buildSuccessResultGeneric
(
tenantCustomerInfo
.
getSourceOpenId
());
WechatUserInfo
wechatUserInfo
=
wechatService
.
findWechatUserInfoByPhoneNo
(
phoneNo
);
if
(
wechatUserInfo
==
null
)
{
return
JsonResult
.
buildSuccessResult
();
}
return
JsonResult
.
buildSuccessResultGeneric
(
wechatUserInfo
.
getOpenId
());
}
@RequestMapping
(
"/code/{key}/{extdata}"
)
...
...
src/main/java/cn/quantgroup/xyqb/controller/tenant/TenantController.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
controller
.
tenant
;
import
cn.quantgroup.xyqb.entity.ProductLoginEntity
;
import
cn.quantgroup.xyqb.entity.User
;
import
cn.quantgroup.xyqb.model.JsonResult
;
import
cn.quantgroup.xyqb.service.user.IOauthClientDetailsService
;
import
cn.quantgroup.xyqb.service.user.IProductLoginService
;
import
cn.quantgroup.xyqb.service.user.IUserService
;
import
cn.quantgroup.xyqb.util.TenantUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.ArrayList
;
import
java.util.List
;
@Slf4j
@RestController
@RequestMapping
(
"/tenant"
)
public
class
TenantController
{
@Autowired
private
IProductLoginService
productLoginService
;
@Autowired
private
IOauthClientDetailsService
oauthClientDetailsService
;
@Autowired
private
IUserService
userService
;
/**
* 根据用户ID查询租户列表
* @param userId
* @return
* @Yapi http://yapi.quantgroups.com/project/17/interface/api/30068
*/
@PostMapping
(
"/userIdTenantList"
)
public
JsonResult
findTenantByUserId
(
Long
userId
)
{
// 通过userId获取租户机构和产品
List
<
ProductLoginEntity
>
productLoginEntityList
=
productLoginService
.
findSlaveByUserId
(
userId
);
List
<
Integer
>
tenantList
=
new
ArrayList
<>();
if
(!
productLoginEntityList
.
isEmpty
())
{
// 通过机构和产品Id 获取租户id
tenantList
=
oauthClientDetailsService
.
findTenantList
(
productLoginEntityList
);
}
if
(
tenantList
.
isEmpty
())
{
User
user
=
userService
.
findById
(
userId
);
if
(
user
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"该用户不存在"
,
null
);
}
tenantList
.
add
(
TenantUtil
.
TENANT_DEFAULT
);
}
return
JsonResult
.
buildSuccessResult
(
"租户列表"
,
tenantList
);
}
}
src/main/java/cn/quantgroup/xyqb/entity/CustomerInfoEntity.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
entity
;
import
cn.quantgroup.xyqb.entity.baseEntity.PartitionEntity
;
import
cn.quantgroup.xyqb.model.Gender
;
import
cn.quantgroup.xyqb.util.StringUtils
;
import
javax.persistence.Column
;
import
javax.persistence.Entity
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
java.io.Serializable
;
/**
* Created with IntelliJ IDEA.
*
* @author: Li JianHua
* @Date: 2021/9/23
* @Time: 11:02
* Description: No Description
*/
@Entity
@Table
(
name
=
"customer_info"
)
public
class
CustomerInfoEntity
extends
PartitionEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
3639362579605273102L
;
private
final
static
String
CLASS_NAME
=
CustomerInfoEntity
.
class
.
getSimpleName
();
@Id
@Column
(
name
=
"ID"
,
nullable
=
false
)
// @GeneratedValue(strategy = GenerationType.IDENTITY)
private
long
id
;
@Column
(
name
=
"CUSTOMER_ID"
,
nullable
=
false
)
private
long
customerId
;
@Column
(
name
=
"INSTITUTION_ID"
,
nullable
=
false
,
length
=
4
)
private
String
institutionId
;
@Column
(
name
=
"AVATAR_URL"
,
nullable
=
true
,
length
=
255
)
private
String
avatarUrl
;
@Column
(
name
=
"NICK_NAME"
,
nullable
=
true
,
length
=
50
)
private
String
nickName
;
@Column
(
name
=
"APP_NAME"
,
nullable
=
true
,
length
=
50
)
private
String
appName
;
@Column
(
name
=
"CITY"
,
nullable
=
true
,
length
=
36
)
private
String
city
;
@Column
(
name
=
"CITY_CODE"
,
nullable
=
true
)
private
Long
cityCode
;
@Column
(
name
=
"COUNTRY"
,
nullable
=
true
,
length
=
50
)
private
String
country
;
@Column
(
name
=
"LANGUAGE"
,
nullable
=
true
,
length
=
30
)
private
String
language
;
@Column
(
name
=
"SOURCE_OPEN_ID"
,
nullable
=
true
,
length
=
128
)
private
String
sourceOpenId
;
@Column
(
name
=
"PRIVILEAGE"
,
nullable
=
true
,
length
=
255
)
private
String
privileage
;
@Column
(
name
=
"PROVINCE"
,
nullable
=
true
,
length
=
30
)
private
String
province
;
@Column
(
name
=
"PROVINCE_CODE"
,
nullable
=
true
)
private
Long
provinceCode
;
@Column
(
name
=
"SEX"
,
nullable
=
true
)
private
Gender
sex
;
@Column
(
name
=
"UNION_ID"
,
nullable
=
true
,
length
=
128
)
private
String
unionId
;
@Column
(
name
=
"UTM_SOURCE"
,
nullable
=
true
,
length
=
50
)
private
String
utmSource
;
@Column
(
name
=
"NAME"
,
nullable
=
true
,
length
=
50
)
private
String
name
;
@Column
(
name
=
"ID_CARD_NO"
,
nullable
=
true
,
length
=
32
)
private
String
idCardNo
;
@Column
(
name
=
"ID_CARD_TYPE"
,
nullable
=
true
)
private
Byte
idCardType
;
@Column
(
name
=
"BIRTHDAY"
,
nullable
=
true
,
length
=
30
)
private
String
birthday
;
@Column
(
name
=
"PRODUCT_ID"
,
nullable
=
false
)
private
String
productId
;
@Column
(
name
=
"SOURCE_TYPE"
,
nullable
=
true
,
length
=
255
)
private
String
sourceType
;
@Column
(
name
=
"TELEPHONE"
,
nullable
=
true
,
length
=
32
)
private
String
telephone
;
public
long
getCustomerId
()
{
return
customerId
;
}
public
void
setCustomerId
(
long
customerId
)
{
this
.
customerId
=
customerId
;
}
public
String
getInstitutionId
()
{
return
institutionId
;
}
public
void
setInstitutionId
(
String
institutionId
)
{
this
.
institutionId
=
institutionId
;
}
public
String
getAvatarUrl
()
{
return
avatarUrl
;
}
public
void
setAvatarUrl
(
String
avatarUrl
)
{
this
.
avatarUrl
=
avatarUrl
;
}
public
String
getNickName
()
{
return
nickName
;
}
public
void
setNickName
(
String
nickName
)
{
this
.
nickName
=
nickName
;
}
public
String
getCity
()
{
return
city
;
}
public
void
setCity
(
String
city
)
{
this
.
city
=
city
;
}
public
Long
getCityCode
()
{
return
cityCode
;
}
public
void
setCityCode
(
Long
cityCode
)
{
this
.
cityCode
=
cityCode
;
}
public
String
getCountry
()
{
return
country
;
}
public
void
setCountry
(
String
country
)
{
this
.
country
=
country
;
}
public
String
getLanguage
()
{
return
language
;
}
public
void
setLanguage
(
String
language
)
{
this
.
language
=
language
;
}
public
String
getSourceOpenId
()
{
return
sourceOpenId
;
}
public
void
setSourceOpenId
(
String
sourceOpenId
)
{
this
.
sourceOpenId
=
sourceOpenId
;
}
public
String
getPrivileage
()
{
return
privileage
;
}
public
void
setPrivileage
(
String
privileage
)
{
this
.
privileage
=
privileage
;
}
public
String
getProvince
()
{
return
province
;
}
public
void
setProvince
(
String
province
)
{
this
.
province
=
province
;
}
public
Long
getProvinceCode
()
{
return
provinceCode
;
}
public
void
setProvinceCode
(
Long
provinceCode
)
{
this
.
provinceCode
=
provinceCode
;
}
public
Gender
getSex
()
{
return
sex
;
}
public
void
setSex
(
Gender
sex
)
{
this
.
sex
=
sex
;
}
public
String
getUnionId
()
{
return
unionId
;
}
public
void
setUnionId
(
String
unionId
)
{
this
.
unionId
=
unionId
;
}
public
String
getUtmSource
()
{
return
utmSource
;
}
public
void
setUtmSource
(
String
utmSource
)
{
this
.
utmSource
=
utmSource
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
public
String
getIdCardNo
()
{
return
idCardNo
;
}
public
void
setIdCardNo
(
String
idCardNo
)
{
this
.
idCardNo
=
idCardNo
;
}
public
Byte
getIdCardType
()
{
return
idCardType
;
}
public
void
setIdCardType
(
Byte
idCardType
)
{
this
.
idCardType
=
idCardType
;
}
public
String
getBirthday
()
{
return
birthday
;
}
public
void
setBirthday
(
String
birthday
)
{
this
.
birthday
=
birthday
;
}
public
String
getProductId
()
{
return
productId
;
}
public
void
setProductId
(
String
productId
)
{
this
.
productId
=
productId
;
}
public
String
getSourceType
()
{
return
sourceType
;
}
public
void
setSourceType
(
String
sourceType
)
{
this
.
sourceType
=
sourceType
;
}
public
String
getTelephone
()
{
return
telephone
;
}
public
void
setTelephone
(
String
telephone
)
{
this
.
telephone
=
telephone
;
}
@Override
public
String
getPersistentKey
()
{
return
StringUtils
.
toDelimitedString
(
CLASS_NAME
,
customerId
,
institutionId
);
}
public
long
getId
()
{
return
id
;
}
public
void
setId
(
long
id
)
{
this
.
id
=
id
;
}
public
String
getAppName
()
{
return
appName
;
}
public
void
setAppName
(
String
appName
)
{
this
.
appName
=
appName
;
}
}
src/main/java/cn/quantgroup/xyqb/entity/CustomerLoginEntity.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
entity
;
import
cn.quantgroup.xyqb.entity.baseEntity.PartitionEntity
;
import
cn.quantgroup.xyqb.util.StringUtils
;
import
javax.persistence.Column
;
import
javax.persistence.Entity
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
java.io.Serializable
;
import
java.util.Objects
;
/**
* Created with IntelliJ IDEA.
*
* @author: Li JianHua
* @Date: 2021/9/23
* @Time: 11:02
* Description: No Description
*/
@Entity
@Table
(
name
=
"customer_login"
)
public
class
CustomerLoginEntity
extends
PartitionEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
6859480785575072675L
;
private
final
static
String
CLASS_NAME
=
CustomerLoginEntity
.
class
.
getSimpleName
();
@Id
@Column
(
name
=
"ID"
,
nullable
=
false
)
// @GeneratedValue(strategy = GenerationType.IDENTITY)
private
long
id
;
@Column
(
name
=
"INSTITUTION_ID"
,
nullable
=
false
,
length
=
4
)
private
String
institutionId
;
@Column
(
name
=
"PRODUCT_ID"
,
nullable
=
false
,
length
=
4
)
private
String
productId
;
@Column
(
name
=
"CUSTOMER_ID"
,
nullable
=
false
)
private
long
customerId
;
@Column
(
name
=
"UUID"
,
nullable
=
true
)
private
Long
uuid
;
public
String
getInstitutionId
()
{
return
institutionId
;
}
public
void
setInstitutionId
(
String
institutionId
)
{
this
.
institutionId
=
institutionId
;
}
public
String
getProductId
()
{
return
productId
;
}
public
void
setProductId
(
String
productId
)
{
this
.
productId
=
productId
;
}
public
long
getCustomerId
()
{
return
customerId
;
}
public
void
setCustomerId
(
long
customerId
)
{
this
.
customerId
=
customerId
;
}
public
Long
getUuid
()
{
return
uuid
;
}
public
void
setUuid
(
Long
uuid
)
{
this
.
uuid
=
uuid
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(
o
==
null
||
getClass
()
!=
o
.
getClass
())
return
false
;
CustomerLoginEntity
that
=
(
CustomerLoginEntity
)
o
;
return
customerId
==
that
.
customerId
;
}
@Override
public
int
hashCode
()
{
return
Objects
.
hash
(
institutionId
,
productId
,
customerId
,
uuid
);
}
@Override
public
String
getPersistentKey
()
{
return
StringUtils
.
toDelimitedString
(
CLASS_NAME
,
institutionId
,
productId
,
customerId
);
}
public
long
getId
()
{
return
id
;
}
public
void
setId
(
long
id
)
{
this
.
id
=
id
;
}
}
src/main/java/cn/quantgroup/xyqb/entity/EntityBuilder.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
entity
;
import
java.util.Date
;
/**
* Created by Administrator on 2021/8/27 0027.
*/
public
class
EntityBuilder
{
public
static
ProductLoginEntity
productLogin
(
String
productId
,
String
institutionId
,
String
phoneNo
,
Long
customerId
,
String
customerName
,
Integer
partitionKey
,
Long
id
)
{
ProductLoginEntity
entity
=
new
ProductLoginEntity
();
// entity.setId(id);
entity
.
setCustomerId
(
customerId
);
entity
.
setCustomerName
(
customerName
);
entity
.
setPhoneNo
(
phoneNo
);
entity
.
setProductId
(
productId
);
entity
.
setInstitutionId
(
institutionId
);
entity
.
setPartitionKey
(
partitionKey
);
entity
.
setPassword
(
""
);
entity
.
setSaltValue
(
""
);
entity
.
setStatus
(
""
);
entity
.
setBatchNo
(
1
);
entity
.
setCreatedDate
(
new
Date
());
entity
.
setModifiedDate
(
new
Date
());
entity
.
setCreatedBy
(
""
);
entity
.
setModifiedBy
(
""
);
return
entity
;
}
}
src/main/java/cn/quantgroup/xyqb/entity/OauthClientDetailsEntity.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
entity
;
import
cn.quantgroup.xyqb.entity.baseEntity.OptimisticEntity
;
import
cn.quantgroup.xyqb.util.StringUtils
;
import
javax.persistence.Column
;
import
javax.persistence.Entity
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
java.io.Serializable
;
import
java.util.Objects
;
/**
* Created with IntelliJ IDEA.
*
* @author: Li JianHua
* @Date: 2021/9/23
* @Time: 11:02
* Description: No Description
*/
@Entity
@Table
(
name
=
"oauth_client_details"
)
public
class
OauthClientDetailsEntity
extends
OptimisticEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3521505570429896355L
;
private
final
static
String
CLASS_NAME
=
OauthClientDetailsEntity
.
class
.
getSimpleName
();
@Id
@Column
(
name
=
"CLIENT_ID"
,
nullable
=
false
)
private
Integer
clientId
;
@Column
(
name
=
"INSTITUTION_ID"
,
nullable
=
false
,
length
=
4
)
private
String
institutionId
;
@Column
(
name
=
"PRODUCT_ID"
,
nullable
=
false
,
length
=
4
)
private
String
productId
;
@Column
(
name
=
"ENCRYPTION_TYPE"
,
nullable
=
false
,
length
=
4
)
private
String
encryptionType
;
@Column
(
name
=
"ENABLE"
,
nullable
=
false
,
length
=
4
)
private
String
enable
;
@Column
(
name
=
"RESOURCE_IDS"
,
nullable
=
true
,
length
=
255
)
private
String
resourceIds
;
@Column
(
name
=
"CLIENT_SECRET"
,
nullable
=
false
,
length
=
255
)
private
String
clientSecret
;
@Column
(
name
=
"SCOPE"
,
nullable
=
true
,
length
=
255
)
private
String
scope
;
@Column
(
name
=
"AUTHORIZED_GRANT_TYPES"
,
nullable
=
true
,
length
=
255
)
private
String
authorizedGrantTypes
;
@Column
(
name
=
"WEB_SERVER_REDIRECT_URI"
,
nullable
=
true
,
length
=
255
)
private
String
webServerRedirectUri
;
@Column
(
name
=
"AUTHORITIES"
,
nullable
=
true
,
length
=
255
)
private
String
authorities
;
@Column
(
name
=
"ACCESS_TOKEN_VALIDITY"
,
nullable
=
true
)
private
Integer
accessTokenValidity
;
@Column
(
name
=
"REFRESH_TOKEN_VALIDITY"
,
nullable
=
true
)
private
Integer
refreshTokenValidity
;
@Column
(
name
=
"ADDITIONAL_INFORMATION"
,
nullable
=
true
,
length
=
4096
)
private
String
additionalInformation
;
@Column
(
name
=
"AUTOAPPROVE"
,
nullable
=
true
,
length
=
255
)
private
String
autoapprove
;
@Column
(
name
=
"SMS_REGISTER_TEMPLATE"
,
nullable
=
true
,
length
=
255
)
private
String
smsRegisterTemplate
;
public
Integer
getClientId
()
{
return
clientId
;
}
public
void
setClientId
(
Integer
clientId
)
{
this
.
clientId
=
clientId
;
}
public
String
getInstitutionId
()
{
return
institutionId
;
}
public
void
setInstitutionId
(
String
institutionId
)
{
this
.
institutionId
=
institutionId
;
}
public
String
getProductId
()
{
return
productId
;
}
public
void
setProductId
(
String
productId
)
{
this
.
productId
=
productId
;
}
public
String
getEncryptionType
()
{
return
encryptionType
;
}
public
void
setEncryptionType
(
String
encryptionType
)
{
this
.
encryptionType
=
encryptionType
;
}
public
String
getEnable
()
{
return
enable
;
}
public
void
setEnable
(
String
enable
)
{
this
.
enable
=
enable
;
}
public
String
getResourceIds
()
{
return
resourceIds
;
}
public
void
setResourceIds
(
String
resourceIds
)
{
this
.
resourceIds
=
resourceIds
;
}
public
String
getClientSecret
()
{
return
clientSecret
;
}
public
void
setClientSecret
(
String
clientSecret
)
{
this
.
clientSecret
=
clientSecret
;
}
public
String
getScope
()
{
return
scope
;
}
public
void
setScope
(
String
scope
)
{
this
.
scope
=
scope
;
}
public
String
getAuthorizedGrantTypes
()
{
return
authorizedGrantTypes
;
}
public
void
setAuthorizedGrantTypes
(
String
authorizedGrantTypes
)
{
this
.
authorizedGrantTypes
=
authorizedGrantTypes
;
}
public
String
getWebServerRedirectUri
()
{
return
webServerRedirectUri
;
}
public
void
setWebServerRedirectUri
(
String
webServerRedirectUri
)
{
this
.
webServerRedirectUri
=
webServerRedirectUri
;
}
public
String
getAuthorities
()
{
return
authorities
;
}
public
void
setAuthorities
(
String
authorities
)
{
this
.
authorities
=
authorities
;
}
public
Integer
getAccessTokenValidity
()
{
return
accessTokenValidity
;
}
public
void
setAccessTokenValidity
(
Integer
accessTokenValidity
)
{
this
.
accessTokenValidity
=
accessTokenValidity
;
}
public
Integer
getRefreshTokenValidity
()
{
return
refreshTokenValidity
;
}
public
void
setRefreshTokenValidity
(
Integer
refreshTokenValidity
)
{
this
.
refreshTokenValidity
=
refreshTokenValidity
;
}
public
String
getAdditionalInformation
()
{
return
additionalInformation
;
}
public
void
setAdditionalInformation
(
String
additionalInformation
)
{
this
.
additionalInformation
=
additionalInformation
;
}
public
String
getAutoapprove
()
{
return
autoapprove
;
}
public
void
setAutoapprove
(
String
autoapprove
)
{
this
.
autoapprove
=
autoapprove
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(
o
==
null
||
getClass
()
!=
o
.
getClass
())
return
false
;
OauthClientDetailsEntity
that
=
(
OauthClientDetailsEntity
)
o
;
return
Objects
.
equals
(
clientId
,
that
.
clientId
)
&&
Objects
.
equals
(
institutionId
,
that
.
institutionId
)
&&
Objects
.
equals
(
productId
,
that
.
productId
)
&&
Objects
.
equals
(
encryptionType
,
that
.
encryptionType
)
&&
Objects
.
equals
(
enable
,
that
.
enable
)
&&
Objects
.
equals
(
resourceIds
,
that
.
resourceIds
)
&&
Objects
.
equals
(
clientSecret
,
that
.
clientSecret
)
&&
Objects
.
equals
(
scope
,
that
.
scope
)
&&
Objects
.
equals
(
authorizedGrantTypes
,
that
.
authorizedGrantTypes
)
&&
Objects
.
equals
(
webServerRedirectUri
,
that
.
webServerRedirectUri
)
&&
Objects
.
equals
(
authorities
,
that
.
authorities
)
&&
Objects
.
equals
(
accessTokenValidity
,
that
.
accessTokenValidity
)
&&
Objects
.
equals
(
refreshTokenValidity
,
that
.
refreshTokenValidity
)
&&
Objects
.
equals
(
additionalInformation
,
that
.
additionalInformation
)
&&
Objects
.
equals
(
autoapprove
,
that
.
autoapprove
);
}
@Override
public
int
hashCode
()
{
return
Objects
.
hash
(
clientId
,
institutionId
,
productId
,
encryptionType
,
enable
,
resourceIds
,
clientSecret
,
scope
,
authorizedGrantTypes
,
webServerRedirectUri
,
authorities
,
accessTokenValidity
,
refreshTokenValidity
,
additionalInformation
,
autoapprove
);
}
@Override
public
String
getPersistentKey
()
{
return
StringUtils
.
toDelimitedString
(
CLASS_NAME
,
clientId
);
}
public
String
getSmsRegisterTemplate
()
{
return
smsRegisterTemplate
;
}
public
void
setSmsRegisterTemplate
(
String
smsRegisterTemplate
)
{
this
.
smsRegisterTemplate
=
smsRegisterTemplate
;
}
}
src/main/java/cn/quantgroup/xyqb/entity/ProductLoginEntity.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
entity
;
import
cn.quantgroup.xyqb.entity.baseEntity.PartitionEntity
;
import
cn.quantgroup.xyqb.entity.converter.EncryptConverter
;
import
cn.quantgroup.xyqb.util.StringUtils
;
import
javax.persistence.*
;
import
java.io.Serializable
;
import
java.time.LocalDate
;
import
java.util.Objects
;
/**
* Created with IntelliJ IDEA.
*
* @author: Li JianHua
* @Date: 2021/9/23
* @Time: 11:03
* Description: No Description
*/
@Entity
@Table
(
name
=
"product_login"
)
public
class
ProductLoginEntity
extends
PartitionEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
6495491112527859057L
;
private
final
static
String
CLASS_NAME
=
ProductLoginEntity
.
class
.
getSimpleName
();
@Id
@Column
(
name
=
"ID"
,
nullable
=
false
)
// @GeneratedValue(strategy = GenerationType.IDENTITY)
private
long
id
;
@Column
(
name
=
"CUSTOMER_ID"
,
nullable
=
false
)
private
long
customerId
;
@Column
(
name
=
"CUSTOMER_NAME"
,
nullable
=
false
,
length
=
255
)
private
String
customerName
;
@Column
(
name
=
"INSTITUTION_ID"
,
nullable
=
false
,
length
=
4
)
private
String
institutionId
;
@Column
(
name
=
"PHONE_NO"
,
nullable
=
false
,
length
=
15
)
private
String
phoneNo
;
@Column
(
name
=
"PASSWORD"
,
nullable
=
true
,
length
=
256
)
private
String
password
;
@Column
(
name
=
"SALT_VALUE"
,
nullable
=
true
,
length
=
128
)
private
String
saltValue
;
@Column
(
name
=
"STATUS"
,
nullable
=
false
,
length
=
4
)
private
String
status
;
@Column
(
name
=
"STATUS_DATE"
,
nullable
=
false
)
private
LocalDate
statusDate
;
@Column
(
name
=
"LAST_STATUS"
,
nullable
=
true
,
length
=
4
)
private
String
lastStatus
;
@Column
(
name
=
"LAST_LOGIN_TIME"
,
nullable
=
true
)
private
Integer
lastLoginTime
;
@Column
(
name
=
"BATCH_NO"
,
nullable
=
true
)
private
Integer
batchNo
;
@Column
(
name
=
"PRODUCT_ID"
,
nullable
=
false
,
length
=
4
)
private
String
productId
;
@Column
(
name
=
"EXTENSION_ACCOUNT_ID"
,
nullable
=
true
)
private
Long
extensionAccountId
;
@Column
(
name
=
"encrypted_phone_no"
)
@Convert
(
converter
=
EncryptConverter
.
class
)
private
String
encryptedPhoneNo
;
public
long
getCustomerId
()
{
return
customerId
;
}
public
void
setCustomerId
(
long
customrId
)
{
this
.
customerId
=
customrId
;
}
public
String
getCustomerName
()
{
return
customerName
;
}
public
void
setCustomerName
(
String
customerName
)
{
this
.
customerName
=
customerName
;
}
public
String
getInstitutionId
()
{
return
institutionId
;
}
public
void
setInstitutionId
(
String
institutionId
)
{
this
.
institutionId
=
institutionId
;
}
public
String
getPhoneNo
()
{
return
getEncryptedPhoneNo
();
}
public
void
setPhoneNo
(
String
phoneNo
)
{
this
.
phoneNo
=
phoneNo
;
}
public
String
getPassword
()
{
return
password
;
}
public
void
setPassword
(
String
password
)
{
this
.
password
=
password
;
}
public
String
getSaltValue
()
{
return
saltValue
;
}
public
void
setSaltValue
(
String
saltValue
)
{
this
.
saltValue
=
saltValue
;
}
public
String
getStatus
()
{
return
status
;
}
public
void
setStatus
(
String
status
)
{
this
.
status
=
status
;
}
public
LocalDate
getStatusDate
()
{
return
statusDate
;
}
public
void
setStatusDate
(
LocalDate
statusDate
)
{
this
.
statusDate
=
statusDate
;
}
public
String
getLastStatus
()
{
return
lastStatus
;
}
public
void
setLastStatus
(
String
lastStatus
)
{
this
.
lastStatus
=
lastStatus
;
}
public
Integer
getLastLoginTime
()
{
return
lastLoginTime
;
}
public
void
setLastLoginTime
(
Integer
lastLoginTime
)
{
this
.
lastLoginTime
=
lastLoginTime
;
}
public
String
getProductId
()
{
return
productId
;
}
public
void
setProductId
(
String
productId
)
{
this
.
productId
=
productId
;
}
public
Long
getExtensionAccountId
()
{
return
extensionAccountId
;
}
public
void
setExtensionAccountId
(
Long
extensionAccountId
)
{
this
.
extensionAccountId
=
extensionAccountId
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
return
true
;
if
(
o
==
null
||
getClass
()
!=
o
.
getClass
())
return
false
;
ProductLoginEntity
that
=
(
ProductLoginEntity
)
o
;
return
customerId
==
that
.
customerId
&&
statusDate
==
that
.
statusDate
&&
Objects
.
equals
(
customerName
,
that
.
customerName
)
&&
Objects
.
equals
(
institutionId
,
that
.
institutionId
)
&&
Objects
.
equals
(
phoneNo
,
that
.
phoneNo
)
&&
Objects
.
equals
(
password
,
that
.
password
)
&&
Objects
.
equals
(
saltValue
,
that
.
saltValue
)
&&
Objects
.
equals
(
status
,
that
.
status
)
&&
Objects
.
equals
(
lastStatus
,
that
.
lastStatus
)
&&
Objects
.
equals
(
lastLoginTime
,
that
.
lastLoginTime
)
&&
Objects
.
equals
(
productId
,
that
.
productId
)
&&
Objects
.
equals
(
extensionAccountId
,
that
.
extensionAccountId
);
}
@Override
public
int
hashCode
()
{
return
Objects
.
hash
(
customerId
,
customerName
,
institutionId
,
phoneNo
,
password
,
saltValue
,
status
,
statusDate
,
lastStatus
,
lastLoginTime
,
productId
,
extensionAccountId
);
}
@Override
public
String
getPersistentKey
()
{
return
StringUtils
.
toDelimitedString
(
CLASS_NAME
,
institutionId
,
productId
,
phoneNo
);
}
public
long
getId
()
{
return
id
;
}
public
void
setId
(
long
id
)
{
this
.
id
=
id
;
}
public
Integer
getBatchNo
()
{
return
batchNo
;
}
public
void
setBatchNo
(
Integer
batchNo
)
{
this
.
batchNo
=
batchNo
;
}
public
String
getEncryptedPhoneNo
()
{
return
org
.
apache
.
commons
.
lang
.
StringUtils
.
isBlank
(
encryptedPhoneNo
)
?
phoneNo
:
encryptedPhoneNo
;
}
public
void
setEncryptedPhoneNo
(
String
encryptedPhoneNo
)
{
this
.
encryptedPhoneNo
=
encryptedPhoneNo
;
}
}
src/main/java/cn/quantgroup/xyqb/repository/ICustomerInfoRepository.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
repository
;
import
cn.quantgroup.xyqb.entity.CustomerInfoEntity
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.stereotype.Repository
;
/**
* Created by Li Jianhua
*/
@Repository
public
interface
ICustomerInfoRepository
extends
JpaRepository
<
CustomerInfoEntity
,
Long
>
{
CustomerInfoEntity
findByCustomerId
(
Long
customerId
);
CustomerInfoEntity
findByInstitutionIdAndProductIdAndSourceOpenId
(
String
institutionId
,
String
productId
,
String
OpenId
);
}
\ No newline at end of file
src/main/java/cn/quantgroup/xyqb/repository/ICustomerLoginRepository.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
repository
;
import
cn.quantgroup.xyqb.entity.CustomerLoginEntity
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.stereotype.Repository
;
/**
* Created by hechao on 2020/2/17.
*/
@Repository
public
interface
ICustomerLoginRepository
extends
JpaRepository
<
CustomerLoginEntity
,
Long
>
{
CustomerLoginEntity
findFirstByCustomerId
(
long
customerId
);
}
\ No newline at end of file
src/main/java/cn/quantgroup/xyqb/repository/IOauthClientDetailsRepository.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
repository
;
import
cn.quantgroup.xyqb.entity.OauthClientDetailsEntity
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.stereotype.Repository
;
/**
* Created by hechao on 2020/2/17.
*/
@Repository
public
interface
IOauthClientDetailsRepository
extends
JpaRepository
<
OauthClientDetailsEntity
,
Long
>
{
OauthClientDetailsEntity
findFirstByClientId
(
Integer
clientID
);
OauthClientDetailsEntity
findFirstByInstitutionIdAndProductId
(
String
institutionId
,
String
productId
);
}
\ No newline at end of file
src/main/java/cn/quantgroup/xyqb/repository/IProductLoginRepository.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
repository
;
import
cn.quantgroup.xyqb.entity.ProductLoginEntity
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.Modifying
;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.List
;
/**
* Li Jianhua
*/
@Repository
public
interface
IProductLoginRepository
extends
JpaRepository
<
ProductLoginEntity
,
Long
>
{
ProductLoginEntity
findFirstByInstitutionIdAndProductIdAndPhoneNo
(
String
institutionId
,
String
productId
,
String
phoneNo
);
ProductLoginEntity
findFirstByInstitutionIdAndProductIdAndEncryptedPhoneNo
(
String
institutionId
,
String
productId
,
String
phoneNo
);
ProductLoginEntity
findFirstByPhoneNo
(
String
phoneNo
);
ProductLoginEntity
findByInstitutionIdAndProductIdAndExtensionAccountId
(
String
institutionId
,
String
productId
,
Long
userId
);
List
<
ProductLoginEntity
>
findByInstitutionIdAndProductIdAndExtensionAccountIdIn
(
String
institutionId
,
String
productId
,
List
<
Long
>
userIds
);
List
<
ProductLoginEntity
>
findAllByExtensionAccountId
(
Long
userId
);
List
<
ProductLoginEntity
>
findAllByExtensionAccountIdIn
(
List
<
Long
>
userId
);
/**
* @author -REYLI
* @createTime 2021-11-17
* @description 根据条件获取租户下用户列表
* @param institutionId
* @param productId
* @return Arraylist
*/
List
<
ProductLoginEntity
>
findProductLoginsByInstitutionIdAndProductId
(
String
institutionId
,
String
productId
);
ProductLoginEntity
findFirstByInstitutionIdAndProductIdAndCustomerId
(
String
institutionId
,
String
productId
,
long
customerId
);
@Transactional
@Query
(
value
=
"delete from product_login where INSTITUTION_ID = ?1 and PRODUCT_ID = ?2 and PHONE_NO = ?3"
,
nativeQuery
=
true
)
@Modifying
void
deleteTenantAndPhoneNo
(
String
qtg
,
String
yxm
,
String
phoneNo
);
}
\ No newline at end of file
src/main/java/cn/quantgroup/xyqb/repository/IWeChatInfoRelationRepository.java
View file @
3fca5558
...
...
@@ -11,11 +11,6 @@ import java.util.List;
public
interface
IWeChatInfoRelationRepository
extends
JpaRepository
<
WechatInfoRelation
,
Long
>
{
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Modifying
@Query
(
value
=
"update wechat_info_relation as wir set wir.is_follow_wechat = 1 where wir.open_id IN (?1)"
,
nativeQuery
=
true
)
void
updateIsFollowWechatInOpenIdList
(
List
<
String
>
openIdList
);
List
<
WechatInfoRelation
>
findByUnionIdInAndTaskPeriodAndType
(
List
<
String
>
unionIdList
,
String
period
,
Integer
type
);
}
src/main/java/cn/quantgroup/xyqb/service/middleoffice/applet/impl/AppletServiceImpl.java
View file @
3fca5558
...
...
@@ -9,10 +9,7 @@ import cn.quantgroup.xyqb.exception.AppletException;
import
cn.quantgroup.xyqb.repository.IWeChatUserRepository
;
import
cn.quantgroup.xyqb.service.middleoffice.applet.IAppletService
;
import
cn.quantgroup.xyqb.service.register.IUserRegisterService
;
import
cn.quantgroup.xyqb.service.user.IOauthLoginInfoService
;
import
cn.quantgroup.xyqb.service.user.ITenantService
;
import
cn.quantgroup.xyqb.service.user.IUserService
;
import
cn.quantgroup.xyqb.util.TenantUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -39,11 +36,6 @@ public class AppletServiceImpl implements IAppletService {
private
final
IUserService
userService
;
private
ILoginModule
loginModule
;
@Autowired
private
IOauthLoginInfoService
iOauthLoginInfoService
;
@Autowired
private
ITenantService
tenantService
;
@Autowired
public
AppletServiceImpl
(
IWeChatUserRepository
iWeChatUserRepository
,
...
...
@@ -59,120 +51,71 @@ public class AppletServiceImpl implements IAppletService {
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Long
relevance
(
AppletParamEntry
appletParamEntry
)
{
if
(
appletParamEntry
.
getTenantId
()
==
null
)
{
appletParamEntry
.
setTenantId
(
TenantUtil
.
TENANT_DEFAULT
);
}
if
(
appletParamEntry
.
getTenantId
().
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
WechatUserInfo
wechatUserInfo
=
iWeChatUserRepository
.
findByOpenIdAndAppName
(
appletParamEntry
.
getOpenId
(),
appletParamEntry
.
getAppName
());
//这个接口先不考虑更换手机号的情况
wechatUserInfo
=
(
wechatUserInfo
==
null
?
new
WechatUserInfo
()
:
wechatUserInfo
);
wechatUserInfo
.
setNickName
(
appletParamEntry
.
getNickName
());
wechatUserInfo
.
setCity
(
appletParamEntry
.
getCity
());
wechatUserInfo
.
setCountry
(
appletParamEntry
.
getCountry
());
wechatUserInfo
.
setProvince
(
appletParamEntry
.
getProvince
());
wechatUserInfo
.
setAppName
(
appletParamEntry
.
getAppName
());
wechatUserInfo
.
setHeadImgUrl
(
appletParamEntry
.
getAvatarUrl
());
wechatUserInfo
.
setLanguage
(
appletParamEntry
.
getLanguage
());
wechatUserInfo
.
setOpenId
(
appletParamEntry
.
getOpenId
());
wechatUserInfo
.
setSex
(
appletParamEntry
.
getGender
());
wechatUserInfo
.
setUnionId
(
appletParamEntry
.
getUnionId
());
wechatUserInfo
.
setPhoneNo
(
appletParamEntry
.
getMobile
());
wechatUserInfo
.
setEncryptedPhoneNo
(
appletParamEntry
.
getMobile
());
wechatUserInfo
.
setUtmSource
(
appletParamEntry
.
getUtmSource
());
if
(
null
==
wechatUserInfo
.
getUserId
())
{
//只要存在userid 就说明已经在用户表里了 不考虑小程序这边换手机号了
User
user
=
userService
.
findByPhoneInDb
(
appletParamEntry
.
getMobile
());
//如果不存在就去注册一下
if
(
null
==
user
)
{
user
=
iUserRegisterService
.
register
(
appletParamEntry
.
getChannelId
(),
appletParamEntry
.
getMobile
());
}
if
(!
user
.
getEnable
())
{
log
.
warn
(
"已冻结 userId--{}"
,
user
.
getId
());
throw
new
AppletException
(
USER_FREEZE_ERROR
,
"0402"
);
}
iOauthLoginInfoService
.
addRegisterInfo
(
user
,
appletParamEntry
);
wechatUserInfo
.
setUserId
(
user
.
getId
());
}
//如果存在就更新在微信表里
iWeChatUserRepository
.
save
(
wechatUserInfo
);
return
wechatUserInfo
.
getUserId
();
}
else
{
WechatUserInfo
wechatUserInfo
=
iWeChatUserRepository
.
findByOpenIdAndAppName
(
appletParamEntry
.
getOpenId
(),
appletParamEntry
.
getAppName
());
//这个接口先不考虑更换手机号的情况
wechatUserInfo
=
(
wechatUserInfo
==
null
?
new
WechatUserInfo
()
:
wechatUserInfo
);
wechatUserInfo
.
setNickName
(
appletParamEntry
.
getNickName
());
wechatUserInfo
.
setCity
(
appletParamEntry
.
getCity
());
wechatUserInfo
.
setCountry
(
appletParamEntry
.
getCountry
());
wechatUserInfo
.
setProvince
(
appletParamEntry
.
getProvince
());
wechatUserInfo
.
setAppName
(
appletParamEntry
.
getAppName
());
wechatUserInfo
.
setHeadImgUrl
(
appletParamEntry
.
getAvatarUrl
());
wechatUserInfo
.
setLanguage
(
appletParamEntry
.
getLanguage
());
wechatUserInfo
.
setOpenId
(
appletParamEntry
.
getOpenId
());
wechatUserInfo
.
setSex
(
appletParamEntry
.
getGender
());
wechatUserInfo
.
setUnionId
(
appletParamEntry
.
getUnionId
());
wechatUserInfo
.
setPhoneNo
(
appletParamEntry
.
getMobile
());
wechatUserInfo
.
setEncryptedPhoneNo
(
appletParamEntry
.
getMobile
());
wechatUserInfo
.
setUtmSource
(
appletParamEntry
.
getUtmSource
());
if
(
null
==
wechatUserInfo
.
getUserId
())
{
//只要存在userid 就说明已经在用户表里了 不考虑小程序这边换手机号了
User
user
=
userService
.
findByPhoneInDb
(
appletParamEntry
.
getMobile
());
//如果不存在就去注册一下
if
(
null
==
user
)
{
user
=
iUserRegisterService
.
register
(
appletParamEntry
.
getChannelId
(),
appletParamEntry
.
getMobile
()
,
appletParamEntry
.
getTenantId
()
);
user
=
iUserRegisterService
.
register
(
appletParamEntry
.
getChannelId
(),
appletParamEntry
.
getMobile
());
}
if
(!
user
.
getEnable
())
{
log
.
warn
(
"已冻结 userId--{}"
,
user
.
getId
());
throw
new
AppletException
(
USER_FREEZE_ERROR
,
"0402"
);
}
iOauthLoginInfoService
.
addRegisterInfo
(
user
,
appletParamEntry
);
return
user
.
getId
();
wechatUserInfo
.
setUserId
(
user
.
getId
());
}
//如果存在就更新在微信表里
iWeChatUserRepository
.
save
(
wechatUserInfo
);
return
wechatUserInfo
.
getUserId
();
}
@Override
public
LoginVo
login
(
String
appName
,
String
openId
,
Integer
tenantId
,
String
utmSource
,
String
unionId
)
{
if
(
TenantUtil
.
validationTenantIdIsNullOrZero
(
tenantId
))
{
tenantId
=
TenantUtil
.
TENANT_DEFAULT
;
}
User
user
=
null
;
if
(
TenantUtil
.
TENANT_DEFAULT
.
equals
(
tenantId
))
{
WechatUserInfo
wechatUserInfo
=
iWeChatUserRepository
.
findByOpenIdAndAppName
(
openId
,
appName
);
if
(
null
==
wechatUserInfo
)
{
log
.
warn
(
"未找到此用户,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
"未找到此用户"
,
"0401"
);
}
if
(
null
==
wechatUserInfo
.
getUserId
())
{
log
.
warn
(
"用户未绑定到xyqb,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
"未找到此用户绑定信息"
,
"0401"
);
}
user
=
userService
.
findById
(
wechatUserInfo
.
getUserId
());
if
(
null
==
user
)
{
log
.
warn
(
"未找到此用户,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
"未找到此用户"
,
"0401"
);
}
if
(!
user
.
getEnable
())
{
log
.
warn
(
"已冻结,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
USER_FREEZE_ERROR
,
"0402"
);
}
iOauthLoginInfoService
.
addLoginInfo
(
user
,
tenantId
);
if
(
unionId
!=
null
&&
!
unionId
.
equals
(
wechatUserInfo
.
getUnionId
())
)
{
iWeChatUserRepository
.
updateUserUnionId
(
wechatUserInfo
.
getUserId
(),
appName
,
unionId
);
}
WechatUserInfo
wechatUserInfo
=
iWeChatUserRepository
.
findByOpenIdAndAppName
(
openId
,
appName
);
if
(
null
==
wechatUserInfo
)
{
log
.
warn
(
"未找到此用户,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
"未找到此用户"
,
"0401"
);
}
if
(
null
==
wechatUserInfo
.
getUserId
())
{
log
.
warn
(
"用户未绑定到xyqb,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
"未找到此用户绑定信息"
,
"0401"
);
}
User
user
=
userService
.
findById
(
wechatUserInfo
.
getUserId
());
if
(
null
==
user
)
{
log
.
warn
(
"未找到此用户,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
"未找到此用户"
,
"0401"
);
}
}
else
{
// 通过租户id和openId查询是否有关联
Long
userId
=
tenantService
.
getTenantCustomerInfoByOpenId
(
openId
,
tenantId
);
if
(
null
==
userId
)
{
log
.
warn
(
"未找到此用户,tenantId:{} ,openId:{}"
,
tenantId
,
openId
);
throw
new
AppletException
(
"未找到此用户"
,
"0401"
);
}
user
=
userService
.
findById
(
userId
);
if
(
null
==
user
)
{
log
.
warn
(
"未找到此用户,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
"未找到此用户"
,
"0401"
);
}
if
(!
user
.
getEnable
())
{
log
.
warn
(
"已冻结,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
USER_FREEZE_ERROR
,
"0402"
);
}
if
(!
user
.
getEnable
())
{
log
.
warn
(
"已冻结,appName:{} ,openId:{}"
,
appName
,
openId
);
throw
new
AppletException
(
USER_FREEZE_ERROR
,
"0402"
);
}
if
(
unionId
!=
null
&&
!
unionId
.
equals
(
wechatUserInfo
.
getUnionId
()))
{
iWeChatUserRepository
.
updateUserUnionId
(
wechatUserInfo
.
getUserId
(),
appName
,
unionId
);
}
LoginVo
loginVo
=
loginModule
.
loginByUserId
(
user
.
getRegisteredFrom
(),
return
loginModule
.
loginByUserId
(
user
.
getRegisteredFrom
(),
utmSource
==
null
?
""
:
utmSource
,
user
.
getId
(),
tenantId
);
return
loginVo
;
}
...
...
src/main/java/cn/quantgroup/xyqb/service/user/ICustomerInfoService.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
;
import
cn.quantgroup.xyqb.entity.CustomerInfoEntity
;
/**
* Created by 11 on 2016/12/29.
*/
public
interface
ICustomerInfoService
{
CustomerInfoEntity
findSlaveByCustomerId
(
Long
customerId
);
CustomerInfoEntity
findSlaveByOpenId
(
String
openId
,
String
institutionId
,
String
productId
);
}
src/main/java/cn/quantgroup/xyqb/service/user/ICustomerLoginService.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
;
import
cn.quantgroup.xyqb.entity.CustomerLoginEntity
;
/**
* Created by 11 on 2016/12/29.
*/
public
interface
ICustomerLoginService
{
CustomerLoginEntity
findSlaveByCustomerId
(
Long
customerId
);
}
src/main/java/cn/quantgroup/xyqb/service/user/IOauthClientDetailsService.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
;
import
cn.quantgroup.xyqb.entity.OauthClientDetailsEntity
;
import
cn.quantgroup.xyqb.entity.ProductLoginEntity
;
import
java.util.List
;
/**
* Created by Miraculous on 2017/1/3.
*/
public
interface
IOauthClientDetailsService
{
OauthClientDetailsEntity
findFirstByClientId
(
Integer
clientId
);
List
<
Integer
>
findTenantList
(
List
<
ProductLoginEntity
>
productLoginEntityList
);
}
src/main/java/cn/quantgroup/xyqb/service/user/IOauthLoginInfoService.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
;
import
cn.quantgroup.xyqb.entity.User
;
import
cn.quantgroup.xyqb.entity.middleoffice.AppletParamEntry
;
/**
* Created by Li Jianhua on 2017/1/3.
*/
public
interface
IOauthLoginInfoService
{
void
addLoginInfo
(
User
user
,
Integer
tenantId
);
void
addRegisterInfo
(
User
user
,
AppletParamEntry
appletParamEntry
);
}
src/main/java/cn/quantgroup/xyqb/service/user/IProductLoginService.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
;
import
cn.quantgroup.xyqb.entity.ProductLoginEntity
;
import
java.util.List
;
/**
* Created by 11 on 2016/12/29.
*/
public
interface
IProductLoginService
{
ProductLoginEntity
findSlaveByPloginInfo
(
String
institutionId
,
String
productId
,
Long
userId
);
List
<
ProductLoginEntity
>
findSlaveByProductLoginInfoList
(
String
institutionId
,
String
productId
,
List
<
Long
>
userId
);
List
<
ProductLoginEntity
>
findSlaveByUserId
(
Long
userId
);
List
<
ProductLoginEntity
>
findSlaveByUserIds
(
List
<
Long
>
userIds
);
/**
* @author -REYLI
* @createTime 2021-11-17
* @description 根据条件获取租户下用户列表
* @param institutionId
* @param productId
* @return Arraylist
*/
List
<
ProductLoginEntity
>
findProductLoginsByInstitutionIdAndProductId
(
String
institutionId
,
String
productId
);
ProductLoginEntity
findSlaveByCustomerInfo
(
long
customerId
,
String
institutionId
,
String
productId
);
ProductLoginEntity
findTenantAndPhoneNo
(
String
institutionId
,
String
productId
,
String
phoneNo
);
}
src/main/java/cn/quantgroup/xyqb/service/user/ITenantService.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
;
import
cn.quantgroup.xyqb.entity.CustomerInfoEntity
;
import
cn.quantgroup.xyqb.entity.User
;
import
cn.quantgroup.xyqb.entity.UserDetail
;
import
cn.quantgroup.xyqb.model.UserBrief
;
import
java.util.List
;
/**
* Created by 11 on 2016/12/29.
*/
public
interface
ITenantService
{
User
getTenantUser
(
User
user
,
Integer
tenantId
);
UserDetail
getTenantUserDetail
(
UserDetail
userDetail
,
Integer
tenantId
);
UserBrief
getTenantCustomerInfo
(
UserDetail
userDetail
,
Integer
tenantId
);
CustomerInfoEntity
getTenantCustomerInfo
(
User
user
,
Integer
tenantId
);
/**
* @author -REYLI
* @createTime 2021-11-17
* @description 根据条件获取租户下用户列表
* @param users
* @param tenantId
* @return Arraylist
*/
List
<
User
>
selectUsersByTenantId
(
List
<
User
>
users
,
Integer
tenantId
);
Long
getTenantCustomerInfoByOpenId
(
String
openId
,
Integer
tenantId
);
List
<
User
>
validationTentIdByTentId
(
List
<
User
>
users
,
Integer
tenantId
);
}
src/main/java/cn/quantgroup/xyqb/service/user/impl/CustomerInfoServiceImpl.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
.
impl
;
import
cn.quantgroup.xyqb.entity.CustomerInfoEntity
;
import
cn.quantgroup.xyqb.repository.ICustomerInfoRepository
;
import
cn.quantgroup.xyqb.service.user.ICustomerInfoService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
/**
* Created by 11 on 2016/12/29.
*/
@Slf4j
@Service
public
class
CustomerInfoServiceImpl
implements
ICustomerInfoService
{
@Autowired
private
ICustomerInfoRepository
customerInfoRepository
;
@Override
public
CustomerInfoEntity
findSlaveByCustomerId
(
Long
customerId
)
{
CustomerInfoEntity
customerInfo
=
customerInfoRepository
.
findByCustomerId
(
customerId
);
return
customerInfo
;
}
@Override
public
CustomerInfoEntity
findSlaveByOpenId
(
String
openId
,
String
institutionId
,
String
productId
)
{
CustomerInfoEntity
customerInfo
=
customerInfoRepository
.
findByInstitutionIdAndProductIdAndSourceOpenId
(
institutionId
,
productId
,
openId
);
return
customerInfo
;
}
}
src/main/java/cn/quantgroup/xyqb/service/user/impl/CustomerLoginServiceImpl.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
.
impl
;
import
cn.quantgroup.xyqb.entity.CustomerLoginEntity
;
import
cn.quantgroup.xyqb.repository.ICustomerLoginRepository
;
import
cn.quantgroup.xyqb.service.user.ICustomerLoginService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
/**
* Created by 11 on 2016/12/29.
*/
@Slf4j
@Service
public
class
CustomerLoginServiceImpl
implements
ICustomerLoginService
{
@Autowired
private
ICustomerLoginRepository
customerLoginRepository
;
@Override
public
CustomerLoginEntity
findSlaveByCustomerId
(
Long
customerId
)
{
CustomerLoginEntity
customerLogin
=
customerLoginRepository
.
findFirstByCustomerId
(
customerId
);
return
customerLogin
;
}
}
src/main/java/cn/quantgroup/xyqb/service/user/impl/OauthClientDetailsServiceImpl.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
.
impl
;
import
cn.quantgroup.xyqb.entity.OauthClientDetailsEntity
;
import
cn.quantgroup.xyqb.entity.ProductLoginEntity
;
import
cn.quantgroup.xyqb.repository.IOauthClientDetailsRepository
;
import
cn.quantgroup.xyqb.service.user.IOauthClientDetailsService
;
import
com.github.benmanes.caffeine.cache.Caffeine
;
import
com.github.benmanes.caffeine.cache.LoadingCache
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.concurrent.TimeUnit
;
/**
* Created by 11 on 2016/12/29.
*/
@Slf4j
@Service
public
class
OauthClientDetailsServiceImpl
implements
IOauthClientDetailsService
{
@Autowired
private
final
IOauthClientDetailsRepository
oauthClientDetailsRepository
;
private
final
LoadingCache
<
Integer
,
OauthClientDetailsEntity
>
cache
;
public
OauthClientDetailsServiceImpl
(
IOauthClientDetailsRepository
oauthClientDetailsRepository
)
{
this
.
oauthClientDetailsRepository
=
oauthClientDetailsRepository
;
cache
=
Caffeine
.
newBuilder
()
.
expireAfterWrite
(
8
,
TimeUnit
.
HOURS
)
.
maximumSize
(
1_000
)
.
build
(
this
.
oauthClientDetailsRepository
::
findFirstByClientId
);
}
@Override
public
OauthClientDetailsEntity
findFirstByClientId
(
Integer
clientId
)
{
return
cache
.
get
(
clientId
);
}
@Override
public
List
<
Integer
>
findTenantList
(
List
<
ProductLoginEntity
>
productLoginEntityList
)
{
List
<
Integer
>
tenantList
=
new
ArrayList
<>();
for
(
ProductLoginEntity
ple
:
productLoginEntityList
)
{
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsRepository
.
findFirstByInstitutionIdAndProductId
(
ple
.
getInstitutionId
(),
ple
.
getProductId
());
if
(
null
!=
oauthClientDetails
)
{
tenantList
.
add
(
oauthClientDetails
.
getClientId
());
}
}
return
tenantList
;
}
}
src/main/java/cn/quantgroup/xyqb/service/user/impl/OauthLoginInfoServiceImpl.java
deleted
100644 → 0
View file @
904e15ef
This diff is collapsed.
Click to expand it.
src/main/java/cn/quantgroup/xyqb/service/user/impl/ProductLoginServiceImpl.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
.
impl
;
import
cn.quantgroup.xyqb.entity.ProductLoginEntity
;
import
cn.quantgroup.xyqb.repository.IProductLoginRepository
;
import
cn.quantgroup.xyqb.service.user.IProductLoginService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* Created by 11 on 2016/12/29.
*/
@Slf4j
@Service
public
class
ProductLoginServiceImpl
implements
IProductLoginService
{
@Autowired
private
IProductLoginRepository
productLoginRepository
;
@Override
public
ProductLoginEntity
findSlaveByPloginInfo
(
String
institutionId
,
String
productId
,
Long
userId
)
{
ProductLoginEntity
productLogin
=
productLoginRepository
.
findByInstitutionIdAndProductIdAndExtensionAccountId
(
institutionId
,
productId
,
userId
);
return
productLogin
;
}
@Override
public
List
<
ProductLoginEntity
>
findSlaveByProductLoginInfoList
(
String
institutionId
,
String
productId
,
List
<
Long
>
userIds
)
{
return
productLoginRepository
.
findByInstitutionIdAndProductIdAndExtensionAccountIdIn
(
institutionId
,
productId
,
userIds
);
}
@Override
public
List
<
ProductLoginEntity
>
findSlaveByUserId
(
Long
userId
)
{
List
<
ProductLoginEntity
>
productLoginEntityList
=
productLoginRepository
.
findAllByExtensionAccountId
(
userId
);
return
productLoginEntityList
;
}
@Override
public
List
<
ProductLoginEntity
>
findSlaveByUserIds
(
List
<
Long
>
userIds
)
{
return
productLoginRepository
.
findAllByExtensionAccountIdIn
(
userIds
);
}
@Override
public
List
<
ProductLoginEntity
>
findProductLoginsByInstitutionIdAndProductId
(
String
institutionId
,
String
productId
)
{
return
productLoginRepository
.
findProductLoginsByInstitutionIdAndProductId
(
institutionId
,
productId
);
}
@Override
public
ProductLoginEntity
findSlaveByCustomerInfo
(
long
customerId
,
String
institutionId
,
String
productId
)
{
return
productLoginRepository
.
findFirstByInstitutionIdAndProductIdAndCustomerId
(
institutionId
,
productId
,
customerId
);
}
@Override
public
ProductLoginEntity
findTenantAndPhoneNo
(
String
institutionId
,
String
productId
,
String
phoneNo
)
{
ProductLoginEntity
productLogin
=
productLoginRepository
.
findFirstByInstitutionIdAndProductIdAndEncryptedPhoneNo
(
institutionId
,
productId
,
phoneNo
);
if
(
productLogin
==
null
)
{
productLogin
=
productLoginRepository
.
findFirstByInstitutionIdAndProductIdAndPhoneNo
(
institutionId
,
productId
,
phoneNo
);
}
return
productLogin
;
}
}
src/main/java/cn/quantgroup/xyqb/service/user/impl/TenantServiceImpl.java
deleted
100644 → 0
View file @
904e15ef
package
cn
.
quantgroup
.
xyqb
.
service
.
user
.
impl
;
import
cn.quantgroup.xyqb.entity.*
;
import
cn.quantgroup.xyqb.model.UserBrief
;
import
cn.quantgroup.xyqb.service.user.ICustomerInfoService
;
import
cn.quantgroup.xyqb.service.user.IOauthClientDetailsService
;
import
cn.quantgroup.xyqb.service.user.IProductLoginService
;
import
cn.quantgroup.xyqb.service.user.ITenantService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
/**
* Created by 11 on 2016/12/29.
*/
@Slf4j
@Service
public
class
TenantServiceImpl
implements
ITenantService
{
@Autowired
private
IProductLoginService
productLoginService
;
@Autowired
private
ICustomerInfoService
customerInfoService
;
@Autowired
private
IOauthClientDetailsService
oauthClientDetailsService
;
@Override
public
User
getTenantUser
(
User
user
,
Integer
tenantId
)
{
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsService
.
findFirstByClientId
(
tenantId
);
if
(
oauthClientDetails
!=
null
)
{
ProductLoginEntity
productLogin
=
productLoginService
.
findSlaveByPloginInfo
(
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
(),
user
.
getId
());
if
(
productLogin
!=
null
)
{
if
(
user
.
getEncryptedPhoneNo
().
equals
(
productLogin
.
getEncryptedPhoneNo
()))
{
user
.
setPassword
(
productLogin
.
getPassword
());
return
user
;
}
}
}
return
null
;
}
@Override
public
UserDetail
getTenantUserDetail
(
UserDetail
userDetail
,
Integer
tenantId
)
{
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsService
.
findFirstByClientId
(
tenantId
);
if
(
oauthClientDetails
!=
null
)
{
ProductLoginEntity
productLogin
=
productLoginService
.
findSlaveByPloginInfo
(
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
(),
userDetail
.
getUserId
());
if
(
productLogin
!=
null
)
{
if
(!
userDetail
.
getPhoneNo
().
equals
(
productLogin
.
getPhoneNo
()))
{
return
null
;
}
CustomerInfoEntity
customerInfo
=
customerInfoService
.
findSlaveByCustomerId
(
productLogin
.
getCustomerId
());
if
(
customerInfo
==
null
)
{
return
null
;
}
UserDetail
tenantUserDetail
=
new
UserDetail
();
tenantUserDetail
.
setUserId
(
userDetail
.
getUserId
());
tenantUserDetail
.
setPhoneNo
(
userDetail
.
getPhoneNo
());
tenantUserDetail
.
setName
(
customerInfo
.
getName
());
tenantUserDetail
.
setCreatedAt
(
userDetail
.
getCreatedAt
());
tenantUserDetail
.
setUpdatedAt
(
userDetail
.
getUpdatedAt
());
return
tenantUserDetail
;
}
}
return
null
;
}
@Override
public
UserBrief
getTenantCustomerInfo
(
UserDetail
userDetail
,
Integer
tenantId
)
{
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsService
.
findFirstByClientId
(
tenantId
);
if
(
oauthClientDetails
!=
null
)
{
ProductLoginEntity
productLogin
=
productLoginService
.
findSlaveByPloginInfo
(
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
(),
userDetail
.
getUserId
());
if
(
productLogin
!=
null
)
{
if
(!
userDetail
.
getPhoneNo
().
equals
(
productLogin
.
getEncryptedPhoneNo
()))
{
return
null
;
}
CustomerInfoEntity
customerInfo
=
customerInfoService
.
findSlaveByCustomerId
(
productLogin
.
getCustomerId
());
if
(
customerInfo
==
null
)
{
return
null
;
}
UserBrief
tenantUserBrief
=
new
UserBrief
();
tenantUserBrief
.
setAvatar
(
customerInfo
.
getAvatarUrl
());
tenantUserBrief
.
setNick
(
customerInfo
.
getNickName
());
tenantUserBrief
.
setName
(
customerInfo
.
getName
());
tenantUserBrief
.
setSex
(
Optional
.
ofNullable
(
customerInfo
.
getSex
()).
orElse
(
cn
.
quantgroup
.
xyqb
.
model
.
Gender
.
UNKNOWN
).
ordinal
()
+
""
);
tenantUserBrief
.
setPhoneNo
(
productLogin
.
getPhoneNo
().
substring
(
0
,
3
)
+
"****"
+
productLogin
.
getPhoneNo
().
substring
(
7
,
11
));
return
tenantUserBrief
;
}
}
return
null
;
}
@Override
public
CustomerInfoEntity
getTenantCustomerInfo
(
User
user
,
Integer
tenantId
)
{
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsService
.
findFirstByClientId
(
tenantId
);
if
(
oauthClientDetails
!=
null
)
{
ProductLoginEntity
productLogin
=
productLoginService
.
findSlaveByPloginInfo
(
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
(),
user
.
getId
());
if
(
productLogin
!=
null
)
{
if
(
user
.
getPhoneNo
().
equals
(
productLogin
.
getPhoneNo
()))
{
return
customerInfoService
.
findSlaveByCustomerId
(
productLogin
.
getCustomerId
());
}
}
}
return
null
;
}
@Override
public
List
<
User
>
selectUsersByTenantId
(
List
<
User
>
users
,
Integer
tenantId
)
{
List
<
User
>
result
=
new
ArrayList
<>();
if
(
CollectionUtils
.
isNotEmpty
(
users
))
{
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsService
.
findFirstByClientId
(
tenantId
);
if
(
oauthClientDetails
!=
null
)
{
List
<
Long
>
userIds
=
users
.
stream
().
map
(
User:
:
getId
).
collect
(
Collectors
.
toList
());
List
<
ProductLoginEntity
>
productLoginEntities
=
productLoginService
.
findSlaveByProductLoginInfoList
(
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
(),
userIds
);
if
(
CollectionUtils
.
isNotEmpty
(
productLoginEntities
))
{
List
<
String
>
phoneNos
=
productLoginEntities
.
stream
().
map
(
ProductLoginEntity:
:
getPhoneNo
).
collect
(
Collectors
.
toList
());
result
=
users
.
stream
().
filter
(
i
->
phoneNos
.
contains
(
i
.
getPhoneNo
())).
collect
(
Collectors
.
toList
());
}
}
}
return
result
;
}
@Override
public
Long
getTenantCustomerInfoByOpenId
(
String
openId
,
Integer
tenantId
)
{
// 通过租户Id确认产品和机构Id
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsService
.
findFirstByClientId
(
tenantId
);
if
(
oauthClientDetails
!=
null
)
{
CustomerInfoEntity
customerInfo
=
customerInfoService
.
findSlaveByOpenId
(
openId
,
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
());
if
(
customerInfo
!=
null
)
{
ProductLoginEntity
productLogin
=
productLoginService
.
findSlaveByCustomerInfo
(
customerInfo
.
getCustomerId
(),
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
());
if
(
productLogin
!=
null
)
{
return
productLogin
.
getExtensionAccountId
();
}
}
}
return
null
;
}
@Override
public
List
<
User
>
validationTentIdByTentId
(
List
<
User
>
users
,
Integer
tenantId
)
{
List
<
User
>
result
=
new
ArrayList
<>();
if
(
CollectionUtils
.
isNotEmpty
(
users
))
{
OauthClientDetailsEntity
oauthClientDetails
=
oauthClientDetailsService
.
findFirstByClientId
(
tenantId
);
List
<
Long
>
userIds
=
users
.
stream
().
map
(
User:
:
getId
).
collect
(
Collectors
.
toList
());
if
(
oauthClientDetails
!=
null
)
{
//1、查询出在product_login手机号码相同的用户
List
<
ProductLoginEntity
>
productLoginEntities
=
productLoginService
.
findSlaveByProductLoginInfoList
(
oauthClientDetails
.
getInstitutionId
(),
oauthClientDetails
.
getProductId
(),
userIds
);
List
<
String
>
phoneNos
=
productLoginEntities
.
stream
().
map
(
ProductLoginEntity:
:
getPhoneNo
).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isNotEmpty
(
productLoginEntities
))
{
result
=
users
.
stream
().
filter
(
i
->
phoneNos
.
contains
(
i
.
getPhoneNo
())).
collect
(
Collectors
.
toList
());
}
}
else
{
//2、查询用户id不在product_login的扩展账户ID的用户
List
<
ProductLoginEntity
>
slaveByUserIds
=
productLoginService
.
findSlaveByUserIds
(
userIds
);
List
<
Long
>
extensionAccountIds
=
slaveByUserIds
.
stream
().
map
(
ProductLoginEntity:
:
getExtensionAccountId
).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isNotEmpty
(
slaveByUserIds
))
{
result
=
users
.
stream
().
filter
(
i
->
extensionAccountIds
.
contains
(
i
.
getId
())).
collect
(
Collectors
.
toList
());
}
}
}
return
result
;
}
}
src/main/java/cn/quantgroup/xyqb/service/user/impl/UserCenterServiceImpl.java
View file @
3fca5558
...
...
@@ -4,7 +4,6 @@ import cn.quantgroup.xyqb.entity.User;
import
cn.quantgroup.xyqb.entity.UserAttached
;
import
cn.quantgroup.xyqb.repository.IUserAttachedRepository
;
import
cn.quantgroup.xyqb.repository.IUserRepository
;
import
cn.quantgroup.xyqb.service.user.ITenantService
;
import
cn.quantgroup.xyqb.service.user.UserCenterService
;
import
cn.quantgroup.xyqb.util.EmojiUtil
;
import
cn.quantgroup.xyqb.util.TenantUtil
;
...
...
@@ -35,9 +34,6 @@ public class UserCenterServiceImpl implements UserCenterService {
@Autowired
private
IUserRepository
userRepository
;
@Autowired
private
ITenantService
tenantService
;
@Override
// @Cacheable(value = "userAttachedCache", key = "'xyqbUserAttached' + #userId", unless = "#result == null", cacheManager = "cacheManager")
public
UserAttached
searchUserAttachedByUserId
(
long
userId
)
{
...
...
@@ -46,21 +42,7 @@ public class UserCenterServiceImpl implements UserCenterService {
@Override
public
List
<
UserAttached
>
searchUserAttachedListByUserId
(
List
<
Long
>
userIds
,
Integer
tenantId
)
{
List
<
UserAttached
>
resultProductUsers
=
new
ArrayList
<>();
List
<
UserAttached
>
userAttachedList
=
userAttachedRepository
.
findByUserIdIn
(
userIds
);
List
<
User
>
users
=
userRepository
.
findByIdIn
(
userIds
);
List
<
User
>
productUsers
;
if
(!
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
productUsers
=
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
}
else
{
productUsers
=
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
}
if
(
CollectionUtils
.
isNotEmpty
(
userAttachedList
)
&&
CollectionUtils
.
isNotEmpty
(
productUsers
))
{
List
<
Long
>
productUserIds
=
productUsers
.
stream
().
map
(
User:
:
getId
).
collect
(
Collectors
.
toList
());
resultProductUsers
=
userAttachedList
.
stream
().
filter
(
i
->
productUserIds
.
contains
(
i
.
getUserId
())).
collect
(
Collectors
.
toList
());
}
return
resultProductUsers
;
return
userAttachedRepository
.
findByUserIdIn
(
userIds
);
}
@Override
...
...
src/main/java/cn/quantgroup/xyqb/service/user/impl/UserServiceImpl.java
View file @
3fca5558
...
...
@@ -87,12 +87,6 @@ public class UserServiceImpl implements IUserService, IBaseController {
@Resource
private
ILockIpv4Service
lockIpv4Service
;
@Autowired
private
IOauthLoginInfoService
oauthLoginInfoService
;
@Autowired
private
ITenantService
tenantService
;
@Autowired
private
IUserDeregisterService
userDeregisterService
;
...
...
@@ -105,9 +99,6 @@ public class UserServiceImpl implements IUserService, IBaseController {
@Resource
private
IWeChatUserRepository
weChatUserRepository
;
@Resource
private
IProductLoginRepository
productLoginRepository
;
@Resource
private
IGeetestLogService
geetestLogService
;
...
...
@@ -153,12 +144,6 @@ public class UserServiceImpl implements IUserService, IBaseController {
return
Maps
.
newHashMap
();
}
List
<
User
>
users
=
userRepository
.
findByIdIn
(
userIds
);
//校验租户ID
if
(!
TenantUtil
.
TENANT_DEFAULT
.
equals
(
tenantId
))
{
users
=
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
}
else
{
users
=
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
}
return
users
.
stream
().
collect
(
Collectors
.
toMap
(
User:
:
getId
,
User:
:
getPhoneNo
));
}
...
...
@@ -402,7 +387,6 @@ public class UserServiceImpl implements IUserService, IBaseController {
}
}
oauthLoginInfoService
.
addLoginInfo
(
user
,
tenantId
);
// 更新极验用户userID
if
(
geetestLogId
!=
null
)
{
geetestLogService
.
updateByUidGeetestLog
(
geetestLogId
,
user
.
getId
());
...
...
@@ -484,11 +468,6 @@ public class UserServiceImpl implements IUserService, IBaseController {
users
=
userRepository
.
findByUuidIn
(
vals
);
}
if
(!
tenantId
.
equals
(
TenantUtil
.
TENANT_DEFAULT
))
{
users
=
tenantService
.
selectUsersByTenantId
(
users
,
tenantId
);
}
else
{
users
=
tenantService
.
validationTentIdByTentId
(
users
,
tenantId
);
}
return
users
;
}
...
...
@@ -535,9 +514,6 @@ public class UserServiceImpl implements IUserService, IBaseController {
/* 禁用微信 Or 删除?*/
// wechatService.forbiddenXyqbAndWuxiUserByUserId(user.getId());
weChatUserRepository
.
deleteByUserId
(
userId
);
/* 删除用户租户关联 羊小咩租户*/
productLoginRepository
.
deleteTenantAndPhoneNo
(
"qtg"
,
"yxm"
,
user
.
getPhoneNo
());
}
@Override
...
...
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