Esempio n. 1
0
        public void Atualizar(IContexto contexto)
        {
            var mercadoriaParaAtualizar = ((Contexto)contexto).Mercadoria.Find(Id);

            if (mercadoriaParaAtualizar != null)
            {
                var fotosParaRemover         = new List <FotoMap>();
                var produtosParaRemover      = new List <ProdutoMap>();
                IDao <ProdutoMap> produtoDao = FabricaDeDaos.Instancia().ObterDao <ProdutoMap>(contexto);
                IDao <FotoMap>    fotoDao    = FabricaDeDaos.Instancia().ObterDao <FotoMap>(contexto);


                foreach (var foto in mercadoriaParaAtualizar.Fotos)
                {
                    bool remover = Fotos.All(f => f.Id != foto.Id);
                    if (remover)
                    {
                        fotosParaRemover.Add(foto);
                    }
                }

                foreach (var fotoMap in fotosParaRemover)
                {
                    fotoDao.Excluir(fotoMap.Id);
                }

                foreach (var produto in mercadoriaParaAtualizar.Produtos)
                {
                    bool remover = Produtos.All(p => p.Id != produto.Id);
                    if (remover)
                    {
                        produtosParaRemover.Add(produto);
                    }
                }

                foreach (var produtoMap in produtosParaRemover)
                {
                    produtoDao.Excluir(produtoMap.Id);
                }

                foreach (var foto in Fotos)
                {
                    bool adicionar = mercadoriaParaAtualizar.Fotos.All(f => f.Id != foto.Id);
                    if (adicionar)
                    {
                        mercadoriaParaAtualizar.Fotos.Add(foto);
                    }
                }

                foreach (var produto in Produtos)
                {
                    bool adicionar = mercadoriaParaAtualizar.Fotos.All(f => f.Id != produto.Id);
                    if (adicionar)
                    {
                        mercadoriaParaAtualizar.Produtos.Add(produto);
                    }
                }
            }
        }
Esempio n. 2
0
        public void RemoverDependencias(IContexto contexto)
        {
            if (Mercadorias.Count == 0)
            {
                return;
            }

            IDao <MercadoriaMap> dao = FabricaDeDaos.Instancia().ObterDao <MercadoriaMap>(contexto);
            IList <Guid>         listaDeMercadoriasParaRemover = new List <Guid>();

            foreach (var mercadoria in Mercadorias)
            {
                bool remover = mercadoria.Categorias.All(categoria => categoria.Id == Id);
                if (remover)
                {
                    listaDeMercadoriasParaRemover.Add(mercadoria.Id);
                }
            }

            foreach (var guid in listaDeMercadoriasParaRemover)
            {
                dao.Excluir(guid);
            }
        }
Esempio n. 3
0
        public void Atualizar(IContexto contexto)
        {
            var usuarioParaAtualizar = ((ContextoAutenticacao)contexto).Usuario.Find(Id);

            if (usuarioParaAtualizar != null)
            {
                var telefonesParaRemover       = new List <TelefoneMap>();
                IDao <TelefoneMap> telefoneDao = FabricaDeDaos.Instancia().ObterDao <TelefoneMap>(contexto);

                foreach (var telefone in usuarioParaAtualizar.Telefones)
                {
                    bool remover = Telefones.All(f => f.Id != telefone.Id);
                    if (remover)
                    {
                        telefonesParaRemover.Add(telefone);
                    }
                }

                foreach (var telefoneMap in telefonesParaRemover)
                {
                    telefoneDao.Excluir(telefoneMap.Id);
                }


                foreach (var telefone in Telefones)
                {
                    bool adicionar = usuarioParaAtualizar.Telefones.All(f => f.Id != telefone.Id);
                    if (adicionar)
                    {
                        usuarioParaAtualizar.Telefones.Add(telefone);
                    }
                }

                usuarioParaAtualizar.Endereco.Atualizar(Endereco);
            }
        }
Esempio n. 4
0
 public Repositorio()
 {
     contexto = FabricaDeContexto.Instancia().ObterContexto <TData>();
     dao      = FabricaDeDaos.Instancia().ObterDao <TData>(contexto);
 }