Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
X
xyqb-user2
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
head_group
xyqb-user2
Commits
46092b41
Commit
46092b41
authored
Apr 26, 2017
by
minminyan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改账户登录的错误提示,统一改成 账户错误或者密码错误
parent
81f28e1c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
171 additions
and
166 deletions
+171
-166
UserConstant.java
src/main/java/cn/quantgroup/xyqb/constant/UserConstant.java
+5
-0
AppController.java
...antgroup/xyqb/controller/external/user/AppController.java
+166
-166
No files found.
src/main/java/cn/quantgroup/xyqb/constant/UserConstant.java
0 → 100644
View file @
46092b41
package
cn
.
quantgroup
.
xyqb
.
constant
;
public
class
UserConstant
{
public
static
final
String
USER_ERROR_OR_PASSWORD_ERROR
=
"帐号或密码错误"
;
}
src/main/java/cn/quantgroup/xyqb/controller/external/user/AppController.java
View file @
46092b41
...
@@ -31,6 +31,8 @@ import javax.servlet.http.HttpServletRequest;
...
@@ -31,6 +31,8 @@ import javax.servlet.http.HttpServletRequest;
import
java.sql.Timestamp
;
import
java.sql.Timestamp
;
import
java.util.Random
;
import
java.util.Random
;
import
static
cn
.
quantgroup
.
xyqb
.
constant
.
UserConstant
.
USER_ERROR_OR_PASSWORD_ERROR
;
/**
/**
* @author mengfan.feng
* @author mengfan.feng
* @time 2015-10-27 11:41
* @time 2015-10-27 11:41
...
@@ -39,177 +41,175 @@ import java.util.Random;
...
@@ -39,177 +41,175 @@ import java.util.Random;
@RequestMapping
(
"/app"
)
@RequestMapping
(
"/app"
)
public
class
AppController
implements
IBaseController
{
public
class
AppController
implements
IBaseController
{
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
AppController
.
class
);
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
AppController
.
class
);
@Autowired
@Autowired
private
ISessionService
sessionService
;
private
ISessionService
sessionService
;
@Autowired
@Autowired
private
IUserService
userService
;
private
IUserService
userService
;
@Autowired
@Autowired
private
ILkbUserService
lkbUserService
;
private
ILkbUserService
lkbUserService
;
@Autowired
@Autowired
private
IUserRepository
userRepository
;
private
IUserRepository
userRepository
;
@Autowired
@Autowired
private
ISmsService
smsService
;
private
ISmsService
smsService
;
@Autowired
@Autowired
private
IUserDetailService
userDetailService
;
private
IUserDetailService
userDetailService
;
@Autowired
@Autowired
private
IIdCardService
idCardService
;
private
IIdCardService
idCardService
;
@Autowired
@Autowired
private
IMerchantService
merchantService
;
private
IMerchantService
merchantService
;
private
final
static
Random
random
=
new
Random
();
private
final
static
Random
random
=
new
Random
();
/**
/**
* 第三方用户登录
* 第三方用户登录
*
*/
*/
@RequestMapping
(
"/login"
)
@RequestMapping
(
"/login"
)
public
JsonResult
login
(
public
JsonResult
login
(
String
phoneNo
,
String
phoneNo
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
registerFrom
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
registerFrom
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
channelId
,
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
channelId
,
String
idNo
,
String
name
,
String
key
,
@RequestParam
(
required
=
false
,
defaultValue
=
""
)
String
appChannel
,
HttpServletRequest
request
String
idNo
,
String
name
,
String
key
,
@RequestParam
(
required
=
false
,
defaultValue
=
""
)
String
appChannel
,
HttpServletRequest
request
)
{
)
{
if
(!
ValidationUtil
.
validatePhoneNo
(
phoneNo
))
{
if
(!
ValidationUtil
.
validatePhoneNo
(
phoneNo
))
{
return
JsonResult
.
buildErrorStateResult
(
USER_ERROR_OR_PASSWORD_ERROR
,
null
);
return
JsonResult
.
buildErrorStateResult
(
"该用户名不存在,<br/>请重新输入或注册新账号。"
,
null
);
}
String
requestIp
=
IPUtil
.
getRemoteIP
(
request
);
LOGGER
.
info
(
"第三方用户登录, loginFrom:{}, requestIp:{}"
,
registerFrom
,
requestIp
);
User
user
=
userService
.
findByPhoneInDb
(
phoneNo
);
if
(
user
==
null
)
{
user
=
register
(
registerFrom
,
phoneNo
,
idNo
,
name
,
channelId
);
}
if
(
user
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"该用户名不存在,<br/>请重新输入或注册新账号。"
,
null
);
}
Merchant
merchant
=
merchantService
.
findMerchantByName
(
key
);
if
(
merchant
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"无效的商户"
,
null
);
}
LoginProperties
loginProperties
=
new
LoginProperties
();
loginProperties
.
setChannelId
(
channelId
);
loginProperties
.
setMerchantName
(
merchant
.
getName
());
loginProperties
.
setCreatedFrom
(
registerFrom
);
loginProperties
.
setAppChannel
(
appChannel
);
SessionStruct
sessionStruct
=
sessionService
.
createSessionAndPersist
(
user
,
loginProperties
);
AuthBean
bean
=
new
AuthBean
();
bean
.
setToken
(
sessionStruct
.
getSid
());
bean
.
setPhoneNo
(
phoneNo
);
LOGGER
.
info
(
"第三方用户登录成功, loginFrom:{}, phoneNo:{},appChannel:{}"
,
registerFrom
,
phoneNo
,
appChannel
);
return
new
JsonResult
(
bean
);
}
}
/**
String
requestIp
=
IPUtil
.
getRemoteIP
(
request
);
* 第三方用户登录并返回用户信息
LOGGER
.
info
(
"第三方用户登录, loginFrom:{}, requestIp:{}"
,
registerFrom
,
requestIp
);
*
User
user
=
userService
.
findByPhoneInDb
(
phoneNo
);
*/
if
(
user
==
null
)
{
@RequestMapping
(
"/login_super"
)
user
=
register
(
registerFrom
,
phoneNo
,
idNo
,
name
,
channelId
);
public
JsonResult
loginSuper
(
}
String
phoneNo
,
if
(
user
==
null
)
{
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
registerFrom
,
return
JsonResult
.
buildErrorStateResult
(
USER_ERROR_OR_PASSWORD_ERROR
,
null
);
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
channelId
,
}
String
idNo
,
String
name
,
String
key
,
@RequestParam
(
required
=
false
,
defaultValue
=
""
)
String
appChannel
,
HttpServletRequest
request
Merchant
merchant
=
merchantService
.
findMerchantByName
(
key
);
)
{
if
(
merchant
==
null
)
{
if
(!
ValidationUtil
.
validatePhoneNo
(
phoneNo
))
{
return
JsonResult
.
buildErrorStateResult
(
"无效的商户"
,
null
);
return
JsonResult
.
buildErrorStateResult
(
"该用户名不存在,<br/>请重新输入或注册新账号。"
,
null
);
}
}
LoginProperties
loginProperties
=
new
LoginProperties
();
loginProperties
.
setChannelId
(
channelId
);
String
requestIp
=
IPUtil
.
getRemoteIP
(
request
);
loginProperties
.
setMerchantName
(
merchant
.
getName
());
LOGGER
.
info
(
"第三方用户登录, loginFrom:{}, requestIp:{}"
,
registerFrom
,
requestIp
);
loginProperties
.
setCreatedFrom
(
registerFrom
);
User
user
=
userService
.
findByPhoneInDb
(
phoneNo
);
loginProperties
.
setAppChannel
(
appChannel
);
if
(
user
==
null
)
{
SessionStruct
sessionStruct
=
sessionService
.
createSessionAndPersist
(
user
,
loginProperties
);
user
=
register
(
registerFrom
,
phoneNo
,
idNo
,
name
,
channelId
);
AuthBean
bean
=
new
AuthBean
();
}
bean
.
setToken
(
sessionStruct
.
getSid
());
if
(
user
==
null
)
{
bean
.
setPhoneNo
(
phoneNo
);
return
JsonResult
.
buildErrorStateResult
(
"该用户名不存在,<br/>请重新输入或注册新账号。"
,
null
);
LOGGER
.
info
(
"第三方用户登录成功, loginFrom:{}, phoneNo:{},appChannel:{}"
,
registerFrom
,
phoneNo
,
appChannel
);
}
return
new
JsonResult
(
bean
);
Merchant
merchant
=
merchantService
.
findMerchantByName
(
key
);
}
if
(
merchant
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"无效的商户"
,
null
);
/**
}
* 第三方用户登录并返回用户信息
LoginProperties
loginProperties
=
new
LoginProperties
();
*/
loginProperties
.
setChannelId
(
channelId
);
@RequestMapping
(
"/login_super"
)
loginProperties
.
setMerchantName
(
merchant
.
getName
());
public
JsonResult
loginSuper
(
loginProperties
.
setCreatedFrom
(
registerFrom
);
String
phoneNo
,
loginProperties
.
setAppChannel
(
appChannel
);
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
registerFrom
,
SessionStruct
sessionStruct
=
sessionService
.
createSessionAndPersist
(
user
,
loginProperties
);
@RequestParam
(
required
=
false
,
defaultValue
=
"1"
)
Long
channelId
,
String
idNo
,
String
name
,
String
key
,
@RequestParam
(
required
=
false
,
defaultValue
=
""
)
String
appChannel
,
HttpServletRequest
request
LoginInfo
loginInfo
=
new
LoginInfo
();
)
{
loginInfo
.
setUser
(
UserRet
.
getUserRet
(
user
));
if
(!
ValidationUtil
.
validatePhoneNo
(
phoneNo
))
{
loginInfo
.
setToken
(
sessionStruct
.
getSid
());
return
JsonResult
.
buildErrorStateResult
(
USER_ERROR_OR_PASSWORD_ERROR
,
null
);
LoginInfo
.
LoginContext
context
=
new
LoginInfo
.
LoginContext
();
context
.
setChannelId
(
sessionStruct
.
getValues
().
getLoginProperties
().
getChannelId
());
context
.
setCreatedFrom
(
sessionStruct
.
getValues
().
getLoginProperties
().
getCreatedFrom
());
context
.
setAppChannel
(
appChannel
);
loginInfo
.
setLoginContext
(
context
);
LOGGER
.
info
(
"第三方用户获取信息登录成功, loginFrom:{}, phoneNo:{},appChannel:{}"
,
registerFrom
,
phoneNo
,
appChannel
);
return
JsonResult
.
buildSuccessResult
(
""
,
loginInfo
);
}
}
String
requestIp
=
IPUtil
.
getRemoteIP
(
request
);
LOGGER
.
info
(
"第三方用户登录, loginFrom:{}, requestIp:{}"
,
registerFrom
,
requestIp
);
User
user
=
userService
.
findByPhoneInDb
(
phoneNo
);
if
(
user
==
null
)
{
user
=
register
(
registerFrom
,
phoneNo
,
idNo
,
name
,
channelId
);
}
if
(
user
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
USER_ERROR_OR_PASSWORD_ERROR
,
null
);
}
Merchant
merchant
=
merchantService
.
findMerchantByName
(
key
);
if
(
merchant
==
null
)
{
return
JsonResult
.
buildErrorStateResult
(
"无效的商户"
,
null
);
}
LoginProperties
loginProperties
=
new
LoginProperties
();
loginProperties
.
setChannelId
(
channelId
);
loginProperties
.
setMerchantName
(
merchant
.
getName
());
loginProperties
.
setCreatedFrom
(
registerFrom
);
loginProperties
.
setAppChannel
(
appChannel
);
SessionStruct
sessionStruct
=
sessionService
.
createSessionAndPersist
(
user
,
loginProperties
);
LoginInfo
loginInfo
=
new
LoginInfo
();
loginInfo
.
setUser
(
UserRet
.
getUserRet
(
user
));
loginInfo
.
setToken
(
sessionStruct
.
getSid
());
LoginInfo
.
LoginContext
context
=
new
LoginInfo
.
LoginContext
();
context
.
setChannelId
(
sessionStruct
.
getValues
().
getLoginProperties
().
getChannelId
());
context
.
setCreatedFrom
(
sessionStruct
.
getValues
().
getLoginProperties
().
getCreatedFrom
());
context
.
setAppChannel
(
appChannel
);
loginInfo
.
setLoginContext
(
context
);
LOGGER
.
info
(
"第三方用户获取信息登录成功, loginFrom:{}, phoneNo:{},appChannel:{}"
,
registerFrom
,
phoneNo
,
appChannel
);
return
JsonResult
.
buildSuccessResult
(
""
,
loginInfo
);
}
/**
* 注册新用户
*
* @return
*/
private
User
register
(
Long
registerFrom
,
String
phoneNo
,
String
idNo
,
String
name
,
Long
channelId
)
{
String
randomCode
=
String
.
valueOf
(
random
.
nextInt
(
899999
)
+
100000
);
String
uuid
=
lkbUserService
.
registerApp
(
phoneNo
,
randomCode
);
Timestamp
currentTime
=
new
Timestamp
(
System
.
currentTimeMillis
());
LOGGER
.
info
(
"第三方登录用户,保存 User"
);
User
user
=
new
User
();
if
(
channelId
==
222L
)
{
user
.
setRegisteredFrom
(
channelId
);
}
else
{
user
.
setRegisteredFrom
(
registerFrom
);
}
//user.setRegisteredFrom(registerFrom);
user
.
setUuid
(
uuid
);
user
.
setEnable
(
true
);
user
.
setPhoneNo
(
phoneNo
);
user
.
setPassword
(
PasswordUtil
.
MD5
(
randomCode
+
Constants
.
PASSWORD_SALT
));
user
.
setUpdatedAt
(
currentTime
);
user
.
setCreatedAt
(
currentTime
);
userRepository
.
saveAndFlush
(
user
);
if
(
registerFrom
!=
645L
)
{
smsService
.
sendAfterRegister
(
phoneNo
);
LOGGER
.
info
(
"第三方登录用户注册成功, registerFrom:{}, phoneNo:{}, 并且已发送短信通知"
,
registerFrom
,
phoneNo
);
}
/**
if
(
StringUtils
.
isNotEmpty
(
idNo
)
&&
StringUtils
.
isNotEmpty
(
name
))
{
* 注册新用户
LOGGER
.
info
(
"第三方登录用户,保存 UserDetail"
);
*
* @return
IdCardInfo
cardInfo
;
*/
try
{
private
User
register
(
Long
registerFrom
,
String
phoneNo
,
String
idNo
,
String
name
,
Long
channelId
)
{
cardInfo
=
idCardService
.
getIdCardInfoWithExceptions
(
idNo
);
String
randomCode
=
String
.
valueOf
(
random
.
nextInt
(
899999
)
+
100000
);
UserDetail
userDetail
=
new
UserDetail
();
userDetail
.
setIdNo
(
cardInfo
.
getIdNo
());
String
uuid
=
lkbUserService
.
registerApp
(
phoneNo
,
randomCode
);
userDetail
.
setPhoneNo
(
phoneNo
);
Timestamp
currentTime
=
new
Timestamp
(
System
.
currentTimeMillis
());
userDetail
.
setName
(
name
);
userDetail
.
setIdType
(
IdType
.
ID_CARD
);
LOGGER
.
info
(
"第三方登录用户,保存 User"
);
userDetail
.
setCreatedAt
(
currentTime
);
userDetail
.
setUpdatedAt
(
currentTime
);
User
user
=
new
User
();
userDetail
.
setUserId
(
user
.
getId
());
if
(
channelId
==
222L
)
{
userDetail
.
setGender
(
cardInfo
.
getGender
());
user
.
setRegisteredFrom
(
channelId
);
userDetailService
.
saveUserDetail
(
userDetail
);
}
else
{
user
.
setRegisteredFrom
(
registerFrom
);
lkbUserService
.
userUpdate
(
user
.
getUuid
(),
name
,
idNo
);
}
}
catch
(
Exception
e
)
{
//user.setRegisteredFrom(registerFrom);
LOGGER
.
error
(
"保存 UserDetail 出现异常"
,
e
);
user
.
setUuid
(
uuid
);
}
user
.
setEnable
(
true
);
user
.
setPhoneNo
(
phoneNo
);
user
.
setPassword
(
PasswordUtil
.
MD5
(
randomCode
+
Constants
.
PASSWORD_SALT
));
user
.
setUpdatedAt
(
currentTime
);
user
.
setCreatedAt
(
currentTime
);
userRepository
.
saveAndFlush
(
user
);
if
(
registerFrom
!=
645L
)
{
smsService
.
sendAfterRegister
(
phoneNo
);
LOGGER
.
info
(
"第三方登录用户注册成功, registerFrom:{}, phoneNo:{}, 并且已发送短信通知"
,
registerFrom
,
phoneNo
);
}
if
(
StringUtils
.
isNotEmpty
(
idNo
)
&&
StringUtils
.
isNotEmpty
(
name
))
{
LOGGER
.
info
(
"第三方登录用户,保存 UserDetail"
);
IdCardInfo
cardInfo
;
try
{
cardInfo
=
idCardService
.
getIdCardInfoWithExceptions
(
idNo
);
UserDetail
userDetail
=
new
UserDetail
();
userDetail
.
setIdNo
(
cardInfo
.
getIdNo
());
userDetail
.
setPhoneNo
(
phoneNo
);
userDetail
.
setName
(
name
);
userDetail
.
setIdType
(
IdType
.
ID_CARD
);
userDetail
.
setCreatedAt
(
currentTime
);
userDetail
.
setUpdatedAt
(
currentTime
);
userDetail
.
setUserId
(
user
.
getId
());
userDetail
.
setGender
(
cardInfo
.
getGender
());
userDetailService
.
saveUserDetail
(
userDetail
);
lkbUserService
.
userUpdate
(
user
.
getUuid
(),
name
,
idNo
);
}
catch
(
Exception
e
)
{
LOGGER
.
error
(
"保存 UserDetail 出现异常"
,
e
);
}
}
return
user
;
}
}
return
user
;
}
}
}
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