Browse Source

政府端登录发送短信验证码接口开发完成

dev
yinzuomei 5 years ago
parent
commit
21e6c59496
  1. 2
      epmet-admin/epmet-admin-client/src/main/java/com/epmet/feign/ParamsFeignClient.java
  2. 2
      epmet-auth/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
  3. 5
      epmet-auth/src/main/java/com/epmet/service/impl/GovLoginServiceImpl.java
  4. 4
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/Constant.java
  5. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  6. 2
      epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/feign/MessageFeignClient.java
  7. 4
      epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java
  8. 3
      epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java
  9. 5
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java

2
epmet-admin/epmet-admin-client/src/main/java/com/epmet/feign/ParamsFeignClient.java

@ -22,7 +22,7 @@ import org.springframework.web.bind.annotation.RequestParam;
* @author Mark sunlightcs@gmail.com * @author Mark sunlightcs@gmail.com
* @since 1.1.0 * @since 1.1.0
*/ */
@FeignClient(name = ServiceConstant.EPMET_ADMIN_SERVER, fallback = ParamsFeignClientFallback.class,url ="http://localhost:8082" ) @FeignClient(name = ServiceConstant.EPMET_ADMIN_SERVER, fallback = ParamsFeignClientFallback.class)
public interface ParamsFeignClient { public interface ParamsFeignClient {
/** /**

2
epmet-auth/src/main/java/com/epmet/feign/EpmetUserFeignClient.java

@ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.RequestBody;
* @Author yinzuomei * @Author yinzuomei
* @Date 2020/3/16 14:48 * @Date 2020/3/16 14:48
*/ */
@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallback.class ,url = "http://localhost:8087") @FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallback = EpmetUserFeignClientFallback.class)
public interface EpmetUserFeignClient { public interface EpmetUserFeignClient {
/** /**

5
epmet-auth/src/main/java/com/epmet/service/impl/GovLoginServiceImpl.java

@ -1,6 +1,5 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.epmet.commons.tools.constant.Constant;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.PhoneValidatorUtils; import com.epmet.commons.tools.validator.PhoneValidatorUtils;
@ -60,8 +59,8 @@ public class GovLoginServiceImpl implements GovLoginService {
return new Result().error(smsCodeResult.getCode()); return new Result().error(smsCodeResult.getCode());
} }
//4、保存短信验证码(删除现有短信验证码、将新的短信验证码存入Redis) //4、保存短信验证码(删除现有短信验证码、将新的短信验证码存入Redis)
captchaRedis.saveSmsCode(formDTO,smsCodeResult.getData().get(Constant.SMS_CODE)); captchaRedis.saveSmsCode(formDTO,smsCodeResult.getData().get("code"));
logger.info(String.format(SEND_SMS_CODE_ERROR,formDTO.getPhone())); logger.info(String.format("发送短信验证码成功,手机号[%s]",formDTO.getPhone()));
return new Result(); return new Result();
} }
} }

4
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/Constant.java

@ -119,8 +119,4 @@ public interface Constant {
*/ */
String NO="no"; String NO="no";
/**
* 短信验证码code
*/
String SMS_CODE="smsCode";
} }

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java

@ -205,6 +205,6 @@ public class RedisKeys {
* @Date 2020/4/18 13:54 * @Date 2020/4/18 13:54
**/ **/
public static String getLoginSmsCodeKey(String app, String client, String phone, String smsCode) { public static String getLoginSmsCodeKey(String app, String client, String phone, String smsCode) {
return String.format(rootPrefix+":%s:%s:%s",app,client,phone); return String.format(rootPrefix+"smsCode:login:%s:%s:%s",app,client,phone);
} }
} }

2
epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/feign/MessageFeignClient.java

@ -12,7 +12,7 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@FeignClient(name = ServiceConstant.EPMET_MESSAGE_SERVER, fallback = MessageFeignClientFallback.class,url = "http://localhost:8085") @FeignClient(name = ServiceConstant.EPMET_MESSAGE_SERVER, fallback = MessageFeignClientFallback.class)
public interface MessageFeignClient { public interface MessageFeignClient {
/** /**

4
epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/SysSmsServiceImpl.java

@ -116,7 +116,7 @@ public class SysSmsServiceImpl extends BaseServiceImpl<SysSmsDao, SysSmsEntity>
Integer code = (int) ((Math.random() * 9 + 1) * 100000); Integer code = (int) ((Math.random() * 9 + 1) * 100000);
String codeStr = String.valueOf(code); String codeStr = String.valueOf(code);
HashMap<String, String> map = new HashMap<>(); HashMap<String, String> map = new HashMap<>();
map.put(Constant.SMS_CODE, codeStr); map.put("code", codeStr);
try { try {
String paramJson = new ObjectMapper().writeValueAsString(map); String paramJson = new ObjectMapper().writeValueAsString(map);
@ -128,7 +128,7 @@ public class SysSmsServiceImpl extends BaseServiceImpl<SysSmsDao, SysSmsEntity>
Result result = messageFeignClient.send(sysSmsDTO); Result result = messageFeignClient.send(sysSmsDTO);
if (result != null && result.success()) { if (result != null && result.success()) {
HashMap<String, String> data = new HashMap<>(); HashMap<String, String> data = new HashMap<>();
data.put(Constant.SMS_CODE, codeStr); data.put("code", codeStr);
return new Result().ok(data); return new Result().ok(data);
} else { } else {
logger.error(String.format("短信验证码发送失败,手机号:%s。code:%d,msg:%s", mobile, result.getCode(), result.getMsg())); logger.error(String.format("短信验证码发送失败,手机号:%s。code:%d,msg:%s", mobile, result.getCode(), result.getMsg()));

3
epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java

@ -1,6 +1,5 @@
package com.epmet.modules.partymember.service.impl; package com.epmet.modules.partymember.service.impl;
import com.epmet.commons.tools.constant.Constant;
import com.epmet.commons.tools.constant.EpmetRoleKeyConstant; import com.epmet.commons.tools.constant.EpmetRoleKeyConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
@ -123,7 +122,7 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService
partyMemberInfoRedis.deleteUserMobileCodeByPattern(fromDTO.getUserId(), fromDTO.getMobile()); partyMemberInfoRedis.deleteUserMobileCodeByPattern(fromDTO.getUserId(), fromDTO.getMobile());
//将验证码存入Redis //将验证码存入Redis
partyMemberInfoRedis.setUserMobileCode(fromDTO.getUserId(), fromDTO.getMobile(), message.get(Constant.SMS_CODE)); partyMemberInfoRedis.setUserMobileCode(fromDTO.getUserId(), fromDTO.getMobile(), message.get("code"));
//将访问记录更新到热心居民申请行为记录表 //将访问记录更新到热心居民申请行为记录表
saveOrUpdateVisit(fromDTO.getVisitId(), null, PartyMemberConstant.OPERATE_OPERATE_SMS_CODE); saveOrUpdateVisit(fromDTO.getVisitId(), null, PartyMemberConstant.OPERATE_OPERATE_SMS_CODE);

5
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserResiInfoServiceImpl.java

@ -20,7 +20,6 @@ package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.Constant;
import com.epmet.commons.tools.constant.EpmetRoleKeyConstant; import com.epmet.commons.tools.constant.EpmetRoleKeyConstant;
import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
@ -210,13 +209,13 @@ public class UserResiInfoServiceImpl extends BaseServiceImpl<UserResiInfoDao, Us
//3:调用短信服务 生成验证码发送短信 //3:调用短信服务 生成验证码发送短信
result = messageFeignClient.sendSmsCaptcha(verificationCodeFormDTO.getMobile()); result = messageFeignClient.sendSmsCaptcha(verificationCodeFormDTO.getMobile());
Map<String,Object> map = (Map<String, Object>) result.getData(); Map<String,Object> map = (Map<String, Object>) result.getData();
if (null == map || null == map.get(Constant.SMS_CODE)) { if (null == map || null == map.get("code")) {
return new Result().error(EpmetErrorCode.MOBILE_GET_CODE_ERROR.getCode()); return new Result().error(EpmetErrorCode.MOBILE_GET_CODE_ERROR.getCode());
} }
//4:删除缓存中可能存在的旧验证码 //4:删除缓存中可能存在的旧验证码
userResiInfoRedis.deleteOldUserMobileCode(verificationCodeFormDTO.getUserId(), verificationCodeFormDTO.getMobile()); userResiInfoRedis.deleteOldUserMobileCode(verificationCodeFormDTO.getUserId(), verificationCodeFormDTO.getMobile());
//5:将验证码存入redis //5:将验证码存入redis
userResiInfoRedis.setUserResiMobileCode(verificationCodeFormDTO.getUserId(),verificationCodeFormDTO.getMobile(),map.get(Constant.SMS_CODE).toString()); userResiInfoRedis.setUserResiMobileCode(verificationCodeFormDTO.getUserId(),verificationCodeFormDTO.getMobile(),map.get("code").toString());
return result; return result;
} }

Loading…
Cancel
Save