Ejemplo n.º 1
0
        public Fornecedor CriarNovoFornecedor(Fornecedor fornecedor, bool Atualizar = false)
        {
            if (fornecedor == null)
            {
                fornecedor = new Fornecedor();
                fornecedor.FornecedorId = Guid.Empty;
            }

            using (IDataContextAsync context = new PCFTIDataContext())
                using (IUnitOfWorkAsync unitOfWork = new UnitOfWork(context))
                {
                    IRepositoryAsync <Fornecedor> fornecedorRepository = new Repository <Fornecedor>(context, unitOfWork);
                    IFornecedorService            fornecedorService    = new FornecedorService(fornecedorRepository);
                    if (!ExisteFornecedor(fornecedor.FornecedorId))
                    {
                        fornecedor = fornecedorService.NovoFornecedor(fornecedor);
                        unitOfWork.SaveChanges();
                    }
                    else if (Atualizar)
                    {
                        fornecedor = AtualizarFornecedor(fornecedor);
                        unitOfWork.SaveChanges();
                    }

                    unitOfWork.Dispose();
                    (new Execute()).Sistema.Versao.NovaVersaoParaCriacao(fornecedor);
                }

            return(fornecedor);
        }