Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
P
promotion-service
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
promotion
promotion-service
Commits
626cb4a0
提交
626cb4a0
authored
4月 17, 2024
作者:
李秋林
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
小程序完成功能:注册、登录、获取手机验证码
上级
7a191ff3
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
26 行增加
和
38 行删除
+26
-38
ControllerLogAspect.java
...angxiaolu/promotion/config/aspet/ControllerLogAspect.java
+0
-7
WeChatUserCoreController.java
...promotion/controller/wechat/WeChatUserCoreController.java
+3
-1
WeChatUserQueryController.java
...romotion/controller/wechat/WeChatUserQueryController.java
+6
-12
WxTemporaryInfoDto.java
...angxiaolu/promotion/pojo/user/dto/WxTemporaryInfoDto.java
+0
-5
WeChatUserQueryService.java
...aolu/promotion/service/wechat/WeChatUserQueryService.java
+3
-1
WeChatUserQueryServiceImpl.java
...otion/service/wechat/impl/WeChatUserQueryServiceImpl.java
+13
-11
WeChatUserQueryControllerTest.java
...tion/controller/wechat/WeChatUserQueryControllerTest.java
+1
-1
没有找到文件。
src/main/java/com/wangxiaolu/promotion/config/aspet/ControllerLogAspect.java
浏览文件 @
626cb4a0
...
...
@@ -38,13 +38,6 @@ public class ControllerLogAspect {
ServletRequestAttributes
sra
=
(
ServletRequestAttributes
)
RequestContextHolder
.
getRequestAttributes
();
HttpServletRequest
request
=
sra
.
getRequest
();
/**
* 暂时使用这个判断是否登录
*/
String
accessToken
=
request
.
getHeader
(
"access_token"
);
// Signature signature = joinPoint.getSignature();
// String name = signature.getName();
...
...
src/main/java/com/wangxiaolu/promotion/controller/wechat/WeChatUserCoreController.java
浏览文件 @
626cb4a0
...
...
@@ -47,7 +47,9 @@ public class WeChatUserCoreController {
throw
new
ParamException
(
RCode
.
ENROLL_PARAM_ERROR
,
null
);
}
// 手机号-验证码 校验
/**
* 手机号-验证码 校验
*/
String
redisKey
=
RedisKeys
.
UserKeys
.
PHONE_VER_CODE
.
getKey
()
+
wxTemporaryEnrollVo
.
getPhone
();
String
phoneCodeOld
=
redisCache
.
get
(
redisKey
);
if
(
StringUtils
.
isBlank
(
phoneCodeOld
)
||
!
phoneCodeOld
.
equals
(
wxTemporaryEnrollVo
.
getPhoneCode
())){
...
...
src/main/java/com/wangxiaolu/promotion/controller/wechat/WeChatUserQueryController.java
浏览文件 @
626cb4a0
...
...
@@ -31,25 +31,19 @@ public class WeChatUserQueryController {
* @return 非null则登录成功
*/
@PostMapping
(
"/temporary/login/phone_openid"
)
public
WxTemporaryInfoDto
temporaryLoginByPhoneAndOpenId
(
@RequestBody
WxTemporaryLoginVo
wxTemporaryLoginVo
)
{
public
boolean
temporaryLoginByPhoneAndOpenId
(
@RequestBody
WxTemporaryLoginVo
wxTemporaryLoginVo
)
{
if
(!
DataUtils
.
phonePattern
(
wxTemporaryLoginVo
.
getPhone
()))
{
throw
new
ParamException
(
RCode
.
PHONE_PARAM_ERROR
,
null
);
}
WxTemporaryInfoDto
wxTemDto
=
weChatUserQueryService
.
loginTemporaryByOpenIdAndPhone
(
wxTemporaryLoginVo
.
getOpenId
(),
wxTemporaryLoginVo
.
getPhone
());
if
(
Objects
.
isNull
(
wxTemDto
)){
throw
new
ParamException
(
RCode
.
LOGIN_USER_IS_NULL_ERROR
,
null
);
}
return
wxTemDto
;
return
weChatUserQueryService
.
loginTemporaryByOpenIdAndPhone
(
wxTemporaryLoginVo
.
getOpenId
(),
wxTemporaryLoginVo
.
getPhone
());
}
/**
* 需要改成:根据token查询人员详情
* 促销员查询
* 促销员信息查询
*/
@GetMapping
(
"/temporary/openId"
)
public
WxTemporaryInfoDto
getTemporaryInfoByOpenId
(
String
openId
)
{
return
weChatUserQueryService
.
getTemporaryByToken
(
openId
);
@GetMapping
(
"/temporary/phone_openid"
)
public
WxTemporaryInfoDto
getTemporaryInfoByOpenId
(
@RequestBody
WxTemporaryLoginVo
wxTemporaryLoginVo
)
{
return
weChatUserQueryService
.
getTemporaryByToken
(
wxTemporaryLoginVo
.
getOpenId
(),
wxTemporaryLoginVo
.
getPhone
());
}
}
src/main/java/com/wangxiaolu/promotion/pojo/user/dto/WxTemporaryInfoDto.java
浏览文件 @
626cb4a0
...
...
@@ -76,9 +76,4 @@ public class WxTemporaryInfoDto {
* 详细地址
*/
String
address
;
/**
* 登录token
*/
String
token
;
}
src/main/java/com/wangxiaolu/promotion/service/wechat/WeChatUserQueryService.java
浏览文件 @
626cb4a0
...
...
@@ -9,7 +9,9 @@ import com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto;
*/
public
interface
WeChatUserQueryService
{
WxTemporaryInfoDto
loginTemporaryByOpenIdAndPhone
(
String
openId
,
String
phone
);
boolean
loginTemporaryByOpenIdAndPhone
(
String
openId
,
String
phone
);
WxTemporaryInfoDto
getTemporaryByToken
(
String
openId
);
WxTemporaryInfoDto
getTemporaryByToken
(
String
openId
,
String
phone
);
}
src/main/java/com/wangxiaolu/promotion/service/wechat/impl/WeChatUserQueryServiceImpl.java
浏览文件 @
626cb4a0
package
com
.
wangxiaolu
.
promotion
.
service
.
wechat
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wangxiaolu.promotion.common.redis.RedisKeys
;
import
com.wangxiaolu.promotion.common.redis.service.RedisCache
;
import
com.wangxiaolu.promotion.domain.user.dao.TemporaryInfoDao
;
...
...
@@ -35,22 +36,18 @@ public class WeChatUserQueryServiceImpl implements WeChatUserQueryService {
* 根据openId、手机号登录
*/
@Override
public
WxTemporaryInfoDto
loginTemporaryByOpenIdAndPhone
(
String
openId
,
String
phone
)
{
public
boolean
loginTemporaryByOpenIdAndPhone
(
String
openId
,
String
phone
)
{
WxTemporaryInfoDto
temDto
=
temporaryInfoDao
.
getUnimportantData
(
openId
,
phone
);
boolean
exist
=
!
Objects
.
isNull
(
temDto
);
if
(
Objects
.
isNull
(
temDto
))
{
if
(
exist
)
{
log
.
info
(
"微信-促销员{}登录成功(openId、手机号),openId:{},phone:{}"
,
temDto
.
getName
(),
openId
,
phone
);
log
.
info
(
JSONObject
.
toJSONString
(
temDto
));
}
else
{
log
.
info
(
"微信-促销员登录失败,当前信息未注册(openId、手机号),openId:{},phone:{}"
,
openId
,
phone
);
return
null
;
}
// 生成登录token
String
temToken
=
jwtUtils
.
getTemporaryToken
(
openId
,
phone
);
temDto
.
setToken
(
temToken
);
String
key
=
RedisKeys
.
UserKeys
.
TEMPORARY_TOKEN
.
getKey
();
redisCache
.
addToJsonToDays
(
key
+
temToken
,
temDto
,
3
);
log
.
info
(
"微信-促销员{}登录成功(openId、手机号),openId:{},phone:{}\n生成登录token:{}"
,
temDto
.
getName
(),
openId
,
phone
,
temToken
);
return
temDto
;
return
exist
;
}
/**
...
...
@@ -70,4 +67,9 @@ public class WeChatUserQueryServiceImpl implements WeChatUserQueryService {
return
temporaryInfoDto
;
}
@Override
public
WxTemporaryInfoDto
getTemporaryByToken
(
String
openId
,
String
phone
)
{
return
null
;
}
}
src/test/java/com/wangxiaolu/promotion/controller/wechat/WeChatUserQueryControllerTest.java
浏览文件 @
626cb4a0
...
...
@@ -25,7 +25,7 @@ class WeChatUserQueryControllerTest {
@Test
void
temporaryLoginByPhoneAndOpenId
()
{
WxTemporaryLoginVo
loginVO
=
new
WxTemporaryLoginVo
().
setOpenId
(
"oCMt-66hnlY9-bQcZAAZKX0p3s6I"
).
setPhone
(
"15701654502"
);
WxTemporaryInfoDto
b
=
weChatUserQueryController
.
temporaryLoginByPhoneAndOpenId
(
loginVO
);
boolean
b
=
weChatUserQueryController
.
temporaryLoginByPhoneAndOpenId
(
loginVO
);
System
.
out
.
println
(
"temporaryLoginByPhoneAndOpenId 登录结果:"
+
b
);
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论