Ejemplo n.º 1
0
        public ActionResult <BaseResponse> Update(User request)
        {
            var response = new BaseResponse();

            try
            {
                var user = _dacUser.Single(request.Id);

                if (user.Email != request.Email && !string.IsNullOrEmpty(request.Email))
                {
                    user.Email = request.Email;
                }

                if (user.Username != request.Username && !string.IsNullOrEmpty(request.Username))
                {
                    user.Username = request.Username;
                }

                if (user.Password != request.Password && !string.IsNullOrEmpty(request.Password))
                {
                    var passwordHash = Crypt.ToSHA256(request.Password);

                    if (user.Password != passwordHash)
                    {
                        user.Password = passwordHash;
                    }
                }

                if (user.Name != request.Name && !string.IsNullOrEmpty(request.Name))
                {
                    user.Name = request.Name;
                }

                if (user.Gender != request.Gender && request.Gender != char.MinValue)
                {
                    user.Gender = request.Gender;
                }

                if (user.Phone != request.Phone && !string.IsNullOrEmpty(request.Phone))
                {
                    user.Phone = request.Phone;
                }

                if (user.Role != request.Role && !string.IsNullOrEmpty(request.Role))
                {
                    user.Role = request.Role;
                }

                _dacUser.Update(user);
                _dacUser.Commit();

                response.Status.SetSuccess();
            }
            catch (Exception e)
            {
                response.Status.SetError(e);
            }

            return(response);
        }
Ejemplo n.º 2
0
        public static void CreateUser(User request, IDacUser dacUser)
        {
            if (dacUser.Single(u => u.Username.Equals(request.Username)) != null)
            {
                throw new Exception("username already used");
            }

            if (dacUser.Single(u => u.Email.Equals(request.Email)) != null)
            {
                throw new Exception("email already used");
            }

            var user = new Data.Entity.User
            {
                Id       = request.Id,
                Username = request.Username,
                Password = Crypt.ToSHA256(request.Password),
                Name     = request.Name,
                Email    = request.Email,
                Gender   = request.Gender,
                Phone    = request.Phone,
                Role     = request.Role
            };

            dacUser.Insert(user);
            dacUser.Commit();
        }