Ejemplo n.º 1
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="uid">用户登录名</param>
        /// <returns>返回model</returns>
        public TSeat GetUserByLoginId(string uid)
        {
            TSeat model = new TSeat();
            //根据用户名的uid(登录名)从数据库中获取该用户的信息
            string sql = "select * from T_Seats where CC_LoginId=@uid";

            using (SqlDataReader reader = SqlHelper.ExecuteReader(sql, CommandType.Text, new SqlParameter("@uid", uid)))
            {
                if (reader.HasRows)
                {
                    if (reader.Read())
                    {
                        model.AutoId     = reader.GetInt32(0);
                        model.ErrorTimes = reader.GetInt32(4);
                        model.LockedTime = reader.IsDBNull(5) ? null : (DateTime?)reader.GetDateTime(5);
                        model.LoginId    = reader.GetString(1);
                        model.LoginPwd   = reader.GetString(2);
                        model.TestInt    = reader.IsDBNull(6) ? null : (int?)reader.GetInt32(6);
                        model.UserName   = reader.GetString(3);
                    }
                    else
                    {
                        //如果reader.Read()有数据,可是读取不到数据,则向外抛异常
                        throw new Exception("DataReader调用Read()方法时异常。");
                    }
                }
                else
                {
                    //如果用户不存在,给model赋值null
                    model = null;
                }
            }
            return(model);
        }
Ejemplo n.º 2
0
        //这些业务逻辑层类、数据库层类都没有写成静态类,是因为以后要多态。静态类就不能“多态”了


        /// <summary>
        /// 验证用户登录的方法
        /// </summary>
        /// <param name="uid">用户的登录名</param>
        /// <param name="pwd">登陆密码</param>
        /// <param name="autoId">输出参数,记录用户主键Id</param>
        /// <param name="realName">输出参数,记录用户真实姓名</param>
        /// <returns></returns>
        public LoginResult UserLoginValidate(string uid, string pwd, out int autoId, out string realName)
        {
            TSeatsDal dal = new TSeatsDal();

            autoId   = -1;
            realName = null;
            TSeat model = dal.GetUserByLoginId(uid);

            if (model == null)
            {
                return(LoginResult.UserNotExists);
            }
            else if (model.LoginPwd == CommonHelper.Md5Encrypt(pwd))
            {
                autoId   = model.AutoId;
                realName = model.UserName;
                return(LoginResult.LoginSuccessful);
            }
            else
            {
                return(LoginResult.ErrorPassword);
            }
        }