public static bool SaveReplyContent(mpmsgreplycontent dto) { string sql = @"MERGE INTO MpMsgReplyContent e USING ( SELECT @ReplyId AS ReplyId, @MsgId AS MsgId,@ReplyType AS ReplyType,@ReplyContent AS ReplyContent) t ON t.ReplyId = e.ReplyId WHEN MATCHED THEN UPDATE SET e.ReplyType = t.ReplyType , e.ReplyContent = t.ReplyContent, e.UpdateOn=GETDATE() WHEN NOT MATCHED THEN INSERT (MsgId,ReplyType,ReplyContent) VALUES(t.MsgId,t.ReplyType,t.ReplyContent);"; try { using (var db = DbFactory.OpenDbConnection()) { var model = db.Select <mpmsgreplycontent>(s => s.Id == dto.Id).FirstOrDefault(); if (model == null) { dto.CreateOn = DateTime.Now; dto.UpdateOn = DateTime.Now; return(db.Insert <mpmsgreplycontent>(dto) > 0); } else { dto.UpdateOn = DateTime.Now; return(db.Update <mpmsgreplycontent>(dto) > 0); //var parameters = new { ReplyId = dto.ReplyId, MsgId = dto.MsgId, ReplyType = dto.ReplyType, ReplyContent = dto.ReplyContent }; //return ExecuteSql(sql, parameters) > 0; } } } catch (Exception ex) { LogHandler.Error(ex); return(false); } }
public bool SaveMsgReplyData() { var mpMsgData = AutoReplyApi.GetCurrentAutoreplyInfo(BaseClass.AppId); if (mpMsgData.errcode == 0) { //初始化关注回复 if (mpMsgData.add_friend_autoreply_info != null) { var sereply = mpMsgData.add_friend_autoreply_info; if (sereply.type.ToString() == "text") { sereply.content = EConvert.DConvertEmojiHtml(sereply.content).UrlEncode().Replace("+", "%20"); } MpEventBll.SaveEventInfo(new mpeventreply() { EventType = WxEventTypeEnum.subscribe.ToString(), EventKey = "ych_subscribe", ReplyType = sereply.type.ToString(), ReplyContent = sereply.content, }); } //初始化自动消息回复 if (mpMsgData.message_default_autoreply_info != null) { var autoreply = mpMsgData.message_default_autoreply_info; if (autoreply.type.ToString() == "text") { autoreply.content = EConvert.DConvertEmojiHtml(autoreply.content).UrlEncode().Replace("+", "%20"); } MpEventBll.SaveEventInfo(new mpeventreply() { EventType = WxEventTypeEnum.automsg.ToString(), EventKey = "ych_automsg", ReplyType = autoreply.type.ToString(), ReplyContent = autoreply.content }); } //初始化关键字回复 if (mpMsgData.keyword_autoreply_info?.list != null && mpMsgData.keyword_autoreply_info.list.Count > 0) { mpMsgData.keyword_autoreply_info.list.Reverse(); foreach (var ruleItem in mpMsgData.keyword_autoreply_info.list) { var dto = new MsgReplyResult { Msg = { RuleName = ruleItem.rule_name, ReplyMode = ruleItem.reply_mode.ToString() } }; if (ruleItem.keyword_list_info != null && ruleItem.keyword_list_info.Count > 0) { foreach (var keyItem in ruleItem.keyword_list_info) { mpmsgreplykey key = new mpmsgreplykey { KeyVal = keyItem.content, MatchMode = keyItem.match_mode.ToString() }; dto.Keys.Add(key); } } if (ruleItem.reply_list_info != null && ruleItem.reply_list_info.Count > 0) { foreach (var contentItem in ruleItem.reply_list_info) { if (contentItem.type.ToString() == "text") { contentItem.content = EConvert.DConvertEmojiHtml(contentItem.content).UrlEncode().Replace("+", "%20"); } mpmsgreplycontent content = new mpmsgreplycontent { ReplyType = contentItem.type.ToString(), ReplyContent = contentItem.content }; dto.Contents.Add(content); } } MsgReplyBll.SaveMsgRule(dto); } } } return(true); }