public Result <dynamic> Send(string mobile, byte smsType) { int smsCode = GenerateSMSCode(); var entity = new SmsModel() { MobilePhone = mobile, SmsType = smsType, SmsCode = smsCode, SmsStatus = 0, ExpireTime = DateTime.Now.AddMinutes(10), CreateTime = DateTime.Now }; if (SmsRepository.Add(entity)) { var account_id = ConfigurationManager.AppSettings["SMS_Account_Sid"]; var account_token = ConfigurationManager.AppSettings["SMS_Account_Token"]; var app_Id = ConfigurationManager.AppSettings["SMS_App_Id"]; string result = string.Empty; CCPRestSDK.CCPRestSDK api = new CCPRestSDK.CCPRestSDK(); bool init = api.init("sandboxapp.cloopen.com", "8883"); api.setAccount(account_id, account_token); api.setAppId(app_Id); try { if (init) { string[] param = { smsCode.ToString(), "10分钟" }; Dictionary <string, object> retApiData = api.SendTemplateSMS(mobile, "125246", param); result = GetDictionaryData(retApiData); } else { return(new Result <dynamic>() { Code = ResultCode.Error, Message = "初始化失败" }); } } catch { } if (result.ToLower().Contains("statuscode=000000;statusmsg=成功")) { /* 调用短信接口发送短信验证码 */ return(new Result <dynamic>() { Code = ResultCode.Success, Message = "验证码发送成功" }); } } return(new Result <dynamic>() { Code = ResultCode.Error, Message = "验证码发送失败" }); }
/// <summary> /// 将发送结果插入数据库 /// </summary> /// <param name="orderDetail">订单详情</param> /// <param name="mobile">手机号码</param> /// <param name="content">发生内容</param> /// <param name="SendStatus">短信发送是否成功状态</param> private void AddSms(Tbl_OrderDetail orderDetail, string mobile, string content, bool SendStatus) { var sms = new Tbl_Sms { OrderDtlID = orderDetail.OrderDetailId, EnterpriseId = orderDetail.EnterpriseId, ScenicId = orderDetail.ScenicId, OrderNo = orderDetail.OrderNo, SmsTmeplateId = 0, Mobile = mobile, SmsContent = content, SendResult = SendStatus ? "发送成功" : "发送失败", OrderId = 1, DataStatus = SendStatus ? 1 : 0, CreateTime = DateTime.Now }; _smsRepository.Add(sms); }