Пример #1
0
        public async Task InsertPost(Post post)
        {
            var user = await _unitOfWork.UserRepository.GetById(post.UserId);

            if (user == null)
            {
                throw new DomainException("User does't exist.");
            }

            var userPost = await _unitOfWork.PostRepository.GetPostsByUser(post.UserId);

            if (userPost.Count() < 10)
            {
                var lastPost = userPost.OrderByDescending(x => x.Date).FirstOrDefault();
                if ((DateTime.Now - lastPost.Date).TotalDays < 7)
                {
                    throw new DomainException("You are not able to publish any post.");
                }
            }

            if (post.Description.Contains("Sex"))
            {
                throw new DomainException("Content not allowed.");
            }

            await _unitOfWork.PostRepository.Insert(post);

            await _unitOfWork.SaveChangesAsync();
        }
        public async Task <int> AddStudent(StudentViewModel student)
        {
            var studentModel = new Student
            {
                Id             = student.Id,
                Name           = student.Name,
                LastName       = student.LastName,
                EnrollmentDate = student.EnrollmentDate
            };

            unityOfWork.Student.Add(studentModel);
            var result = await unityOfWork.SaveChangesAsync();

            return(result);
        }
Пример #3
0
        public async Task <ResponseViewModel <UserViewModel> > Add(UserViewModel user)
        {
            var result = new ResponseViewModel <UserViewModel>();

            try
            {
                if (await ValidateUser(user))
                {
                    result.Message = "Ya se encuentra un usuario registrado con los mismos datos";
                    result.Success = false;
                    result.Object  = user;
                    return(result);
                }

                var userModel = GetModel(user);
                userModel.Status = true;
                unityOfWork.User.Add(userModel);

                if (await unityOfWork.SaveChangesAsync() == 1)
                {
                    result.Message = "Se ha registrado exitosamente";
                    result.Success = true;
                    result.Object  = user;
                }
                else
                {
                    result.Message = "Ocurrió un error al registrar el usuario";
                    result.Success = false;
                    result.Object  = user;
                }
            }
            catch (Exception ex)
            {
                result.Message        = "Ocurrió un error al registrar el usuario";
                result.TechnicalError = ex.Message;
                result.Success        = false;
                result.Object         = user;
            }

            return(result);
        }
Пример #4
0
 public Task SaveChangesAsync()
 => _uow.SaveChangesAsync();
Пример #5
0
        public async Task RegisterUser(Security security)
        {
            await _unitOfWork.SecurityRepository.Insert(security);

            await _unitOfWork.SaveChangesAsync();
        }