Browse Source

Merge branch 'dev' of http://www.lockingos.org:3000/yeqd/user-parent into dev

# Conflicts:
#	user-service/src/main/java/com/hp/user/service/utils/HttpResult.java
dev
1517874642 4 years ago
parent
commit
3b3854655c
12 changed files with 208 additions and 16 deletions
  1. +5
    -1
      user-service/pom.xml
  2. +14
    -0
      user-service/src/main/java/com/hp/user/service/constants/UserConstants.java
  3. +3
    -1
      user-service/src/main/java/com/hp/user/service/controller/AreaController.java
  4. +3
    -2
      user-service/src/main/java/com/hp/user/service/controller/CompanyController.java
  5. +2
    -0
      user-service/src/main/java/com/hp/user/service/controller/MessageController.java
  6. +3
    -2
      user-service/src/main/java/com/hp/user/service/controller/StationController.java
  7. +37
    -2
      user-service/src/main/java/com/hp/user/service/impl/MessageServiceImpl.java
  8. +0
    -1
      user-service/src/main/java/com/hp/user/service/impl/StationServiceImpl.java
  9. +0
    -6
      user-service/src/main/java/com/hp/user/service/redis/RedisOperation.java
  10. +62
    -0
      user-service/src/main/java/com/hp/user/service/utils/HttpResult.java
  11. +1
    -1
      user-service/src/main/java/com/hp/user/service/utils/IdWorker.java
  12. +78
    -0
      user-service/src/main/java/com/hp/user/service/utils/SendSmsUtil.java

+ 5
- 1
user-service/pom.xml View File

@@ -163,7 +163,11 @@
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>

<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>4.5.3</version>
</dependency>


</dependencies>


+ 14
- 0
user-service/src/main/java/com/hp/user/service/constants/UserConstants.java View File

@@ -0,0 +1,14 @@
package com.hp.user.service.constants;

public class UserConstants {
/**
* 验证码redis前缀
*/
public static String VERIFICATION_CODE = "verificationCode@";
/**
* rediskey失效时间
*/
public static int EXPIRE_SECONDS = 900;

}

+ 3
- 1
user-service/src/main/java/com/hp/user/service/controller/AreaController.java View File

@@ -1,10 +1,12 @@
package com.hp.user.service.controller;

import com.hp.user.client.entity.AreaVO;
import com.hp.user.utils.HttpResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.hp.user.client.service.UserAreaService;
import com.hp.user.service.utils.HttpResult;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;


+ 3
- 2
user-service/src/main/java/com/hp/user/service/controller/CompanyController.java View File

@@ -3,8 +3,9 @@ package com.hp.user.service.controller;
import com.hp.user.client.entity.*;
import com.hp.user.client.service.AuditService;
import com.hp.user.client.service.CustomerCompanyService;
import com.hp.user.util.IdWorker;
import com.hp.user.utils.HttpResult;
import com.hp.user.service.utils.HttpResult;
import com.hp.user.service.utils.IdWorker;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;


+ 2
- 0
user-service/src/main/java/com/hp/user/service/controller/MessageController.java View File

@@ -5,6 +5,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.hp.user.client.service.MessageService;
import com.hp.user.service.utils.SendSmsUtil;

import io.swagger.annotations.Api;

@@ -21,6 +22,7 @@ public class MessageController {
@Autowired
private MessageService messageService;
/**
* 发送验证码
* @param phoneNumber


+ 3
- 2
user-service/src/main/java/com/hp/user/service/controller/StationController.java View File

@@ -3,8 +3,9 @@ package com.hp.user.service.controller;
import com.hp.user.client.entity.StationPage;
import com.hp.user.client.entity.StationVO;
import com.hp.user.client.service.StationService;
import com.hp.user.util.IdWorker;
import com.hp.user.utils.HttpResult;
import com.hp.user.service.utils.HttpResult;
import com.hp.user.service.utils.IdWorker;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;


+ 37
- 2
user-service/src/main/java/com/hp/user/service/impl/MessageServiceImpl.java View File

@@ -1,8 +1,17 @@
package com.hp.user.service.impl;

import java.util.Map;
import java.util.Random;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.hp.user.client.service.MessageService;
import com.hp.user.service.constants.UserConstants;
import com.hp.user.service.redis.RedisOperation;
import com.hp.user.service.utils.SendSmsUtil;

import redis.clients.jedis.Jedis;

/**
* 信息服务实现类
@@ -12,11 +21,37 @@ import com.hp.user.client.service.MessageService;
*/
@Service
public class MessageServiceImpl implements MessageService {
@Autowired
private SendSmsUtil sendSmsUtil;
@Autowired
private RedisOperation redisOperation;

@Override
public void sendVerificationCode(String phone) {
// TODO Auto-generated method stub
try {
Random rd = new Random();
StringBuilder code = new StringBuilder();
for(int i=0;i<6;i++) {
code.append(rd.nextInt(10));
}
String codeStr = code.toString();
Map map = sendSmsUtil.sendVerificationCode(phone, codeStr);
if("OK".equals(map.get("Code"))) {
//调用阿里云接口成功
//调用成功后需要将code缓存到redis中
Jedis jedis = redisOperation.getRedis();
jedis.setex(UserConstants.VERIFICATION_CODE+phone, UserConstants.EXPIRE_SECONDS, codeStr);
jedis.close();
}else {
//调用失败阿里云接口成功
}
}catch(Exception e) {
}
}

@Override


+ 0
- 1
user-service/src/main/java/com/hp/user/service/impl/StationServiceImpl.java View File

@@ -10,7 +10,6 @@ import com.hp.user.client.service.StationService;
import com.hp.user.service.dao.StationMapper;
import com.hp.user.service.entity.CustomerCompany;
import com.hp.user.service.entity.Station;
import com.hp.user.util.IdWorker;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;


+ 0
- 6
user-service/src/main/java/com/hp/user/service/redis/RedisOperation.java View File

@@ -1,11 +1,5 @@
package com.hp.user.service.redis;

import java.io.IOException;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.apache.commons.pool2.impl.GenericObjectPoolConfig;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.ApplicationArguments;


+ 62
- 0
user-service/src/main/java/com/hp/user/service/utils/HttpResult.java View File

@@ -0,0 +1,62 @@
package com.hp.user.utils;
import java.io.Serializable;

public class HttpResult implements Serializable {
private int code; // 状态码
private String message;
private Object data;

public HttpResult() {

}

public HttpResult(int code, String message, Object data) {
this.code = code;
this.message = message;
this.data = data;
}

public static HttpResult success() {
return new HttpResult(0, "操作成功", "");
}

public static HttpResult success(Object data) {
return new HttpResult(0, "操作成功", data);
}

public static HttpResult success(String message, Object data) {
return new HttpResult(0, message, data);
}

public static HttpResult fail() {
return new HttpResult(-1, "操作失败", "");
}

public static HttpResult fail(String message) {
return new HttpResult(-1, message, "");
}

public int getCode() {
return code;
}

public void setCode(int code) {
this.code = code;
}

public String getMessage() {
return message;
}

public void setMessage(String message) {
this.message = message;
}

public Object getData() {
return data;
}

public void setData(Object data) {
this.data = data;
}
}

user-service/src/main/java/com/hp/user/util/IdWorker.java → user-service/src/main/java/com/hp/user/service/utils/IdWorker.java View File

@@ -1,4 +1,4 @@
package com.hp.user.util;
package com.hp.user.service.utils;

/**
* Id生成器

+ 78
- 0
user-service/src/main/java/com/hp/user/service/utils/SendSmsUtil.java View File

@@ -0,0 +1,78 @@
package com.hp.user.service.utils;
import java.util.Map;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.stereotype.Component;

import com.alibaba.fastjson.JSONObject;
import com.aliyuncs.CommonRequest;
import com.aliyuncs.CommonResponse;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.profile.DefaultProfile;
import com.google.gson.Gson;

@Component
public class SendSmsUtil implements ApplicationRunner{
@Value("${aliyun.regionId}")
private String regionId;
@Value("${aliyun.accessKeyId}")
private String accessKeyId;
@Value("${aliyun.secret}")
private String secret;
@Value("${aliyun.signName}")
private String signName;
@Value("${aliyun.templateCode}")
private String templateCode;
private DefaultProfile profile = null;

@Override
public void run(ApplicationArguments args) throws Exception {
if(profile == null) {
profile = DefaultProfile.getProfile(regionId, accessKeyId, secret);
}
}
/**
* 验证码发送
* @param phoneNumbers 手机号码
* @param code 6位随机验证码
* @return
* @throws ServerException
* @throws ClientException
*/
public Map sendVerificationCode(String phoneNumbers,String code) throws ServerException, ClientException {
IAcsClient client = new DefaultAcsClient(profile);
CommonRequest request = new CommonRequest();
request.setSysDomain("dysmsapi.aliyuncs.com");
request.setSysVersion("2017-05-25");
request.setSysAction("SendSms");
// 接收短信的手机号码
request.putQueryParameter("PhoneNumbers", phoneNumbers);
// 短信签名名称。请在控制台签名管理页面签名名称一列查看(必须是已添加、并通过审核的短信签名)。
request.putQueryParameter("SignName", signName);
// 短信模板ID
request.putQueryParameter("TemplateCode", templateCode);
// 短信模板变量对应的实际值,JSON格式。
JSONObject codeJson = new JSONObject();
codeJson.put("code", code);
request.putQueryParameter("TemplateParam", codeJson.toJSONString());
CommonResponse commonResponse = client.getCommonResponse(request);
String data = commonResponse.getData();
String sData = data.replaceAll("'\'", "");
// log_print("sendSms", sData);
Gson gson = new Gson();
Map map = gson.fromJson(sData, Map.class);
return map;
}

}

Loading…
Cancel
Save