Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gdtel-gztel-school-center
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
吴学德
gdtel-gztel-school-center
Commits
aaf0010a
Commit
aaf0010a
authored
Apr 23, 2020
by
黄森林
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
微信公众号个人中心
parent
70fc6c3b
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
180 additions
and
61 deletions
+180
-61
common/src/main/java/com/winsun/bean/HhrUser.java
+8
-0
core-service/src/main/java/com/winsun/item/modular/system/controller/LoginPwdController.java
+15
-61
service-manager/src/main/java/com/winsun/controller/PersonalCenter.java
+157
-0
No files found.
common/src/main/java/com/winsun/bean/HhrUser.java
View file @
aaf0010a
...
@@ -71,8 +71,16 @@ public class HhrUser implements Serializable{
...
@@ -71,8 +71,16 @@ public class HhrUser implements Serializable{
*/
*/
private
String
parentIds
;
private
String
parentIds
;
/**
* 证件信息上传状态
*/
private
int
uploadState
;
private
int
uploadState
;
/**
* 微信名
*/
private
String
wxNickName
;
// 非数据库字段
// 非数据库字段
/**
/**
...
...
core-service/src/main/java/com/winsun/item/modular/system/controller/LoginPwdController.java
View file @
aaf0010a
...
@@ -83,66 +83,6 @@ public class LoginPwdController extends BaseController {
...
@@ -83,66 +83,6 @@ public class LoginPwdController extends BaseController {
LoginPwdController
.
schoolMapper
=
schoolMapper
;
LoginPwdController
.
schoolMapper
=
schoolMapper
;
}
}
@RequestMapping
(
"/MP_verify_oYaGTxvtIJXLOkXB.txt"
)
public
void
auth
(
HttpServletResponse
response
)
throws
IOException
{
response
.
getWriter
().
print
(
"oYaGTxvtIJXLOkXB"
);
}
/**
* 微信授权
*
* @param request
* @param response
* @throws UnsupportedEncodingException
*/
@RequestMapping
(
value
=
"/weixinAuthorization"
)
public
void
weixinAuthorization
(
HttpServletRequest
request
,
HttpServletResponse
response
,
String
state
)
throws
UnsupportedEncodingException
{
String
url
=
"https://open.weixin.qq.com/connect/oauth2/authorize?"
;
url
+=
"appid="
;
url
+=
APPID
;
url
+=
"&redirect_uri="
+
URLEncoder
.
encode
(
"http://hhrcode.winsun-aly.com/#/login"
,
"UTF-8"
);
//此处和微信会调用的域名相同
url
+=
"&response_type=code&scope=snsapi_userinfo&state="
+
state
;
url
+=
"#wechat_redirect"
;
log
.
info
(
url
);
try
{
RequestDispatcher
rd
=
request
.
getRequestDispatcher
(
url
);
rd
.
forward
(
request
,
response
);
/* response.sendRedirect(url);*/
}
catch
(
Exception
e
)
{
log
.
error
(
"微信授权异常"
+
e
.
getMessage
(),
e
);
}
}
/**
* 测试时使用
*
* @param request
* @param response
* @throws UnsupportedEncodingException
*/
@RequestMapping
(
value
=
"/weixinAuthorizati"
)
public
void
weixinAuthorization
(
HttpServletRequest
request
,
HttpServletResponse
response
)
throws
UnsupportedEncodingException
{
String
url
=
"https://open.weixin.qq.com/connect/oauth2/authorize?"
;
url
+=
"appid="
;
url
+=
APPID
;
url
+=
"&redirect_uri="
+
URLEncoder
.
encode
(
"http://167460x6b0.51mypc.cn/ciop/forgerpw/callBackLogin"
,
"UTF-8"
);
//此处和微信会调用的域名相同
url
+=
"&response_type=code&scope=snsapi_userinfo"
;
url
+=
"&state="
+
"http%3A%2F%2Flocalhost%3A3048%2F%23%2Fsupervisor%3Fid%3D7678%26sign%3Df543efe0512735b8b559b7058a6799ea"
+
"#wechat_redirect"
;
try
{
response
.
sendRedirect
(
url
);
}
catch
(
Exception
e
)
{
log
.
error
(
"微信授权异常"
+
e
.
getMessage
(),
e
);
}
}
@RequestMapping
(
value
=
"/callBackLogin"
)
public
void
callBackLogin
(
HttpServletRequest
request
,
HttpServletResponse
response
)
throws
Exception
{
String
code
=
request
.
getParameter
(
"code"
);
String
state
=
request
.
getParameter
(
"state"
);
log
.
info
(
"code="
+
code
);
log
.
info
(
"state="
+
state
);
}
/**
/**
* 微信登录
* 微信登录
*
*
...
@@ -169,6 +109,9 @@ public class LoginPwdController extends BaseController {
...
@@ -169,6 +109,9 @@ public class LoginPwdController extends BaseController {
if
(
StringUtils
.
isBlank
(
jsonObject
))
{
if
(
StringUtils
.
isBlank
(
jsonObject
))
{
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
}
if
(
jsonObject
.
contains
(
"openid"
)){
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
log
.
info
(
jsonObject
);
log
.
info
(
jsonObject
);
Map
<
String
,
Object
>
map
=
JSON
.
parseObject
(
jsonObject
,
Map
.
class
);
Map
<
String
,
Object
>
map
=
JSON
.
parseObject
(
jsonObject
,
Map
.
class
);
String
openId
=
map
.
get
(
"openid"
).
toString
();
String
openId
=
map
.
get
(
"openid"
).
toString
();
...
@@ -231,6 +174,9 @@ public class LoginPwdController extends BaseController {
...
@@ -231,6 +174,9 @@ public class LoginPwdController extends BaseController {
if
(
StringUtils
.
isBlank
(
jsonObject
))
{
if
(
StringUtils
.
isBlank
(
jsonObject
))
{
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
}
if
(
jsonObject
.
contains
(
"openid"
)){
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
log
.
info
(
jsonObject
);
log
.
info
(
jsonObject
);
Map
<
String
,
Object
>
map
=
JSON
.
parseObject
(
jsonObject
,
Map
.
class
);
Map
<
String
,
Object
>
map
=
JSON
.
parseObject
(
jsonObject
,
Map
.
class
);
String
openId
=
map
.
get
(
"openid"
).
toString
();
String
openId
=
map
.
get
(
"openid"
).
toString
();
...
@@ -292,6 +238,9 @@ public class LoginPwdController extends BaseController {
...
@@ -292,6 +238,9 @@ public class LoginPwdController extends BaseController {
if
(
StringUtils
.
isBlank
(
jsonObject
))
{
if
(
StringUtils
.
isBlank
(
jsonObject
))
{
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
}
if
(
jsonObject
.
contains
(
"openid"
)){
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
log
.
info
(
jsonObject
);
log
.
info
(
jsonObject
);
Map
<
String
,
Object
>
map
=
JSON
.
parseObject
(
jsonObject
,
Map
.
class
);
Map
<
String
,
Object
>
map
=
JSON
.
parseObject
(
jsonObject
,
Map
.
class
);
String
openId
=
map
.
get
(
"openid"
).
toString
();
String
openId
=
map
.
get
(
"openid"
).
toString
();
...
@@ -307,15 +256,20 @@ public class LoginPwdController extends BaseController {
...
@@ -307,15 +256,20 @@ public class LoginPwdController extends BaseController {
if
(
StringUtils
.
isBlank
(
jsonObject1
))
{
if
(
StringUtils
.
isBlank
(
jsonObject1
))
{
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
}
if
(
jsonObject1
.
contains
(
"openid"
)){
return
ResponseData
.
error
(
"微信授权失效,请重新授权!"
);
}
log
.
info
(
jsonObject1
);
log
.
info
(
jsonObject1
);
Map
<
String
,
Object
>
map1
=
JSON
.
parseObject
(
jsonObject1
,
Map
.
class
);
Map
<
String
,
Object
>
map1
=
JSON
.
parseObject
(
jsonObject1
,
Map
.
class
);
String
headimgurl
=
map1
.
get
(
"headimgurl"
).
toString
();
String
headimgurl
=
map1
.
get
(
"headimgurl"
).
toString
();
String
nickname
=
map1
.
get
(
"nickname"
).
toString
();
SysUser
sysUser
=
users
.
get
(
0
);
SysUser
sysUser
=
users
.
get
(
0
);
Wrapper
wrapper
=
new
EntityWrapper
<>();
Wrapper
wrapper
=
new
EntityWrapper
<>();
wrapper
.
eq
(
"id"
,
sysUser
.
getId
());
wrapper
.
eq
(
"id"
,
sysUser
.
getId
());
Map
<
String
,
Object
>
dataMapping
=
new
HashMap
<>();
Map
<
String
,
Object
>
dataMapping
=
new
HashMap
<>();
dataMapping
.
put
(
"open_id"
,
openId
);
dataMapping
.
put
(
"open_id"
,
openId
);
dataMapping
.
put
(
"wx_head_img_url"
,
headimgurl
);
dataMapping
.
put
(
"wx_head_img_url"
,
headimgurl
);
dataMapping
.
put
(
"wx_nick_name"
,
nickname
);
Integer
integer
=
hhrUserMapper
.
updateForSet
(
MyBatisPlusUpdateUtils
.
toUpdateSet
(
dataMapping
),
wrapper
);
Integer
integer
=
hhrUserMapper
.
updateForSet
(
MyBatisPlusUpdateUtils
.
toUpdateSet
(
dataMapping
),
wrapper
);
if
(
integer
==
1
)
{
if
(
integer
==
1
)
{
return
ResponseData
.
success
(
openId
);
return
ResponseData
.
success
(
openId
);
...
@@ -593,7 +547,7 @@ public class LoginPwdController extends BaseController {
...
@@ -593,7 +547,7 @@ public class LoginPwdController extends BaseController {
hhrUser
.
setUploadState
(
1
);
hhrUser
.
setUploadState
(
1
);
insert
+=
hhrUserMapper
.
insert
(
hhrUser
);
insert
+=
hhrUserMapper
.
insert
(
hhrUser
);
if
(
insert
==
3
){
if
(
insert
==
3
){
return
ResponseData
.
success
(
"账号创建成功
!
"
);
return
ResponseData
.
success
(
"账号创建成功
,待管理员审核!
"
);
}
}
if
(
insert
==
0
){
if
(
insert
==
0
){
return
ResponseData
.
error
(
"账号创建失败!"
);
return
ResponseData
.
error
(
"账号创建失败!"
);
...
...
service-manager/src/main/java/com/winsun/controller/PersonalCenter.java
0 → 100644
View file @
aaf0010a
package
com
.
winsun
.
controller
;
import
com.baomidou.mybatisplus.mapper.EntityWrapper
;
import
com.baomidou.mybatisplus.mapper.Wrapper
;
import
com.winsun.auth.core.annotion.Permission
;
import
com.winsun.auth.core.base.controller.BaseController
;
import
com.winsun.auth.core.common.model.ResponseData
;
import
com.winsun.auth.core.shiro.ShiroUser
;
import
com.winsun.auth.core.util.DateUtil
;
import
com.winsun.auth.core.util.ResponseEntity
;
import
com.winsun.auth.model.user.User
;
import
com.winsun.bean.HhrUser
;
import
com.winsun.bean.SysUser
;
import
com.winsun.mapper.AppMapper
;
import
com.winsun.mapper.HhrUserMapper
;
import
com.winsun.mapper.SysUserMapper
;
import
com.winsun.smsUtils.SendSmsAndMail
;
import
com.winsun.utils.MyBatisPlusUpdateUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.concurrent.TimeUnit
;
/**
* @Author: hsl
* @Date: 2020/4/23 10:54
*/
@RequestMapping
(
"PersonalCenter"
)
@RestController
@Slf4j
public
class
PersonalCenter
extends
BaseController
{
private
static
HhrUserMapper
hhrUserMapper
;
private
static
SysUserMapper
sysUserMapper
;
private
static
AppMapper
appMapper
;
private
static
StringRedisTemplate
stringRedisTemplate
;
private
static
long
CODETIME
=
1000
*
60
*
5
;
private
String
EDITPHONE
=
"EditPhone"
;
@Autowired
public
PersonalCenter
(
SysUserMapper
sysUserMapper
,
HhrUserMapper
hhrUserMapper
,
AppMapper
appMapper
,
StringRedisTemplate
stringRedisTemplate
)
{
PersonalCenter
.
sysUserMapper
=
sysUserMapper
;
PersonalCenter
.
hhrUserMapper
=
hhrUserMapper
;
PersonalCenter
.
appMapper
=
appMapper
;
PersonalCenter
.
stringRedisTemplate
=
stringRedisTemplate
;
}
@Permission
(
menuname
=
"修改手机号"
,
value
=
"editPhone"
,
method
=
RequestMethod
.
POST
)
public
ResponseData
<
String
>
editPhone
(
String
partner
,
String
phone
,
String
verificationCode
)
{
ShiroUser
user
=
getShiroUser
();
if
(!
partner
.
equals
(
String
.
valueOf
(
user
.
getId
()))){
return
ResponseData
.
error
(
"当前登录账户和修改账号冲突!"
);
}
String
key
=
user
.
getAccount
()
+
EDITPHONE
;
String
code
=
stringRedisTemplate
.
opsForValue
().
get
(
key
);
if
(!
verificationCode
.
equals
(
code
)){
return
ResponseData
.
error
(
"验证码错误,请重新输入!"
);
}
if
(
phone
.
length
()
!=
11
){
return
ResponseData
.
error
(
"手机号码,请重新输入!"
);
}
Wrapper
<
SysUser
>
wrapper
=
new
EntityWrapper
<>();
wrapper
.
eq
(
"id"
,
user
.
getId
());
Map
<
String
,
Object
>
dataMap
=
new
HashMap
<>();
dataMap
.
put
(
"phone"
,
phone
);
dataMap
.
put
(
"updateTime"
,
new
Date
());
Integer
integer
=
sysUserMapper
.
updateForSet
(
MyBatisPlusUpdateUtils
.
toUpdateSet
(
dataMap
),
wrapper
);
if
(
integer
==
1
){
return
ResponseData
.
success
(
"修改成功!"
);
}
else
{
return
ResponseData
.
error
(
"修改失败!"
);
}
}
@Permission
(
menuname
=
"修改手机号发送短信"
,
value
=
"sentEditPhone"
,
method
=
RequestMethod
.
POST
)
public
ResponseData
<
String
>
sentEditPhone
(
String
partner
)
{
ShiroUser
user
=
getShiroUser
();
if
(!
partner
.
equals
(
String
.
valueOf
(
user
.
getId
()))){
return
ResponseData
.
error
(
"当前登录账户和修改账号冲突!"
);
}
String
id
=
String
.
valueOf
(
user
.
getId
());
return
phoneCode
(
id
,
EDITPHONE
);
}
public
static
ResponseData
<
String
>
phoneCode
(
String
id
,
String
type
)
{
SysUser
sysUser
=
sysUserMapper
.
selectById
(
id
);
if
(
sysUser
==
null
){
return
ResponseData
.
error
(
"当前登录账户异常!"
);
}
//5分钟内有效
String
code
=
sysUser
.
getAccount
()
+
type
;
Long
expire
=
stringRedisTemplate
.
getExpire
(
code
);
//验证码 有效时间是五分钟倒计时
if
(
expire
>
(
60
*
4
))
{
return
ResponseData
.
error
(
"请勿频繁发送手机验证码操作!"
);
}
String
verificationCode
=
String
.
valueOf
((
int
)
((
Math
.
random
()
*
9
+
1
)
*
100000
));
stringRedisTemplate
.
opsForValue
().
set
(
code
,
verificationCode
,
CODETIME
,
TimeUnit
.
MILLISECONDS
);
try
{
if
(
sysUser
.
getPhone
().
length
()
==
11
)
{
SendSmsAndMail
.
sendSms
(
sysUser
.
getPhone
(),
verificationCode
,
"7"
);
return
ResponseData
.
success
(
"发送成功!"
);
}
else
{
return
ResponseData
.
error
(
"当前用户手机号码不合法!"
);
}
}
catch
(
Exception
e
)
{
log
.
info
(
"错误信息:{}"
+
e
.
getMessage
(),
e
);
return
ResponseData
.
error
(
"手机短信发送失败!"
);
}
}
@Permission
(
menuname
=
"个人中心用户详情"
,
value
=
"partnerInfo"
,
method
=
RequestMethod
.
POST
)
public
ResponseData
<
Map
<
String
,
Object
>>
selectPartnerInfo
(
String
partner
)
{
SysUser
sysUser
=
sysUserMapper
.
selectById
(
partner
);
if
(
sysUser
==
null
)
{
return
ResponseData
.
error
(
"当前用户不存在!"
);
}
HhrUser
hhrUser
=
hhrUserMapper
.
selectById
(
partner
);
if
(
hhrUser
==
null
)
{
return
ResponseData
.
error
(
"当前用户异常!"
);
}
Map
<
String
,
Object
>
hashMap
=
new
HashMap
<>();
hashMap
.
put
(
"phone"
,
sysUser
.
getPhone
());
hashMap
.
put
(
"account"
,
sysUser
.
getAccount
());
hashMap
.
put
(
"userName"
,
sysUser
.
getName
());
hashMap
.
put
(
"sex"
,
sysUser
.
getSex
());
hashMap
.
put
(
"grade"
,
hhrUser
.
getGrade
());
hashMap
.
put
(
"idCard"
,
hhrUser
.
getIdCard
());
hashMap
.
put
(
"substName"
,
sysUser
.
getSubstName
());
String
schoolId
=
appMapper
.
selectSchoolId
(
partner
);
String
school
=
appMapper
.
selectSchoolById
(
schoolId
);
hashMap
.
put
(
"school"
,
school
);
hashMap
.
put
(
"position"
,
hhrUser
.
getPosition
());
hashMap
.
put
(
"createtime"
,
sysUser
.
getCreatetime
());
hashMap
.
put
(
"wxNickName"
,
hhrUser
.
getWxNickName
());
hashMap
.
put
(
"wxHeadImgUrl"
,
hhrUser
.
getWxHeadImgUrl
());
return
ResponseData
.
success
(
hashMap
);
}
}
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