protected void imgBtnEliminar_Click(object sender, ImageClickEventArgs e) { if (_StatusEjercicio.Text == "2") { return; } int id; GridViewRow row = (GridViewRow)((ImageButton)sender).NamingContainer; id = int.Parse(grid.DataKeys[row.RowIndex].Values["Id"].ToString()); TechoFinanciero tf = uow.TechoFinancieroBusinessLogic.GetByID(id); uow.Errors.Clear(); List <TechoFinancieroUnidadPresupuestal> lista; lista = uow.TechoFinancieroUnidadPresuestalBusinessLogic.Get(p => p.TechoFinancieroId == tf.Id).ToList(); if (lista.Count > 0) { uow.Errors.Add("El registro no puede eliminarse porque ya ha sido usado en el sistema"); } if (uow.Errors.Count == 0) { uow.TechoFinancieroBusinessLogic.Delete(tf); uow.SaveChanges(); ModoLista(); divMsgSuccess.Style.Add("display", "block"); lblMensajeSuccess.Text = "El registro se ha eliminado correctamente"; } if (uow.Errors.Count == 0) { BindGrid(); } else { ModoLista(); divMsgSuccess.Style.Add("display", "none"); divMsgFail.Style.Add("display", "block"); string mensaje; mensaje = string.Empty; foreach (string cad in uow.Errors) { mensaje = mensaje + cad + "<br>"; } lblMensajeFail.Text = mensaje; } }
protected void btnModificar_Click(object sender, EventArgs e) { TechoFinanciero tf = uow.TechoFinancieroBusinessLogic.GetByID(int.Parse(_ElId.Text)); decimal importeAsignado; decimal nuevoImporte; importeAsignado = tf.detalleUnidadesPresupuestales.Sum(p => p.Importe); nuevoImporte = decimal.Parse(txtImporteEdicion.Value); uow.Errors.Clear(); if (importeAsignado > nuevoImporte) { uow.Errors.Add("El nuevo importe es menor al que ya ha sido asignado a las entidades, verifique y corrija su información"); } tf.Importe = nuevoImporte; uow.TechoFinancieroBusinessLogic.Update(tf); if (uow.Errors.Count == 0) { uow.SaveChanges(); } if (uow.Errors.Count == 0) { BindGrid(); txtImporteEdicion.Value = "0"; ModoLista(); divMsgSuccess.Style.Add("display", "block"); lblMensajeSuccess.Text = "La modificación ha sido registrada correctamente"; } else { divMsgSuccess.Style.Add("display", "none"); divMsgFail.Style.Add("display", "block"); string mensaje; mensaje = string.Empty; foreach (string cad in uow.Errors) { mensaje = mensaje + cad + "<br>"; } lblMensajeFail.Text = mensaje; } }
private void MostrarAsignaciones() { int financiamiento = int.Parse(ddlFinanciamiento.SelectedValue.ToString()); _financiamiento.Text = financiamiento.ToString(); divTransferencia.Style.Add("display", "none"); divNuevo.Style.Add("display", "none"); if (financiamiento == 0) { return; } uow = new UnitOfWork(); var lista = from tfup in uow.TechoFinancieroUnidadPresuestalBusinessLogic.Get() where tfup.TechoFinancieroId == financiamiento select new { tfup.Id, tfup.UnidadPresupuestal, tfup.UnidadPresupuestalId, tfup.Importe, ImporteEjecutado = tfup.DetalleObraFinanciamiento.Sum(p => p.Importe), ImporteDisponible = tfup.Importe - tfup.DetalleObraFinanciamiento.Sum(p => p.Importe) }; //this.grid.DataSource = uow.TechoFinancieroUnidadPresuestalBusinessLogic.Get(p => p.TechoFinancieroId == financiamiento).ToList(); this.grid.DataSource = lista; this.grid.DataBind(); TechoFinanciero tf = uow.TechoFinancieroBusinessLogic.GetByID(financiamiento); lblTotal.Text = "Techo Financiero :" + tf.Importe.ToString("C"); divNuevo.Style.Add("display", "block"); this.grid.DataSource = uow.TechoFinancieroUnidadPresuestalBusinessLogic.Get(p => p.TechoFinancieroId == financiamiento).ToList(); var ListaUPs = from up in uow.UnidadPresupuestalBusinessLogic.Get().ToList() join tfup in uow.TechoFinancieroUnidadPresuestalBusinessLogic.Get(p => p.TechoFinancieroId == financiamiento).ToList() on up.Id equals tfup.UnidadPresupuestalId select up; ddlOrigen.DataSource = ListaUPs.ToList(); ddlOrigen.DataValueField = "Id"; ddlOrigen.DataTextField = "Nombre"; ddlOrigen.DataBind(); }
private void BindGrid() { TechoFinanciero tf = uow.TechoFinancieroBusinessLogic.GetByID(idTechoFinanciero); decimal importetotal = tf.Importe; decimal importeasignado = tf.detalleUnidadesPresupuestales.Sum(p => p.Importe); this.grid.DataSource = uow.TechoFinancieroUnidadPresuestalBusinessLogic.Get(p => p.TechoFinancieroId == idTechoFinanciero, includeProperties: "UnidadPresupuestal").ToList(); this.grid.DataBind(); lblTechoFinanciero.Text = importetotal.ToString("C"); lblImporteAsignado.Text = importeasignado.ToString("C"); lblImporteDisponible.Text = (importetotal - importeasignado).ToString("C"); BindCombos(); }
protected void imgBtnEdit_Click(object sender, ImageClickEventArgs e) { if (_StatusEjercicio.Text == "2") { return; } GridViewRow row = (GridViewRow)((ImageButton)sender).NamingContainer; _ElId.Text = grid.DataKeys[row.RowIndex].Values["Id"].ToString(); TechoFinanciero tf = uow.TechoFinancieroBusinessLogic.GetByID(int.Parse(_ElId.Text)); txtImporteEdicion.Value = tf.Importe.ToString(); ModoEditar(); }
protected void Page_Load(object sender, EventArgs e) { uow = new UnitOfWork(); idTechoFinanciero = int.Parse(Request.QueryString["id"].ToString()); idEjercicio = int.Parse(Session["EjercicioId"].ToString()); if (!IsPostBack) { TechoFinanciero tf = uow.TechoFinancieroBusinessLogic.GetByID(idTechoFinanciero); lblUPnombre.Text = tf.Financiamiento.Fondo.Abreviatura.ToString() + " (" + tf.Financiamiento.ModalidadFinanciamiento.Nombre.ToString() + ":" + tf.Financiamiento.Año.Anio.ToString() + ")"; divMsgSuccess.Style.Add("display", "none"); divMsgFail.Style.Add("display", "none"); BindGrid(); verificarStatusDelEjercicio(); } }
protected void btnGuardar_Click(object sender, EventArgs e) { TechoFinanciero obj; Financiamiento fin; List <Financiamiento> listaFinanciamientos; List <TechoFinanciero> listaTechosFin; int fondo = int.Parse(ddlFondo.SelectedValue); int modalidad = int.Parse(ddlModalidad.SelectedValue); int año = int.Parse(ddlAño.SelectedValue); int idFinanciamiento = 0; listaFinanciamientos = uow.FinanciamientoBusinessLogic.Get(p => p.FondoId == fondo && p.ModalidadFinanciamientoId == modalidad && p.AñoId == año).ToList(); //buscamos el financiamiento seleccionado y si no existe lo creamos if (listaFinanciamientos.Count == 0) { fin = new Financiamiento(); fin.FondoId = fondo; fin.ModalidadFinanciamientoId = modalidad; fin.AñoId = año; uow.FinanciamientoBusinessLogic.Insert(fin); uow.SaveChanges(); idFinanciamiento = fin.Id; } else { foreach (Financiamiento aux in listaFinanciamientos) { idFinanciamiento = aux.Id; } } uow.Errors.Clear(); listaTechosFin = uow.TechoFinancieroBusinessLogic.Get(p => p.EjercicioId == idEjercicio && p.FinanciamientoId == idFinanciamiento).ToList(); if (listaTechosFin.Count == 0)//Nuevo Techo Financiero { obj = new TechoFinanciero(); obj.EjercicioId = this.idEjercicio; obj.FinanciamientoId = idFinanciamiento; obj.Importe = decimal.Parse(txtImporte.Value); uow.TechoFinancieroBusinessLogic.Insert(obj); } else { uow.Errors.Add("El financiamiento que quiere registrar ya ha sido capturado anteriormente"); } if (uow.Errors.Count == 0) { uow.SaveChanges(); } if (uow.Errors.Count == 0) { BindGrid(); txtImporte.Value = "0"; ModoLista(); divMsgSuccess.Style.Add("display", "block"); lblMensajeSuccess.Text = "El Techo Financiero ha sido registrado correctamente"; } else { divMsgSuccess.Style.Add("display", "none"); divMsgFail.Style.Add("display", "block"); string mensaje; mensaje = string.Empty; foreach (string cad in uow.Errors) { mensaje = mensaje + cad + "<br>"; } lblMensajeFail.Text = mensaje; } }
protected void btnGuardar_Click(object sender, EventArgs e) { Financiamiento fin; List <Financiamiento> listaFinanciamientos; List <TechoFinanciero> listaTechosFin; int fondo = int.Parse(ddlFondo.SelectedValue); int modalidad = int.Parse(ddlModalidad.SelectedValue); int año = int.Parse(ddlAño.SelectedValue); int idFinanciamiento = 0; int idEjercicio = int.Parse(Session["EjercicioId"].ToString()); int usuario = int.Parse(Session["IdUser"].ToString()); listaFinanciamientos = uow.FinanciamientoBusinessLogic.Get(p => p.FondoId == fondo && p.ModalidadFinanciamientoId == modalidad && p.AñoId == año).ToList(); //buscamos el financiamiento seleccionado y si no existe lo creamos if (listaFinanciamientos.Count == 0) { fin = new Financiamiento(); fin.FondoId = fondo; fin.ModalidadFinanciamientoId = modalidad; fin.AñoId = año; uow.FinanciamientoBusinessLogic.Insert(fin); uow.SaveChanges(); idFinanciamiento = fin.Id; } else { foreach (Financiamiento aux in listaFinanciamientos) { idFinanciamiento = aux.Id; } } uow.Errors.Clear(); if (txtOficio.Value.Trim() == string.Empty) { uow.Errors.Add("No ha capturado el número de oficio correspondiente a este registro"); } if (txtObservaciones.Value.Trim() == string.Empty) { uow.Errors.Add("No ha capturado las observaciones correspondientes"); } listaTechosFin = uow.TechoFinancieroBusinessLogic.Get(p => p.EjercicioId == idEjercicio && p.FinanciamientoId == idFinanciamiento).ToList(); if (listaTechosFin.Count == 0)//Nuevo Techo Financiero { List <TechoFinancieroTMPtransferencias> listaTMP = uow.TechoFinancieroTMPtransferenciasBL.Get(p => p.Usuario == usuario).ToList(); //insertar el techo financiero TechoFinanciero obj = new TechoFinanciero(); obj.EjercicioId = idEjercicio; obj.FinanciamientoId = idFinanciamiento; obj.Importe = listaTMP.Sum(q => q.Importe); uow.TechoFinancieroBusinessLogic.Insert(obj); //insertar la bitacora TechoFinancieroBitacora bitacora = new TechoFinancieroBitacora(); bitacora.EjercicioId = idEjercicio; bitacora.Movimiento = 3; bitacora.Tipo = EnumTipoMovimientoTechoFinanciero.NuevoFondo; bitacora.Fecha = DateTime.Now; bitacora.Oficio = txtOficio.Value; bitacora.Observaciones = txtObservaciones.Value; uow.TechoFinancieroBitacoraBL.Insert(bitacora); int i = 0; foreach (TechoFinancieroTMPtransferencias item in listaTMP) { i++; TechoFinancieroUnidadPresupuestal tfup = new TechoFinancieroUnidadPresupuestal(); tfup.UnidadPresupuestalId = item.OrigenId; tfup.Importe = item.Importe; obj.detalleUnidadesPresupuestales.Add(tfup); TechoFinancieroBitacoraMovimientos bitacoraMovimientos = new TechoFinancieroBitacoraMovimientos(); bitacoraMovimientos.TechoFinancieroBitacora = bitacora; bitacoraMovimientos.Submovimiento = i; bitacoraMovimientos.UnidadPresupuestalId = item.OrigenId; bitacoraMovimientos.Decremento = 0; bitacoraMovimientos.Incremento = item.Importe; obj.detalleBitacoraMovimientos.Add(bitacoraMovimientos); } } else { uow.Errors.Add("El financiamiento que quiere registrar ya ha sido capturado anteriormente"); } if (uow.Errors.Count == 0) { uow.SaveChanges(); } if (uow.Errors.Count == 0) { Response.Redirect("wfTechoFinanciero.aspx"); } else { divMsgSuccess.Style.Add("display", "none"); divMsgFail.Style.Add("display", "block"); string mensaje; mensaje = string.Empty; foreach (string cad in uow.Errors) { mensaje = mensaje + cad + "<br>"; } lblMensajeFail.Text = mensaje; } }