Browse Source

添加短信类型

杨杰 6 years ago
parent
commit
bcbd90edde

+ 3 - 3
src/main/java/com/llisoft/sms/controller/SmsController.java

@@ -28,9 +28,9 @@ public class SmsController {
 	
 	@ApiOperation(value="发送验证码")
 	@PostMapping("/sendCode")
-	public ResponseVo<Boolean> sendCode(@Valid @RequestBody SendCodeRequestVo vo, HttpServletRequest request) throws Exception{
-		return ResponseVo.success(smsService.sendCode(vo.getPhone(), vo.getAppkey(), 
-			vo.getScene(), vo.getToken(), vo.getSessionid(), vo.getSig(), ServletUtil.getIp(request)));
+	public ResponseVo<Boolean> sendCode(@Valid @RequestBody SendCodeRequestVo requestVo, HttpServletRequest request) throws Exception{
+		return ResponseVo.success(smsService.sendCode(requestVo.getPhone(), requestVo.getAppkey(), requestVo.getScene(), requestVo.getToken(), 
+			requestVo.getSessionid(), requestVo.getSig(), ServletUtil.getIp(request), requestVo.getType()));
 	}
 	
 	@ApiOperation(value="发送消息")

+ 8 - 3
src/main/java/com/llisoft/sms/service/AliyunService.java

@@ -54,9 +54,10 @@ public class AliyunService {
 	 * 发送短信
 	 * @param phone
 	 * @param code
+	 * @param type 类型(0麦塔、1青谷)
 	 */
 	@Async
-	public void sms(String phone, String code) {
+	public void sms(String phone, String code, int type) {
 		logger.info("阿里云发送验证码: {} : {}", phone, code);
 		CommonRequest request = new CommonRequest();
 //        request.setSysProtocol(ProtocolType.HTTPS);
@@ -65,8 +66,12 @@ public class AliyunService {
         request.setSysDomain("dysmsapi.aliyuncs.com");
         request.setSysVersion("2017-05-25"); // 固定字符串
         request.putQueryParameter("PhoneNumbers", phone);
-        request.putQueryParameter("SignName", "大鱼测试"); // 签名
-        request.putQueryParameter("TemplateCode", "SMS_6792308"); // 模板ID
+        if (type == 0) { // 麦塔
+        	request.putQueryParameter("SignName", "麦塔考试系统"); // 签名
+		}else if (type == 1) { // 青谷
+			request.putQueryParameter("SignName", "青谷考试系统"); // 签名
+		}
+        request.putQueryParameter("TemplateCode", "SMS_147370232"); // 模板ID
         request.putQueryParameter("TemplateParam", "{\"customer\":\""+code+"\"}");
         try {
             CommonResponse response = smsClient.getCommonResponse(request);

+ 3 - 3
src/main/java/com/llisoft/sms/service/SmsService.java

@@ -35,8 +35,8 @@ public class SmsService {
 	 * @param phone
 	 * @throws Exception 
 	 */
-	public boolean sendCode(String phone, String appkey, String scene, 
-			String token, String sessionId, String sig, String ip) throws Exception {
+	public boolean sendCode(String phone, String appkey, String scene, String token, 
+			String sessionId, String sig, String ip, int type) throws Exception {
 		// 检查验证码
 		logger.info("安全验证: appkey={}, scene={}, token={}, sessionId={}, sig={}, ip={}", appkey, scene, token, sessionId, sig, ip);
 		if (debug) {
@@ -56,7 +56,7 @@ public class SmsService {
 		String code = String.valueOf(CodeUtil.ints(4));
 		RedisUtil.set(phone + "_" + code, "", 10, TimeUnit.MINUTES); // 有效期10分钟
 		logger.info("发送验证码: {}", code);
-		aliyunService.sms(phone, code); // 第三方发送短信
+		aliyunService.sms(phone, code, type); // 第三方发送短信(异步)
 		return true;
 	}
 	

+ 9 - 0
src/main/java/com/llisoft/sms/vo/SendCodeRequestVo.java

@@ -33,6 +33,9 @@ public class SendCodeRequestVo {
 	@ApiModelProperty(value="验证码参数:sig", example=" ")
 	@NotBlank(message="验证码参数:sig不能为空")
 	private String sig;
+	
+	@ApiModelProperty(value="类型(0麦塔、1青谷)")
+	private int type;
 
 	public String getPhone() {
 		return phone;
@@ -70,5 +73,11 @@ public class SendCodeRequestVo {
 	public void setSessionid(String sessionid) {
 		this.sessionid = sessionid;
 	}
+	public int getType() {
+		return type;
+	}
+	public void setType(int type) {
+		this.type = type;
+	}
 
 }

+ 2 - 2
src/main/resources/application.yml

@@ -6,8 +6,8 @@ server.port: 8002 #监听端口
   
 ##短信配置
 sms: 
-  accessKeyId: LTAIORWo0hisaiYV
-  accessKeySecret: LAM1Lf0hQJ7UCmm2HvBCxfOKFzs8d0
+  accessKeyId: LTAIuurtY1J93Uj4
+  accessKeySecret: IUkNMatSHLaiTIu674ALR7Q0wUtmkT
  
 ##REDIS配置
 spring.redis: 

+ 1 - 1
src/test/java/com/llisoft/sms/ServiceTest.java

@@ -22,7 +22,7 @@ public class ServiceTest {
 				"564565", 
 				"1AqHb9a5BYfxoNlsnrGZyDBtd7Iaiuywjkwb7JGTL5zSXBuaiyoW56n95ldyMHj5lZkimcGbA-XllwI2o9t83k9WeNehFYXOArpda-XDNiEEKeVlrJDt01j1bkUlhx_BXhvRqTX57PTdHoUBvzdGVfltzUZPC7fSbpq3ioud8KxipjUK34DBIuco5KB0GPVzM", 
 				"5XqrtZ0EaFgmmqIQes-s-CF5NpYdMgFzO50Qw4NdPuD91JWqYsOLZUWJRzsyCiSiP3DBEMIenUZ2Yn5icRXVRutJ7F5YLXWOHzeBd5iN0Jor15E1gZkJicTJ-YXNgycJpsvJz3qSJXLj7DodnTTSHvfTVz7kHbAkAzvgM_G1ZmK-3SuyCw_2vnt6f-LhzjmKHip0AsEJpIdCCgUHhRtzAPgisplTknaZGYuj8LHsUAEgXXJf0zPWeMKQBbR_nwjyPufH9PZvYLpPxsgi-EI3_2043n5gcQ5M9HWkSw4IZpXKg2BD9GedAs-ZjYQnTl91vw91i_WJZJUKppW38DPxagcXlpNL3Dg-83bjBgQSk3ELnFOsSvlW43mEJAWXGzx_ZwIULIvg6ilA_rLGyCmG5uc3inTnLQO1t6vuj4CGCFM0", 
-				"119.109.18.203"));
+				"119.109.18.203", 0));
 //		System.out.println(smsService.checkCode("13552635233", "5507"));
 		System.out.println("耗时:"+ (System.currentTimeMillis() - begin));
 	}