From 08f1b1f1804a8bd833d42f257908d80e88387b55 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 14 三月 2025 11:27:47 +0800 Subject: [PATCH] 3.5增加登录验证、修改密码、人员列表调整 --- flower_city/src/main/java/com/dg/core/util/SmsUtil.java | 200 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 200 insertions(+), 0 deletions(-) diff --git a/flower_city/src/main/java/com/dg/core/util/SmsUtil.java b/flower_city/src/main/java/com/dg/core/util/SmsUtil.java index 5f439db..f8b5199 100644 --- a/flower_city/src/main/java/com/dg/core/util/SmsUtil.java +++ b/flower_city/src/main/java/com/dg/core/util/SmsUtil.java @@ -1,5 +1,6 @@ package com.dg.core.util; +import com.alibaba.fastjson.JSONObject; import com.aliyuncs.CommonRequest; import com.aliyuncs.CommonResponse; import com.aliyuncs.DefaultAcsClient; @@ -11,6 +12,9 @@ import com.dg.core.ResultData; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +import com.squareup.okhttp.OkHttpClient; +import com.squareup.okhttp.Request; +import com.squareup.okhttp.Response; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -18,7 +22,11 @@ import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.io.IOException; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.HashMap; +import java.util.Map; import java.util.Random; import java.util.concurrent.TimeUnit; @@ -37,6 +45,12 @@ // 注入redisTemplate @Resource RedisTemplate<String, Object> redisTemplate; + + private String LoginName="DSC1210052"; + + private String Pwd="pzhsjj@123"; + + private String FeeType="2"; /** * 发送短信登录验证码 @@ -89,6 +103,44 @@ } /** + * 发送短信登录验证码(电信平台) + * + * @param tel + * 电话 + */ + + public ResultData sendSmsNew(String tel) { + String url = + "https://dxsdk.028lk.com:8082/Api/SendSms?"+"LoginName="+LoginName+"&Pwd="+Pwd+"&FeeType="+FeeType+"&Mobile="+tel+"&Content="; + Random rd = new Random(); + int code = rd.nextInt(900000) + 100000; + String content="您的验证码为:"+code+",用于手机验证,15分钟内有效,请勿泄露于他人!"; + url=url+content; + OkHttpClient client = new OkHttpClient(); + Response response; + //解密数据 + String rsa = null; + Request request = new Request.Builder() + .url(url) + .get() + .addHeader("Content-Type", "application/x-www-form-urlencoded") + .build(); + try { + response = client.newCall(request).execute(); + redisTemplate.opsForValue().set(tel, code + "", 5, TimeUnit.MINUTES); +// rsa = response.body().string().split("|")[0]; + rsa = response.message(); + if (!rsa.equals("OK")){ + return ResultData.success("短信发送失败"); + } + } catch (IOException e) { + e.printStackTrace(); + return ResultData.success("短信发送失败"); + } + return ResultData.success("短信发送成功"); + } + + /** * 发送工单超时短信 * * @param tel @@ -136,6 +188,43 @@ return ResultData.error("短信发送失败"); } return ResultData.error("短信发送失败"); + } + + + /** + * 发送工单超时短信(电信) + * + * @param tel + * 电话 + * @param name + * 工单名 + */ + public ResultData<Object> sendSmsOvertimeNew(String tel,String name) { + String url = + "https://dxsdk.028lk.com:8082/Api/SendSms?"+"LoginName="+LoginName+"&Pwd="+Pwd+"&FeeType="+FeeType+"&Mobile="+tel+"&Content="; + Random rd = new Random(); + String content=name+"的导办工单超时未处理,请及时通知!"; + url=url+content; + OkHttpClient client = new OkHttpClient(); + Response response; + //解密数据 + String rsa = null; + Request request = new Request.Builder() + .url(url) + .get() + .addHeader("Content-Type", "application/x-www-form-urlencoded") + .build(); + try { + response = client.newCall(request).execute(); + rsa = response.message(); + if (!rsa.equals("OK")){ + return ResultData.success("短信发送失败"); + } + } catch (IOException e) { + e.printStackTrace(); + return ResultData.success("短信发送失败"); + } + return ResultData.success("短信发送成功"); } /** @@ -190,6 +279,43 @@ /** + * 发送工单完成短信 + * + * @param tel + * 电话 + * @param name + * 工单名 + */ + public ResultData<Object> sendSmsCompleteNew(String tel,String name) { + String url = + "https://dxsdk.028lk.com:8082/Api/SendSms?"+"LoginName="+LoginName+"&Pwd="+Pwd+"&FeeType="+FeeType+"&Mobile="+tel+"&Content="; + Random rd = new Random(); + String content="您的"+name+"导办工单已由工作人员处理完成,请通过个人中心-我的申请导办查询。"; + url=url+content; + OkHttpClient client = new OkHttpClient(); + Response response; + //解密数据 + String rsa = null; + Request request = new Request.Builder() + .url(url) + .get() + .addHeader("Content-Type", "application/x-www-form-urlencoded") + .build(); + try { + response = client.newCall(request).execute(); + rsa = response.message(); + if (!rsa.equals("OK")){ + return ResultData.success("短信发送失败"); + } + } catch (IOException e) { + e.printStackTrace(); + return ResultData.success("短信发送失败"); + } + return ResultData.success("短信发送成功"); + } + + + /** * 发送工单提交短信 * * @param tel @@ -238,4 +364,78 @@ } return ResultData.error("短信发送失败"); } + + + /** + * 发送工单提交短信(电信平台) + * + * @param tel + * 电话 + * @param name + * 工单名 + */ + public ResultData<Object> sendSmsSubmitNew(String tel,String name) { + String url = + "https://dxsdk.028lk.com:8082/Api/SendSms?"+"LoginName="+LoginName+"&Pwd="+Pwd+"&FeeType="+FeeType+"&Mobile="+tel+"&Content="; + Random rd = new Random(); + String content="您在"+ LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) +"收到新的导办工单,请"+name+"尽快处理。"; + url=url+content; + OkHttpClient client = new OkHttpClient(); + Response response; + //解密数据 + String rsa = null; + Request request = new Request.Builder() + .url(url) + .get() + .addHeader("Content-Type", "application/x-www-form-urlencoded") + .build(); + try { + response = client.newCall(request).execute(); + rsa = response.message(); + if (!rsa.equals("OK")){ + return ResultData.success("短信发送失败"); + } + } catch (IOException e) { + e.printStackTrace(); + return ResultData.success("短信发送失败"); + } + return ResultData.success("短信发送成功"); + } + + + /** + * 发送工单提交短信(电信平台) + * + * @param tel + * 电话 + * @param name + * 工单名 + */ + public ResultData<Object> sendSmsOvertimeRemind(String tel,String name) { + String url = + "https://dxsdk.028lk.com:8082/Api/SendSms?"+"LoginName="+LoginName+"&Pwd="+Pwd+"&FeeType="+FeeType+"&Mobile="+tel+"&Content="; + Random rd = new Random(); + String content="您的待处理导办工单已超时,请 "+name+"尽快处理。"; + url=url+content; + OkHttpClient client = new OkHttpClient(); + Response response; + //解密数据 + String rsa = null; + Request request = new Request.Builder() + .url(url) + .get() + .addHeader("Content-Type", "application/x-www-form-urlencoded") + .build(); + try { + response = client.newCall(request).execute(); + rsa = response.message(); + if (!rsa.equals("OK")){ + return ResultData.success("短信发送失败"); + } + } catch (IOException e) { + e.printStackTrace(); + return ResultData.success("短信发送失败"); + } + return ResultData.success("短信发送成功"); + } } \ No newline at end of file -- Gitblit v1.7.1