记得上下班打卡 | git大法好,push需谨慎
Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
liquidnet-bus-v1
Project
Project
Details
Activity
Releases
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
董敬伟
liquidnet-bus-v1
Commits
d733d0c6
Commit
d733d0c6
authored
May 14, 2021
by
胡佳晨
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
ccebce59
c5022934
Changes
60
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
60 changed files
with
1768 additions
and
801 deletions
+1768
-801
JwtValidator.java
...in/java/com/liquidnet/commons/lang/core/JwtValidator.java
+77
-0
HttpRequest.java
...ain/java/com/liquidnet/commons/lang/util/HttpRequest.java
+0
-377
HttpUtil.java
...c/main/java/com/liquidnet/commons/lang/util/HttpUtil.java
+116
-197
application-dev.yml
liquidnet-bus-config/liquidnet-config/application-dev.yml
+5
-0
application.yml
liquidnet-bus-config/liquidnet-config/application.yml
+5
-0
liquidnet-service-adam-dev.yml
...us-config/liquidnet-config/liquidnet-service-adam-dev.yml
+3
-0
liquidnet-support-zuul.yml
...et-bus-config/liquidnet-config/liquidnet-support-zuul.yml
+17
-7
FeignAdamLoginClient.java
...iquidnet/service/feign/adam/api/FeignAdamLoginClient.java
+27
-0
AdamMemberCodeParam.java
...a/com/liquidnet/service/adam/dto/AdamMemberCodeParam.java
+44
-0
AdamThirdPartParam.java
...va/com/liquidnet/service/adam/dto/AdamThirdPartParam.java
+25
-0
AdamUserMemberParam.java
...a/com/liquidnet/service/adam/dto/AdamUserMemberParam.java
+17
-0
AdamLoginInfoVo.java
...va/com/liquidnet/service/adam/dto/vo/AdamLoginInfoVo.java
+35
-0
AdamMemberCodeVo.java
...a/com/liquidnet/service/adam/dto/vo/AdamMemberCodeVo.java
+102
-0
AdamRealInfoVo.java
...ava/com/liquidnet/service/adam/dto/vo/AdamRealInfoVo.java
+30
-0
AdamThirdPartInfoVo.java
...om/liquidnet/service/adam/dto/vo/AdamThirdPartInfoVo.java
+3
-5
AdamUserInfoVo.java
...ava/com/liquidnet/service/adam/dto/vo/AdamUserInfoVo.java
+19
-13
AdamUserMemberVo.java
...a/com/liquidnet/service/adam/dto/vo/AdamUserMemberVo.java
+39
-0
IAdamMemberCodeService.java
...iquidnet/service/adam/service/IAdamMemberCodeService.java
+15
-0
IAdamRealNameService.java
.../liquidnet/service/adam/service/IAdamRealNameService.java
+2
-0
IAdamThirdPartyService.java
...iquidnet/service/adam/service/IAdamThirdPartyService.java
+6
-0
IAdamUserInfoService.java
.../liquidnet/service/adam/service/IAdamUserInfoService.java
+3
-1
IAdamUserMemberService.java
...iquidnet/service/adam/service/IAdamUserMemberService.java
+13
-0
IAdamUserService.java
.../com/liquidnet/service/adam/service/IAdamUserService.java
+23
-0
IAdamMemberCodeAdminService.java
...rvice/adam/service/admin/IAdamMemberCodeAdminService.java
+17
-0
MemberUtil.java
...main/java/com/liquidnet/service/adam/util/MemberUtil.java
+64
-0
AdamMemberCode.java
...ava/com/liquidnet/service/adam/entity/AdamMemberCode.java
+72
-0
AdamUser.java
...main/java/com/liquidnet/service/adam/entity/AdamUser.java
+0
-2
AdamUserMember.java
...ava/com/liquidnet/service/adam/entity/AdamUserMember.java
+31
-0
AdamMemberCodeMapper.java
...m/liquidnet/service/adam/mapper/AdamMemberCodeMapper.java
+9
-0
AdamUserMemberMapper.java
...m/liquidnet/service/adam/mapper/AdamUserMemberMapper.java
+10
-0
AdamUserMemberMapper.xml
...om/liquidnet/service/adam/mapper/AdamUserMemberMapper.xml
+37
-0
db_ln_adam_initialdata.sql
...quidnet-service-adam-impl/docu/db_ln_adam_initialdata.sql
+13
-9
pom.xml
...iquidnet-service-adam/liquidnet-service-adam-impl/pom.xml
+9
-0
AliyunDypnsConfigure.java
...m/liquidnet/service/adam/config/AliyunDypnsConfigure.java
+21
-0
AdamRedisConst.java
...a/com/liquidnet/service/adam/constant/AdamRedisConst.java
+11
-0
AdamAddressesController.java
...dnet/service/adam/controller/AdamAddressesController.java
+2
-0
AdamCollectionController.java
...net/service/adam/controller/AdamCollectionController.java
+2
-0
AdamEntersController.java
...quidnet/service/adam/controller/AdamEntersController.java
+2
-0
AdamLoginController.java
...iquidnet/service/adam/controller/AdamLoginController.java
+254
-0
AdamMemberController.java
...quidnet/service/adam/controller/AdamMemberController.java
+2
-0
AdamUserAuthController.java
...idnet/service/adam/controller/AdamUserAuthController.java
+0
-178
AdamUserController.java
...liquidnet/service/adam/controller/AdamUserController.java
+16
-2
AdamEntersServiceImpl.java
...dnet/service/adam/service/impl/AdamEntersServiceImpl.java
+0
-1
AdamMemberCodeServiceImpl.java
.../service/adam/service/impl/AdamMemberCodeServiceImpl.java
+58
-0
AdamRealNameServiceImpl.java
...et/service/adam/service/impl/AdamRealNameServiceImpl.java
+23
-1
AdamThirdPartyServiceImpl.java
.../service/adam/service/impl/AdamThirdPartyServiceImpl.java
+35
-0
AdamUserInfoServiceImpl.java
...et/service/adam/service/impl/AdamUserInfoServiceImpl.java
+54
-2
AdamUserMemberServiceImpl.java
.../service/adam/service/impl/AdamUserMemberServiceImpl.java
+68
-0
AdamUserServiceImpl.java
...uidnet/service/adam/service/impl/AdamUserServiceImpl.java
+101
-1
AdamMemberCodeAdminServiceImpl.java
...am/service/impl/admin/AdamMemberCodeAdminServiceImpl.java
+37
-0
AdamMemberServiceAdminImpl.java
...e/adam/service/impl/admin/AdamMemberServiceAdminImpl.java
+3
-0
adam_enters.properties
...dam-impl/src/main/resources/sqlmap/adam_enters.properties
+4
-0
adam_third_party.properties
...mpl/src/main/resources/sqlmap/adam_third_party.properties
+1
-0
adam_user.properties
...-adam-impl/src/main/resources/sqlmap/adam_user.properties
+1
-0
adam_user_info.properties
...-impl/src/main/resources/sqlmap/adam_user_info.properties
+2
-0
enters.properties
...ice-adam-impl/src/main/resources/sqlmap/enters.properties
+0
-4
pom.xml
liquidnet-bus-service/pom.xml
+11
-0
application-dev.yml
...net-support-config/src/main/resources/application-dev.yml
+2
-1
GlobalAuthFilter.java
...a/com/liquidnet/support/zuul/filter/GlobalAuthFilter.java
+94
-0
GlobalLoginFilter.java
.../com/liquidnet/support/zuul/filter/GlobalLoginFilter.java
+76
-0
No files found.
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/
util/JwtUtil
.java
→
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/
core/JwtValidator
.java
View file @
d733d0c6
package
com
.
liquidnet
.
commons
.
lang
.
util
;
package
com
.
liquidnet
.
commons
.
lang
.
core
;
import
io.jsonwebtoken.Claims
;
import
io.jsonwebtoken.Claims
;
import
io.jsonwebtoken.JwtBuilder
;
import
io.jsonwebtoken.JwtBuilder
;
import
io.jsonwebtoken.Jwts
;
import
io.jsonwebtoken.Jwts
;
import
io.jsonwebtoken.SignatureAlgorithm
;
import
io.jsonwebtoken.SignatureAlgorithm
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.stereotype.Component
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.Map
;
import
java.util.Map
;
//@Component
@Component
(
"jwtValidator"
)
public
class
JwtUtil
{
@ConfigurationProperties
(
prefix
=
"jwt"
)
/**
public
class
JwtValidator
{
* 过期时间15分钟
private
String
secret
;
*/
private
Long
expireTtl
;
private
static
final
long
EXPIRE_TIME
=
15
*
60
*
1000
;
private
Long
refreshTtl
;
/**
private
Long
blacklistGracePeriod
;
* token私钥
// private static final long EXPIRE_TIME = 15 * 60 * 1000;
*/
// private static final String TOKEN_SECRET = "qZHglvNP0n0aOOckHiQXq5JMD468J4eG";
private
static
final
String
TOKEN_SECRET
=
"DD5654D654DSD5S1D65S4D65S1D12354"
;
/**
/**
* 用户登录成功后生成Jwt token
* 用户登录成功后生成Jwt token
* 使用Hs256算法
* 使用Hs256算法
*
*
* @param claims 保存在Payload(有效载荷)中的内容
* @param claims
Map
保存在Payload(有效载荷)中的内容
* @return token字符串
* @return token字符串
*/
*/
public
static
String
create
(
Map
<
String
,
Object
>
claims
)
{
public
String
create
(
Map
<
String
,
Object
>
claimsMap
)
{
long
nowMillis
=
System
.
currentTimeMillis
();
long
nowMillis
=
System
.
currentTimeMillis
();
long
expMillis
=
System
.
currentTimeMillis
()
+
EXPIRE_TIME
;
long
expMillis
=
System
.
currentTimeMillis
()
+
expireTtl
*
60000
;
// 创建一个JwtBuilder,设置jwt的body
// 创建一个JwtBuilder,设置jwt的body
JwtBuilder
builder
=
Jwts
.
builder
()
JwtBuilder
builder
=
Jwts
.
builder
()
// 保存在Payload(有效载荷)中的内容, 自定义一些数据保存在这里
// 保存在Payload(有效载荷)中的内容, 自定义一些数据保存在这里
.
setClaims
(
claims
)
.
setClaims
(
claims
Map
)
// iat: jwt的签发时间
// iat: jwt的签发时间
.
setIssuedAt
(
new
Date
(
nowMillis
))
.
setIssuedAt
(
new
Date
(
nowMillis
))
// 设置过期时间
// 设置过期时间
.
setExpiration
(
new
Date
(
expMillis
))
.
setExpiration
(
new
Date
(
expMillis
))
// 使用HS256算法和签名使用的秘钥生成密文
// 使用HS256算法和签名使用的秘钥生成密文
.
signWith
(
SignatureAlgorithm
.
HS256
,
TOKEN_SECRET
);
.
signWith
(
SignatureAlgorithm
.
HS256
,
secret
);
return
builder
.
compact
();
return
builder
.
compact
();
}
}
...
@@ -49,12 +50,28 @@ public class JwtUtil {
...
@@ -49,12 +50,28 @@ public class JwtUtil {
* @param token 令牌
* @param token 令牌
* @return
* @return
*/
*/
public
static
Claims
parse
(
String
token
)
{
public
Claims
parse
(
String
token
)
{
// 得到DefaultJwtParser
// 得到DefaultJwtParser
return
Jwts
.
parser
()
return
Jwts
.
parser
()
// 设置签名的秘钥
// 设置签名的秘钥
.
setSigningKey
(
TOKEN_SECRET
)
.
setSigningKey
(
secret
)
// 设置需要解析的token
// 设置需要解析的token
.
parseClaimsJws
(
token
).
getBody
();
.
parseClaimsJws
(
token
).
getBody
();
}
}
public
void
setSecret
(
String
secret
)
{
this
.
secret
=
secret
;
}
public
void
setExpireTtl
(
Long
expireTtl
)
{
this
.
expireTtl
=
expireTtl
;
}
public
void
setRefreshTtl
(
Long
refreshTtl
)
{
this
.
refreshTtl
=
refreshTtl
;
}
public
void
setBlacklistGracePeriod
(
Long
blacklistGracePeriod
)
{
this
.
blacklistGracePeriod
=
blacklistGracePeriod
;
}
}
}
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/HttpRequest.java
deleted
100644 → 0
View file @
ccebce59
This diff is collapsed.
Click to expand it.
liquidnet-bus-common/liquidnet-common-base/src/main/java/com/liquidnet/commons/lang/util/HttpUtil.java
View file @
d733d0c6
This diff is collapsed.
Click to expand it.
liquidnet-bus-config/liquidnet-config/application-dev.yml
View file @
d733d0c6
...
@@ -5,6 +5,11 @@ liquidnet:
...
@@ -5,6 +5,11 @@ liquidnet:
security
:
security
:
username
:
user
username
:
user
password
:
user123
password
:
user123
jwt
:
secret
:
qZHglvNP0n0aOOckHiQXq5JMD468J4eG
expire-ttl
:
43200
refresh-ttl
:
525600
blacklist_grace_period
:
5
mysql
:
mysql
:
urlHostAndPort
:
39.106.122.201:3308
urlHostAndPort
:
39.106.122.201:3308
username
:
testmall
username
:
testmall
...
...
liquidnet-bus-config/liquidnet-config/application.yml
View file @
d733d0c6
...
@@ -6,3 +6,8 @@ spring:
...
@@ -6,3 +6,8 @@ spring:
rabbitmq
:
rabbitmq
:
ssl
:
ssl
:
algorithm
:
TLSv1.2
algorithm
:
TLSv1.2
jwt
:
secret
:
${liquidnet.jwt.secret}
expire-ttl
:
${liquidnet.jwt.expire-ttl}
refresh-ttl
:
${liquidnet.jwt.refresh-ttl}
blacklist_grace_period
:
${liquidnet.jwt.blacklist_grace_period}
\ No newline at end of file
liquidnet-bus-config/liquidnet-config/liquidnet-service-adam-dev.yml
View file @
d733d0c6
...
@@ -20,6 +20,9 @@ liquidnet:
...
@@ -20,6 +20,9 @@ liquidnet:
database-name
:
ln_adam
database-name
:
ln_adam
mybatis-plus
:
mybatis-plus
:
log-level
:
debug
log-level
:
debug
aliyun
:
accessKeyId
:
accessSecret
:
# conf:
# conf:
# webUrl: ${liquidnet.service.adam.conf.webUrl}
# webUrl: ${liquidnet.service.adam.conf.webUrl}
# user:
# user:
...
...
liquidnet-bus-config/liquidnet-config/liquidnet-support-zuul.yml
View file @
d733d0c6
...
@@ -4,7 +4,7 @@ server:
...
@@ -4,7 +4,7 @@ server:
uri-encoding
:
UTF-8
uri-encoding
:
UTF-8
servlet
:
servlet
:
context-path
:
context-path
:
# context-path: ${liquidnet.info.context}
# context-path: ${liquidnet.info.context}
# server:
# server:
# tomcat:
# tomcat:
# accept-count: 500
# accept-count: 500
...
@@ -37,7 +37,9 @@ spring:
...
@@ -37,7 +37,9 @@ spring:
application
:
application
:
name
:
${liquidnet.info.name}
name
:
${liquidnet.info.name}
autoconfigure
:
autoconfigure
:
exclude
:
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
exclude
:
-
org.springframework.cloud.bus.BusAutoConfiguration
-
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
profiles
:
profiles
:
include
:
common-service
include
:
common-service
# cloud:
# cloud:
...
@@ -76,12 +78,20 @@ zuul:
...
@@ -76,12 +78,20 @@ zuul:
# pre: # 类型
# pre: # 类型
# disable: true
# disable: true
# -----------------------------------------------------------
# -----------------------------------------------------------
common
:
global
:
login
:
login
:
url
:
/adam/login
url
:
/adam/login/sms,
exclude
:
/adam/login/mobile,
auth
:
/adam/login/tpa,
url
:
/adam/login,/adam/v2/api-docs,/kylin/v2/api-docs
exclude
:
url
:
/adam/v2/api-docs,
/kylin/v2/api-docs,
/adam/v2/api-docs-ext,
/kylin/v2/api-docs-ext,
/adam/send,
/adam/login/sms,
/adam/login/mobile,
/adam/login/tpa,
# -----------------------------------------------------------
# -----------------------------------------------------------
#解决错误 com.netflix.client.ClientException: Load balancer does not have available server for client:panfeng-item-service
#解决错误 com.netflix.client.ClientException: Load balancer does not have available server for client:panfeng-item-service
#这样就可以即指定path与URL,又不破坏Zuul的Hystrix与Ribbon特性了。
#这样就可以即指定path与URL,又不破坏Zuul的Hystrix与Ribbon特性了。
...
...
liquidnet-bus-service/liquidnet-api-feign/liquidnet-api-feign-adam/src/main/java/com/liquidnet/service/feign/adam/api/FeignAdam
Auth
Client.java
→
liquidnet-bus-service/liquidnet-api-feign/liquidnet-api-feign-adam/src/main/java/com/liquidnet/service/feign/adam/api/FeignAdam
Login
Client.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
feign
.
adam
.
api
;
package
com
.
liquidnet
.
service
.
feign
.
adam
.
api
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.AdamThirdPartParam
;
import
com.liquidnet.service.adam.dto.vo.AdamLoginInfoVo
;
import
feign.hystrix.FallbackFactory
;
import
feign.hystrix.FallbackFactory
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.stereotype.Component
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RequestParam
;
@Component
@Component
@FeignClient
(
name
=
"liquidnet-service-adam"
,
@FeignClient
(
name
=
"liquidnet-service-adam"
,
contextId
=
"
sev-adam-auth
"
,
path
=
""
,
contextId
=
""
,
path
=
""
,
fallback
=
FallbackFactory
.
Default
.
class
)
fallback
=
FallbackFactory
.
Default
.
class
)
public
interface
FeignAdam
Auth
Client
{
public
interface
FeignAdam
Login
Client
{
@PostMapping
(
value
=
"login"
)
@PostMapping
(
value
=
"login
/sms
"
)
ResponseDto
<
Object
>
loginByPwd
(
@RequestParam
String
mobile
,
@RequestParam
String
password
);
ResponseDto
<
AdamLoginInfoVo
>
loginBySms
(
@RequestParam
String
mobile
,
@RequestParam
String
code
);
@PostMapping
(
value
=
{
"login/mobile"
})
ResponseDto
<
AdamLoginInfoVo
>
loginByMobile
(
@RequestParam
String
accessToken
);
@PostMapping
(
value
=
{
"login/tpa"
})
ResponseDto
<
AdamLoginInfoVo
>
loginByTpa
(
@RequestBody
AdamThirdPartParam
parameter
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/AdamMemberCodeParam.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
/**
* 会员价格
*/
@ApiModel
(
value
=
"AdamMemberCodeParam"
,
description
=
"添加编辑会员兑换码"
)
@Data
public
class
AdamMemberCodeParam
implements
Serializable
{
private
static
final
long
serialVersionUID
=
5940725094369061032L
;
/**
* 会员类型ID
*/
@ApiModelProperty
(
position
=
1
,
required
=
false
,
value
=
"会员类型ID"
)
private
String
memberId
;
/**
* 会员价格ID
*/
@ApiModelProperty
(
position
=
2
,
required
=
false
,
value
=
"会员价格ID"
)
private
String
memberPriceId
;
/**
* 类型 0-用户购买兑换码 1-后台生成兑换码
*/
@ApiModelProperty
(
position
=
3
,
required
=
true
,
value
=
"类型 0-用户购买兑换码 1-后台生成兑换码"
,
example
=
"0"
)
private
Integer
type
;
/**
* 购买会员码的用户id
*/
@ApiModelProperty
(
position
=
4
,
required
=
false
,
value
=
"登录用户token,应该从token里拿"
,
example
=
"0"
)
private
String
buyUid
;
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/AdamThirdPartParam.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
@ApiModel
(
value
=
"AdamThirdPartParam"
,
description
=
"第三方账号登录注册入参"
)
@Data
public
class
AdamThirdPartParam
implements
Serializable
{
private
static
final
long
serialVersionUID
=
675588088506034208L
;
@ApiModelProperty
(
position
=
11
,
required
=
true
,
value
=
"第三方OPENID[64]"
)
private
String
openId
;
@ApiModelProperty
(
position
=
12
,
required
=
true
,
value
=
"昵称[64]"
,
example
=
"Swagger"
)
private
String
nickName
;
@ApiModelProperty
(
position
=
13
,
required
=
true
,
value
=
"头像[255]"
,
example
=
"http://pic.zhengzai.tv/default/avatar.png"
)
private
String
avatar
;
@ApiModelProperty
(
position
=
14
,
required
=
true
,
value
=
"平台类型[255]"
,
allowableValues
=
"WEIBO,WECHAT,QQ"
)
private
String
platform
;
@ApiModelProperty
(
position
=
15
,
required
=
false
,
value
=
"手机号[新账号时必传]"
,
example
=
"13111111111"
)
private
String
mobile
;
@ApiModelProperty
(
position
=
16
,
required
=
false
,
value
=
"验证码[新账号时必传]"
,
example
=
"111111"
)
private
String
code
;
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/AdamUserMemberParam.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
@ApiModel
(
value
=
"AdamUserMemberParam"
,
description
=
"会员用户信息"
)
@Data
public
class
AdamUserMemberParam
{
private
static
final
long
serialVersionUID
=
5940725094369061032L
;
@ApiModelProperty
(
position
=
0
,
required
=
true
,
value
=
"用户id"
,
example
=
"0"
)
private
String
uid
;
@ApiModelProperty
(
position
=
1
,
required
=
true
,
value
=
"会员类型id"
,
example
=
"0"
)
private
String
memberId
;
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamLoginInfoVo.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
dto
.
vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.List
;
@ApiModel
(
value
=
"AdamLoginInfoVo"
,
description
=
"登录成功响应数据"
)
@Data
public
class
AdamLoginInfoVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
4209754800686327524L
;
@ApiModelProperty
(
position
=
11
,
value
=
"TOKEN"
)
private
String
token
;
@ApiModelProperty
(
position
=
12
,
value
=
"用户信息"
)
private
AdamUserInfoVo
userInfo
;
@ApiModelProperty
(
position
=
13
,
value
=
"实名信息"
)
private
AdamRealInfoVo
realNameInfo
;
@ApiModelProperty
(
position
=
14
,
value
=
"用户第三方账号信息"
)
private
List
<
AdamThirdPartInfoVo
>
thirdPartInfo
;
@ApiModelProperty
(
position
=
15
,
value
=
"会员信息 -> 待定"
)
private
Object
memberInfo
;
private
static
final
AdamLoginInfoVo
obj
=
new
AdamLoginInfoVo
();
public
static
AdamLoginInfoVo
getNew
()
{
try
{
return
(
AdamLoginInfoVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
AdamLoginInfoVo
();
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamMemberCodeVo.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
dto
.
vo
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.liquidnet.service.adam.dto.AdamMemberCodeParam
;
import
com.liquidnet.service.adam.entity.AdamMemberCode
;
import
com.liquidnet.service.adam.util.MemberUtil
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
@ApiModel
(
value
=
"AdamMemberCodeAdminVo"
,
description
=
"会员码兑换"
)
@Data
public
class
AdamMemberCodeVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
5258094625450569125L
;
@ApiModelProperty
(
position
=
0
,
value
=
"会员码"
)
private
String
code
;
@ApiModelProperty
(
position
=
1
,
value
=
"会员类型id"
)
private
String
memberId
;
@ApiModelProperty
(
position
=
2
,
value
=
"会员价格id"
)
private
String
memberPriceId
;
@ApiModelProperty
(
position
=
3
,
value
=
"会员码类型0购买1后台生成"
)
private
String
type
;
@ApiModelProperty
(
position
=
4
,
value
=
"会员编号"
)
private
String
memberNo
;
@ApiModelProperty
(
position
=
5
,
value
=
"会员状态0-未使用 1-已使用 2-不可用"
)
private
Integer
state
;
/**
* 购买会员码订单号
*/
@ApiModelProperty
(
position
=
6
,
value
=
"购买会员码的订单编号"
)
private
String
buyOrderNo
;
/**
* 购买会员码的用户id
*/
@ApiModelProperty
(
position
=
7
,
value
=
"购买会员码的用户id"
)
private
String
buyUid
;
/**
* 购买时间
*/
@ApiModelProperty
(
position
=
8
,
value
=
"购买时间"
)
private
String
buyAt
;
/**
* 使用会员码的订单号
*/
@ApiModelProperty
(
position
=
9
,
value
=
"使用会员码的订单编号"
)
private
String
useOrderNo
;
/**
* 使用会员码的用户ID
*/
@ApiModelProperty
(
position
=
10
,
value
=
"使用会员码的用户id"
)
private
String
useUid
;
/**
* 使用时间
*/
@ApiModelProperty
(
position
=
1
,
value
=
"使用时间"
)
private
String
useAt
;
private
String
createdAt
;
private
String
updatedAt
;
private
static
final
AdamMemberCodeVo
obj
=
new
AdamMemberCodeVo
();
public
static
AdamMemberCodeVo
getNew
()
{
try
{
return
(
AdamMemberCodeVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
AdamMemberCodeVo
();
}
/**
* 整合数据,适合插入数据库的数据(购买码)
* @param param
* @param state 0-购买 1-生成
* @return
*/
@JsonIgnore
public
AdamMemberCode
setCodeParam
(
AdamMemberCodeParam
param
,
int
state
)
{
int
type
=
0
;
String
memberNo
=
""
;
String
code
=
MemberUtil
.
getMemberCode
(
type
);
AdamMemberCode
adamMemberCode
=
new
AdamMemberCode
();
adamMemberCode
.
setType
(
type
);
adamMemberCode
.
setCode
(
code
);
adamMemberCode
.
setMemberId
(
param
.
getMemberId
());
adamMemberCode
.
setMemberPriceId
(
param
.
getMemberPriceId
());
adamMemberCode
.
setState
(
state
);
adamMemberCode
.
setMemberNo
(
memberNo
);
return
adamMemberCode
;
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamRealInfoVo.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
dto
.
vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
@ApiModel
(
value
=
"AdamRealInfoVo"
,
description
=
"实名信息"
)
@Data
public
class
AdamRealInfoVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
-
3469256375584132928L
;
@ApiModelProperty
(
position
=
11
,
value
=
"姓名[30]"
)
private
String
name
;
@ApiModelProperty
(
position
=
12
,
value
=
"证件号[50]"
)
private
String
idCard
;
@ApiModelProperty
(
position
=
13
,
value
=
"状态:1-正常"
)
private
String
state
;
private
static
final
AdamRealInfoVo
obj
=
new
AdamRealInfoVo
();
public
static
AdamRealInfoVo
getNew
()
{
try
{
return
(
AdamRealInfoVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
AdamRealInfoVo
();
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamThirdPartInfoVo.java
View file @
d733d0c6
...
@@ -8,8 +8,6 @@ import lombok.Data;
...
@@ -8,8 +8,6 @@ import lombok.Data;
@Data
@Data
public
class
AdamThirdPartInfoVo
implements
java
.
io
.
Serializable
,
Cloneable
{
public
class
AdamThirdPartInfoVo
implements
java
.
io
.
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
-
3239086191919676121L
;
private
static
final
long
serialVersionUID
=
-
3239086191919676121L
;
@ApiModelProperty
(
position
=
10
,
value
=
"Third Party ID[64]"
)
private
String
thirdPartyId
;
@ApiModelProperty
(
position
=
11
,
value
=
"用户ID[64]"
)
@ApiModelProperty
(
position
=
11
,
value
=
"用户ID[64]"
)
private
String
uid
;
private
String
uid
;
@ApiModelProperty
(
position
=
12
,
value
=
"第三方ID[64]"
)
@ApiModelProperty
(
position
=
12
,
value
=
"第三方ID[64]"
)
...
@@ -18,10 +16,10 @@ public class AdamThirdPartInfoVo implements java.io.Serializable, Cloneable {
...
@@ -18,10 +16,10 @@ public class AdamThirdPartInfoVo implements java.io.Serializable, Cloneable {
private
String
nickname
;
private
String
nickname
;
@ApiModelProperty
(
position
=
14
,
value
=
"头像[255]"
)
@ApiModelProperty
(
position
=
14
,
value
=
"头像[255]"
)
private
String
avatar
;
private
String
avatar
;
@ApiModelProperty
(
position
=
1
4
,
value
=
"平台类型[20]"
)
@ApiModelProperty
(
position
=
1
5
,
value
=
"平台类型[20]"
)
private
String
platform
;
private
String
platform
;
@ApiModelProperty
(
position
=
1
4
,
value
=
"状态[1-绑定,2-解绑]"
)
@ApiModelProperty
(
position
=
1
6
,
value
=
"状态[1-绑定,2-解绑]"
)
private
int
state
;
private
Integer
state
;
private
static
final
AdamThirdPartInfoVo
obj
=
new
AdamThirdPartInfoVo
();
private
static
final
AdamThirdPartInfoVo
obj
=
new
AdamThirdPartInfoVo
();
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamUserInfoVo.java
View file @
d733d0c6
...
@@ -10,26 +10,32 @@ public class AdamUserInfoVo implements java.io.Serializable, Cloneable {
...
@@ -10,26 +10,32 @@ public class AdamUserInfoVo implements java.io.Serializable, Cloneable {
private
static
final
long
serialVersionUID
=
8479869354894030303L
;
private
static
final
long
serialVersionUID
=
8479869354894030303L
;
@ApiModelProperty
(
position
=
10
,
value
=
"用户ID[64]"
)
@ApiModelProperty
(
position
=
10
,
value
=
"用户ID[64]"
)
private
String
uid
;
private
String
uid
;
@ApiModelProperty
(
position
=
11
,
value
=
"昵称[32]"
)
@ApiModelProperty
(
position
=
11
,
value
=
"手机号[20]"
)
private
String
username
;
private
String
mobile
;
@ApiModelProperty
(
position
=
12
,
value
=
"性别[32]"
)
@ApiModelProperty
(
position
=
12
,
value
=
"昵称[32]"
)
private
String
nickName
;
@ApiModelProperty
(
position
=
13
,
value
=
"状态[1-正常,2-注销]"
)
private
Integer
state
;
@ApiModelProperty
(
position
=
14
,
value
=
"性别[32]"
)
private
String
sex
;
private
String
sex
;
@ApiModelProperty
(
position
=
1
3
,
value
=
"生日[YYYY-MM-DD]"
)
@ApiModelProperty
(
position
=
1
5
,
value
=
"生日[YYYY-MM-DD]"
)
private
String
birthday
;
private
String
birthday
;
@ApiModelProperty
(
position
=
1
4
,
value
=
"常住地/区域"
)
@ApiModelProperty
(
position
=
1
6
,
value
=
"常住地/区域"
)
private
String
area
;
private
String
area
;
@ApiModelProperty
(
position
=
1
5
,
value
=
"个性签名"
)
@ApiModelProperty
(
position
=
1
7
,
value
=
"个性签名"
)
private
String
signature
;
private
String
signature
;
@ApiModelProperty
(
position
=
1
6
,
value
=
"头像"
)
@ApiModelProperty
(
position
=
1
8
,
value
=
"头像"
)
private
String
avatar
;
private
String
avatar
;
@ApiModelProperty
(
position
=
1
7
,
value
=
"背景图"
)
@ApiModelProperty
(
position
=
1
9
,
value
=
"背景图"
)
private
String
background
;
private
String
background
;
@ApiModelProperty
(
position
=
18
,
value
=
"标签"
)
@ApiModelProperty
(
position
=
20
,
value
=
"标签"
)
private
String
tagMe
;
private
String
tagMe
;
@ApiModelProperty
(
position
=
19
,
value
=
""
)
@ApiModelProperty
(
position
=
21
,
value
=
"注册时间"
)
private
String
rongCloudToken
;
private
String
createAt
;
// @ApiModelProperty(position = 20, value = "隐私配置")
@ApiModelProperty
(
position
=
22
,
value
=
"是否完善信息[0-未完善,1-已完善]"
)
// private
private
Integer
isComplete
;
// @ApiModelProperty(position = 23, value = "")
// private String rongCloudToken;
private
static
final
AdamUserInfoVo
obj
=
new
AdamUserInfoVo
();
private
static
final
AdamUserInfoVo
obj
=
new
AdamUserInfoVo
();
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/dto/vo/AdamUserMemberVo.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
dto
.
vo
;
import
com.liquidnet.service.adam.entity.AdamUserMember
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serializable
;
import
java.time.LocalDateTime
;
@ApiModel
(
value
=
"AdamUserMemberVo"
,
description
=
"会员用户信息"
)
public
class
AdamUserMemberVo
implements
Serializable
,
Cloneable
{
private
static
final
long
serialVersionUID
=
5258094625450569125L
;
@ApiModelProperty
(
position
=
0
,
value
=
"用户id"
,
example
=
"0"
)
private
String
uid
;
@ApiModelProperty
(
position
=
1
,
value
=
"会员类型id"
,
example
=
"0"
)
private
String
memberId
;
@ApiModelProperty
(
position
=
2
,
value
=
"会员号"
,
example
=
"0"
)
private
Integer
memberNo
;
@ApiModelProperty
(
position
=
3
,
value
=
"用户会员状态"
,
example
=
"1"
)
private
Integer
state
;
@ApiModelProperty
(
position
=
4
,
value
=
"会员过期时间"
)
private
String
expiryAt
;
@ApiModelProperty
(
position
=
5
,
value
=
"创建时间"
)
private
String
createdAt
;
@ApiModelProperty
(
position
=
6
,
value
=
"更新时间"
)
private
String
updatedAt
;
private
static
final
AdamUserMemberVo
obj
=
new
AdamUserMemberVo
();
public
static
AdamUserMemberVo
getNew
()
{
try
{
return
(
AdamUserMemberVo
)
obj
.
clone
();
}
catch
(
CloneNotSupportedException
e
)
{
e
.
printStackTrace
();
}
return
new
AdamUserMemberVo
();
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamMemberCodeService.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.adam.dto.AdamMemberCodeParam
;
import
com.liquidnet.service.adam.entity.AdamMemberCode
;
import
java.util.List
;
/**
* 会员码
*/
public
interface
IAdamMemberCodeService
extends
IService
<
AdamMemberCode
>
{
void
add
(
AdamMemberCodeParam
param
);
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamRealNameService.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
;
package
com
.
liquidnet
.
service
.
adam
.
service
;
import
com.liquidnet.service.adam.dto.vo.AdamRealInfoVo
;
import
com.liquidnet.service.adam.entity.AdamRealName
;
import
com.liquidnet.service.adam.entity.AdamRealName
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
...
@@ -13,4 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
...
@@ -13,4 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
*/
public
interface
IAdamRealNameService
extends
IService
<
AdamRealName
>
{
public
interface
IAdamRealNameService
extends
IService
<
AdamRealName
>
{
AdamRealInfoVo
queryByUid
(
String
uid
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamThirdPartyService.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
;
package
com
.
liquidnet
.
service
.
adam
.
service
;
import
com.liquidnet.service.adam.dto.vo.AdamThirdPartInfoVo
;
import
com.liquidnet.service.adam.entity.AdamThirdParty
;
import
com.liquidnet.service.adam.entity.AdamThirdParty
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
java.util.List
;
/**
/**
* <p>
* <p>
* 用户第三方账号信息 服务类
* 用户第三方账号信息 服务类
...
@@ -13,4 +16,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
...
@@ -13,4 +16,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
*/
public
interface
IAdamThirdPartyService
extends
IService
<
AdamThirdParty
>
{
public
interface
IAdamThirdPartyService
extends
IService
<
AdamThirdParty
>
{
List
<
AdamThirdPartInfoVo
>
queryByUid
(
String
uid
);
AdamThirdPartInfoVo
queryByOpenId
(
String
openId
,
String
platform
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamUserInfoService.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
;
package
com
.
liquidnet
.
service
.
adam
.
service
;
import
com.liquidnet.service.adam.dto.vo.AdamUserInfoVo
;
import
com.liquidnet.service.adam.entity.AdamUserInfo
;
import
com.liquidnet.service.adam.entity.AdamUserInfo
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
/**
/**
* <p>
* <p>
*
正在现场
用户信息 服务类
* 用户信息 服务类
* </p>
* </p>
*
*
* @author liquidnet
* @author liquidnet
...
@@ -13,4 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
...
@@ -13,4 +14,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
*/
public
interface
IAdamUserInfoService
extends
IService
<
AdamUserInfo
>
{
public
interface
IAdamUserInfoService
extends
IService
<
AdamUserInfo
>
{
void
edit
(
AdamUserInfoVo
userInfoVo
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamUserMemberService.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.adam.entity.AdamUserMember
;
/**
* 会员用户信息
*/
public
interface
IAdamUserMemberService
extends
IService
<
AdamUserMember
>
{
void
createUserMemberInfo
(
String
memberId
);
String
getMaxMemberNo
(
String
memberId
);
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/IAdamUserService.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
;
package
com
.
liquidnet
.
service
.
adam
.
service
;
import
com.liquidnet.service.adam.dto.AdamThirdPartParam
;
import
com.liquidnet.service.adam.dto.vo.AdamUserInfoVo
;
import
com.liquidnet.service.adam.entity.AdamUser
;
import
com.liquidnet.service.adam.entity.AdamUser
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
...
@@ -13,4 +15,25 @@ import com.baomidou.mybatisplus.extension.service.IService;
...
@@ -13,4 +15,25 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
*/
public
interface
IAdamUserService
extends
IService
<
AdamUser
>
{
public
interface
IAdamUserService
extends
IService
<
AdamUser
>
{
String
queryUidByRedis
(
String
mobile
);
String
queryUidByRedis
(
String
openId
,
String
platform
);
AdamUserInfoVo
queryByUid
(
String
uid
);
/**
* 手机号注册
*
* @param mobile
* @return AdamUserInfoVo
*/
AdamUserInfoVo
register
(
String
mobile
);
/**
* 第三方账号注册
*
* @param thirdPartParam
* @return AdamUserInfoVo
*/
AdamUserInfoVo
register
(
AdamThirdPartParam
thirdPartParam
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/service/admin/IAdamMemberCodeAdminService.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
admin
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.liquidnet.service.adam.dto.AdamMemberCodeParam
;
import
com.liquidnet.service.adam.entity.AdamMemberCode
;
/**
* 后台使用的接口
*/
public
interface
IAdamMemberCodeAdminService
extends
IService
<
AdamMemberCode
>
{
/**
* 创建礼包码
* @param param
*/
void
createGiftCode
(
AdamMemberCodeParam
param
);
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-api/src/main/java/com/liquidnet/service/adam/util/MemberUtil.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
util
;
import
com.liquidnet.commons.lang.util.MD5
;
import
java.nio.charset.StandardCharsets
;
import
java.util.Calendar
;
import
java.util.Random
;
/**
* 会员码相关工具类
*/
public
class
MemberUtil
{
/**
* 获取
*
* @return
*/
public
static
boolean
getOneFromRepertory
()
{
return
false
;
}
public
static
String
getMemberCode
(
Integer
type
)
{
String
code
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
;
Random
rand
=
new
Random
();
String
word
=
String
.
valueOf
(
code
.
charAt
(
rand
.
nextInt
(
code
.
length
())));
Calendar
calendar
=
Calendar
.
getInstance
();
String
month
=
String
.
valueOf
(
calendar
.
get
(
Calendar
.
MONTH
-
1
));
String
day
=
String
.
valueOf
(
calendar
.
get
(
Calendar
.
DAY_OF_MONTH
));
String
time
=
String
.
valueOf
(
calendar
.
getTimeInMillis
()).
substring
(
5
,
10
);
String
microTime
=
String
.
valueOf
(
calendar
.
getTimeInMillis
()
*
1000
).
substring
(
2
,
5
);
String
sign
=
word
.
concat
(
month
).
concat
(
day
).
concat
(
time
).
concat
(
microTime
);
sign
=
String
.
format
(
sign
+
"%02d"
,
rand
.
nextInt
(
99
));
sign
=
MD5
.
getStrMD5
(
sign
);
String
s
=
"0123456789ABCDEFGHIJKLMNOPQRSTUV"
;
char
[]
chars
=
sign
.
toCharArray
();
String
g
=
""
;
char
[]
sChar
=
s
.
toCharArray
();
for
(
int
i
=
0
;
i
<
8
;
i
++)
{
int
a
=
ord
(
chars
[
i
]);
int
f
=
ord
(
chars
[
i
+
8
]);
int
index
=
(
a
^
f
)
-
a
&
0x1F
;
char
sc
=
sChar
[
index
];
g
+=
sc
;
}
String
randomPre
=
String
.
valueOf
(
sChar
[
rand
.
nextInt
(
s
.
length
())]);
if
(
1
==
type
)
{
// 赠送
g
=
"G"
.
concat
(
randomPre
).
concat
(
g
);
}
else
{
// 购买
g
=
"B"
.
concat
(
randomPre
).
concat
(
g
);
}
return
g
;
}
public
static
int
ord
(
String
s
){
return
s
.
length
()
>
0
?
(
s
.
getBytes
(
StandardCharsets
.
UTF_8
)[
0
]
&
0xff
)
:
0
;
}
public
static
int
ord
(
char
c
){
return
0
<
0x80
?
c
:
ord
(
Character
.
toString
(
c
));
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-do/src/main/java/com/liquidnet/service/adam/entity/AdamMemberCode.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.time.LocalDateTime
;
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
AdamMemberCode
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"mid"
,
type
=
IdType
.
AUTO
)
private
Integer
mid
;
/**
* 会员码
*/
private
String
code
;
/**
* 类型 0-用户购买兑换码 1-后台生成兑换码
*/
private
Integer
type
;
/**
* 会员类型id
*/
private
String
memberId
;
/**
* 会员价格id
*/
private
String
memberPriceId
;
/**
* 会员卡号
*/
private
String
memberNo
;
/**
* 状态 0-未使用 1-已使用 2-已过期
*/
private
Integer
state
;
/**
* 购买会员码订单号
*/
private
String
buyOrderNo
;
/**
* 购买会员码的用户id
*/
private
String
buyUid
;
/**
* 购买时间
*/
private
LocalDateTime
buyAt
;
/**
* 使用会员码的订单号
*/
private
String
useOrderNo
;
/**
* 使用会员码的用户ID
*/
private
String
useUid
;
/**
* 使用时间
*/
private
LocalDateTime
useAt
;
private
LocalDateTime
createdAt
;
private
LocalDateTime
updatedAt
;
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-do/src/main/java/com/liquidnet/service/adam/entity/AdamUser.java
View file @
d733d0c6
...
@@ -44,6 +44,4 @@ public class AdamUser implements Serializable {
...
@@ -44,6 +44,4 @@ public class AdamUser implements Serializable {
private
LocalDateTime
closedAt
;
private
LocalDateTime
closedAt
;
private
String
comment
;
private
String
comment
;
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-do/src/main/java/com/liquidnet/service/adam/entity/AdamUserMember.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.time.LocalDateTime
;
@Data
@EqualsAndHashCode
(
callSuper
=
false
)
public
class
AdamUserMember
{
private
static
final
long
serialVersionUID
=
1L
;
@TableId
(
value
=
"mid"
,
type
=
IdType
.
AUTO
)
private
Integer
mid
;
private
String
uid
;
private
String
memberId
;
private
Integer
memberNo
;
private
Integer
state
;
private
LocalDateTime
expiryAt
;
private
LocalDateTime
createdAt
;
private
LocalDateTime
updatedAt
;
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-do/src/main/java/com/liquidnet/service/adam/mapper/AdamMemberCodeMapper.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.liquidnet.service.adam.entity.AdamMemberCode
;
public
interface
AdamMemberCodeMapper
extends
BaseMapper
<
AdamMemberCode
>
{
String
getMaxMemberNo
(
String
memberId
);
}
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-do/src/main/java/com/liquidnet/service/adam/mapper/AdamUserMemberMapper.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.liquidnet.service.adam.entity.AdamUserMember
;
/**
* 会员用户表
*/
public
interface
AdamUserMemberMapper
extends
BaseMapper
<
AdamUserMember
>
{
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-do/src/main/resources/com/liquidnet/service/adam/mapper/AdamUserMemberMapper.xml
0 → 100644
View file @
d733d0c6
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.liquidnet.service.adam.mapper.AdamUserMemberMapper"
>
<resultMap
id=
"UserMemberResult"
type=
"com.liquidnet.service.adam.entity.AdamUserMember"
>
<result
column=
"member_id"
property=
"memberId"
/>
<result
column=
"uid"
property=
"uid"
/>
<result
column=
"member_no"
property=
"memberNo"
/>
<result
column=
"state"
property=
"state"
/>
<result
column=
"expiry_at"
property=
"expiryAt"
/>
<result
column=
"created_at"
property=
"createdAt"
/>
<result
column=
"updated_at"
property=
"updatedAt"
/>
</resultMap>
<!-- sql -->
<sql
id=
"Base_Column"
>
m.member_id,
m.uid,
m.member_no,
m.state,
m.expiry_at,
m.created_at,
m.updated_at
</sql>
<select
id=
"getMaxMemberNo"
parameterType=
"java.lang.String"
resultMap=
"UserMemberResult"
>
SELECT
m.member_id,
m.uid,
m.member_no,
m.state,
m.expiry_at,
m.created_at,
m.updated_at
FROM adam_user_member as m
order by m.member_no desc
limit 0,1
</select>
</mapper>
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/docu/db_ln_adam_initialdata.sql
View file @
d733d0c6
...
@@ -55,7 +55,7 @@ create table adam_user
...
@@ -55,7 +55,7 @@ create table adam_user
(
(
mid
int
unsigned
auto_increment
primary
key
,
mid
int
unsigned
auto_increment
primary
key
,
uid
varchar
(
64
)
not
null
,
uid
varchar
(
64
)
not
null
,
mobile
varchar
(
16
)
not
null
,
mobile
varchar
(
30
)
not
null
,
passwd
varchar
(
64
),
passwd
varchar
(
64
),
pay_code
varchar
(
64
),
pay_code
varchar
(
64
),
state
tinyint
comment
'1-NORMAL,2-INVALID'
,
state
tinyint
comment
'1-NORMAL,2-INVALID'
,
...
@@ -94,7 +94,7 @@ create table adam_real_name
...
@@ -94,7 +94,7 @@ create table adam_real_name
real_name_id
varchar
(
64
)
not
null
,
real_name_id
varchar
(
64
)
not
null
,
uid
varchar
(
64
)
not
null
,
uid
varchar
(
64
)
not
null
,
type
enum
(
'1'
,
'2'
,
'3'
,
'4'
,
'5'
)
not
null
default
'1'
comment
'1-大陆身份证,2-港澳通行证,3-台胞证,4-护照,5-军官证'
,
type
enum
(
'1'
,
'2'
,
'3'
,
'4'
,
'5'
)
not
null
default
'1'
comment
'1-大陆身份证,2-港澳通行证,3-台胞证,4-护照,5-军官证'
,
name
varchar
(
2
0
)
not
null
comment
'真实姓名'
,
name
varchar
(
3
0
)
not
null
comment
'真实姓名'
,
id_card
varchar
(
50
)
not
null
comment
'证件号码'
,
id_card
varchar
(
50
)
not
null
comment
'证件号码'
,
state
tinyint
not
null
comment
'0-INIT,1-NORMAL,2-INVALID'
,
state
tinyint
not
null
comment
'0-INIT,1-NORMAL,2-INVALID'
,
created_at
datetime
not
null
,
created_at
datetime
not
null
,
...
@@ -276,9 +276,10 @@ create table adam_user_member
...
@@ -276,9 +276,10 @@ create table adam_user_member
(
(
mid
int
unsigned
auto_increment
primary
key
,
mid
int
unsigned
auto_increment
primary
key
,
uid
varchar
(
64
)
not
null
,
uid
varchar
(
64
)
not
null
,
member_id
varchar
(
255
)
commet
'会员类型id'
,
member_no
int
unsigned
not
null
,
member_no
int
unsigned
not
null
,
state
tinyint
comment
'1-NORMAL,2-INVALID'
,
state
tinyint
comment
'1-NORMAL,2-INVALID'
,
expiry_at
date
comment
'到期日期'
,
expiry_at
date
time
comment
'到期日期'
,
created_at
datetime
,
created_at
datetime
,
updated_at
datetime
updated_at
datetime
);
);
...
@@ -288,16 +289,19 @@ create table adam_member_code
...
@@ -288,16 +289,19 @@ create table adam_member_code
(
(
mid
int
unsigned
auto_increment
primary
key
,
mid
int
unsigned
auto_increment
primary
key
,
code
varchar
(
20
)
comment
'会员码'
,
code
varchar
(
20
)
comment
'会员码'
,
member_id
int
unsigned
comment
'会员ID'
,
type
int
default
0
comment
'0用户购买1提前制作'
,
member_id
varchar
(
255
)
comment
'会员ID'
,
member_price_id
varchar
(
255
)
comment
'会员价格ID'
,
member_no
varchar
(
20
)
comment
'预留会员号'
,
member_no
varchar
(
20
)
comment
'预留会员号'
,
state
tinyint
comment
'0-未用,1-已用,2-失效'
,
state
tinyint
comment
'0-未用,1-已用,2-失效'
,
created_at
datetime
,
created_at
datetime
,
updated_at
datetime
,
updated_at
datetime
,
start_at
datetime
,
buy_order_no
varchar
(
255
)
default
null
comment
'购买会员码订单号'
,
end_at
datetime
,
buy_uid
varchar
(
255
)
default
null
comment
'购买会员码用户id'
,
use_order_no
varchar
(
64
)
comment
'消费订单号'
,
buy_at
datetime
default
null
comment
'购买时间'
,
use_uid
varchar
(
64
)
comment
'消费用户ID'
,
use_order_no
varchar
(
64
)
default
null
comment
'消费订单号'
,
use_at
datetime
use_uid
varchar
(
64
)
default
null
comment
'消费用户ID'
,
use_at
datetime
default
null
);
);
-- >>------------------------------------------------------------------------------------
-- >>------------------------------------------------------------------------------------
-- >>------------------------------------------------------------------------------------
-- >>------------------------------------------------------------------------------------
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/pom.xml
View file @
d733d0c6
...
@@ -35,6 +35,15 @@
...
@@ -35,6 +35,15 @@
<groupId>
org.springframework.boot
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-data-mongodb
</artifactId>
<artifactId>
spring-boot-starter-data-mongodb
</artifactId>
</dependency>
</dependency>
<dependency>
<groupId>
com.aliyun
</groupId>
<artifactId>
aliyun-java-sdk-core
</artifactId>
</dependency>
<dependency>
<groupId>
com.aliyun
</groupId>
<artifactId>
aliyun-java-sdk-dypnsapi
</artifactId>
</dependency>
</dependencies>
</dependencies>
<build>
<build>
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/config/AliyunDypnsConfigure.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
config
;
import
com.aliyuncs.DefaultAcsClient
;
import
com.aliyuncs.profile.DefaultProfile
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
@Configuration
public
class
AliyunDypnsConfigure
{
@Value
(
"${liquidnet.aliyun.accessKeyId}"
)
private
String
accessKeyId
;
@Value
(
"${liquidnet.aliyun.accessSecret}"
)
private
String
accessSecret
;
@Bean
public
DefaultAcsClient
initAcsClient
()
{
DefaultProfile
profile
=
DefaultProfile
.
getProfile
(
"cn-hangzhou"
,
accessKeyId
,
accessSecret
);
return
new
DefaultAcsClient
(
profile
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/constant/AdamRedisConst.java
View file @
d733d0c6
...
@@ -14,6 +14,17 @@ public class AdamRedisConst {
...
@@ -14,6 +14,17 @@ public class AdamRedisConst {
public
static
final
String
INFO_MEMBERS_PRICE_INFO
=
ADAM
.
concat
(
":list:members:price:info:"
);
public
static
final
String
INFO_MEMBERS_PRICE_INFO
=
ADAM
.
concat
(
":list:members:price:info:"
);
public
static
final
String
INFO_MEMBERS_CODE_INFO
=
ADAM
.
concat
(
":list:members:code:info:"
);
public
static
final
String
MEMBER_MEMBER_NO_MAX_KEY
=
ADAM
.
concat
(
":members:member_no_max:"
);
public
static
final
String
INFO_IDENTITY
=
ADAM
.
concat
(
":identity"
);
public
static
final
String
INFO_IDENTITY_MOBILE
=
INFO_IDENTITY
.
concat
(
":mobile"
);
public
static
final
String
INFO_IDENTITY_THIRD_PARTY
=
INFO_IDENTITY
.
concat
(
":third_party"
);
public
static
final
String
INFO_USER
=
ADAM
.
concat
(
":list:users"
);
public
static
final
String
INFO_REAL_NAME
=
ADAM
.
concat
(
":list:real_name"
);
public
static
final
String
INFO_THIRD_PARTY
=
ADAM
.
concat
(
":list:third_party"
);
// public static final String USER_CONFIRM_SMS_CODE_KEY = ADAM + ":user:sms_confirm:";
// public static final String USER_CONFIRM_SMS_CODE_KEY = ADAM + ":user:sms_confirm:";
//
//
// public static final String USER_EMAIL_CONFIRM_KEY = ADAM + ":user:email:confirm:";
// public static final String USER_EMAIL_CONFIRM_KEY = ADAM + ":user:email:confirm:";
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamAddressesController.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
controller
;
package
com
.
liquidnet
.
service
.
adam
.
controller
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.AdamAddressesParam
;
import
com.liquidnet.service.adam.dto.AdamAddressesParam
;
import
com.liquidnet.service.adam.dto.vo.AdamAddressesVo
;
import
com.liquidnet.service.adam.dto.vo.AdamAddressesVo
;
...
@@ -20,6 +21,7 @@ import java.util.List;
...
@@ -20,6 +21,7 @@ import java.util.List;
* @author liquidnet
* @author liquidnet
* @since 2021-05-10
* @since 2021-05-10
*/
*/
@ApiSupport
(
order
=
10060
)
@Api
(
tags
=
"收获地址"
)
@Api
(
tags
=
"收获地址"
)
@Slf4j
@Slf4j
@RestController
@RestController
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamCollectionController.java
View file @
d733d0c6
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.adam.controller;
...
@@ -2,6 +2,7 @@ package com.liquidnet.service.adam.controller;
import
com.github.pagehelper.PageInfo
;
import
com.github.pagehelper.PageInfo
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.AdamCollectParam
;
import
com.liquidnet.service.adam.dto.AdamCollectParam
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
...
@@ -19,6 +20,7 @@ import org.springframework.web.bind.annotation.*;
...
@@ -19,6 +20,7 @@ import org.springframework.web.bind.annotation.*;
* @author liquidnet
* @author liquidnet
* @since 2021-05-10
* @since 2021-05-10
*/
*/
@ApiSupport
(
order
=
10050
)
@Api
(
tags
=
"收藏"
)
@Api
(
tags
=
"收藏"
)
@Slf4j
@Slf4j
@RestController
@RestController
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamEntersController.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
controller
;
package
com
.
liquidnet
.
service
.
adam
.
controller
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.AdamEntersParam
;
import
com.liquidnet.service.adam.dto.AdamEntersParam
;
...
@@ -26,6 +27,7 @@ import java.util.List;
...
@@ -26,6 +27,7 @@ import java.util.List;
* @author liquidnet
* @author liquidnet
* @since 2021-04-28
* @since 2021-04-28
*/
*/
@ApiSupport
(
order
=
10040
)
@Api
(
tags
=
"入场人"
)
@Api
(
tags
=
"入场人"
)
@Slf4j
@Slf4j
@RestController
@RestController
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamLoginController.java
0 → 100644
View file @
d733d0c6
This diff is collapsed.
Click to expand it.
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamMemberController.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
controller
;
package
com
.
liquidnet
.
service
.
adam
.
controller
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberVo
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberVo
;
import
com.liquidnet.service.adam.service.IAdamMemberService
;
import
com.liquidnet.service.adam.service.IAdamMemberService
;
...
@@ -12,6 +13,7 @@ import org.springframework.web.bind.annotation.GetMapping;
...
@@ -12,6 +13,7 @@ import org.springframework.web.bind.annotation.GetMapping;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
@ApiSupport
(
order
=
10030
)
@Api
(
tags
=
"会员信息"
)
@Api
(
tags
=
"会员信息"
)
@Slf4j
@Slf4j
@RestController
@RestController
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamUserAuthController.java
deleted
100644 → 0
View file @
ccebce59
package
com
.
liquidnet
.
service
.
adam
.
controller
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.liquidnet.commons.lang.util.JwtUtil
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.vo.AdamThirdPartInfoVo
;
import
com.liquidnet.service.adam.dto.vo.AdamUserInfoVo
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.HashMap
;
import
java.util.Map
;
@Api
(
tags
=
"用户登录"
)
@Slf4j
@RestController
@RequestMapping
(
"login"
)
public
class
AdamUserAuthController
{
@ApiOperationSupport
(
order
=
1
)
@ApiOperation
(
value
=
"手机号密码登录"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
dataType
=
"String"
,
name
=
"mobile"
,
value
=
"手机号"
),
@ApiImplicitParam
(
type
=
"form"
,
dataType
=
"String"
,
name
=
"password"
,
value
=
"密码"
),
})
@PostMapping
(
value
=
{
""
})
public
ResponseDto
<
Object
>
loginByPwd
(
@RequestParam
String
mobile
,
@RequestParam
String
password
)
{
log
.
info
(
"mobile:{},pwd:{}"
,
mobile
,
password
);
Map
<
String
,
Object
>
claimsMap
=
new
HashMap
<>(),
rstMap
=
new
HashMap
<>();
claimsMap
.
put
(
"username"
,
"zhanggb"
);
claimsMap
.
put
(
"uid"
,
"2021"
);
String
token
=
JwtUtil
.
create
(
claimsMap
);
log
.
info
(
"token:{}"
,
token
);
rstMap
.
put
(
"token"
,
token
);
rstMap
.
put
(
"userInfo"
,
AdamUserInfoVo
.
getNew
());
rstMap
.
put
(
"thiredPartInfo"
,
AdamThirdPartInfoVo
.
getNew
());
// TODO: 2021/5/10 会员信息
rstMap
.
put
(
"cardsInfo"
,
null
);
return
ResponseDto
.
success
(
rstMap
);
}
@ApiOperationSupport
(
order
=
2
)
@ApiOperation
(
value
=
"发送验证码"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"mobile"
,
value
=
"手机号"
),
})
@GetMapping
(
value
=
{
"send/{mobile}"
})
public
ResponseDto
<
Object
>
sendSms
(
@PathVariable
String
mobile
)
{
log
.
info
(
"send to mobile:{}"
,
mobile
);
// TODO: 2021/5/10
return
ResponseDto
.
success
();
}
@ApiOperationSupport
(
order
=
3
)
@ApiOperation
(
value
=
"手机号验证码登录"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"mobile"
,
value
=
"手机号"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"code"
,
value
=
"验证码"
),
})
@PostMapping
(
value
=
{
"sms"
})
public
ResponseDto
<
Object
>
loginBySms
(
@RequestParam
String
mobile
,
@RequestParam
String
code
)
{
log
.
info
(
"mobile:{},pwd:{}"
,
mobile
,
code
);
Map
<
String
,
Object
>
claimsMap
=
new
HashMap
<>(),
rstMap
=
new
HashMap
<>();
claimsMap
.
put
(
"username"
,
"zhanggb"
);
claimsMap
.
put
(
"uid"
,
"2021"
);
String
token
=
JwtUtil
.
create
(
claimsMap
);
log
.
info
(
"token:{}"
,
token
);
rstMap
.
put
(
"token"
,
token
);
rstMap
.
put
(
"userInfo"
,
AdamUserInfoVo
.
getNew
());
rstMap
.
put
(
"thiredPartInfo"
,
AdamThirdPartInfoVo
.
getNew
());
// TODO: 2021/5/10 会员信息
rstMap
.
put
(
"cardsInfo"
,
null
);
return
ResponseDto
.
success
(
token
);
}
@ApiOperationSupport
(
order
=
4
)
@ApiOperation
(
value
=
"手机号一键登录"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"accessToken"
,
value
=
"访问令牌"
),
})
@PostMapping
(
value
=
{
"tpa/mobile"
})
public
ResponseDto
<
Object
>
loginByTpaMobile
(
@RequestParam
String
accessToken
)
{
log
.
info
(
"login by mobile access token:{}"
,
accessToken
);
// TODO: 2021/5/10
Map
<
String
,
Object
>
claimsMap
=
new
HashMap
<>(),
rstMap
=
new
HashMap
<>();
claimsMap
.
put
(
"username"
,
"zhanggb"
);
claimsMap
.
put
(
"uid"
,
"2021"
);
String
token
=
JwtUtil
.
create
(
claimsMap
);
log
.
info
(
"token:{}"
,
token
);
rstMap
.
put
(
"token"
,
token
);
rstMap
.
put
(
"userInfo"
,
AdamUserInfoVo
.
getNew
());
rstMap
.
put
(
"thiredPartInfo"
,
AdamThirdPartInfoVo
.
getNew
());
// TODO: 2021/5/10 会员信息
rstMap
.
put
(
"cardsInfo"
,
null
);
return
ResponseDto
.
success
(
rstMap
);
}
@ApiOperationSupport
(
order
=
5
)
@ApiOperation
(
value
=
"第三方账号登录"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"openId"
,
value
=
"第三方OPENID"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"nickName"
,
value
=
"昵称"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"avatar"
,
value
=
"头像"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"platform"
,
value
=
"平台类型"
,
allowableValues
=
"WEIBO,WECHAT,QQ"
),
})
@PostMapping
(
value
=
{
"tpa"
})
public
ResponseDto
<
Object
>
loginByTpa
(
@RequestParam
String
openId
,
@RequestParam
String
nickname
,
@RequestParam
String
avatar
,
@RequestParam
String
platform
)
{
log
.
info
(
"login by tpa openId:{}, nickname:{}, avatar: {}, platform:{}"
,
openId
,
nickname
,
avatar
,
platform
);
// TODO: 2021/5/10
Map
<
String
,
Object
>
claimsMap
=
new
HashMap
<>(),
rstMap
=
new
HashMap
<>();
claimsMap
.
put
(
"username"
,
"zhanggb"
);
claimsMap
.
put
(
"uid"
,
"2021"
);
String
token
=
JwtUtil
.
create
(
claimsMap
);
log
.
info
(
"token:{}"
,
token
);
rstMap
.
put
(
"token"
,
token
);
rstMap
.
put
(
"userInfo"
,
AdamUserInfoVo
.
getNew
());
rstMap
.
put
(
"thiredPartInfo"
,
AdamThirdPartInfoVo
.
getNew
());
// TODO: 2021/5/10 会员信息
rstMap
.
put
(
"cardsInfo"
,
null
);
return
ResponseDto
.
success
(
rstMap
);
}
@ApiOperationSupport
(
order
=
6
)
@ApiOperation
(
value
=
"第三方账号注册"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"openId"
,
value
=
"第三方OPENID"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"nickname"
,
value
=
"昵称"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"avatar"
,
value
=
"头像"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"platform"
,
value
=
"平台类型"
,
allowableValues
=
"WEIBO,WECHAT,QQ"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"mobile"
,
value
=
"手机号"
),
@ApiImplicitParam
(
type
=
"form"
,
required
=
true
,
dataType
=
"String"
,
name
=
"platform"
,
value
=
"验证码"
),
})
@PostMapping
(
value
=
{
"tpa/reg"
})
public
ResponseDto
<
Object
>
loginByTpaRegister
(
@RequestParam
String
openId
,
@RequestParam
String
nickname
,
@RequestParam
String
avatar
,
@RequestParam
String
platform
,
@RequestParam
String
mobile
,
@RequestParam
String
code
)
{
log
.
info
(
"login by tpa openId:{},nickname:{},avatar:{},platform:{},mobile:{},code:{}"
,
openId
,
nickname
,
avatar
,
platform
,
mobile
,
code
);
// TODO: 2021/5/10
Map
<
String
,
Object
>
claimsMap
=
new
HashMap
<>(),
rstMap
=
new
HashMap
<>();
claimsMap
.
put
(
"username"
,
"zhanggb"
);
claimsMap
.
put
(
"uid"
,
"2021"
);
String
token
=
JwtUtil
.
create
(
claimsMap
);
log
.
info
(
"token:{}"
,
token
);
rstMap
.
put
(
"token"
,
token
);
rstMap
.
put
(
"userInfo"
,
AdamUserInfoVo
.
getNew
());
rstMap
.
put
(
"thiredPartInfo"
,
AdamThirdPartInfoVo
.
getNew
());
// TODO: 2021/5/10 会员信息
rstMap
.
put
(
"cardsInfo"
,
null
);
return
ResponseDto
.
success
(
rstMap
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/controller/AdamUserController.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
controller
;
package
com
.
liquidnet
.
service
.
adam
.
controller
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiOperationSupport
;
import
com.github.xiaoymin.knife4j.annotations.ApiSupport
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.AdamUserInfoParam
;
import
com.liquidnet.service.adam.dto.AdamUserInfoParam
;
import
com.liquidnet.service.adam.dto.vo.AdamThirdPartInfoVo
;
import
com.liquidnet.service.adam.dto.vo.AdamThirdPartInfoVo
;
import
com.liquidnet.service.adam.dto.vo.AdamUserInfoVo
;
import
com.liquidnet.service.adam.dto.vo.AdamUserInfoVo
;
import
com.liquidnet.service.adam.service.IAdamUserInfoService
;
import
com.liquidnet.service.adam.service.IAdamUserService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
@ApiSupport
(
order
=
10020
)
@Api
(
tags
=
"用户中心"
)
@Api
(
tags
=
"用户中心"
)
@Slf4j
@Slf4j
@RestController
@RestController
@RequestMapping
(
"user"
)
@RequestMapping
(
"user"
)
public
class
AdamUserController
{
public
class
AdamUserController
{
@Autowired
IAdamUserService
adamUserService
;
@Autowired
IAdamUserInfoService
adamUserInfoService
;
@ApiOperationSupport
(
order
=
1
)
@ApiOperationSupport
(
order
=
1
)
@ApiOperation
(
value
=
"个人资料编辑"
)
@ApiOperation
(
value
=
"个人资料编辑"
)
@PostMapping
(
value
=
{
"edit"
})
@PostMapping
(
value
=
{
"edit"
})
public
ResponseDto
<
AdamUserInfoVo
>
edit
(
@RequestBody
AdamUserInfoParam
adamUserInfoParam
)
{
public
ResponseDto
<
AdamUserInfoVo
>
edit
(
@RequestBody
AdamUserInfoParam
adamUserInfoParam
)
{
// TODO: 2021/5/10
log
.
info
(
"adamUserInfoParam:{}"
,
JsonUtils
.
toJson
(
adamUserInfoParam
));
log
.
info
(
"adamUserInfoParam:{}"
,
JsonUtils
.
toJson
(
adamUserInfoParam
));
String
uid
=
"1"
;
// TODO: 2021/5/10
AdamUserInfoVo
userInfoVo
=
adamUserService
.
queryByUid
(
uid
);
BeanUtils
.
copyProperties
(
adamUserInfoParam
,
userInfoVo
);
adamUserInfoService
.
edit
(
userInfoVo
);
return
ResponseDto
.
success
(
AdamUserInfoVo
.
getNew
()
);
return
ResponseDto
.
success
(
userInfoVo
);
}
}
@ApiOperationSupport
(
order
=
2
)
@ApiOperationSupport
(
order
=
2
)
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamEntersServiceImpl.java
View file @
d733d0c6
...
@@ -6,7 +6,6 @@ import com.liquidnet.common.mq.constant.MQConst;
...
@@ -6,7 +6,6 @@ import com.liquidnet.common.mq.constant.MQConst;
import
com.liquidnet.commons.lang.util.BsonUtil
;
import
com.liquidnet.commons.lang.util.BsonUtil
;
import
com.liquidnet.commons.lang.util.SqlMapping
;
import
com.liquidnet.commons.lang.util.SqlMapping
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.vo.AdamEntersVo
;
import
com.liquidnet.service.adam.entity.AdamEnters
;
import
com.liquidnet.service.adam.entity.AdamEnters
;
import
com.liquidnet.service.adam.mapper.AdamEntersMapper
;
import
com.liquidnet.service.adam.mapper.AdamEntersMapper
;
import
com.liquidnet.service.adam.service.IAdamEntersService
;
import
com.liquidnet.service.adam.service.IAdamEntersService
;
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamMemberCodeServiceImpl.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.AdamMemberCodeParam
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberCodeVo
;
import
com.liquidnet.service.adam.entity.AdamMemberCode
;
import
com.liquidnet.service.adam.mapper.AdamMemberCodeMapper
;
import
com.liquidnet.service.adam.service.IAdamMemberCodeService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.convert.MongoConverter
;
import
org.springframework.stereotype.Service
;
import
java.util.Collections
;
import
java.util.HashMap
;
import
java.util.Map
;
@Slf4j
@Service
public
class
AdamMemberCodeServiceImpl
extends
ServiceImpl
<
AdamMemberCodeMapper
,
AdamMemberCode
>
implements
IAdamMemberCodeService
{
@Autowired
AdamMemberCodeMapper
adamMemberCodeMapper
;
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
MongoConverter
mongoConverter
;
@Autowired
RabbitTemplate
rabbitTemplate
;
@Autowired
RedisUtil
redisUtil
;
@Override
public
void
add
(
AdamMemberCodeParam
param
)
{
AdamMemberCode
adamMemberCode
=
(
new
AdamMemberCodeVo
()).
setCodeParam
(
param
,
1
);
// mysql
adamMemberCodeMapper
.
insert
(
adamMemberCode
);
// mongo
AdamMemberCodeVo
vo
=
new
AdamMemberCodeVo
();
BeanUtils
.
copyProperties
(
adamMemberCode
,
vo
);
vo
.
setCreatedAt
(
DateUtil
.
format
(
adamMemberCode
.
getCreatedAt
(),
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
vo
.
setUpdatedAt
(
DateUtil
.
format
(
adamMemberCode
.
getUpdatedAt
(),
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
mongoTemplate
.
insert
(
Collections
.
singletonList
(
null
),
AdamMemberCodeVo
.
class
.
getSimpleName
());
// redis
Map
<
String
,
Object
>
redisMap
=
new
HashMap
<>();
redisMap
.
put
(
AdamRedisConst
.
INFO_MEMBERS_PRICE_INFO
.
concat
(
adamMemberCode
.
getMemberPriceId
()),
vo
);
redisUtil
.
hmset
(
AdamRedisConst
.
INFO_MEMBERS_CODE_INFO
.
concat
(
adamMemberCode
.
getBuyUid
())
,
redisMap
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamRealNameServiceImpl.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.vo.AdamRealInfoVo
;
import
com.liquidnet.service.adam.entity.AdamRealName
;
import
com.liquidnet.service.adam.entity.AdamRealName
;
import
com.liquidnet.service.adam.mapper.AdamRealNameMapper
;
import
com.liquidnet.service.adam.mapper.AdamRealNameMapper
;
import
com.liquidnet.service.adam.service.IAdamRealNameService
;
import
com.liquidnet.service.adam.service.IAdamRealNameService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
/**
/**
...
@@ -16,5 +23,20 @@ import org.springframework.stereotype.Service;
...
@@ -16,5 +23,20 @@ import org.springframework.stereotype.Service;
*/
*/
@Service
@Service
public
class
AdamRealNameServiceImpl
extends
ServiceImpl
<
AdamRealNameMapper
,
AdamRealName
>
implements
IAdamRealNameService
{
public
class
AdamRealNameServiceImpl
extends
ServiceImpl
<
AdamRealNameMapper
,
AdamRealName
>
implements
IAdamRealNameService
{
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
RedisUtil
redisUtil
;
@Override
public
AdamRealInfoVo
queryByUid
(
String
uid
)
{
AdamRealInfoVo
realInfoVo
=
(
AdamRealInfoVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_REAL_NAME
,
uid
);
if
(
null
==
realInfoVo
)
{
realInfoVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
).
and
(
"state"
).
is
(
1
)),
AdamRealInfoVo
.
class
,
AdamRealInfoVo
.
class
.
getSimpleName
());
redisUtil
.
hset
(
AdamRedisConst
.
INFO_REAL_NAME
,
uid
,
realInfoVo
);
}
return
realInfoVo
;
}
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamThirdPartyServiceImpl.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.vo.AdamThirdPartInfoVo
;
import
com.liquidnet.service.adam.entity.AdamThirdParty
;
import
com.liquidnet.service.adam.entity.AdamThirdParty
;
import
com.liquidnet.service.adam.mapper.AdamThirdPartyMapper
;
import
com.liquidnet.service.adam.mapper.AdamThirdPartyMapper
;
import
com.liquidnet.service.adam.service.IAdamThirdPartyService
;
import
com.liquidnet.service.adam.service.IAdamThirdPartyService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
/**
* <p>
* <p>
* 用户第三方账号信息 服务实现类
* 用户第三方账号信息 服务实现类
...
@@ -16,5 +25,31 @@ import org.springframework.stereotype.Service;
...
@@ -16,5 +25,31 @@ import org.springframework.stereotype.Service;
*/
*/
@Service
@Service
public
class
AdamThirdPartyServiceImpl
extends
ServiceImpl
<
AdamThirdPartyMapper
,
AdamThirdParty
>
implements
IAdamThirdPartyService
{
public
class
AdamThirdPartyServiceImpl
extends
ServiceImpl
<
AdamThirdPartyMapper
,
AdamThirdParty
>
implements
IAdamThirdPartyService
{
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
RedisUtil
redisUtil
;
@Override
public
List
<
AdamThirdPartInfoVo
>
queryByUid
(
String
uid
)
{
List
<
AdamThirdPartInfoVo
>
thirdPartInfoVo
=
(
List
<
AdamThirdPartInfoVo
>)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_THIRD_PARTY
,
uid
);
if
(
null
==
thirdPartInfoVo
)
{
thirdPartInfoVo
=
mongoTemplate
.
find
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
).
and
(
"state"
).
is
(
1
)),
AdamThirdPartInfoVo
.
class
,
AdamThirdPartInfoVo
.
class
.
getSimpleName
());
redisUtil
.
hset
(
AdamRedisConst
.
INFO_THIRD_PARTY
,
uid
,
thirdPartInfoVo
);
}
return
thirdPartInfoVo
;
}
@Override
public
AdamThirdPartInfoVo
queryByOpenId
(
String
openId
,
String
platform
)
{
AdamThirdPartInfoVo
thirdPartInfoVo
=
(
AdamThirdPartInfoVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_THIRD_PARTY
.
concat
(
platform
),
openId
);
if
(
null
==
thirdPartInfoVo
)
{
thirdPartInfoVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"openId"
).
is
(
openId
)
.
and
(
"platform"
).
is
(
platform
).
and
(
"state"
).
is
(
1
)),
AdamThirdPartInfoVo
.
class
,
AdamThirdPartInfoVo
.
class
.
getSimpleName
());
}
return
thirdPartInfoVo
;
}
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserInfoServiceImpl.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.common.mq.constant.MQConst
;
import
com.liquidnet.commons.lang.util.SqlMapping
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.vo.AdamUserInfoVo
;
import
com.liquidnet.service.adam.entity.AdamUserInfo
;
import
com.liquidnet.service.adam.entity.AdamUserInfo
;
import
com.liquidnet.service.adam.mapper.AdamUserInfoMapper
;
import
com.liquidnet.service.adam.mapper.AdamUserInfoMapper
;
import
com.liquidnet.service.adam.service.IAdamUserInfoService
;
import
com.liquidnet.service.adam.service.IAdamUserInfoService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.mongodb.BasicDBObject
;
import
com.mongodb.client.model.FindOneAndUpdateOptions
;
import
com.mongodb.client.model.ReturnDocument
;
import
org.bson.Document
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.convert.MongoConverter
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.util.Arrays
;
import
java.util.List
;
/**
/**
* <p>
* <p>
*
正在现场
用户信息 服务实现类
* 用户信息 服务实现类
* </p>
* </p>
*
*
* @author liquidnet
* @author liquidnet
...
@@ -16,5 +34,39 @@ import org.springframework.stereotype.Service;
...
@@ -16,5 +34,39 @@ import org.springframework.stereotype.Service;
*/
*/
@Service
@Service
public
class
AdamUserInfoServiceImpl
extends
ServiceImpl
<
AdamUserInfoMapper
,
AdamUserInfo
>
implements
IAdamUserInfoService
{
public
class
AdamUserInfoServiceImpl
extends
ServiceImpl
<
AdamUserInfoMapper
,
AdamUserInfo
>
implements
IAdamUserInfoService
{
@Autowired
MongoConverter
mongoConverter
;
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
RabbitTemplate
rabbitTemplate
;
@Autowired
RedisUtil
redisUtil
;
@Override
public
void
edit
(
AdamUserInfoVo
userInfoVo
)
{
boolean
isNotComplete
=
userInfoVo
.
getIsComplete
()
==
0
;
BasicDBObject
object
=
new
BasicDBObject
(
"$set"
,
mongoConverter
.
convertToMongoType
(
userInfoVo
));
Document
doc
=
mongoTemplate
.
getCollection
(
AdamUserInfoVo
.
class
.
getSimpleName
()).
findOneAndUpdate
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
userInfoVo
.
getUid
())).
getQueryObject
(),
object
,
new
FindOneAndUpdateOptions
().
returnDocument
(
ReturnDocument
.
AFTER
)
);
List
<
Object
>
paramList
=
Arrays
.
asList
(
userInfoVo
.
getNickName
(),
userInfoVo
.
getSex
(),
userInfoVo
.
getBirthday
(),
userInfoVo
.
getArea
(),
userInfoVo
.
getSignature
(),
userInfoVo
.
getAvatar
(),
userInfoVo
.
getBackground
(),
null
,
null
,
// qr_code, qr_pic
userInfoVo
.
getTagMe
(),
userInfoVo
.
getUid
()
);
rabbitTemplate
.
convertAndSend
(
MQConst
.
EXCHANGES_LIQUIDNET_SQL
,
MQConst
.
ROUTING_KEY_SQL
,
SqlMapping
.
get
(
isNotComplete
?
"adam_user_info.add"
:
"adam_user_info.edit"
,
paramList
.
toArray
()));
redisUtil
.
hset
(
AdamRedisConst
.
INFO_USER
,
userInfoVo
.
getUid
(),
userInfoVo
);
}
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserMemberServiceImpl.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.entity.AdamUserMember
;
import
com.liquidnet.service.adam.mapper.AdamMemberCodeMapper
;
import
com.liquidnet.service.adam.mapper.AdamUserMemberMapper
;
import
com.liquidnet.service.adam.service.IAdamUserMemberService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.convert.MongoConverter
;
import
org.springframework.stereotype.Service
;
import
java.util.regex.Pattern
;
@Slf4j
@Service
public
class
AdamUserMemberServiceImpl
extends
ServiceImpl
<
AdamUserMemberMapper
,
AdamUserMember
>
implements
IAdamUserMemberService
{
@Autowired
AdamUserMemberMapper
adamUserMemberMapper
;
@Autowired
AdamMemberCodeMapper
adamMemberCodeMapper
;
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
MongoConverter
mongoConverter
;
@Autowired
RabbitTemplate
rabbitTemplate
;
@Autowired
RedisUtil
redisUtil
;
@Override
public
void
createUserMemberInfo
(
String
memberId
)
{
// todo 创建用户
AdamUserMember
userMember
=
new
AdamUserMember
();
adamUserMemberMapper
.
insert
(
userMember
);
// 获取最大会员号
getMaxMemberNo
(
memberId
);
}
@Override
public
String
getMaxMemberNo
(
String
memberId
)
{
String
memberNoMaxKey
=
AdamRedisConst
.
MEMBER_MEMBER_NO_MAX_KEY
.
concat
(
memberId
);
Object
maxNumber
=
redisUtil
.
get
(
memberNoMaxKey
);
if
(
null
!=
maxNumber
)
{
maxNumber
=
maxNumber
.
toString
();
String
newNumber
=
String
.
valueOf
(
redisUtil
.
incr
(
memberNoMaxKey
,
1
));
Integer
newNumberInt
=
newNumber
.
length
()
-
1
;
String
pattern
=
"/([\\d])\\1{"
+
newNumberInt
+
"}/"
;
if
(
Pattern
.
matches
(
pattern
,
newNumber
))
{
// 不能是完全相同的数字
newNumber
=
String
.
valueOf
(
redisUtil
.
incr
(
memberNoMaxKey
,
1
));
}
return
newNumber
;
}
else
{
maxNumber
=
adamMemberCodeMapper
.
getMaxMemberNo
(
memberId
);
// 1000
if
(
null
!=
maxNumber
)
{
redisUtil
.
set
(
memberNoMaxKey
,
maxNumber
);
redisUtil
.
incr
(
memberNoMaxKey
,
1
);
}
return
redisUtil
.
get
(
memberNoMaxKey
).
toString
();
}
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/AdamUserServiceImpl.java
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.commons.lang.util.DateUtil
;
import
com.liquidnet.commons.lang.util.IDGenerator
;
import
com.liquidnet.service.adam.constant.AdamRedisConst
;
import
com.liquidnet.service.adam.dto.AdamThirdPartParam
;
import
com.liquidnet.service.adam.dto.vo.AdamThirdPartInfoVo
;
import
com.liquidnet.service.adam.dto.vo.AdamUserInfoVo
;
import
com.liquidnet.service.adam.entity.AdamUser
;
import
com.liquidnet.service.adam.entity.AdamUser
;
import
com.liquidnet.service.adam.mapper.AdamUserMapper
;
import
com.liquidnet.service.adam.mapper.AdamUserMapper
;
import
com.liquidnet.service.adam.service.IAdamUserService
;
import
com.liquidnet.service.adam.service.IAdamUserService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDateTime
;
import
java.util.Collection
;
import
java.util.Collections
;
/**
/**
* <p>
* <p>
* 用户 服务实现类
* 用户 服务实现类
...
@@ -16,5 +33,88 @@ import org.springframework.stereotype.Service;
...
@@ -16,5 +33,88 @@ import org.springframework.stereotype.Service;
*/
*/
@Service
@Service
public
class
AdamUserServiceImpl
extends
ServiceImpl
<
AdamUserMapper
,
AdamUser
>
implements
IAdamUserService
{
public
class
AdamUserServiceImpl
extends
ServiceImpl
<
AdamUserMapper
,
AdamUser
>
implements
IAdamUserService
{
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
RabbitTemplate
rabbitTemplate
;
@Autowired
RedisUtil
redisUtil
;
@Override
public
AdamUserInfoVo
queryByUid
(
String
uid
)
{
AdamUserInfoVo
userInfoVo
=
(
AdamUserInfoVo
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_USER
,
uid
);
if
(
null
==
userInfoVo
)
{
userInfoVo
=
mongoTemplate
.
findOne
(
Query
.
query
(
Criteria
.
where
(
"uid"
).
is
(
uid
).
and
(
"state"
).
is
(
1
)),
AdamUserInfoVo
.
class
,
AdamUserInfoVo
.
class
.
getSimpleName
());
redisUtil
.
hset
(
AdamRedisConst
.
INFO_USER
,
uid
,
userInfoVo
);
}
return
userInfoVo
;
}
@Override
public
String
queryUidByRedis
(
String
mobile
)
{
return
(
String
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_IDENTITY_MOBILE
,
mobile
);
// AdamUserInfoVo userInfoVo;
// if (null == (userInfoVo = (AdamUserInfoVo) redisUtil.hget(AdamRedisConst.INFO_MOBILES, mobile))) {
// userInfoVo = mongoTemplate.findOne(Query.query(Criteria.where("mobile").is(mobile).and("state").is(1)),
// AdamUserInfoVo.class, AdamUserInfoVo.class.getSimpleName());
//
// redisUtil.hset(AdamRedisConst.INFO_MOBILES, mobile, userInfoVo);
// }
// return userInfoVo;
}
@Override
public
String
queryUidByRedis
(
String
openId
,
String
platform
)
{
return
(
String
)
redisUtil
.
hget
(
AdamRedisConst
.
INFO_IDENTITY_THIRD_PARTY
,
platform
.
concat
(
openId
));
}
@Override
public
AdamUserInfoVo
register
(
String
mobile
)
{
AdamUserInfoVo
userInfoVo
=
AdamUserInfoVo
.
getNew
();
userInfoVo
.
setMobile
(
mobile
);
userInfoVo
.
setUid
(
IDGenerator
.
nextSnowId
()
+
""
);
userInfoVo
.
setIsComplete
(
0
);
userInfoVo
.
setState
(
1
);
userInfoVo
.
setCreateAt
(
DateUtil
.
format
(
LocalDateTime
.
now
(),
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
// boolean hset = redisUtil.hset(AdamRedisConst.INFO_MOBILES, userInfoVo.getMobile(), userInfoVo);
Collection
<
AdamUserInfoVo
>
vos
=
mongoTemplate
.
insert
(
Collections
.
singletonList
(
userInfoVo
),
AdamUserInfoVo
.
class
.
getSimpleName
());
redisUtil
.
hset
(
AdamRedisConst
.
INFO_IDENTITY_MOBILE
,
mobile
,
userInfoVo
.
getUid
());
return
userInfoVo
;
}
@Override
public
AdamUserInfoVo
register
(
AdamThirdPartParam
thirdPartParam
)
{
LocalDateTime
now
=
LocalDateTime
.
now
();
AdamUserInfoVo
userInfoVo
=
AdamUserInfoVo
.
getNew
();
userInfoVo
.
setMobile
(
thirdPartParam
.
getMobile
());
userInfoVo
.
setUid
(
IDGenerator
.
nextSnowId
()
+
""
);
userInfoVo
.
setCreateAt
(
DateUtil
.
format
(
now
,
DateUtil
.
Formatter
.
yyyyMMddHHmmss
));
AdamThirdPartInfoVo
thirdPartInfoVo
=
AdamThirdPartInfoVo
.
getNew
();
BeanUtils
.
copyProperties
(
thirdPartParam
,
thirdPartInfoVo
);
thirdPartInfoVo
.
setUid
(
userInfoVo
.
getUid
());
thirdPartInfoVo
.
setState
(
1
);
// 1-绑定
// boolean userInfoSetRst = redisUtil.hset(AdamRedisConst.INFO_MOBILES, thirdPartParam.getMobile(), userInfoVo);
// boolean thirdPartSetRst = redisUtil.hset(AdamRedisConst.INFO_THIRD_PARTY.concat(thirdPartInfoVo.getPlatform()), thirdPartInfoVo.getOpenId(), thirdPartInfoVo);
Collection
<
AdamUserInfoVo
>
userInfoVos
=
mongoTemplate
.
insert
(
Collections
.
singletonList
(
userInfoVo
),
AdamUserInfoVo
.
class
);
Collection
<
AdamThirdPartInfoVo
>
thirdPartInfoVos
=
mongoTemplate
.
insert
(
Collections
.
singletonList
(
thirdPartInfoVo
),
AdamThirdPartInfoVo
.
class
);
redisUtil
.
hset
(
AdamRedisConst
.
INFO_IDENTITY_THIRD_PARTY
,
thirdPartParam
.
getPlatform
().
concat
(
thirdPartParam
.
getOpenId
()),
userInfoVo
.
getUid
());
// List<Object> paramList = Arrays.asList();
// rabbitTemplate.convertAndSend(MQConst.EXCHANGES_LIQUIDNET_SQL, MQConst.ROUTING_KEY_SQL,
// SqlMapping.get("adam_user.add", paramList.toArray()));
return
userInfoVo
;
}
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/admin/AdamMemberCodeAdminServiceImpl.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
service
.
adam
.
service
.
impl
.
admin
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.liquidnet.common.cache.redis.util.RedisUtil
;
import
com.liquidnet.service.adam.dto.AdamMemberCodeParam
;
import
com.liquidnet.service.adam.dto.vo.AdamMemberCodeVo
;
import
com.liquidnet.service.adam.entity.AdamMemberCode
;
import
com.liquidnet.service.adam.mapper.AdamMemberCodeMapper
;
import
com.liquidnet.service.adam.service.admin.IAdamMemberCodeAdminService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.rabbit.core.RabbitTemplate
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.convert.MongoConverter
;
import
org.springframework.stereotype.Service
;
@Slf4j
@Service
public
class
AdamMemberCodeAdminServiceImpl
extends
ServiceImpl
<
AdamMemberCodeMapper
,
AdamMemberCode
>
implements
IAdamMemberCodeAdminService
{
@Autowired
AdamMemberCodeMapper
adamMemberCodeMapper
;
@Autowired
MongoTemplate
mongoTemplate
;
@Autowired
MongoConverter
mongoConverter
;
@Autowired
RabbitTemplate
rabbitTemplate
;
@Autowired
RedisUtil
redisUtil
;
@Override
public
void
createGiftCode
(
AdamMemberCodeParam
param
)
{
AdamMemberCode
adamMemberCode
=
(
new
AdamMemberCodeVo
()).
setCodeParam
(
param
,
0
);
adamMemberCodeMapper
.
insert
(
adamMemberCode
);
}
}
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/java/com/liquidnet/service/adam/service/impl/admin/AdamMemberServiceAdminImpl.java
View file @
d733d0c6
...
@@ -25,6 +25,7 @@ import org.springframework.data.mongodb.core.query.Query;
...
@@ -25,6 +25,7 @@ import org.springframework.data.mongodb.core.query.Query;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.CollectionUtils
;
import
java.time.LocalDateTime
;
import
java.util.*
;
import
java.util.*
;
@Slf4j
@Slf4j
...
@@ -66,6 +67,8 @@ public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, Ad
...
@@ -66,6 +67,8 @@ public class AdamMemberServiceAdminImpl extends ServiceImpl<AdamMemberMapper, Ad
BeanUtils
.
copyProperties
(
info
,
adamMember
);
BeanUtils
.
copyProperties
(
info
,
adamMember
);
adamMember
.
setMemberId
(
IDGenerator
.
nextSnowId
().
toString
());
adamMember
.
setMemberId
(
IDGenerator
.
nextSnowId
().
toString
());
adamMember
.
setStartNo
(
1000
);
adamMember
.
setStartNo
(
1000
);
adamMember
.
setCreatedAt
(
LocalDateTime
.
now
());
adamMember
.
setUpdatedAt
(
LocalDateTime
.
now
());
adamMemberMapper
.
insert
(
adamMember
);
adamMemberMapper
.
insert
(
adamMember
);
AdamMemberVo
amv
=
new
AdamMemberVo
();
AdamMemberVo
amv
=
new
AdamMemberVo
();
...
...
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/resources/sqlmap/adam_enters.properties
0 → 100644
View file @
d733d0c6
adam_enters.add
=
INSERT INTO ln_adam.adam_enters (enters_id, `uid`, `type`,`name`, mobile, id_card, is_default, `state`, created_at, updated_at, deleted_at, `comment`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)
adam_enters.edit
=
UPDATE ln_adam.adam_enters SET `type`=?, `name`=?, mobile=?, id_card=?, is_default=?, `state`=?, updated_at=? where enters_id=?
adam_enters.update.is_default
=
UPDATE ln_adam.adam_enters set is_default=?, updated_at=? where enters_id=?
adam_enters.remove
=
UPDATE ln_adam.adam_enters SET `state`=?, updated_at=?, deleted_at=? where enters_id=?
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/resources/sqlmap/adam_third_party.properties
0 → 100644
View file @
d733d0c6
adam_third_party.add
=
insert into ln_adam.adam_third_party (`uid`, open_id, avatar, nick_name, platform, `state`, created_at, updated_at, `comment`) values (?,?,?,?,?,?,?,?,?)
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/resources/sqlmap/adam_user.properties
0 → 100644
View file @
d733d0c6
adam_user.add
=
insert into ln_adam.adam_user (`uid`, mobile, passwd, pay_code, `state`, created_at, updated_at, closed_at, `comment`) values (?,?,?,?,?,?,?,?,?)
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/resources/sqlmap/adam_user_info.properties
0 → 100644
View file @
d733d0c6
adam_user_info.add
=
insert into adam_user_info (nick_name, sex, birthday, area, signature, avatar, background, qr_code, qr_pic, tag_me, `uid`) VALUES (?,?,?,?,?,?,?,?,?,?,?)
adam_user_info.edit
=
UPDATE ln_adam.adam_user_info SET nick_name=?, sex=?, birthday=?, area=?, signature=?, avatar=?, background=?, qr_code=?, qr_pic=?, tag_me=? WHERE uid=?
\ No newline at end of file
liquidnet-bus-service/liquidnet-service-adam/liquidnet-service-adam-impl/src/main/resources/sqlmap/enters.properties
deleted
100644 → 0
View file @
ccebce59
adam_enters.add
=
INSERT INTO adam_enters (enters_id, `uid`, `type`,`name`, mobile, id_card, is_default, `state`, created_at, updated_at, deleted_at, `comment`) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)
adam_enters.edit
=
UPDATE adam_enters SET `type`=?, `name`=?, mobile=?, id_card=?, is_default=?, `state`=?, updated_at=? where enters_id=?
adam_enters.update.is_default
=
UPDATE adam_enters set is_default=?, updated_at=? where enters_id=?
adam_enters.remove
=
UPDATE adam_enters SET `state`=?, updated_at=?, deleted_at=? where enters_id=?
\ No newline at end of file
liquidnet-bus-service/pom.xml
View file @
d733d0c6
...
@@ -233,6 +233,17 @@
...
@@ -233,6 +233,17 @@
<artifactId>
dynamic-datasource-spring-boot-starter
</artifactId>
<artifactId>
dynamic-datasource-spring-boot-starter
</artifactId>
<version>
2.5.3
</version>
<version>
2.5.3
</version>
</dependency>
</dependency>
<dependency>
<groupId>
com.aliyun
</groupId>
<artifactId>
aliyun-java-sdk-core
</artifactId>
<version>
4.5.2
</version>
</dependency>
<dependency>
<groupId>
com.aliyun
</groupId>
<artifactId>
aliyun-java-sdk-dypnsapi
</artifactId>
<version>
1.1.3
</version>
</dependency>
</dependencies>
</dependencies>
</dependencyManagement>
</dependencyManagement>
...
...
liquidnet-bus-support/liquidnet-support-config/src/main/resources/application-dev.yml
View file @
d733d0c6
...
@@ -18,7 +18,8 @@ liquidnet:
...
@@ -18,7 +18,8 @@ liquidnet:
username
:
admin
username
:
admin
password
:
admin
password
:
admin
config
:
config
:
location
:
/Users/color/company_project/java/liquidnet-bus-v1-1/liquidnet-bus-config/liquidnet-config
# location: /Users/color/company_project/java/liquidnet-bus-v1-1/liquidnet-bus-config/liquidnet-config
location
:
/app/support-config
# end-dev-这里是配置信息基本值
# end-dev-这里是配置信息基本值
spring
:
spring
:
...
...
liquidnet-bus-support/liquidnet-support-zuul/src/main/java/com/liquidnet/support/zuul/filter/GlobalAuthFilter.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
support
.
zuul
.
filter
;
import
com.liquidnet.commons.lang.util.JsonUtils
;
import
com.liquidnet.commons.lang.core.JwtValidator
;
import
com.liquidnet.service.ResponseDto
;
import
com.netflix.zuul.ZuulFilter
;
import
com.netflix.zuul.context.RequestContext
;
import
io.jsonwebtoken.Claims
;
import
io.jsonwebtoken.ExpiredJwtException
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
java.nio.charset.StandardCharsets
;
import
java.util.List
;
@Slf4j
@Component
public
class
GlobalAuthFilter
extends
ZuulFilter
{
@Value
(
"#{'${global.exclude.url}'.split(', ')}"
)
private
List
<
String
>
excludeUrls
;
@Autowired
JwtValidator
jwtValidator
;
@Override
public
String
filterType
()
{
return
"pre"
;
}
@Override
public
int
filterOrder
()
{
return
2
;
}
@Override
public
boolean
shouldFilter
()
{
RequestContext
ctx
=
RequestContext
.
getCurrentContext
();
String
requestURI
=
ctx
.
getRequest
().
getRequestURI
();
return
!
excludeUrls
.
contains
(
requestURI
);
}
@Override
public
Object
run
()
{
RequestContext
requestContext
=
RequestContext
.
getCurrentContext
();
HttpServletRequest
httpServletRequest
=
requestContext
.
getRequest
();
String
token
=
httpServletRequest
.
getHeader
(
"authorization"
);
Claims
claims
;
try
{
log
.
info
(
"token:{}"
,
token
);
if
(
StringUtils
.
isBlank
(
token
))
{
requestContext
.
setSendZuulResponse
(
false
);
ResponseDto
<
Object
>
responseDto
=
ResponseDto
.
failure
(
"401"
,
"非法TOKEN"
);
requestContext
.
setResponseBody
(
JsonUtils
.
toJson
(
responseDto
));
HttpServletResponse
response
=
requestContext
.
getResponse
();
response
.
setCharacterEncoding
(
StandardCharsets
.
UTF_8
.
name
());
response
.
setContentType
(
"application/json;charset=utf-8"
);
}
else
{
token
=
token
.
replace
(
"Bearer "
,
""
);
// 解析没有异常则表示token验证通过,如有必要可根据自身需求增加验证逻辑
claims
=
jwtValidator
.
parse
(
token
);
log
.
info
(
"claims:{}"
,
JsonUtils
.
toJson
(
claims
));
// claims = jwtUtil.parseJwtToken(token);
// 对请求进行路由
requestContext
.
setSendZuulResponse
(
true
);
// 请求头加入uid,传给具体的微服务
requestContext
.
addZuulRequestHeader
(
"uid"
,
claims
.
get
(
"uid"
).
toString
());
}
}
catch
(
ExpiredJwtException
expiredJwtEx
)
{
log
.
error
(
"TOKEN已过期:{}"
,
token
);
// 不对请求进行路由
requestContext
.
setSendZuulResponse
(
false
);
ResponseDto
<
Object
>
responseDto
=
ResponseDto
.
failure
(
"402"
,
"TOKEN已过期"
);
requestContext
.
setResponseBody
(
JsonUtils
.
toJson
(
responseDto
));
HttpServletResponse
response
=
requestContext
.
getResponse
();
response
.
setCharacterEncoding
(
StandardCharsets
.
UTF_8
.
name
());
response
.
setContentType
(
"application/json;charset=utf-8"
);
}
catch
(
Exception
ex
)
{
log
.
error
(
"TOKEN验证失败:{}"
,
token
);
// 不对请求进行路由
requestContext
.
setSendZuulResponse
(
false
);
ResponseDto
<
Object
>
responseDto
=
ResponseDto
.
failure
(
"401"
,
"非法TOKEN"
);
requestContext
.
setResponseBody
(
JsonUtils
.
toJson
(
responseDto
));
HttpServletResponse
response
=
requestContext
.
getResponse
();
response
.
setCharacterEncoding
(
StandardCharsets
.
UTF_8
.
name
());
response
.
setContentType
(
"application/json;charset=utf-8"
);
}
return
null
;
}
}
liquidnet-bus-support/liquidnet-support-zuul/src/main/java/com/liquidnet/support/zuul/filter/GlobalLoginFilter.java
0 → 100644
View file @
d733d0c6
package
com
.
liquidnet
.
support
.
zuul
.
filter
;
import
com.liquidnet.service.ResponseDto
;
import
com.liquidnet.service.adam.dto.vo.AdamLoginInfoVo
;
import
com.liquidnet.service.feign.adam.api.FeignAdamLoginClient
;
import
com.liquidnet.support.zuul.util.PathMatchUtil
;
import
com.netflix.zuul.ZuulFilter
;
import
com.netflix.zuul.context.RequestContext
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
@Slf4j
@Component
public
class
GlobalLoginFilter
extends
ZuulFilter
{
@Value
(
"#{'${global.login.url}'.split(', ')}"
)
private
List
<
String
>
loginUrls
;
@Autowired
FeignAdamLoginClient
feignAdamLoginClient
;
@Override
public
String
filterType
()
{
return
"pre"
;
}
@Override
public
int
filterOrder
()
{
return
1
;
}
@Override
public
boolean
shouldFilter
()
{
RequestContext
ctx
=
RequestContext
.
getCurrentContext
();
String
requestURI
=
ctx
.
getRequest
().
getRequestURI
();
for
(
String
url
:
loginUrls
)
{
if
(
PathMatchUtil
.
isPathMatch
(
url
,
requestURI
))
{
return
true
;
}
}
return
false
;
}
@Override
public
Object
run
()
{
RequestContext
requestContext
=
RequestContext
.
getCurrentContext
();
HttpServletRequest
servletRequest
=
requestContext
.
getRequest
();
String
token
=
servletRequest
.
getHeader
(
"authorization"
);
if
(
StringUtils
.
isNotBlank
(
token
))
{
requestContext
.
addZuulResponseHeader
(
"authorization"
,
token
);
}
ResponseDto
<
AdamLoginInfoVo
>
responseDto
=
null
;
switch
(
servletRequest
.
getRequestURI
())
{
case
"/adam/login/sms"
:
responseDto
=
feignAdamLoginClient
.
loginBySms
(
servletRequest
.
getParameter
(
"mobile"
),
servletRequest
.
getParameter
(
"code"
));
break
;
case
"/adam/login/mobile"
:
responseDto
=
feignAdamLoginClient
.
loginByMobile
(
servletRequest
.
getParameter
(
"accessToken"
));
break
;
case
"/adam/login/tpa"
:
break
;
default
:
log
.
warn
(
"###无效的登录链接:{}"
,
servletRequest
.
getRequestURI
());
break
;
}
return
null
;
}
}
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