【sms】短信验证码更新

pull/3/head
chenjinlong 2021-01-19 16:35:51 +08:00
parent 3c4af27164
commit f32847a931
10 changed files with 27 additions and 21 deletions

View File

@ -68,7 +68,7 @@ public class SmsSenderController {
* @author fengshuonan
* @date 2020/10/26 18:35
*/
@PostResource(name = "验证短信验证码", path = "/sms/validateMessage")
@PostResource(name = "验证短信验证码", path = "/sms/validateMessage", requiredLogin = false, requiredPermission = false)
public ResponseData validateMessage(@RequestBody @Validated SysSmsVerifyParam sysSmsVerifyParam) {
sysSmsInfoService.validateSmsInfo(sysSmsVerifyParam);
return new SuccessResponseData("短信验证成功");

View File

@ -34,8 +34,8 @@ public class SysSms extends BaseEntity implements Serializable {
/**
*
*/
@TableField("phone_number")
private String phoneNumber;
@TableField("phone")
private String phone;
/**
*

View File

@ -24,7 +24,7 @@ public class SysSmsInfoParam extends BaseRequest {
/**
*
*/
private String phoneNumber;
private String phone;
/**
*

View File

@ -20,7 +20,7 @@ public class SysSmsSendParam {
*
*/
@NotBlank(message = "手机号码为空")
private String phoneNumber;
private String phone;
/**
*

View File

@ -18,7 +18,7 @@ public class SysSmsVerifyParam {
*
*/
@NotBlank(message = "手机号不能为空")
private String phoneNumber;
private String phone;
/**
*

View File

@ -69,7 +69,7 @@ public class SysSmsInfoServiceImpl extends ServiceImpl<SysSmsMapper, SysSms> imp
// 1. 如果是纯消息发送,直接发送,校验类短信要把验证码存库
if (SmsTypeEnum.MESSAGE.equals(sysSmsSendParam.getSmsTypeEnum())) {
smsSenderApi.sendSms(sysSmsSendParam.getPhoneNumber(), sysSmsSendParam.getTemplateCode(), params);
smsSenderApi.sendSms(sysSmsSendParam.getPhone(), sysSmsSendParam.getTemplateCode(), params);
}
// 2. 如果参数中有code参数则获取参数param中的code值
@ -90,10 +90,10 @@ public class SysSmsInfoServiceImpl extends ServiceImpl<SysSmsMapper, SysSms> imp
// 4. 存储短信到数据库
Long smsId = this.saveSmsInfo(sysSmsSendParam, validateCode);
log.info(">>> 开始发送短信:发送的电话号码= " + sysSmsSendParam.getPhoneNumber() + ",发送的模板号=" + sysSmsSendParam.getTemplateCode() + ",发送的参数是:" + JSON.toJSONString(params));
log.info(">>> 开始发送短信:发送的电话号码= " + sysSmsSendParam.getPhone() + ",发送的模板号=" + sysSmsSendParam.getTemplateCode() + ",发送的参数是:" + JSON.toJSONString(params));
// 5. 发送短信
smsSenderApi.sendSms(sysSmsSendParam.getPhoneNumber(), sysSmsSendParam.getTemplateCode(), params);
smsSenderApi.sendSms(sysSmsSendParam.getPhone(), sysSmsSendParam.getTemplateCode(), params);
// 6. 更新短信发送状态
this.updateSmsInfo(smsId, SmsSendStatusEnum.SUCCESS);
@ -115,7 +115,7 @@ public class SysSmsInfoServiceImpl extends ServiceImpl<SysSmsMapper, SysSms> imp
SysSms sysSms = new SysSms();
sysSms.setCreateTime(nowDate);
sysSms.setInvalidTime(invalidate);
sysSms.setPhoneNumber(sysSmsSendParam.getPhoneNumber());
sysSms.setPhone(sysSmsSendParam.getPhone());
sysSms.setStatusFlag(SmsSendStatusEnum.WAITING.getCode());
sysSms.setSource(sysSmsSendParam.getSmsSendSourceEnum().getCode());
sysSms.setTemplateCode(sysSmsSendParam.getTemplateCode());
@ -141,7 +141,7 @@ public class SysSmsInfoServiceImpl extends ServiceImpl<SysSmsMapper, SysSms> imp
// 查询有没有这条记录
LambdaQueryWrapper<SysSms> smsQueryWrapper = new LambdaQueryWrapper<>();
smsQueryWrapper.eq(SysSms::getPhoneNumber, sysSmsVerifyParam.getPhoneNumber())
smsQueryWrapper.eq(SysSms::getPhone, sysSmsVerifyParam.getPhone())
.and(f -> f.eq(SysSms::getSource, sysSmsVerifyParam.getSmsSendSourceEnum().getCode()))
.and(f -> f.eq(SysSms::getTemplateCode, sysSmsVerifyParam.getTemplateCode()));
smsQueryWrapper.orderByDesc(SysSms::getCreateTime);
@ -186,8 +186,8 @@ public class SysSmsInfoServiceImpl extends ServiceImpl<SysSmsMapper, SysSms> imp
if (ObjectUtil.isNotNull(sysSmsInfoParam)) {
// 根据手机号模糊查询
if (ObjectUtil.isNotEmpty(sysSmsInfoParam.getPhoneNumber())) {
queryWrapper.like(SysSms::getPhoneNumber, sysSmsInfoParam.getPhoneNumber());
if (ObjectUtil.isNotEmpty(sysSmsInfoParam.getPhone())) {
queryWrapper.like(SysSms::getPhone, sysSmsInfoParam.getPhone());
}
// 根据发送状态查询(字典 0 未发送1 发送成功2 发送失败3 失效)

View File

@ -24,6 +24,13 @@
<version>1.0.0</version>
</dependency>
<!-- 验证码发送 -->
<dependency>
<groupId>cn.stylefeng.roses</groupId>
<artifactId>sms-business-validation</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
</project>

View File

@ -35,7 +35,7 @@ public class SysUserRequest extends BaseRequest {
@NotBlank(message = "账号不能为空", groups = {add.class, edit.class, reg.class})
@TableUniqueValue(
message = "账号存在重复",
groups = {add.class, edit.class},
groups = {add.class, edit.class, reg.class},
tableName = "sys_user",
columnName = "account",
idFieldName = "user_id",
@ -51,7 +51,7 @@ public class SysUserRequest extends BaseRequest {
/**
*
*/
@NotBlank(message = "新密码不能为空", groups = {updatePwd.class, reg.class})
@NotBlank(message = "新密码不能为空", groups = {updatePwd.class})
private String newPassword;
/**

View File

@ -15,8 +15,6 @@ import cn.stylefeng.roses.kernel.system.modular.user.service.SysUserService;
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@ -47,7 +45,7 @@ public class SysUserController {
* @author chenjinlong
* @date 2021/01/16 13:50
*/
@PostResource(name = "系统用户_注册", path = "/sysUser/register")
@PostResource(name = "系统用户_注册", path = "/sysUser/register", requiredLogin = false, requiredPermission = false)
public ResponseData register(@RequestBody @Validated(SysUserRequest.reg.class) SysUserRequest sysUserRequest) {
sysUserService.register(sysUserRequest);
return new SuccessResponseData();

View File

@ -2,6 +2,7 @@ package cn.stylefeng.roses.kernel.system.modular.user.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.stylefeng.roses.kernel.auth.api.SessionManagerApi;
@ -19,7 +20,6 @@ import cn.stylefeng.roses.kernel.rule.enums.TreeNodeEnum;
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
import cn.stylefeng.roses.kernel.rule.factory.DefaultTreeBuildFactory;
import cn.stylefeng.roses.kernel.rule.pojo.dict.SimpleDict;
import cn.stylefeng.roses.kernel.rule.pojo.tree.DefaultTreeNode;
import cn.stylefeng.roses.kernel.rule.pojo.tree.UserSelectTreeNode;
import cn.stylefeng.roses.kernel.system.DataScopeApi;
import cn.stylefeng.roses.kernel.system.OrganizationServiceApi;
@ -53,7 +53,6 @@ import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
import cn.stylefeng.roses.kernel.system.util.DataScopeUtil;
import com.alibaba.excel.support.ExcelTypeEnum;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -117,6 +116,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
public void register(SysUserRequest sysUserRequest) {
SysUser sysUser = new SysUser();
BeanUtil.copyProperties(sysUserRequest, sysUser);
sysUser.setRealName(IdUtil.simpleUUID());
SysUserCreateFactory.fillAddSysUser(sysUser);
// 保存用户
this.save(sysUser);
}
@ -604,7 +605,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
orgTreeNode.setSort(hrOrganization.getOrgSort());
treeNodeList.add(orgTreeNode);
List<UserSelectTreeNode> userNodeList = this.getUserTreeNodeList(hrOrganization.getOrgId());
if(userNodeList.size()>0){
if (userNodeList.size() > 0) {
treeNodeList.addAll(userNodeList);
}
}