/// <summary> /// 添加扫描二维码 /// </summary> /// <param name="wxevent">事件</param> /// <param name="account">账号</param> private static void AddSCANWxEvent(WxEvent wxevent, WX_Account account, bool ISFirst) { string openId = wxevent.FromUserName; int iEventKey; if (ISFirst == true) { iEventKey = int.Parse(wxevent.EventKey.Substring(8, wxevent.EventKey.Length - 8)); } else { iEventKey = int.Parse(wxevent.EventKey); } IEnumerable<WX_QR_CodeScanFans> ScanFans = WMFactory.WX_QR_CodeScanFans.FindByConditions(null, f => f.Oid == openId && f.AccountId == account.Id && f.Scene_ID == iEventKey, null); WX_QR_CodeScanFans ScanFan = new WX_QR_CodeScanFans(); if (ScanFans != null && ScanFans.Count() > 0) { ScanFan = ScanFans.FirstOrDefault(); ScanFan.ModifyUser = "******"; WMFactory.WX_QR_CodeScanFans.Update(ScanFan); } else { WX_QR_Code WX_QR_CodeListQR = WMFactory.WX_QR_Code.FindByConditions(null, f => f.AccountId == account.Id && f.Scene_ID == iEventKey, null).First(); ScanFan.AccountId = account.Id; ScanFan.Oid = openId; ScanFan.Scene_ID = WX_QR_CodeListQR.Scene_ID; ScanFan.Scene_Key = WX_QR_CodeListQR.Scene_Key; ScanFan.Scene_Name = WX_QR_CodeListQR.Scene_Name; ScanFan.Scene_Param1 = WX_QR_CodeListQR.Scene_Param1; ScanFan.Scene_Param2 = wxevent.EventKey; ScanFan.CreateTime = System.DateTime.Now; ScanFan.CreateUser = "******"; WMFactory.WX_QR_CodeScanFans.Insert(ScanFan); } }
/// <summary> /// 取消关注 /// </summary> /// <param name="wxevent">事件</param> /// <param name="account">账号</param> private static void RemoveFans(WxEvent wxevent, Guid sid) { string openId = wxevent.FromUserName; IEnumerable<WX_Fans> fans = WMFactory.WXFans.FindByConditions(null, f => f.OpenId == openId && f.AccountId == sid, null); WX_Fans fan = new WX_Fans(); if (fans != null && fans.Count() > 0) { fan = fans.FirstOrDefault(); fan.ModifyUser = "******"; fan.IsUsed = 1; WMFactory.WXFans.Update(fan); } }
/// <summary> /// 添加粉丝 /// </summary> /// <param name="wxevent">事件</param> /// <param name="account">账号</param> private static void AddFans(WxEvent wxevent, WX_Account account) { string openId = wxevent.FromUserName; Guid sid = account.Id; IEnumerable<WX_Fans> fans = WMFactory.WXFans.FindByConditions(null, f => f.OpenId == openId && f.AccountId == sid, null); WX_Fans fan = new WX_Fans(); if (fans != null && fans.Count() > 0) { fan = fans.FirstOrDefault(); fan.ModifyUser = "******"; } fan.OpenId = wxevent.FromUserName; fan.AccountId = account.Id; fan.CreateUser = "******"; fan.IsUsed = 0; //将关注者插入到数据库 if (account.IsAuthed == 1) { WxFans wxfan = Common.GetFanInfo(account.Id.ToString(), openId); if (wxfan != null) { fan.NickName = wxfan.nickname; fan.Avatar = wxfan.headimgurl; fan.City = wxfan.city; fan.Country = wxfan.country; fan.Province = wxfan.province; fan.Sex = wxfan.sex; } } if (fans != null && fans.Count() > 0) WMFactory.WXFans.Update(fan); else WMFactory.WXFans.Insert(fan); }