public async Task <ReturnModel> UpdateAdministrator(AdministratorRequest request) { var adminValidator = new AdministratorValidator().Validate(request); if (!adminValidator.IsValid) { return new ReturnModel { Errors = adminValidator.Errors } } ; var admin = await _administratorRepository.GetByCpf(request.Cpf); if (admin == null) { return new ReturnModel { Errors = "Administrador Não existe" } } ; var result = await UpdateEntity(admin, request); return(new ReturnModel { Data = _mapper.Map <AdministratorModel>(result) }); }
public async Task <ReturnModel> CreateAdministrator(AdministratorRequest request) { var adminValidator = new AdministratorValidator().Validate(request); if (!adminValidator.IsValid) { return new ReturnModel { Errors = adminValidator.Errors } } ; var admin = await _administratorRepository.GetByCpf(request.Cpf); if (admin != null) { return new ReturnModel { Errors = "CPF já utilizado por outro Administrador" } } ; admin = _mapper.Map <Administrator>(request); admin.Password = PasswordService.GeneratePassword(admin.Password); admin.RegisteredAt = DateTime.Now; var result = await _administratorRepository.Insert(admin); return(new ReturnModel { Data = _mapper.Map <AdministratorModel>(result) }); }