コード例 #1
0
        public async Task Excluir(long id)
        {
            var empresaDatabase = (
                await _empresaRepository
                .GetWithFuncionarios(emp => emp.Id == id)
                ).FirstOrDefault();

            _validadorDeEmpresaExistente.Valid(empresaDatabase);
            _validadorDeEmpresaComFuncionarios.Valid(empresaDatabase);

            if (_notificationContext.HasNotifications)
            {
                return;
            }

            await _empresaRepository.Delete(id);
        }
コード例 #2
0
        private async Task EditarEmpresa(EmpresaDto empresaDto)
        {
            var empresaDatabase = (await _empresaRepository.Get(emp => emp.Id == empresaDto.Id)).FirstOrDefault();

            _validadorDeEmpresaExistente.Valid(empresaDatabase);

            if (empresaDatabase != null)
            {
                empresaDatabase.AlterarNome(empresaDto.Nome);
                empresaDatabase.AlterarDataFundacao(empresaDto.DataFundacao);

                if (!empresaDatabase.Validate(empresaDatabase, new EmpresaValidator()))
                {
                    _notificationContext.AddNotifications(empresaDatabase.ValidationResult);
                    return;
                }

                await _empresaRepository.Update(empresaDatabase);
            }
        }