public JsonResult SendEmailMsg(string labelids, string title, string content, string labelinfos) { var messagePlugin = PluginsManagement.GetPlugin <IMessagePlugin>("Himall.Plugin.Message.Email"); var lids = string.IsNullOrWhiteSpace(labelids) ? null : labelids.Split(',').Select(s => long.Parse(s)).ToArray(); int pageNo = 1, pageSize = 100; var pageMode = _iMemberService.GetMembers(new MemberQuery { IsHaveEmail = true, LabelId = lids, PageNo = pageNo, PageSize = pageSize }); if (pageMode.Total == 0) { return(Json(new Result { success = false, msg = "未找到可发送邮件的会员信息!" })); } while (pageMode.Models.Count() > 0) {//暂时循环处理 string[] dests = pageMode.Models.Select(e => e.Email).ToArray(); foreach (var dest in dests) { if (!messagePlugin.Biz.CheckDestination(dest)) { return(Json(new Result { success = false, msg = "非法Email地址:" + dest })); } } var siteName = _iSiteSettingService.GetSiteSettings().SiteName; messagePlugin.Biz.SendMessages(dests, content, title); pageNo += 1; pageMode = _iMemberService.GetMembers(new MemberQuery { IsHaveEmail = true, LabelId = lids, PageNo = pageNo, PageSize = pageSize }); } var sendRecord = new Himall.Model.SendMessageRecordInfo { ContentType = WXMsgType.text, MessageType = MsgType.Email, SendContent = content == null ? "" : content, SendState = 1, SendTime = DateTime.Now, ToUserLabel = labelinfos == null ? "" : labelinfos }; _iWXMsgTemplateService.AddSendRecord(sendRecord); return(Json(new { success = true })); }
public JsonResult SendPhoneMsg(string labelids, string content, string labelinfos) { var messagePlugin = PluginsManagement.GetPlugin <IMessagePlugin>("Himall.Plugin.Message.SMS"); var lids = string.IsNullOrWhiteSpace(labelids) ? null : labelids.Split(',').Select(s => long.Parse(s)).ToArray(); int pageNo = 1, pageSize = 100; var pageMode = _iMemberService.GetMembers(new MemberQuery { IsHavePhone = true, LabelId = lids, PageNo = pageNo, PageSize = pageSize }); if (pageMode.Total == 0) { return(Json(new Result { success = false, msg = "未找到可发送短信的会员信息!" })); } var siteName = SiteSettingApplication.GetSiteSettings().SiteName; content = content + "【" + siteName + "】"; while (pageMode.Models.Count() > 0) {//暂时循环处理 string[] dests = pageMode.Models.Select(e => e.CellPhone).ToArray(); foreach (var phone in dests) { if (!string.IsNullOrWhiteSpace(phone)) { messagePlugin.Biz.SendTestMessage(phone, content); } } pageNo += 1; pageMode = _iMemberService.GetMembers(new MemberQuery { IsHavePhone = true, LabelId = lids, PageNo = pageNo, PageSize = pageSize }); } var sendRecord = new Himall.Model.SendMessageRecordInfo { ContentType = WXMsgType.text, MessageType = MsgType.SMS, SendContent = content == null ? "" : content, SendState = 1, SendTime = DateTime.Now, ToUserLabel = labelinfos == null ? "" : labelinfos }; _iWXMsgTemplateService.AddSendRecord(sendRecord); return(Json(new { success = true })); }