Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-api-boot
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-api-boot
Commits
2e394dfa
提交
2e394dfa
authored
5月 23, 2022
作者:
17607474349
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat:
1、提交上次遗漏文件
上级
15de1d03
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
205 行增加
和
1 行删除
+205
-1
UserPhoneParam.java
.../main/java/com/yiring/auth/param/user/UserPhoneParam.java
+41
-0
UserPwdParam.java
...rc/main/java/com/yiring/auth/param/user/UserPwdParam.java
+40
-0
MessageService.java
...src/main/java/com/yiring/auth/service/MessageService.java
+102
-0
UserServiceImpl.java
...va/com/yiring/auth/service/user/impl/UserServiceImpl.java
+6
-1
RedisKey.java
...re/src/main/java/com/yiring/common/constant/RedisKey.java
+16
-0
没有找到文件。
basic-auth/src/main/java/com/yiring/auth/param/user/UserPhoneParam.java
0 → 100644
浏览文件 @
2e394dfa
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
auth
.
param
.
user
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
javax.validation.constraints.NotEmpty
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* 用户修改手机号
*
* @author LJ-2204
* @date 2022/5/21
*/
@ApiModel
(
"UserPhoneParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
UserPhoneParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
3240552295880947685L
;
@ApiModelProperty
(
value
=
"手机号码"
,
example
=
"1888888888"
)
@NotEmpty
(
message
=
"手机号码不能为空"
)
String
mobile
;
@ApiModelProperty
(
value
=
"验证码"
,
example
=
"7758"
)
@NotEmpty
(
message
=
"验证码不能为空"
)
String
code
;
@ApiModelProperty
(
value
=
"类型"
,
example
=
"phone/pwd"
)
@NotEmpty
(
message
=
"类型不能为空"
)
String
type
;
}
basic-auth/src/main/java/com/yiring/auth/param/user/UserPwdParam.java
0 → 100644
浏览文件 @
2e394dfa
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
auth
.
param
.
user
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.io.Serial
;
import
java.io.Serializable
;
import
javax.validation.constraints.NotEmpty
;
import
lombok.*
;
import
lombok.experimental.FieldDefaults
;
/**
* 用户修改密码
*
* @author LJ-2204
* @date 2022/5/21
*/
@ApiModel
(
"UserPwdParam"
)
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
public
class
UserPwdParam
implements
Serializable
{
@Serial
private
static
final
long
serialVersionUID
=
-
3263642123788595634L
;
@ApiModelProperty
(
value
=
"旧密码"
,
example
=
"10086"
)
String
oldPassword
;
@ApiModelProperty
(
value
=
"新密码"
,
example
=
"10086"
)
@NotEmpty
(
message
=
"新密码不能为空"
)
String
newPassword
;
@ApiModelProperty
(
value
=
"确认密码"
,
example
=
"10086"
)
@NotEmpty
(
message
=
"确认密码不能为空"
)
String
confirmPwd
;
}
basic-auth/src/main/java/com/yiring/auth/service/MessageService.java
0 → 100644
浏览文件 @
2e394dfa
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
auth
.
service
;
import
cn.hutool.extra.spring.SpringUtil
;
import
com.aliyuncs.DefaultAcsClient
;
import
com.aliyuncs.IAcsClient
;
import
com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest
;
import
com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse
;
import
com.aliyuncs.http.MethodType
;
import
com.aliyuncs.profile.DefaultProfile
;
import
com.aliyuncs.profile.IClientProfile
;
import
com.yiring.common.core.Result
;
import
com.yiring.common.core.Status
;
import
java.util.Arrays
;
import
java.util.concurrent.TimeUnit
;
import
javax.annotation.Resource
;
import
lombok.AccessLevel
;
import
lombok.Data
;
import
lombok.experimental.FieldDefaults
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.stereotype.Component
;
/**
* 短信服务
*
* @author fangzhimin
* @date 2018/9/4 15:39
*/
@Slf4j
@Data
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@Component
@ConfigurationProperties
(
prefix
=
"config.sms"
)
public
class
MessageService
{
@Resource
RedisTemplate
<
String
,
Object
>
redisTemplate
;
/**
* 默认验证码有效期
*/
Long
expired
;
String
scOk
;
String
product
;
String
domain
;
String
accessKeyId
;
String
accessKeySecret
;
String
signName
;
String
templateCode
;
/**
* 发送手机短信验证码
*
* @param phone 手机号
* @return 公共的接口响应内容
*/
public
Result
<
String
>
sendSmsCode
(
String
phone
)
{
try
{
String
environment
=
"dev"
;
if
(
Arrays
.
asList
(
SpringUtil
.
getActiveProfiles
()).
contains
(
environment
))
{
String
number
=
"123456"
;
// 将短信验证码存入Redis
redisTemplate
.
opsForValue
().
set
(
phone
,
number
,
expired
,
TimeUnit
.
MILLISECONDS
);
return
Result
.
ok
(
number
);
}
// 随机数验证码
String
number
=
(
int
)
((
Math
.
random
()
*
9
+
1
)
*
100000
)
+
""
;
// 超时时间
System
.
setProperty
(
"sun.net.client.defaultConnectTimeout"
,
"10000"
);
System
.
setProperty
(
"sun.net.client.defaultReadTimeout"
,
"10000"
);
// 初始化
IClientProfile
profile
=
DefaultProfile
.
getProfile
(
"cn-hangzhou"
,
accessKeyId
,
accessKeySecret
);
DefaultProfile
.
addEndpoint
(
"cn-hangzhou"
,
product
,
domain
);
IAcsClient
acsClient
=
new
DefaultAcsClient
(
profile
);
// 组装请求对象
SendSmsRequest
request
=
new
SendSmsRequest
();
request
.
setSysMethod
(
MethodType
.
POST
);
request
.
setPhoneNumbers
(
phone
);
request
.
setSignName
(
signName
);
request
.
setTemplateCode
(
templateCode
);
request
.
setTemplateParam
(
"{\"smsCode\":\""
+
number
+
"\"}"
);
// 发送请求,失败会抛出异常
SendSmsResponse
res
=
acsClient
.
getAcsResponse
(
request
);
if
(
res
.
getCode
()
!=
null
&&
scOk
.
equals
(
res
.
getCode
()))
{
// 将短信验证码存入Redis
redisTemplate
.
opsForValue
().
set
(
phone
,
number
,
expired
,
TimeUnit
.
MILLISECONDS
);
}
return
Result
.
no
(
Status
.
INTERNAL_SERVER_ERROR
,
res
.
getMessage
());
}
catch
(
Exception
e
)
{
log
.
error
(
e
.
getMessage
(),
e
);
return
Result
.
no
(
Status
.
INTERNAL_SERVER_ERROR
);
}
}
}
basic-auth/src/main/java/com/yiring/auth/service/user/impl/UserServiceImpl.java
浏览文件 @
2e394dfa
...
...
@@ -236,7 +236,12 @@ public class UserServiceImpl implements UserService {
}
User
user
=
userOptional
.
get
();
user
.
setPassword
(
SaSecureUtil
.
sha256
(
param
.
getConfirmPwd
()));
String
pwd
=
SaSecureUtil
.
sha256
(
param
.
getConfirmPwd
());
if
(!
StrUtil
.
equals
(
pwd
,
user
.
getPassword
()))
{
return
Result
.
no
(
Status
.
BAD_REQUEST
,
"原密码输入错误"
);
}
user
.
setPassword
(
pwd
);
userRepository
.
save
(
user
);
return
Result
.
ok
();
...
...
basic-common/core/src/main/java/com/yiring/common/constant/RedisKey.java
0 → 100644
浏览文件 @
2e394dfa
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
common
.
constant
;
/**
* Redis Key 常量类
*
* @author fangzhimin
* @date 2018/9/4 15:51
*/
public
interface
RedisKey
{
/**
* 短信验证码HashKey
*/
String
SMS_VERIFICATION_CODE
=
"SMS_VERIFICATION_CODE"
;
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论