diff --git a/jyjz-framework/jyjz-framework-securityweb/pom.xml b/jyjz-framework/jyjz-framework-securityweb/pom.xml
index a40c0df..a91a0ee 100644
--- a/jyjz-framework/jyjz-framework-securityweb/pom.xml
+++ b/jyjz-framework/jyjz-framework-securityweb/pom.xml
@@ -55,6 +55,18 @@
jyjz-framework-security
+
+
+ com.aliyun
+ aliyun-java-sdk-core
+ 4.5.16
+
+
+ com.aliyun
+ aliyun-java-sdk-dysmsapi
+ 2.1.0
+
+
com.github.penggle
diff --git a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java
index 0ed5bda..a882b46 100644
--- a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java
+++ b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/service/impl/SmsLoginServiceImpl.java
@@ -2,7 +2,6 @@ package cn.jyjz.xiaoyao.framework.security.service.impl;
import cn.hutool.core.util.RandomUtil;
import cn.jyjz.xiaoyao.common.base.config.XiaoyaoConfig;
-import cn.jyjz.xiaoyao.common.base.constant.RequestParameterConstans;
import cn.jyjz.xiaoyao.common.base.service.UserTokenOnlineService;
import cn.jyjz.xiaoyao.common.base.service.UserTokenService;
import cn.jyjz.xiaoyao.common.base.util.validator.PhoneNumberValidator;
@@ -14,10 +13,10 @@ import cn.jyjz.xiaoyao.common.redis.cache.constants.CacheConstants;
import cn.jyjz.xiaoyao.framework.security.authentication.sms.SmsProvider;
import cn.jyjz.xiaoyao.framework.security.model.AdminUserModel;
import cn.jyjz.xiaoyao.framework.security.service.SmsLoginService;
+import cn.jyjz.xiaoyao.framework.security.sms.MsmService;
import cn.jyjz.xiaoyao.framework.security.utils.JwtUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.Authentication;
@@ -26,6 +25,8 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
+import java.util.Map;
import java.util.concurrent.Executor;
import java.util.regex.Matcher;
@@ -46,6 +47,9 @@ public class SmsLoginServiceImpl implements SmsLoginService {
private SmsProvider smsProvider;
@Resource
private XiaoyaoConfig xiaoyaoConfig;
+
+ @Resource
+ private MsmService msmservice;
@Override
public ResultVo sendCode(String phone) {
//校验手机号
@@ -55,8 +59,12 @@ public class SmsLoginServiceImpl implements SmsLoginService {
}
//生成验证码
String code = RandomUtil.randomNumbers(6);
-
+
//TODO 发送短信
+ Map map=new HashMap<>();
+ map.put("code",code);
+ msmservice.send(map,phone);
+
//用户登录信息写入缓存
iCacheManager.put(CacheConstants.USER_PHONE_MODEL_NAME,phone,code,CacheConstants.CACHE_TIME);
diff --git a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/sms/MsmService.java b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/sms/MsmService.java
new file mode 100644
index 0000000..26bc64b
--- /dev/null
+++ b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/sms/MsmService.java
@@ -0,0 +1,8 @@
+package cn.jyjz.xiaoyao.framework.security.sms;
+
+import java.util.Map;
+
+public interface MsmService {
+ //发送验证码
+ boolean send(Map param, String phone);
+}
diff --git a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/sms/MsmServiceImpl.java b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/sms/MsmServiceImpl.java
new file mode 100644
index 0000000..a33bff5
--- /dev/null
+++ b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/sms/MsmServiceImpl.java
@@ -0,0 +1,46 @@
+package cn.jyjz.xiaoyao.framework.security.sms;
+
+import cn.jyjz.xiaoyao.common.base.util.StringUtils;
+import com.alibaba.fastjson.JSONObject;
+import com.aliyuncs.CommonRequest;
+import com.aliyuncs.CommonResponse;
+import com.aliyuncs.DefaultAcsClient;
+import com.aliyuncs.IAcsClient;
+import com.aliyuncs.profile.DefaultProfile;
+import org.springframework.stereotype.Service;
+
+import java.util.Map;
+
+@Service
+public class MsmServiceImpl implements MsmService{
+ @Override
+ public boolean send(Map param, String phone) {
+ if(StringUtils.isEmpty(phone)) return false;
+
+ //default 地域节点, 后面是 阿里云的 id和秘钥
+ DefaultProfile profile = DefaultProfile.getProfile("default", "LTAI5t764kWdwYXDGYzDnRuJ", "iI2HiElIzbNiyGw1h4UdRE6Fw8159f");
+ IAcsClient client = new DefaultAcsClient(profile);
+
+ //这里不能修改
+ CommonRequest request = new CommonRequest();
+ //request.setProtocol(ProtocolType.HTTPS);
+// request.setMethod(MethodType.POST);
+ request.setDomain("dysmsapi.aliyuncs.com");
+ request.setVersion("2017-05-25");
+ request.setAction("SendSms");
+
+ request.putQueryParameter("PhoneNumbers", phone); //手机号
+ request.putQueryParameter("SignName", "北京码城科技"); //申请阿里云 签名名称(用的也是阿里云和模板配套的服务器配置好)
+ request.putQueryParameter("TemplateCode", "SMS_465342327"); //申请阿里云 模板code(用的也是阿里云和签名配套的服务器配置好)
+ request.putQueryParameter("TemplateParam", JSONObject.toJSONString(param));
+
+ try {
+ CommonResponse response = client.getCommonResponse(request);
+ System.out.println(response.getData());
+ return response.getHttpResponse().isSuccess();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return false;
+ }
+}
diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java
index 932b91b..59408fb 100644
--- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java
+++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrAiApprovalTools.java
@@ -6,16 +6,19 @@ import cn.jyjz.xiaoyao.common.base.vo.ResultVo;
import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil;
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
import cn.jyjz.xiaoyao.ocr.service.IOcrSearchHistoryService;
+import cn.jyjz.xiaoyao.framework.security.sms.MsmService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
import java.util.Map;
/**
* ocr控制器
*
* @author 你的肉
+ * AI审批工单
* @Date 2024-03-17 19:53:30
*/
@CrossOrigin
@@ -44,6 +47,9 @@ public class OcrAiApprovalTools {
return ResultVoUtil.success(toolscount);
}
+ /*
+ ai审批工单
+ */
@RequestMapping(value = "/aiApprovaltools", method = RequestMethod.GET)
public ResultVo aiApprovaltools(HttpServletRequest request,@RequestParam(value = "taskid", required = true) String taskid) {
UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request));