个人设置新增接收解绑发送验证码接口

master
duLingLing 5 years ago
parent 5315d8ddbc
commit 5a1dec2a47

@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>manage</artifactId> <artifactId>manage</artifactId>
<version>1.2.59</version> <version>1.2.60</version>
<properties> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

@ -189,7 +189,9 @@ public interface RetailAppService {
void updateAccountEmail(JSONObject device, JSONObject codekey); void updateAccountEmail(JSONObject device, JSONObject codekey);
void bindAccountPhone(JSONObject device); void sendBindAccountPhone(JSONObject device,JSONObject phone);
void sendUnbindAccountPhone(JSONObject device);
JSONObject updateAccountPhone(JSONObject device,JSONObject codekey); JSONObject updateAccountPhone(JSONObject device,JSONObject codekey);

@ -2133,7 +2133,30 @@ public class RetailAppServiceImp implements RetailAppService {
} }
@Override @Override
public void bindAccountPhone(JSONObject device) { public void sendBindAccountPhone(JSONObject device, JSONObject phone) {
String codeKey = device.getString("account_id");
String codeKeyValueRedis = stringRedisTemplate.boundValueOps(getUpdateAccountPhoneKey(codeKey)).get();
if (StringUtils.isNotEmpty(codeKeyValueRedis)) {
throw new BadRequestException("Captcha has been sent.Please check your phone or try again in 1 minutes.");
}
String codeKeyValue = RandomStringUtils.random(6, false, true);
String nationCode = phone.getString("nation_code").contains("+")?phone.getString("nation_code").substring(1):phone.getString("nation_code");
String phoneNumber = phone.getString("contact_phone");
ArrayList<String> param = new ArrayList<>();
param.add("绑定手机号");
param.add(codeKeyValue);
String expireMin = "1";
param.add(expireMin);
try {
smsSender.getSender().sendWithParam(nationCode.trim(), phoneNumber, BIND_PHONE_TEMPLID, param, "RoyalPay", "", "");
} catch (Exception e) {
logger.error(e.getMessage(), e);
throw new BadRequestException("Phone number is wrong.Please try again.");
}
stringRedisTemplate.boundValueOps(getUpdateAccountPhoneKey(codeKey)).set(codeKeyValue + "&" + nationCode + "&" + phoneNumber, Long.parseLong(expireMin), TimeUnit.MINUTES);
}
@Override
public void sendUnbindAccountPhone(JSONObject device) {
String codeKey = device.getString("account_id"); String codeKey = device.getString("account_id");
String codeKeyValueRedis = stringRedisTemplate.boundValueOps(getUpdateAccountPhoneKey(codeKey)).get(); String codeKeyValueRedis = stringRedisTemplate.boundValueOps(getUpdateAccountPhoneKey(codeKey)).get();
if (StringUtils.isNotEmpty(codeKeyValueRedis)) { if (StringUtils.isNotEmpty(codeKeyValueRedis)) {
@ -2144,7 +2167,7 @@ public class RetailAppServiceImp implements RetailAppService {
String nationCode = client.getString("nation_code").contains("+")?client.getString("nation_code").substring(1):client.getString("nation_code"); String nationCode = client.getString("nation_code").contains("+")?client.getString("nation_code").substring(1):client.getString("nation_code");
String phoneNumber = client.getString("contact_phone"); String phoneNumber = client.getString("contact_phone");
ArrayList<String> param = new ArrayList<>(); ArrayList<String> param = new ArrayList<>();
param.add("绑定手机号"); param.add("解綁绑定手机号");
param.add(codeKeyValue); param.add(codeKeyValue);
String expireMin = "1"; String expireMin = "1";
param.add(expireMin); param.add(expireMin);

@ -724,12 +724,25 @@ public class RetailAppController {
* *
* *
* @param device * @param device
* @param phone contact_phone
* @throws Exception * @throws Exception
*/ */
@PutMapping("/account/phone") @PutMapping("/account/phone/bind")
public JSONObject bindAccountPhone(@ModelAttribute(RETAIL_DEVICE) JSONObject device) throws Exception { public JSONObject sendBindAccountPhone(@ModelAttribute(RETAIL_DEVICE) JSONObject device, @RequestBody JSONObject phone) throws Exception {
retailAppService.bindAccountPhone(device); retailAppService.sendBindAccountPhone(device, phone);
return new JSONObject(); return new JSONObject();
}
/**
*
*
* @param device
* @throws Exception
*/
@PutMapping("/account/phone/unbind")
public JSONObject unBindAccountPhone(@ModelAttribute(RETAIL_DEVICE) JSONObject device) throws Exception {
retailAppService.sendUnbindAccountPhone(device);
return new JSONObject();
} }
/** /**

Loading…
Cancel
Save