Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
P
pica-cloud-account
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
1
合并请求
1
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
Close sidebar
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
com.pica.cloud.account
pica-cloud-account
提交
cdf51044
提交
cdf51044
编写于
2月 26, 2020
作者:
fengyuan.wan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
一键登录 日志记录代码
上级
f54f325f
流水线
#22061
已失败 于阶段
in 0 second
变更
10
流水线
1
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
72 行增加
和
23 行删除
+72
-23
LoginController.java
...ud/account/account/server/controller/LoginController.java
+2
-2
LogLoginEntity.java
...a/cloud/account/account/server/entity/LogLoginEntity.java
+10
-0
LogLoginOnekey.java
...a/cloud/account/account/server/entity/LogLoginOnekey.java
+6
-6
QueryMobileEntity.java
...loud/account/account/server/entity/QueryMobileEntity.java
+10
-0
AccountLogTask.java
...pica/cloud/account/account/server/log/AccountLogTask.java
+11
-0
OneClickProcessor.java
...cloud/account/account/server/model/OneClickProcessor.java
+3
-3
RegisterService.java
...cloud/account/account/server/service/RegisterService.java
+3
-0
LoginServiceImpl.java
...account/account/server/service/impl/LoginServiceImpl.java
+9
-2
RegisterServiceImpl.java
...ount/account/server/service/impl/RegisterServiceImpl.java
+8
-0
LogLoginOnekeyMapper.xml
server/src/main/resources/mybatis/LogLoginOnekeyMapper.xml
+10
-10
未找到文件。
server/src/main/java/com/pica/cloud/account/account/server/controller/LoginController.java
浏览文件 @
cdf51044
...
...
@@ -238,8 +238,8 @@ public class LoginController extends AccountBaseController {
@ApiOperation
(
value
=
"app端手机号码一键登录"
)
@PostMapping
(
"/login/one-click"
)
public
PicaResponse
<
LoginResult
>
oneClickLogin
(
@RequestBody
EncryptEntity
entity
)
throws
Exception
{
OneClickLoginReq
req
=
CryptoUtil
.
decrypt
(
entity
,
OneClickLoginReq
.
class
);
public
PicaResponse
<
LoginResult
>
oneClickLogin
(
@RequestBody
OneClickLoginReq
req
)
throws
Exception
{
//
OneClickLoginReq req = CryptoUtil.decrypt(entity, OneClickLoginReq.class);
req
.
setProductType
(
super
.
getProductType
());
req
.
setSourceType
(
super
.
getSourceType
());
req
.
setLoginIp
(
super
.
getIpAddr
());
...
...
server/src/main/java/com/pica/cloud/account/account/server/entity/LogLoginEntity.java
浏览文件 @
cdf51044
...
...
@@ -38,6 +38,16 @@ public class LogLoginEntity extends AccountLogEntity {
private
int
deleteFlag
;
private
QueryMobileEntity
queryMobileEntity
;
public
QueryMobileEntity
getQueryMobileEntity
()
{
return
queryMobileEntity
;
}
public
void
setQueryMobileEntity
(
QueryMobileEntity
queryMobileEntity
)
{
this
.
queryMobileEntity
=
queryMobileEntity
;
}
public
Integer
getId
()
{
return
id
;
}
...
...
server/src/main/java/com/pica/cloud/account/account/server/entity/LogLoginOnekey.java
浏览文件 @
cdf51044
...
...
@@ -7,13 +7,13 @@ public class LogLoginOnekey {
private
Integer
logLoginId
;
private
Byte
deviceType
;
private
Integer
deviceType
;
private
String
mobile
;
private
String
tradeNo
;
private
Byte
fanqizha
;
private
Integer
fanqizha
;
private
String
tag
;
...
...
@@ -45,11 +45,11 @@ public class LogLoginOnekey {
this
.
logLoginId
=
logLoginId
;
}
public
Byte
getDeviceType
()
{
public
Integer
getDeviceType
()
{
return
deviceType
;
}
public
void
setDeviceType
(
Byte
deviceType
)
{
public
void
setDeviceType
(
Integer
deviceType
)
{
this
.
deviceType
=
deviceType
;
}
...
...
@@ -69,11 +69,11 @@ public class LogLoginOnekey {
this
.
tradeNo
=
tradeNo
==
null
?
null
:
tradeNo
.
trim
();
}
public
Byte
getFanqizha
()
{
public
Integer
getFanqizha
()
{
return
fanqizha
;
}
public
void
setFanqizha
(
Byte
fanqizha
)
{
public
void
setFanqizha
(
Integer
fanqizha
)
{
this
.
fanqizha
=
fanqizha
;
}
...
...
server/src/main/java/com/pica/cloud/account/account/server/entity/QueryMobileEntity.java
浏览文件 @
cdf51044
...
...
@@ -12,6 +12,15 @@ public class QueryMobileEntity {
private
Integer
chargeStatus
;
private
MobileDataEntity
data
;
private
String
mobile
;
private
Integer
sourceType
;
public
Integer
getSourceType
()
{
return
sourceType
;
}
public
void
setSourceType
(
Integer
sourceType
)
{
this
.
sourceType
=
sourceType
;
}
public
String
getMobile
()
{
return
mobile
;
...
...
@@ -61,6 +70,7 @@ public class QueryMobileEntity {
", chargeStatus="
+
chargeStatus
+
", data="
+
data
+
", mobile='"
+
mobile
+
'\''
+
", sourceType="
+
sourceType
+
'}'
;
}
}
server/src/main/java/com/pica/cloud/account/account/server/log/AccountLogTask.java
浏览文件 @
cdf51044
...
...
@@ -4,11 +4,13 @@ package com.pica.cloud.account.account.server.log;
import
com.pica.cloud.account.account.server.entity.LogLoginEntity
;
import
com.pica.cloud.account.account.server.entity.LogPWDModifyEntity
;
import
com.pica.cloud.account.account.server.entity.LogUserInfoEntity
;
import
com.pica.cloud.account.account.server.entity.QueryMobileEntity
;
import
com.pica.cloud.account.account.server.enums.AccountTypeEnum
;
import
com.pica.cloud.account.account.server.mapper.LogLoginMapper
;
import
com.pica.cloud.account.account.server.mapper.LogPWDModifyMapper
;
import
com.pica.cloud.account.account.server.mapper.LogUserInfoMapper
;
import
com.pica.cloud.account.account.server.model.OneClickProcessor
;
import
com.pica.cloud.account.account.server.util.BeanUtil
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
...
...
@@ -28,6 +30,8 @@ public class AccountLogTask implements Runnable {
private
LogUserInfoMapper
logUserInfoMapper
;
private
OneClickProcessor
oneClickProcessor
;
/**
* 日志类型
*/
...
...
@@ -44,6 +48,8 @@ public class AccountLogTask implements Runnable {
loginLogMapper
=
BeanUtil
.
getBean
(
LogLoginMapper
.
class
);
logPWDModifyMapper
=
BeanUtil
.
getBean
(
LogPWDModifyMapper
.
class
);
logUserInfoMapper
=
BeanUtil
.
getBean
(
LogUserInfoMapper
.
class
);
oneClickProcessor
=
BeanUtil
.
getBean
(
OneClickProcessor
.
class
);
}
@Override
...
...
@@ -53,6 +59,11 @@ public class AccountLogTask implements Runnable {
if
(
type
==
AccountTypeEnum
.
LOG_TYPE_LOGIN
.
getCode
())
{
logger
.
info
(
"login record......"
);
loginLogMapper
.
insert
((
LogLoginEntity
)
picaLogEntity
);
QueryMobileEntity
queryMobileEntity
=
((
LogLoginEntity
)
picaLogEntity
).
getQueryMobileEntity
();
if
(
queryMobileEntity
!=
null
){
// 记录一键登录日志
oneClickProcessor
.
savelogLoginOnekey
(
queryMobileEntity
,((
LogLoginEntity
)
picaLogEntity
).
getId
());
}
}
else
if
(
type
==
AccountTypeEnum
.
LOG_TYPE_PASSWORD
.
getCode
())
{
logPWDModifyMapper
.
insert
((
LogPWDModifyEntity
)
picaLogEntity
);
}
else
if
(
type
==
AccountTypeEnum
.
LOG_TYPE_USER_INFO
.
getCode
())
{
...
...
server/src/main/java/com/pica/cloud/account/account/server/model/OneClickProcessor.java
浏览文件 @
cdf51044
...
...
@@ -99,11 +99,11 @@ public class OneClickProcessor {
}
@Async
public
void
savelogLoginOnekey
(
QueryMobileEntity
queryMobileEntity
,
Integer
type
,
Integer
logLoginId
)
{
public
void
savelogLoginOnekey
(
QueryMobileEntity
queryMobileEntity
,
Integer
logLoginId
)
{
LogLoginOnekey
l
=
new
LogLoginOnekey
();
l
.
setDeviceType
(
type
.
byteValu
e
());
l
.
setDeviceType
(
queryMobileEntity
.
getSourceTyp
e
());
MobileDataEntity
data
=
queryMobileEntity
.
getData
();
l
.
setFanqizha
(
data
.
getFanqizha
()
.
byteValue
()
);
l
.
setFanqizha
(
data
.
getFanqizha
());
l
.
setTradeNo
(
data
.
getTradeNo
());
l
.
setMobile
(
AESUtil
.
encryptV0
(
data
.
getMobileName
()));
l
.
setLogLoginId
(
logLoginId
);
...
...
server/src/main/java/com/pica/cloud/account/account/server/service/RegisterService.java
浏览文件 @
cdf51044
package
com
.
pica
.
cloud
.
account
.
account
.
server
.
service
;
import
com.pica.cloud.account.account.server.entity.LoginResult
;
import
com.pica.cloud.account.account.server.entity.QueryMobileEntity
;
import
com.pica.cloud.account.account.server.req.BaseRequest
;
import
com.pica.cloud.account.account.common.req.OCINRequest
;
import
com.pica.cloud.foundation.entity.PicaResponse
;
...
...
@@ -25,4 +26,6 @@ public interface RegisterService {
void
ocinRegister
(
OCINRequest
request
);
LoginResult
register
(
BaseRequest
baseRequest
,
QueryMobileEntity
queryMobileEntity
);
}
server/src/main/java/com/pica/cloud/account/account/server/service/impl/LoginServiceImpl.java
浏览文件 @
cdf51044
...
...
@@ -258,6 +258,10 @@ public class LoginServiceImpl implements LoginService {
* @param baseRequest
*/
private
LoginResult
processLogin
(
BaseRequest
baseRequest
,
Integer
acctId
,
Integer
loginType
)
{
return
processLogin
(
baseRequest
,
acctId
,
loginType
,
null
);
}
private
LoginResult
processLogin
(
BaseRequest
baseRequest
,
Integer
acctId
,
Integer
loginType
,
QueryMobileEntity
queryMobileEntity
)
{
Date
currentTime
=
new
Date
();
Long
userId
=
accountUtils
.
getUserIdByAcctId
(
baseRequest
.
getProductType
(),
acctId
);
Account
account
=
new
Account
();
...
...
@@ -280,6 +284,9 @@ public class LoginServiceImpl implements LoginService {
//记录登录日志
LogLoginEntity
entity
=
AccountLogEntityUtils
.
getLogLoginEntity
(
acctId
,
baseRequest
.
getProductType
(),
baseRequest
.
getSourceType
(),
loginType
,
baseRequest
.
getLoginIp
(),
AccountTypeEnum
.
LOGIN_STATUS_SUCCESS
.
getCode
(),
AccountTypeEnum
.
LOG_TYPE_LOGIN
.
getCode
());
if
(
queryMobileEntity
!=
null
){
entity
.
setQueryMobileEntity
(
queryMobileEntity
);
}
picaLogUtils
.
info
(
entity
);
result
.
setLogLoginId
(
entity
.
getId
());
return
result
;
...
...
@@ -493,6 +500,7 @@ public class LoginServiceImpl implements LoginService {
if
(
queryMobileEntity
==
null
||
StringUtils
.
isBlank
(
queryMobileEntity
.
getMobile
())
||
!
ValidateUtils
.
isMobile
(
queryMobileEntity
.
getMobile
()))
{
throw
new
PicaException
(
PicaResultCode
.
INTERFACE_INVOKE_EXCEPTION
.
code
(),
"获取手机号失败!"
);
}
queryMobileEntity
.
setSourceType
(
req
.
getSourceType
());
AccountInfoEntity
accountInfoEntity
=
accountInfoDetailMapper
.
selectByMobile
(
AESUtil
.
encryptV0
(
queryMobileEntity
.
getMobile
()));
BaseRequest
baseRequest
=
new
BaseRequest
();
baseRequest
.
setMobile
(
queryMobileEntity
.
getMobile
());
...
...
@@ -505,9 +513,8 @@ public class LoginServiceImpl implements LoginService {
result
=
registerService
.
register
(
baseRequest
);
}
else
{
//登录功能
result
=
processLogin
(
baseRequest
,
accountInfoEntity
.
getId
(),
AccountTypeEnum
.
LOGIN_CODE
.
getCode
());
result
=
processLogin
(
baseRequest
,
accountInfoEntity
.
getId
(),
AccountTypeEnum
.
LOGIN_CODE
.
getCode
()
,
queryMobileEntity
);
}
oneClickProcessor
.
savelogLoginOnekey
(
queryMobileEntity
,
req
.
getSourceType
(),
result
.
getLogLoginId
());
return
result
;
}
...
...
server/src/main/java/com/pica/cloud/account/account/server/service/impl/RegisterServiceImpl.java
浏览文件 @
cdf51044
...
...
@@ -80,6 +80,11 @@ public class RegisterServiceImpl implements RegisterService {
@Transactional
@Override
public
LoginResult
register
(
BaseRequest
baseRequest
)
{
return
register
(
baseRequest
,
null
);
}
@Override
public
LoginResult
register
(
BaseRequest
baseRequest
,
QueryMobileEntity
queryMobileEntity
)
{
String
mobile
=
baseRequest
.
getMobile
();
//对注册接口做幂等性处理:注册成功,删除缓存,注册失败提示用户
String
exist
=
redisClient
.
get
(
REPEAT_REGISTER_PREFIX
+
mobile
);
...
...
@@ -152,6 +157,9 @@ public class RegisterServiceImpl implements RegisterService {
LogLoginEntity
entity
=
AccountLogEntityUtils
.
getLogLoginEntity
(
acctId
,
productType
,
baseRequest
.
getSourceType
(),
AccountTypeEnum
.
LOGIN_REGISTER
.
getCode
(),
baseRequest
.
getLoginIp
(),
AccountTypeEnum
.
LOGIN_STATUS_SUCCESS
.
getCode
(),
AccountTypeEnum
.
LOG_TYPE_LOGIN
.
getCode
());
if
(
queryMobileEntity
!=
null
){
entity
.
setQueryMobileEntity
(
queryMobileEntity
);
}
picaLogUtils
.
info
(
entity
);
result
.
setLogLoginId
(
entity
.
getId
());
processAgreement
(
userId
);
...
...
server/src/main/resources/mybatis/LogLoginOnekeyMapper.xml
浏览文件 @
cdf51044
...
...
@@ -4,10 +4,10 @@
<resultMap
id=
"BaseResultMap"
type=
"com.pica.cloud.account.account.server.entity.LogLoginOnekey"
>
<id
column=
"id"
property=
"id"
jdbcType=
"INTEGER"
/>
<result
column=
"log_login_id"
property=
"logLoginId"
jdbcType=
"INTEGER"
/>
<result
column=
"device_type"
property=
"deviceType"
jdbcType=
"
TINYINT
"
/>
<result
column=
"device_type"
property=
"deviceType"
jdbcType=
"
INTEGER
"
/>
<result
column=
"mobile"
property=
"mobile"
jdbcType=
"VARCHAR"
/>
<result
column=
"trade_no"
property=
"tradeNo"
jdbcType=
"VARCHAR"
/>
<result
column=
"fanqizha"
property=
"fanqizha"
jdbcType=
"
TINYINT
"
/>
<result
column=
"fanqizha"
property=
"fanqizha"
jdbcType=
"
INTEGER
"
/>
<result
column=
"tag"
property=
"tag"
jdbcType=
"VARCHAR"
/>
<result
column=
"info"
property=
"info"
jdbcType=
"VARCHAR"
/>
<result
column=
"delete_flag"
property=
"deleteFlag"
jdbcType=
"INTEGER"
/>
...
...
@@ -36,8 +36,8 @@
tag, info, delete_flag,
create_id, create_time, modify_id,
modify_time)
values (#{id,jdbcType=INTEGER}, #{logLoginId,jdbcType=INTEGER}, #{deviceType,jdbcType=
TINYINT
},
#{mobile,jdbcType=VARCHAR}, #{tradeNo,jdbcType=VARCHAR}, #{fanqizha,jdbcType=
TINYINT
},
values (#{id,jdbcType=INTEGER}, #{logLoginId,jdbcType=INTEGER}, #{deviceType,jdbcType=
INTEGER
},
#{mobile,jdbcType=VARCHAR}, #{tradeNo,jdbcType=VARCHAR}, #{fanqizha,jdbcType=
INTEGER
},
#{tag,jdbcType=VARCHAR}, #{info,jdbcType=VARCHAR}, #{deleteFlag,jdbcType=INTEGER},
#{createId,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{modifyId,jdbcType=INTEGER},
#{modifyTime,jdbcType=TIMESTAMP})
...
...
@@ -93,7 +93,7 @@
#{logLoginId,jdbcType=INTEGER},
</if>
<if
test=
"deviceType != null"
>
#{deviceType,jdbcType=
TINYINT
},
#{deviceType,jdbcType=
INTEGER
},
</if>
<if
test=
"mobile != null"
>
#{mobile,jdbcType=VARCHAR},
...
...
@@ -102,7 +102,7 @@
#{tradeNo,jdbcType=VARCHAR},
</if>
<if
test=
"fanqizha != null"
>
#{fanqizha,jdbcType=
TINYINT
},
#{fanqizha,jdbcType=
INTEGER
},
</if>
<if
test=
"tag != null"
>
#{tag,jdbcType=VARCHAR},
...
...
@@ -134,7 +134,7 @@
log_login_id = #{logLoginId,jdbcType=INTEGER},
</if>
<if
test=
"deviceType != null"
>
device_type = #{deviceType,jdbcType=
TINYINT
},
device_type = #{deviceType,jdbcType=
INTEGER
},
</if>
<if
test=
"mobile != null"
>
mobile = #{mobile,jdbcType=VARCHAR},
...
...
@@ -143,7 +143,7 @@
trade_no = #{tradeNo,jdbcType=VARCHAR},
</if>
<if
test=
"fanqizha != null"
>
fanqizha = #{fanqizha,jdbcType=
TINYINT
},
fanqizha = #{fanqizha,jdbcType=
INTEGER
},
</if>
<if
test=
"tag != null"
>
tag = #{tag,jdbcType=VARCHAR},
...
...
@@ -172,10 +172,10 @@
<update
id=
"updateByPrimaryKey"
parameterType=
"com.pica.cloud.account.account.server.entity.LogLoginOnekey"
>
update log_login_onekey
set log_login_id = #{logLoginId,jdbcType=INTEGER},
device_type = #{deviceType,jdbcType=
TINYINT
},
device_type = #{deviceType,jdbcType=
INTEGER
},
mobile = #{mobile,jdbcType=VARCHAR},
trade_no = #{tradeNo,jdbcType=VARCHAR},
fanqizha = #{fanqizha,jdbcType=
TINYINT
},
fanqizha = #{fanqizha,jdbcType=
INTEGER
},
tag = #{tag,jdbcType=VARCHAR},
info = #{info,jdbcType=VARCHAR},
delete_flag = #{deleteFlag,jdbcType=INTEGER},
...
...
写
预览
Markdown
格式
0%
请重试
or
附加一个文件
附加文件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录