public ActionResult EditPackaging(int id) { CAT_INS_PACK C = db.CAT_INS_PACK.Where(x => x.ID_CAT_INS_PACK == id).FirstOrDefault(); ViewBag.ID_INSUMO = new SelectList(db.INSUMOes.Where(X => X.ACTIVE == true), "ID_INSUMO", "NOMBRE", C.ID_INSUMO); //ViewBag.ID_PACKAGING = new SelectList(db.PACKAGINGs.Where(X => X.ACTIVE == 1), "ID_PACKAGING", "NOMBRE", C.ID_PACKAGING); ViewBag.ID_PACKAGING = new SelectList(db.PACKAGINGs, "ID_PACKAGING", "NAME", C.ID_PACKAGING); return(PartialView("_editPackaging", C)); }
public ActionResult NewPackaging(int id) { CAT_INS_PACK pr = new CAT_INS_PACK(); pr.ID_CATERING = id; ViewBag.ID_INSUMO = new SelectList(db.INSUMOes, "ID_INSUMO", "NOMBRE"); ViewBag.ID_PACKAGING = new SelectList(db.PACKAGINGs, "ID_PACKAGING", "NAME"); return(PartialView("_editPackaging", new CAT_INS_PACK { ID_CATERING = id })); }
public ActionResult DeleteCateringPackaging(int id, int ID_CATERING) { CAT_INS_PACK m = db.CAT_INS_PACK.Find(id); m.ACTIVE = 0; db.Entry(m).State = EntityState.Modified; db.SaveChanges(); IEnumerable <CAT_INS_PACK> listaProductos = db.CAT_INS_PACK.Include(x => x.INSUMO).Where(x => x.ID_CATERING == ID_CATERING && x.ACTIVE == 1).ToList(); return(PartialView("_listaPackaging", listaProductos)); }
public ActionResult EditPackagingP(int ID_CAT_INS_PACK, int QUANTITY, int ID_INSUMO, int ID_CATERING, int ID_PACKAGING) { CAT_INS_PACK cat = db.CAT_INS_PACK.Where(x => x.ID_CAT_INS_PACK == ID_CAT_INS_PACK).FirstOrDefault(); //if (cat.ID_INSUMO == 0) //{ // ViewBag.ID_INSUMO = new SelectList(db.INSUMOes, "ID_INSUMO", "NOMBRE"); // return PartialView("_editSupplie", new CATERING_INSUMO { ID_CATERING_INSUMO = ID_CATERING_INSUMO }); //} CAT_INS_PACK cateringInsumo = db.CAT_INS_PACK.Include(x => x.INSUMO).Include(x => x.CATERING).Include(x => x.PACKAGING).Where(x => x.ID_CAT_INS_PACK == ID_CAT_INS_PACK && x.ACTIVE == 1).FirstOrDefault(); if (cateringInsumo != null) { cateringInsumo.QUANTITY = QUANTITY; cateringInsumo.ID_INSUMO = ID_INSUMO; cateringInsumo.ID_PACKAGING = ID_PACKAGING; db.Entry <CAT_INS_PACK>(cateringInsumo).State = EntityState.Modified; } else { CAT_INS_PACK PR = new CAT_INS_PACK { ID_CATERING = ID_CATERING, QUANTITY = QUANTITY, ID_INSUMO = ID_INSUMO, ID_PACKAGING = ID_PACKAGING, ACTIVE = 1 }; db.CAT_INS_PACK.Add(PR); } db.SaveChanges(); IEnumerable <CAT_INS_PACK> listaInsumos = db.CAT_INS_PACK.Include(x => x.INSUMO).Include(x => x.CATERING).Where(x => x.ID_CATERING == ID_CATERING && x.ACTIVE == 1).ToList(); ViewBag.ID_INSUMO = new SelectList(db.INSUMOes, "ID_INSUMO", "NOMBRE"); ViewBag.ID_PACKAGING = new SelectList(db.PACKAGINGs, "ID_PACKAGING", "NAME"); return(PartialView("_listaPackaging", listaInsumos)); }
public ActionResult Create([Bind(Include = "ID_CATERING,ARRIVAL_TIME,DEPARTURE_TIME,ID_CLIENT,ID_MENU,AMOUNT_PEOPLE,ADDRESS,EVENT_DATE,NOTES,HAS_PARKING")] CATERING cATERING) { if (ModelState.IsValid) { List <PRODUCTO> listaProductos = db.MENU_PRODUCTO.Where(x => x.ID_MENU == cATERING.ID_MENU).Select(x => x.PRODUCTO).ToList(); List <INSUMO> listaInsumo = db.MENU_INSUMO.Where(x => x.ID_MENU == cATERING.ID_MENU && x.ACTIVE == 1).Select(x => x.INSUMO).ToList(); List <CAT_INS_PACK> packagingCatering = new List <CAT_INS_PACK>(); Dictionary <string, int?> listaInsumos = new Dictionary <string, int?>(); var cantPersonas = cATERING.AMOUNT_PEOPLE; cATERING.deleted = 0; StringBuilder errorPackaging = new StringBuilder(); db.CATERINGs.Add(cATERING); for (int i = 0; i < cantPersonas; i++) { Dictionary <string, int?> listaInsu = new Dictionary <string, int?>(); listaInsu = db.MENU_INSUMO.Where(x => x.ID_MENU == cATERING.ID_MENU && x.ACTIVE == 1).Select(x => new { x.INSUMO.NOMBRE, x.QUANTITY }).ToDictionary(t => t.NOMBRE, t => t.QUANTITY); foreach (KeyValuePair <string, int?> list in listaInsu) { if (!listaInsumos.ContainsKey(list.Key)) { listaInsumos.Add(list.Key, list.Value); } else { var valorInsumo = listaInsumos.Where(x => x.Key == list.Key).Select(x => x.Value).First(); valorInsumo = valorInsumo + list.Value; listaInsumos[list.Key] = valorInsumo; } } } //GENERO LISTA PARA INSERTAR LOS INSUMOS. var l = listaInsumos; var s = (from l_insumo in listaInsumos join ins in db.INSUMOes on l_insumo.Key equals ins.NOMBRE join med in db.MEDIDAs on ins.ID_MEDIDA equals med.ID_MEDIDA select new InsumosViewModel { id = ins.ID_INSUMO, nombreInsumo = l_insumo.Key, nombre = med.NOMBRE, quantity = l_insumo.Value }).ToList(); foreach (InsumosViewModel it in s) { INSUMO_PACKAGING ip = db.INSUMO_PACKAGING.Where(x => x.ID_INSUMO == it.id && cantPersonas <= x.maxPerson && cantPersonas >= x.minPerson).OrderBy(x => x.QUANTITY).FirstOrDefault(); try { var cantPackaging = it.quantity / ip.QUANTITY; if (cantPackaging == 0) { cantPackaging = 1; } db.CAT_INS_PACK.Add(new CAT_INS_PACK { ID_CATERING = cATERING.ID_CATERING, QUANTITY = cantPackaging, ID_INSUMO = it.id, ID_PACKAGING = ip.ID_PACKAGING, ACTIVE = 1 }); } catch (Exception ex) { errorPackaging.AppendLine("Id Insumo:" + it.id + " ex: " + ex.InnerException); db.INSUMO_PACKAGING_PENDING.Add(new INSUMO_PACKAGING_PENDING { ACTIVE = true, ID_INSUMO = it.id, QUANTITY = it.quantity, }); } if (it.id == 39) { double quant = Convert.ToDouble(it.quantity / 2); db.CATERING_INSUMO.Add(new CATERING_INSUMO { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = Convert.ToInt16(it.id), QUANTITY = quant, ACTIVE = 1 }); } else { db.CATERING_INSUMO.Add(new CATERING_INSUMO { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = Convert.ToInt16(it.id), QUANTITY = it.quantity, ACTIVE = 1 }); } } //AGREGO INSUMOS EXTRA POR MENU. //switch (cATERING.ID_MENU) //{ // case 1: // break; // case 2: // CATERING_INSUMO CAT = new CATERING_INSUMO // { // ID_INSUMO = 66, // QUANTITY = 500, // ID_CATERING = cATERING.ID_CATERING // }; // db.CATERING_INSUMO.Add(CAT); // break; //} //PREPARO PACKAGING. foreach (InsumosViewModel ins in s) { } switch (cATERING.ID_MENU) { case 1: break; case 2: double cateringBox = Convert.ToDouble(cantPersonas) / 10; cateringBox = Math.Round(cateringBox); //Extra Corn Chips. CAT_INS_PACK cornChips = new CAT_INS_PACK { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = 64, QUANTITY = 1, ID_PACKAGING = 8 }; //Hot Sauce. CAT_INS_PACK hotSauce = new CAT_INS_PACK { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = 23, QUANTITY = 1, ID_PACKAGING = 5 }; //Extra Guacamole CAT_INS_PACK exTraGuacamole = new CAT_INS_PACK { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = 66, QUANTITY = 1, ID_PACKAGING = 4 }; //CATERING BOX CAT_INS_PACK catBox = new CAT_INS_PACK { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = 66, QUANTITY = Convert.ToInt16(cateringBox), ID_PACKAGING = 8 }; db.CAT_INS_PACK.Add(cornChips); db.CAT_INS_PACK.Add(hotSauce); db.CAT_INS_PACK.Add(exTraGuacamole); db.CAT_INS_PACK.Add(catBox); break; case 3: double cornChipsCant = Convert.ToDouble(cantPersonas) / 15; cornChipsCant = Math.Round(cornChipsCant); //Extra Corn Chips. CAT_INS_PACK cornChips2 = new CAT_INS_PACK { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = 64, QUANTITY = Convert.ToInt16(cornChipsCant), ID_PACKAGING = 8 }; //BlackBowl CAT_INS_PACK blackBowl = new CAT_INS_PACK { ID_CATERING = cATERING.ID_CATERING, ID_INSUMO = 67, QUANTITY = cantPersonas, ID_PACKAGING = 4 }; db.CAT_INS_PACK.Add(cornChips2); db.CAT_INS_PACK.Add(blackBowl); break; case 4: break; case 5: break; case 6: break; } db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ID_CLIENT = new SelectList(db.CLIENTs, "ID_CLIENT", "NAME", cATERING.ID_CLIENT); ViewBag.ID_MENU = new SelectList(db.MENUs, "ID_MENU", "NOMBRE", cATERING.ID_MENU); return(View(cATERING)); }