public ActionResult Encomendas() { var listaDeCotacoes = new List <Cotacoes>(); var listaDePedidos = db.Pedidos.Include(c => c.Transportadora) .Where(a => a.Estado == 0) .OrderByDescending(a => a.DataEntregaPretendida) .ToList(); foreach (var item in listaDePedidos) { var modelo = new Cotacoes(); modelo.Pedido = item; modelo.Pedidofk = item.ID; int idTransportadora = db.Transportadora .Where(a => a.Email == User.Identity.Name) .FirstOrDefault() .ID; modelo.Transportadora = db.Transportadora.Find(idTransportadora); modelo.Transportadorafk = db.Transportadora.Find(idTransportadora).ID; modelo.valorCotacao = "0"; modelo.Aceite = false; var existe = false; foreach (var iten in db.Cotacoes) { if ((iten.Pedidofk.Equals(modelo.Pedidofk)) && (iten.Transportadorafk.Equals(modelo.Transportadorafk))) { existe = true; } } if (!existe) { listaDeCotacoes.Add(modelo); } } foreach (var item in listaDeCotacoes) { db.Cotacoes.Add(item); db.SaveChanges(); } var listaFinal = db.Pedidos.Include(c => c.Transportadora) .Where(a => a.Transportadora.Email == User.Identity.Name) .OrderBy(a => a.Estado) .ToList(); return(View(listaFinal)); }
public ActionResult Create([Bind(Include = "ID,Nome,Apelido,NomeEmpresaDestinataria,PaisDestino,CidadeDestino,RuaDestino,CodigoPostalDestino,NumPortaDestino,ContactoDestinatario,EmailDestinatario,Peso,Comprimento,Largura,Altura,DataEntregaPretendida")] Pedidos pedido) { pedido.Utilizador = db.Utilizadores .OrderByDescending(a => a.ID) .Where(a => a.Email == User.Identity.Name) .First(); pedido.Utilizadorfk = pedido.Utilizador.ID; pedido.Aceite = 0; pedido.Estado = 0; if (ModelState.IsValid) { db.Pedidos.Add(pedido); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(pedido)); }
public async Task <ActionResult> DeleteConfirmed(int?id) { if (ModelState.IsValid) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var transportadora = db.Transportadora .Where(a => a.ID == id) .OrderByDescending(a => a.ID) .First(); var user = UserManager.FindByName(transportadora.Email); if (user == null) { return(HttpNotFound()); } var result = await UserManager.DeleteAsync(user); if (!result.Succeeded) { ModelState.AddModelError("", result.Errors.First()); return(View()); } var cotacoes = db.Cotacoes .Where(a => a.Transportadorafk == id) .OrderByDescending(a => a.ID) .ToList(); foreach (var item in cotacoes) { db.Cotacoes.Remove(item); db.SaveChanges(); } db.Transportadora.Remove(transportadora); db.SaveChanges(); return(RedirectToAction("Index")); } return(View()); }