Beispiel #1
0
    ///// <summary>
    ///// 登录
    ///// </summary>
    ///// <param name="name"></param>
    ///// <param name="pwd"></param>
    ///// <param name="customer"></param>
    ///// <returns></returns>
    //public static WGUserEn Login(string name, string pwd, string customer, string openid, string nickname)
    //{
    //    using (DBSession db = new DBSession())
    //    {
    //        pwd = pwd.Trim2().ToSHA1();
    //        string sql = @"select su.id as GWYUSERID,su.name GWYUSERCODE,su.realname as GWYUSERNAME,csc.code as CUSTOMERCODE,csc.hscode,csc.iscompany,csc.iscustomer,csc.isreceiver
    //                        from sys_user su left join cusdoc.sys_customer csc on su.customerid=csc.id where su.name='{0}' and su.password='******' and csc.code='{2}' and su.enabled=1";
    //        sql = string.Format(sql, name.Trim2(), pwd, customer.Trim2().ToUpper());
    //        WGUserEn user = db.QuerySignleEntity<WGUserEn>(sql);
    //        if (user != null)
    //        {
    //            user.WCOpenID = openid;
    //            user.WCNickName = nickname;
    //        }
    //        return user;
    //    }
    //}
    ///// <summary>
    ///// 登录
    ///// </summary>
    ///// <param name="name"></param>
    ///// <param name="pwd"></param>
    ///// <param name="customer"></param>
    ///// <returns></returns>
    //public static WGUserEn LoginById(string id)
    //{
    //    using (DBSession db = new DBSession())
    //    {
    //        string sql = @"select su.id as GWYUSERID,su.name as GWYUSERCODE,su.realname as GWYUSERNAME,csc.code as CUSTOMERCODE,csc.hscode,csc.iscompany,csc.iscustomer,csc.isreceiver
    //                        from sys_user su left join cusdoc.sys_customer csc on su.customerid=csc.id where su.id={0} and su.enabled=1";
    //        sql = string.Format(sql, id);
    //        WGUserEn user = db.QuerySignleEntity<WGUserEn>(sql);
    //        return user;
    //    }
    //}

    ///// <summary>
    ///// 判断用户是否已经存在,
    ///// </summary>
    ///// <param name="usercode"></param>
    ///// <param name="openid"></param>
    ///// <param name="nickname"></param>
    ///// <returns></returns>
    //public static bool UserExsit(string usercode, string openid, string nickname)
    //{
    //    using (DBSession db = new DBSession())
    //    {
    //        string sql = "select wcopenid,wcnickname,isunbind from wechat_user where gwyusercode='" + usercode + "' and wcopenid<>'" + openid + "' order by unbindtime desc ";
    //        DataTable dt = db.QuerySignle(sql);
    //        if (dt != null && dt.Rows.Count > 0)
    //        {
    //            //已经存在则向之前的用户推送消息
    //            string exsql = @"insert into wechat_loginexceptioninfo(id,loginopenid,loginnickname,usercode,oldopenid,oldnickname)
    //                                values(wechat_loginexceptioninfo_id.nextval,'{0}','{1}','{2}','{3}','{4}')";
    //            exsql = string.Format(exsql, openid, nickname, usercode, dt.Rows[0]["wcopenid"].ToString2(), dt.Rows[0]["wcnickname"].ToString2());
    //            db.ExecuteSignle(exsql);
    //            if (dt.Rows[0]["isunbind"].ToString2() == "1")
    //            {
    //                return false;//已经解绑,可以登录
    //            }
    //            else
    //            {
    //                return true;//未解绑,不可登录
    //            }
    //        }
    //        return false;
    //    }
    //}

    ///// <summary>
    ///// 新增账号
    ///// </summary>
    ///// <param name="user"></param>
    ///// <returns></returns>
    //public static bool SaveUser(WGUserEn user)
    //{
    //    using (DBSession db = new DBSession())
    //    {
    //        //string sql = "delete from wechat_user where WCOpenID='" + user.WCOpenID + "'";
    //        //db.ExecuteSignle(sql);
    //        string sql = @"insert into wechat_user(id,GWYUSERCODE,GWYUSERNAME,WCOpenID,WCNickName,iscompany,iscustomer,isreceiver,customercode,createdate,gwyuserid,hscode)
    //                values(wechat_user_id.nextval,'{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}',sysdate,{8},'{9}')";
    //        sql = string.Format(sql, user.GwyUserCode, user.GwyUserName, user.WCOpenID, user.WCNickName, user.IsCompany, user.IsCustomer, user.IsReceiver,
    //            user.CustomerCode, user.GwyUserID, user.HSCode);
    //        return db.ExecuteSignle(sql) == 0 ? false : true;
    //    }
    //}

    ///// <summary>
    ///// 注销账号
    ///// </summary>
    ///// <param name="openid"></param>
    ///// <returns></returns>
    //public static bool DeleteUser(string openid)
    //{
    //    using (DBSession db = new DBSession())
    //    {
    //        string sql = "update wechat_user set isunbind=1,unbindtime=sysdate where wcopenid='" + openid + "'";
    //        return db.ExecuteSignle(sql) == 0 ? false : true;
    //    }
    //}

    /// <summary>
    /// 根据opneid查询关联账号
    /// </summary>
    /// <param name="openid"></param>
    /// <returns></returns>
    public static WPGIUserEn getWeChatUser(string openid)
    {
        DataTable  dt    = DbHelperSQL.Query("select * from Users where openid='" + openid + "'").Tables[0];
        WPGIUserEn wuser = new WPGIUserEn();

        if (dt != null)
        {
            if (dt.Rows.Count == 1)
            {
                wuser.workcode = dt.Rows[0]["workcode"].ToString();
                wuser.workname = dt.Rows[0]["workname"].ToString();
                wuser.telphone = dt.Rows[0]["telphone"].ToString();
                wuser.password = dt.Rows[0]["password"].ToString();
                wuser.openid   = dt.Rows[0]["openid"].ToString();
            }
        }
        return(wuser);
    }
Beispiel #2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        WPGIUserEn user = (WPGIUserEn)HttpContext.Current.Session["user"];

        //如果当前用户未登陆,先获取授权
        if (user == null)
        {
            WUserEn userInfo = PageShowQuan.GetShouQuanMessage();
            if (userInfo != null && !string.IsNullOrEmpty(userInfo.OpenID))
            {
                //授权成功
                LogHelper.Write("第9步:" + userInfo.OpenID);

                WPGIUserEn wuser = UserModel.getWeChatUser(userInfo.OpenID);
                if (wuser == null || string.IsNullOrEmpty(wuser.workcode))
                {//账号未关联,跳转至登录界面
                    LogHelper.Write("第10步:" + userInfo.OpenID);
                    System.Web.HttpContext.Current.Response.Redirect(@"../Login.aspx?openid=" + userInfo.OpenID + "&nickname=" + userInfo.NickName + "&transferurl=SiteDeclareList");
                }
                else
                {//无此权限
                    HttpContext.Current.Session["user"] = wuser;
                    System.Web.HttpContext.Current.Response.Redirect(@"../WarnPage.aspx");
                }
                LogHelper.Write("第12步:" + wuser.openid);
            }
            else
            {//获取授权失败,也跳转至登录页面
                System.Web.HttpContext.Current.Response.Redirect(@"../Login.aspx?openid=" + userInfo.OpenID + "&nickname=" + userInfo.NickName + "&transferurl=SiteDeclareList");
            }
        }
        else//无此权限
        {
            System.Web.HttpContext.Current.Response.Redirect(@"../WarnPage.aspx");
        }
    }