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); }
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); }
public Task SaveChangesAsync() => _uow.SaveChangesAsync();
public async Task RegisterUser(Security security) { await _unitOfWork.SecurityRepository.Insert(security); await _unitOfWork.SaveChangesAsync(); }