public async Task <IActionResult> PutUserLoginItem(long id, UserLoginItem userLoginItem)
        {
            if (id != userLoginItem.Id)
            {
                return(BadRequest());
            }

            _context.Entry(userLoginItem).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!UserLoginItemExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        public async void SendUserLogin(String[] loginInfo, long sessionId)
        {
            HttpClient client = new HttpClient();

            var postUser = new UserLoginItem {
                Id = sessionId, Usermail = loginInfo[0], Userpassword = loginInfo[1], isUserLoggedIn = 0
            };
            var postResponse = await client.PostAsJsonAsync("https://localhost:44316/api/UserLoginItems", postUser);

            postResponse.EnsureSuccessStatusCode();
        }
Ejemplo n.º 3
0
        public User Login(UserLoginItem item)
        {
            var errors = item.GetValidationErrors();

            errors.ThrowIfHasErrors();

            var hash = item.Password.ToHash();

            var user = Db.Users.SingleOrDefault(x => x.Email == item.Email && x.Password == hash);

            if (user == null)
            {
                throw new ValidationException("User name or password is invalid");
            }

            return(user);
        }
        public async Task <ActionResult <UserLoginItem> > PostUserLoginItem(UserLoginItem userLoginItem)
        {
            using (SqlConnection sqlconn = new SqlConnection(connection))
            {
                string sqlquery = "select AI.Userpassword, AI.UserID, AI.Username, UR.Roleid  from AccountInfo AI, UserRoles UR where AI.UserID = UR.UserID AND AI.Usermail = '" + userLoginItem.Usermail + "' ";
                using (SqlCommand sqlcomm = new SqlCommand(sqlquery, sqlconn))
                {
                    sqlconn.Open();
                    SqlDataReader reader = sqlcomm.ExecuteReader();

                    if (reader.HasRows)
                    {
                        while (reader.Read())
                        {
                            // Password correct - Successful Login
                            if (reader.GetString(0).Equals(userLoginItem.Userpassword))
                            {
                                userLoginItem.isUserLoggedIn = 1;

                                userLoginItem.UserID   = reader.GetInt32(1);
                                userLoginItem.Username = reader.GetString(2);
                                userLoginItem.UserRole = reader.GetInt32(3);

                                DateTime thisDay = DateTime.Now;
                                userLoginItem.LoginDate = thisDay;

                                // Add the user session for logging
                                AddUserSessions(userLoginItem);
                            }
                        }
                    }

                    reader.Close();
                }
            }


            _context.UserLoginItems.Add(userLoginItem);
            await _context.SaveChangesAsync();

            return(CreatedAtAction(nameof(GetUserLoginItem), new { id = userLoginItem.Id }, userLoginItem));
        }
Ejemplo n.º 5
0
        public static string SaveUserMessage(UserLoginItem userLoginItem)
        {
            string token = "";

            if (userLoginItem.userCode != "" && userLoginItem.userCode != null)
            {
                token = MD5Manager.createToken(userLoginItem.userCode);
                using (var client = ConnectionMultiplexer.Connect(Global.Redis))
                {
                    TimeSpan timeSpan = new TimeSpan(0, 30, 0);
                    var      db       = client.GetDatabase(0);
                    db.StringSet(token, userLoginItem.userCode + "," + userLoginItem.shopId + "," + userLoginItem.power, timeSpan);
                    return(token);
                }
            }
            else
            {
                return(token);
            }
        }
        private void AddUserSessions(UserLoginItem userLoginItem)
        {
            using (SqlConnection sqlconn = new SqlConnection(connection))
            {
                DateTime thisDay = DateTime.Now;

                sqlconn.Open();
                string sql = "insert into AccountSessions(UserId, SessionID, LoginDate) values(@UserId,@SessionID,@LoginDate)";
                using (SqlCommand cmd = new SqlCommand(sql, sqlconn))
                {
                    cmd.Parameters.Add("@UserID", SqlDbType.Int).Value = userLoginItem.UserID;
                    cmd.Parameters.Add(new SqlParameter
                    {
                        ParameterName = "@SessionID",
                        SqlDbType     = SqlDbType.UniqueIdentifier,
                        Value         = userLoginItem.SessionID
                    });
                    cmd.Parameters.Add("@LoginDate", SqlDbType.DateTime).Value = thisDay;
                    cmd.CommandType = CommandType.Text;
                    cmd.ExecuteNonQuery();
                }
            }
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 登陆
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        public UserLoginItem UserLogin(string userName, string password)
        {
            UserLoginItem userLoginItem = new UserLoginItem();
            StringBuilder stringBuilder = new StringBuilder();

            stringBuilder.AppendFormat(UserDaoSqls.SELECT_T_BASE_WEB_USER_BY_USERCODE_AND_PASSWORD, userName, password);
            string    select = stringBuilder.ToString();
            DataTable dt     = DatabaseOperationWeb.ExecuteSelectDS(select, "T").Tables[0];

            if (dt.Rows.Count == 1 && dt.Rows[0][0] != DBNull.Value)
            {
                userLoginItem.userCode  = dt.Rows[0]["userCode"].ToString();
                userLoginItem.authority = "http://ecc-product.oss-cn-beijing.aliyuncs.com/upload/head_s.png";
                userLoginItem.name      = dt.Rows[0]["USERNAME"].ToString();
                userLoginItem.shopId    = dt.Rows[0]["store_id"].ToString();
                userLoginItem.power     = dt.Rows[0]["userType"].ToString();
                userLoginItem.authority = dt.Rows[0]["userType"].ToString() == "1" ? "admin" : "employee";
                return(userLoginItem);
            }
            else
            {
                return(userLoginItem);
            }
        }