public int?Insert(UserAdmittance item)
        {
            var loginParam = new SqlParameter
            {
                ParameterName = "@Login",
                Value         = item.Login
            };
            var passwordHashParam = new SqlParameter
            {
                ParameterName = "@PasswordHash",
                Value         = item.PasswordHash
            };
            var statusParam = new SqlParameter
            {
                ParameterName = "@Status",
                Value         = item.UserStatus.GetStatusName()
            };
            var roleParam = new SqlParameter
            {
                ParameterName = "@Role",
                Value         = item.UserRole.GetRoleName()
            };

            var resultCommand = ExecuteCommand(SpInsert, loginParam, passwordHashParam, statusParam, roleParam);

            int?result = null;

            if (resultCommand != null)
            {
                decimal lastId = (decimal)resultCommand;
                result = Decimal.ToInt32(lastId);
            }

            return(result);
        }
Example #2
0
        public UserSystem(string firsName, string lastName, string email, string phone, int userAdmittanceId)
        {
            FirsName         = firsName;
            LastName         = lastName;
            Email            = email;
            Phone            = phone;
            UserAdmittanceId = userAdmittanceId;

            UserAdmittance = null;
        }
Example #3
0
        public UserSystem(string firsName, string lastName, string email, string phone, UserAdmittance userAdmittance)
        {
            FirsName = firsName;
            LastName = lastName;
            Email    = email;
            Phone    = phone;
            if (userAdmittance?.IdEntity != null)
            {
                UserAdmittanceId = userAdmittance.IdEntity.Value;
            }

            UserAdmittance = userAdmittance;
        }
Example #4
0
        private List <UserSystem> ReadUsers(string storedProcedureName, params SqlParameter[] sqlParameters)
        {
            List <UserSystem> users = new List <UserSystem>();

            using (SqlConnection connection = new SqlConnection(_connectionString))
            {
                connection.Open();

                SqlCommand command = new SqlCommand(storedProcedureName, connection)
                {
                    CommandType = System.Data.CommandType.StoredProcedure
                };

                foreach (SqlParameter sqlParameter in sqlParameters)
                {
                    command.Parameters.Add(sqlParameter);
                }

                SqlDataReader reader = command.ExecuteReader();

                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        int    readId        = reader.GetInt32(0);
                        string readFirstName = reader.GetString(1);
                        string readLastName  = reader.GetString(2);
                        string readEmail     = reader.GetString(3);
                        string readPhone     = reader.GetString(4);
                        int    readAccessId  = reader.GetInt32(5);

                        UserAdmittance userAdmittance = _userAdmittanceRepository.SelectById(readAccessId);

                        UserSystem userSystem = new UserSystem(readId, readFirstName, readLastName, readEmail, readPhone, userAdmittance);

                        users.Add(userSystem);
                    }
                }
            }


            return(users);
        }
        private List <UserAdmittance> ReadUserAccesses(string storedProcedureName, params SqlParameter[] sqlParameters)
        {
            List <UserAdmittance> list = new List <UserAdmittance>();

            using (SqlConnection connection = new SqlConnection(_connectionString))
            {
                connection.Open();

                SqlCommand command = new SqlCommand(storedProcedureName, connection)
                {
                    CommandType = System.Data.CommandType.StoredProcedure
                };

                foreach (SqlParameter sqlParameter in sqlParameters)
                {
                    command.Parameters.Add(sqlParameter);
                }

                SqlDataReader reader = command.ExecuteReader();

                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        int    readId       = reader.GetInt32(0);
                        string readLogin    = reader.GetString(1);
                        string readPassword = reader.GetString(2);
                        string readStatus   = reader.GetString(3);
                        string readRole     = reader.GetString(4);

                        UserAdmittance userAdmittance = new UserAdmittance(readId, readLogin, readPassword, readStatus, readRole);

                        list.Add(userAdmittance);
                    }
                }
            }

            return(list);
        }
        public bool Update(UserAdmittance item)
        {
            if (!item.IdEntity.HasValue)
            {
                throw new ArgumentException($"Parameter{nameof(item.IdEntity)} must be not empty", nameof(item.IdEntity));
            }

            var idParam = new SqlParameter
            {
                ParameterName = "@IdEntity",
                Value         = item.IdEntity.Value
            };
            var loginParam = new SqlParameter
            {
                ParameterName = "@Login",
                Value         = item.Login
            };
            var passwordHashParam = new SqlParameter
            {
                ParameterName = "@PasswordHash",
                Value         = item.PasswordHash
            };
            var statusParam = new SqlParameter
            {
                ParameterName = "@Status",
                Value         = item.UserStatus.GetStatusName()
            };
            var roleParam = new SqlParameter
            {
                ParameterName = "@Role",
                Value         = item.UserRole.GetRoleName()
            };

            var resultCommand = ExecuteCommand(SpUpdate, idParam, loginParam, passwordHashParam, statusParam, roleParam);


            return(resultCommand != null && (int)resultCommand == 1);
        }
 public bool Update(UserAdmittance item)
 {
     return(_userAdmittanceRepository.Update(item));
 }
 public int?Insert(UserAdmittance item)
 {
     return(_userAdmittanceRepository.Insert(item));
 }
Example #9
0
        public ServiceResult CreatByRegistration(SystemUserData userData)
        {
            #region Check uniq login

            bool loginIsUnique = _dbContext.UserAdmittances.LoginUserIsUnique(userData.Login);

            if (!loginIsUnique)
            {
                var typeError   = ServiceResult.ResultConnectionEnum.InvalidRequestData;
                var resultError = new ServiceResult(typeError, "User with the same name already exists!");
                return(resultError);
            }

            #endregion


            string passwordHash;

            passwordHash = _passwordHash.GeneratePasswordHash(userData.Login, userData.NewPassword);

            var userStatus = new UserStatus(userData.Status);
            var userRole   = new UserRole(userData.Role);

            var userAdmittance = new UserAdmittance(userData.Login, passwordHash, userStatus, userRole);

            var systemUser = new UserSystem
            {
                FirsName       = userData.FirstName,
                LastName       = userData.LastName,
                Phone          = userData.Phone,
                Email          = userData.Email,
                UserAdmittance = userAdmittance
            };

            bool userIsSave;

            #region Save new user


            int?idUserAdmittance = _dbContext.UserAdmittances.Insert(systemUser.UserAdmittance);

            if (idUserAdmittance.HasValue && idUserAdmittance.Value > 0)
            {
                systemUser.UserAdmittanceId = idUserAdmittance.Value;

                int?idUser = _dbContext.UsersSystem.Insert(systemUser);

                if (idUser.HasValue && idUser > 0)
                {
                    userIsSave = true;
                }
                else
                {
                    _dbContext.UserAdmittances.Delete(idUserAdmittance.Value);
                    userIsSave = false;
                }
            }
            else
            {
                userIsSave = false;
            }


            #endregion

            if (!userIsSave)
            {
                var typeError   = ServiceResult.ResultConnectionEnum.SystemError;
                var resultError = new ServiceResult(typeError, "Save new user failed, please try again");
                return(resultError);
            }

            var typeResult = ServiceResult.ResultConnectionEnum.Correct;
            var result     = new ServiceResult(typeResult, "Save new user completed");
            return(result);
        }