public JsonResult DelAutoReplay(Entities.AutoReplyInfo item) { var result = new Result(); WeixinAutoReplyApplication.DeleteAutoReply(item); result.success = true; result.msg = "规则删除成功!"; return(Json(result)); }
// GET: Admin/WeiXin public ActionResult FocusReplay() { var item = WeixinAutoReplyApplication.GetAutoReplyByKey(CommonModel.ReplyType.Follow); if (item == null) { item = new Entities.AutoReplyInfo(); item.TextReply = "欢迎关注"; } return(View(item)); }
/// <summary> /// 删除规则 /// </summary> /// <param name="autoReplyInfo"></param> /// <returns></returns> public static void DeleteAutoReply(Entities.AutoReplyInfo autoReplyInfo) { _iAutoReplyService.DeleteAutoReply(autoReplyInfo); }
/// <summary> /// 添加/修改规则 /// </summary> /// <param name="autoReplyInfo"></param> /// <returns></returns> public static void ModAutoReply(Entities.AutoReplyInfo autoReplyInfo) { _iAutoReplyService.ModAutoReply(autoReplyInfo); }
private string GetResxml(Entities.AutoReplyInfo data, IRequestMessageBase requestBaseMsg) { string resxml = ""; try { var siteSetting = SiteSettingApplication.SiteSettings; int nowtime = ConvertDateTimeInt(DateTime.Now); if (data.ReplyContentType == 1) { if (!string.IsNullOrEmpty(data.TextReply)) { resxml = "<xml><ToUserName><![CDATA[" + requestBaseMsg.FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + requestBaseMsg.ToUserName + "]]></FromUserName><CreateTime>" + nowtime + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + data.TextReply + "]]></Content><FuncFlag>0</FuncFlag></xml>"; } } else if (data.ReplyContentType == 2) { if (string.IsNullOrWhiteSpace(siteSetting.WeixinAppId)) { Log.Info("未配置微信公众号!"); } if (string.IsNullOrEmpty(data.MediaId)) { Log.Info("素材ID不能为空!"); } var artList = _iWXMsgTemplateService.GetMedia(data.MediaId, siteSetting.WeixinAppId, siteSetting.WeixinAppSecret); StringBuilder sb = new StringBuilder(); sb.Append("<xml>"); sb.AppendFormat("<ToUserName><![CDATA[{0}]]></ToUserName>", requestBaseMsg.FromUserName); sb.AppendFormat("<FromUserName><![CDATA[{0}]]></FromUserName>", requestBaseMsg.ToUserName); sb.AppendFormat("<CreateTime>{0}</CreateTime>", nowtime); sb.Append("<MsgType><![CDATA[news]]></MsgType>"); sb.AppendFormat("<ArticleCount>{0}</ArticleCount>", artList.Count()); sb.Append("<Articles>"); foreach (var item in artList) { Log.Debug("微信自动回复图文消息的图片media_id:" + item.thumb_media_id); var ImageDir = Core.Helper.IOHelper.GetMapPath("/Storage/Weixin/AutoReply"); if (!System.IO.Directory.Exists(ImageDir)) { System.IO.Directory.CreateDirectory(ImageDir); } string filepath = Path.Combine(ImageDir, item.thumb_media_id + ".png"); if (!System.IO.File.Exists(filepath)) { MemoryStream stream = new MemoryStream(); _iWXMsgTemplateService.GetMedia(item.thumb_media_id, siteSetting.WeixinAppId, siteSetting.WeixinAppSecret, stream); System.Drawing.Image img = System.Drawing.Image.FromStream(stream); img.Save(filepath); } Log.Debug("微信自动回复图文消息的图片Url:" + filepath); var repUrl = CurrentUrlHelper.CurrentUrlNoPort() + "/Storage/Weixin/AutoReply/" + item.thumb_media_id + ".png"; sb.Append("<item>"); sb.AppendFormat("<Title><![CDATA[{0}]]></Title>", item.title); sb.AppendFormat("<Description><![CDATA[{0}]]></Description>", item.digest); sb.AppendFormat("<PicUrl><![CDATA[{0}]]></PicUrl>", repUrl); sb.AppendFormat("<Url><![CDATA[{0}]]></Url>", item.url); sb.Append("</item>"); } sb.Append("</Articles>"); sb.Append("</xml>"); resxml = sb.ToString(); } } catch (Exception e) { Log.Error(e.Message); } return(resxml); }