public HttpResponseMessage SendSMS([FromBody] YzMsg yzmsg) { if (!string.IsNullOrEmpty(yzmsg.Mobile) && !string.IsNullOrEmpty(yzmsg.SmsType)) { var messageConfigName = Enum.GetName(typeof(MessageConfigTypeEnum), Convert.ToInt32(yzmsg.SmsType)); //获取短信模版名称 var messageTemplate = _messageConfigService.GetMessageConfigByName(messageConfigName).Template; //获取到的短信模版 string messages; var strNumber = new Random().Next(100000, 1000000).ToString(); //生成大于等于100000,小于等于999999的随机数,也就是六位随机数 var nowTimestr = DateTime.Now.ToLongTimeString(); var strs = EncrypHelper.Encrypt(strNumber + "#" + yzmsg.Mobile + "$" + nowTimestr, "Hos2xNLrgfaYFY2MKuFf3g=="); //EMS 加密短信验证码 if (messageConfigName == "推荐经纪人") //不需要生成数字验证码 { var user = (UserBase)_workContext.CurrentUser; if (user != null) { var broker = _brokerService.GetBrokerByUserId(user.Id); //获取当前经纪人 if (broker == null) { return(PageHelper.toJson(PageHelper.ReturnValue(false, "获取用户失败,请检查是否登陆"))); } if (broker.Phone == yzmsg.Mobile) //不能给自己发 { return(PageHelper.toJson(PageHelper.ReturnValue(false, "对不起,不能给自己发送短信"))); } //添加到短信表中去 messages = string.Format(messageTemplate, strNumber, broker.Brokername); //更改模版 AddMessageDetails(new MessageDetailEntity { Content = messages, InvitationCode = strNumber, InvitationId = broker.Id.ToString(), Mobile = yzmsg.Mobile, Sender = yzmsg.Mobile, Title = messageConfigName, Addtime = DateTime.Now }); return(PageHelper.toJson(SMSHelper.Sending(yzmsg.Mobile, messages))); } return(PageHelper.toJson(PageHelper.ReturnValue(false, "获取用户失败,请检查是否登陆"))); } messages = string.Format(messageTemplate, strNumber); //更改模版 //添加到短信表中去 AddMessageDetails(new MessageDetailEntity { Content = messages, Mobile = yzmsg.Mobile, Sender = yzmsg.Mobile, Title = messageConfigName, Addtime = DateTime.Now }); //返回到前台的加密内容 和短信发送返回值 return(PageHelper.toJson(new { Desstr = strs, Message = SMSHelper.Sending(yzmsg.Mobile, messages) })); } return(PageHelper.toJson(PageHelper.ReturnValue(false, "数据错误,不能发送短信"))); }