Exemplo n.º 1
0
        /// <summary>
        /// 根据微信SiteCode获取相应的菜单
        /// </summary>
        /// <param name="strSiteCode"></param>
        /// <returns></returns>
        public List <Menu> GetWeiXinMenuBySiteCode(string strSiteCode)
        {
            List <Menu> res = null;
            WXConfigDAL dal = new WXConfigDAL();
            //WXConfig wxConfig = dal.GetWXConfigByID(strSiteCode);
            WXConfig wxConfig = dal.GetWXConfigBySiteCode(strSiteCode);

            if (wxConfig != null)
            {
                if (!string.IsNullOrEmpty(wxConfig.ID))
                {
                    StringBuilder sql = new StringBuilder();
                    sql.AppendFormat("SELECT * FROM [{0}]", TABLE_NAME);
                    sql.AppendFormat(" WHERE WXConfigID=@WXConfigID");
                    sql.AppendFormat(" AND Enabled=1");
                    IList <System.Data.SqlClient.SqlParameter> paras = new List <System.Data.SqlClient.SqlParameter>()
                    {
                        new System.Data.SqlClient.SqlParameter("@WXConfigID", wxConfig.ID)
                    };
                    DataSet ds = DbHelperSQL.Query(sql.ToString(), paras.ToArray());
                    res = ds.ConvertToList <Menu>();
                }
            }
            return(res);
        }
Exemplo n.º 2
0
 /// <summary>
 /// 同步微信用户信息
 /// </summary>
 public static void SyncWXUserBySiteCode(string siteCode)
 {
     if (!string.IsNullOrEmpty(siteCode))
     {
         WXConfigDAL dal      = new WXConfigDAL();
         WXConfig    wxConfig = dal.GetWXConfigBySiteCode(siteCode);
         if (wxConfig != null)
         {
             WeiXinCore.Models.WeiXinConfig weixinConfig = new WeiXinCore.Models.WeiXinConfig()
             {
                 ID        = wxConfig.WXID,
                 Name      = wxConfig.WXName,
                 Token     = wxConfig.WXToken,
                 AppId     = wxConfig.WXAppID,
                 AppSecret = wxConfig.WXAppSecret
             };
             WeiXinCore.WeiXin weixin = new WeiXinCore.WeiXin(weixinConfig);
             List <UserInfo>   users  = weixin.GetUserInfos();
             if (users != null)
             {
                 UserDAL dal2 = CreateInstance();
                 dal2.ClearUser(wxConfig.ID);
                 foreach (UserInfo user in users)
                 {
                     User info = new User()
                     {
                         WXConfigID    = wxConfig.ID,
                         OpenID        = user.OpenId,
                         Subscribe     = user.Subscribe,
                         NickName      = user.NickName,
                         Sex           = user.Sex,
                         Language      = user.Language,
                         City          = user.City,
                         Province      = user.Province,
                         Country       = user.Country,
                         HeadImgUrl    = user.Headimgurl,
                         SubscribeTime = user.Subscribe_Time,
                     };
                     dal2.Insert(info);
                 }
             }
         }
     }
 }