public void sRevision_Load() { //Obtener la cookie al cargar string strcookieEditarRevision = Cookies.GetCookie("cookieEditarRevision").Value; //Validar si es diferente de Nuevo if (!strcookieEditarRevision.Equals("Nuevo")) { //Cargar el encabezado del movimiento Revision oRevision = RevisionBusiness.ObtenerRevisionPorID(Convert.ToInt32(strcookieEditarRevision)); //Cargar el detalle del movimiento sObraCivil.DataSource = RevisionDBusiness.ObtenerRevisionesDPorRevision(oRevision.ID); sObraCivil.DataBind(); sRevision.Add(new { ID = oRevision.ID, Mov = oRevision.Mov, MovID = oRevision.MovID, Semana = oRevision.Semana, Sucursal = oRevision.Sucursal, FechaEmision = oRevision.FechaEmision, FechaRevision = oRevision.FechaRevision, Observaciones = oRevision.Observaciones, Comentarios = oRevision.Comentarios, Estatus = oRevision.Estatus, RSucursal = oRevision.RSucursal }); } }
/// <summary> /// Evento que Guarda o actualiza un Movimiento /// </summary> /// <param name="oRevisionForma"></param> /// <param name="oRevision"></param> /// <param name="lRevisionD"></param> private string GuardarMovimiento(ref Revision oRevisionForma, Revision oRevision, List <RevisionD> lRevisionD) { //1. Lo que sucede cuando es nuevo y no se habia guardado if (oRevision == null) { //2. Asignar campos faltantes oRevisionForma.Estatus = "BORRADOR"; //3. Insertar en la base de datos oRevisionForma.ID = RevisionBusiness.Insertar(oRevisionForma); //4. Agregar el objeto al Store de Revisión sRevision.Add(new { ID = oRevisionForma.ID, Mov = oRevisionForma.Mov, MovID = oRevisionForma.MovID, Semana = oRevisionForma.Semana, Sucursal = oRevisionForma.Sucursal, FechaEmision = oRevisionForma.FechaEmision, FechaRevision = oRevisionForma.FechaRevision, Observaciones = oRevisionForma.Observaciones, Comentarios = oRevisionForma.Comentarios, Estatus = oRevisionForma.Estatus }); //5. Guardar Detalle y regresar valor GuardarDetalle(lRevisionD, oRevisionForma); return("insertar"); } else { //6. Complementar datos y actualizar encabezado oRevisionForma.ID = oRevision.ID; RevisionBusiness.Actualizar(oRevisionForma); //7. Actualizar store de Revision sRevision.GetAt(0).Set("Mov", oRevisionForma.Mov); sRevision.GetAt(0).Set("Semana", oRevisionForma.Semana); sRevision.GetAt(0).Set("Sucursal", oRevisionForma.Sucursal); sRevision.GetAt(0).Set("FechaEmision", oRevisionForma.FechaEmision); sRevision.GetAt(0).Set("FechaRevision", oRevisionForma.FechaRevision); sRevision.GetAt(0).Set("Observaciones", oRevisionForma.Observaciones); sRevision.GetAt(0).Set("Comentarios", oRevisionForma.Comentarios); //8. Borrar todo el detalle e insertarlo de nuevo RevisionDBusiness.BorrarPorRevision(oRevisionForma.ID); GuardarDetalle(lRevisionD, oRevisionForma); //9. Regresar valor return("modificar"); } }
/// <summary> /// Evento que Guarda el detalle de Obra Civil /// </summary> /// <param name="lRevisionD"></param> /// <param name="oRevisionForma"></param> private void GuardarDetalleObraCivil(List <RevisionD> lRevisionD, Revision oRevisionForma) { //1. Insertar los datos del detalle foreach (RevisionD sd in lRevisionD) { //2. Validar que el objeto no venga en blanco if (sd.Concepto.Equals(string.Empty) || sd.Proveedor.Equals(string.Empty) || sd.Programado == 0 || sd.Real == 0) { continue; } else { sd.Revision = oRevisionForma.ID; RevisionDBusiness.Insertar(sd); } } }