public void ExcluirOferta(int idOferta)
        {
            using (ModelDBFigurinhasContainer contexto = new ModelDBFigurinhasContainer())
            {
                var qOferta = from Oferta in contexto.OfertasSet
                              where Oferta.Id == idOferta

                              select Oferta;

                if (qOferta.Count() < 1)
                {
                    throw new BusinessException("Oferta não encontrada.");
                }
                Ofertas oferta = qOferta.First();

                while (oferta.FigurinhasDesejadas.Count() > 0)
                {
                    contexto.FigurinhasDesejadasSet.DeleteObject(oferta.FigurinhasDesejadas.First());
                }
                while (oferta.FigurinhasOfertadas.Count() > 0)
                {
                    contexto.FigurinhasOfertadasSet.DeleteObject(oferta.FigurinhasOfertadas.First());
                }

                contexto.OfertasSet.DeleteObject(oferta);
                contexto.SaveChanges();
            }
        }
Exemplo n.º 2
0
        public Trocas EfetuarTroca(int idOferta, int idOfertaSolicitada, bool confirmada)
        {
            Trocas troca = new Trocas();

            using (ModelDBFigurinhasContainer contexto = new ModelDBFigurinhasContainer())
            {
                var qOferta           = contexto.OfertasSet.Where(a => a.Id == idOferta).First();
                var qOfertaSolicitada = contexto.OfertasSet.Where(a => a.Id == idOfertaSolicitada).First();

                Trocas novaTroca = new Trocas
                {
                    DataDaSolicitacao = DateTime.Now,
                    DataDaTroca       = DateTime.Now,
                    OfertaSolicitante = qOferta,
                    OfertaSolicitado  = qOfertaSolicitada,
                    TrocaRealizada    = confirmada
                };

                contexto.TrocasSet.AddObject(novaTroca);
                contexto.SaveChanges();

                var qTroca = ((ObjectQuery <Trocas>)contexto.TrocasSet
                              .Where(a => a.OfertaSolicitante.Id == idOferta || a.OfertaSolicitado.Id == idOfertaSolicitada))
                             .Include("OfertaSolicitante")
                             .Include("OfertaSolicitante.FigurinhasDesejadas")
                             .Include("OfertaSolicitante.FigurinhasOfertadas")
                             .Include("OfertaSolicitante.FigurinhasDesejadas.Figurinha")
                             .Include("OfertaSolicitante.FigurinhasOfertadas.Figurinha")
                             .Include("OfertaSolicitante.FigurinhasDesejadas.Figurinha.Album")
                             .Include("OfertaSolicitante.FigurinhasOfertadas.Figurinha.Album")
                             .Include("OfertaSolicitante.FigurinhasDesejadas.Figurinha.Imagem")
                             .Include("OfertaSolicitante.FigurinhasOfertadas.Figurinha.Imagem")
                             .Include("OfertaSolicitado")
                             .Include("OfertaSolicitado.FigurinhasDesejadas")
                             .Include("OfertaSolicitado.FigurinhasOfertadas")
                             .Include("OfertaSolicitado.FigurinhasDesejadas.Figurinha")
                             .Include("OfertaSolicitado.FigurinhasOfertadas.Figurinha")
                             .Include("OfertaSolicitado.FigurinhasDesejadas.Figurinha.Album")
                             .Include("OfertaSolicitado.FigurinhasOfertadas.Figurinha.Album")
                             .Include("OfertaSolicitado.FigurinhasDesejadas.Figurinha.Imagem")
                             .Include("OfertaSolicitado.FigurinhasOfertadas.Figurinha.Imagem");

                troca = qTroca.First();
            }

            return(troca);
        }
        public void EditarOferta(int idOferta, int[] idFigurinhasOfertadas, int[] idFigurinhasDesejadas)
        {
            using (ModelDBFigurinhasContainer contexto = new ModelDBFigurinhasContainer())
            {
                var qOferta = from Oferta in contexto.OfertasSet
                              where Oferta.Id == idOferta

                              select Oferta;

                if (qOferta.Count() < 1)
                {
                    throw new BusinessException("Oferta não encontrada.");
                }
                Ofertas oferta = qOferta.First();

                while (oferta.FigurinhasDesejadas.Count() > 0)
                {
                    contexto.FigurinhasDesejadasSet.DeleteObject(oferta.FigurinhasDesejadas.First());
                }
                while (oferta.FigurinhasOfertadas.Count() > 0)
                {
                    contexto.FigurinhasOfertadasSet.DeleteObject(oferta.FigurinhasOfertadas.First());
                }

                foreach (int idOfertada in idFigurinhasOfertadas)
                {
                    var figurinhaOfertada = contexto.FigurinhasOfertadasSet.CreateObject();
                    figurinhaOfertada.Figurinha =
                        contexto.FigurinhaSet.Where(a => a.Id == idOfertada).First();
                    oferta.FigurinhasOfertadas.Add(figurinhaOfertada);
                }

                foreach (int idDesejada in idFigurinhasDesejadas)
                {
                    var figurinhaDesejada = contexto.FigurinhasDesejadasSet.CreateObject();
                    figurinhaDesejada.Figurinha =
                        contexto.FigurinhaSet.Where(a => a.Id == idDesejada).First();
                    oferta.FigurinhasDesejadas.Add(figurinhaDesejada);
                }

                contexto.SaveChanges();
            }
        }
        public void CriarOferta(string login, int[] idFigurinhasOfertadas, int[] idFigurinhasDesejadas)
        {
            using (ModelDBFigurinhasContainer contexto = new ModelDBFigurinhasContainer())
            {
                var novaOferta = contexto.OfertasSet.CreateObject();

                foreach (int idOfertada in idFigurinhasOfertadas)
                {
                    var figurinhaOfertada = contexto.FigurinhasOfertadasSet.CreateObject();
                    figurinhaOfertada.Figurinha =
                        contexto.FigurinhaSet.Where(a => a.Id == idOfertada).First();

                    novaOferta.FigurinhasOfertadas.Add(figurinhaOfertada);
                }

                foreach (int idDesejada in idFigurinhasDesejadas)
                {
                    var figurinhaDesejada = contexto.FigurinhasDesejadasSet.CreateObject();
                    figurinhaDesejada.Figurinha =
                        contexto.FigurinhaSet.Where(a => a.Id == idDesejada).First();

                    novaOferta.FigurinhasDesejadas.Add(figurinhaDesejada);
                }

                var qUsuario = from usuario in contexto.UsuarioSet
                               where usuario.Login.ToLower() == login.ToLower()

                               select usuario;

                if (qUsuario.Count() < 1)
                {
                    throw new BusinessException("Usuário não existe.");
                }

                Usuario user = qUsuario.First();
                user.Ofertas.Add(novaOferta);

                contexto.SaveChanges();
            }
        }