public ActionResult ActualizarEntrega([Bind(Include = "OrdenDeCompraGeneralID")] OrdenDeCompraGeneral ordenDeCompraGeneral, FormCollection post) { if (Session["ID"] == null || !roles.tienePermiso(numeroPermiso, int.Parse(Session["ID"].ToString()))) { return(RedirectToAction("Index", "Home")); } //Se marca como ENTEGADA la OC ordenDeCompraGeneral = OrdenDeCompraGeneral.obtener(int.Parse(post["OrdenDeCompraGeneralID"])); ordenDeCompraGeneral.estado = "ENTREGADA"; ordenDeCompraGeneral.guardar(); //Se guardan los datos de entrega datosEntregaOrdenCompraGeneral datosEntrega = new datosEntregaOrdenCompraGeneral(); datosEntrega.datosEntregaOrdenCompraGeneralID = int.Parse(post["IDEntrega"].ToString()); string fechaEntregaReal = post["fechaEntregaReal"].ToString(); datosEntrega.fechaEntregaReal = new DateTime(int.Parse(fechaEntregaReal.Split('/')[2]), int.Parse(fechaEntregaReal.Split('/')[1]), int.Parse(fechaEntregaReal.Split('/')[0])); datosEntrega.notaRecibo = post["NotaRecibo"].ToString(); datosEntrega.OrdenDeCompraGeneralID = ordenDeCompraGeneral.OrdenDeCompraGeneralID; datosEntrega.guardar(); //Se guarda el detalle: datosEntrega.eliminarDetalle(); string[] IDDetalle = Request.Form.GetValues("IDDetalle"); string[] cantidadEntregada = Request.Form.GetValues("cantidadEntregadaDetalle"); string[] cantidadDetalle = Request.Form.GetValues("cantidadDetalle"); bool enviarCorreo = false; for (int i = 0; i < IDDetalle.Length; i++) { DetalleEntregaOrdenCompraGeneral detalle = new DetalleEntregaOrdenCompraGeneral(); detalle.obtenerID(); detalle.DetalleOrdenCompraID = int.Parse(IDDetalle[i]); detalle.CantidadEntregada = int.Parse(cantidadEntregada[i]); detalle.guardar(); if (detalle.CantidadEntregada < int.Parse(cantidadDetalle[i])) { enviarCorreo = true; } } if (enviarCorreo) { OrdenDeCompraGeneral.enviarCorreo(ordenDeCompraGeneral.OrdenDeCompraGeneralID); } return(RedirectToAction("Index")); }