protected void btn_guardar_equipo_ServerClick(object sender, EventArgs e) { this.Validate("equipo"); if (IsValid) { Equipo session_equipo = Session["equipo"] as Equipo; using (var cxt = new Model1Container()) { Equipo equipo = new Equipo(); if (session_equipo.id_equipo > 0) { equipo = cxt.Equipos.First(ee => ee.id_equipo == session_equipo.id_equipo); } else { cxt.Equipos.Add(equipo); } equipo.Generico = false; equipo.notas = tb_notas_equipo.Value; equipo.nombre = tb_nombre.Value; equipo.id_categoria = Convert.ToInt32(ddl_categorias.SelectedItem.Value); equipo.OUT = chk_out.Checked; foreach (Item_por_amortizar parte in session_equipo.Items_por_amortizar) { if (parte.id_item == 0) { equipo.Items_por_amortizar.Add(new Item_por_amortizar() { costo_cero_km_uss = parte.costo_cero_km_uss, meses_por_amortizar = parte.meses_por_amortizar, nombre = parte.nombre, porcentaje_usado = parte.porcentaje_usado, porcentaje_valor_recidual = parte.porcentaje_valor_recidual, periodo_alta_anio = parte.periodo_alta_anio, periodo_alta_mes = parte.periodo_alta_mes }); } } try { cxt.SaveChanges(); Session["equipo"] = null; MessageBox.Show(this, "El equipo se guardo correctamente", MessageBox.Tipo_MessageBox.Success, "Genial!", "admin_equipos.aspx"); } catch (Exception ex) { //inspeccion rapida y ((System.Data.Entity.Validation.DbEntityValidationException)ex).EntityValidationErrors para ver el error MessageBox.Show(this, "Upps! ocurrió un error!", MessageBox.Tipo_MessageBox.Danger); } } } else { MessageBox.Show(this, "Verifique los valores ingresados", MessageBox.Tipo_MessageBox.Info); } }
private void CargarValoresEquipo() { Equipo equipo = Session["equipo"] as Equipo; using (var cxt = new Model1Container()) { if (equipo == null) { Session["equipo"] = new Equipo(); lbl_costo_mensual.Text = Cadena.Formato_moneda(0, Cadena.Moneda.dolares); lbl_costo_total_0km.Text = Cadena.Formato_moneda(0, Cadena.Moneda.dolares); lbl_valor_por_amortizar.Text = Cadena.Formato_moneda(0, Cadena.Moneda.dolares); } else { tb_nombre.Value = equipo.nombre; ddl_categorias.SelectedValue = equipo.id_categoria.ToString(); tb_notas_equipo.Value = equipo.notas; chk_out.Checked = equipo.OUT; if (Directory.Exists(pathImagenesDisco + equipo.id_equipo.ToString())) { if (File.Exists(pathImagenesDisco + equipo.id_equipo + "\\Original.jpg")) {//Si no existe la imagen temporal pero si la original, la cargo img_cuenta.ImageUrl = "~/img/Equipos/" + equipo.id_equipo + "/Original.jpg"; } else {//Si no existe la imagen temporal y tampoco la original, cargo la default img_cuenta.ImageUrl = "~/img/Equipos/add.png"; } } else {//Si no existe la carpeta del usuario directamente cargo la imagen de default img_cuenta.ImageUrl = "~/img/Equipos/add.png"; } int mes = DateTime.Today.Month; int anio = DateTime.Today.Year; var items = (from ii in equipo.Items_por_amortizar select new { id_parte = ii.id_item, nombre_parte = ii.nombre, costo_cero = ii.costo_cero_km_uss, porcentaje_usado = ii.porcentaje_usado, porcentaje_valor_residual = ii.porcentaje_valor_recidual, valor_por_amortizar = ii.valor_por_amortizar, meses_por_amortizar = ii.meses_por_amortizar, periodo_alta_anio = ii.periodo_alta_anio, periodo_alta_mes = ii.periodo_alta_mes, costo_mensual = ii.costo_mensual, meses_amortizados = ii.Periodos_amortizados(mes, anio), restan_amortizar = ii.Restan_por_amortizar(mes, anio) }).ToList(); var items_formateados = (from ii in items select new { id_parte = ii.id_parte, nombre_parte = ii.nombre_parte, costo_cero = Cadena.Formato_moneda(ii.costo_cero, Cadena.Moneda.dolares), porcentaje_usado = Cadena.Formato_porcentaje(ii.porcentaje_usado), porcentaje_valor_residual = Cadena.Formato_porcentaje(ii.porcentaje_valor_residual), valor_por_amortizar = Cadena.Formato_moneda(ii.valor_por_amortizar, Cadena.Moneda.dolares), meses_por_amortizar = ii.meses_por_amortizar, costo_mensual = Cadena.Formato_moneda(ii.costo_mensual, Cadena.Moneda.dolares), periodo_alta = ii.periodo_alta_mes.ToString() + "/" + ii.periodo_alta_anio.ToString(), meses_amortizados = ii.meses_amortizados, restan_amortizar = ii.restan_amortizar }).ToList(); gv_partes.DataSource = items_formateados; gv_partes.DataBind(); gv_partes.Font.Size = new FontUnit("11"); lbl_costo_total_0km.Text = Cadena.Formato_moneda(items.Sum(ii => ii.costo_cero), Cadena.Moneda.dolares); lbl_costo_mensual.Text = Cadena.Formato_moneda(items.Where(x => x.restan_amortizar > 0).Sum(ii => ii.costo_mensual), Cadena.Moneda.dolares); lbl_valor_por_amortizar.Text = Cadena.Formato_moneda(items.Where(x => x.restan_amortizar > 0).Sum(ii => ii.valor_por_amortizar), Cadena.Moneda.dolares); } } }
public resumen_equipo_anio(int anio, int id_equipo) { using (var cxt = new Model1Container()) { foreach (Item_ingreso_egreso concepto in cxt.Items_ingresos_egresos) { equipo = cxt.Equipos.First(ee => ee.id_equipo == id_equipo); anio_resumen = anio; //if ((equipo.EsTrabajo.HasValue && equipo.EsTrabajo.Value == true && concepto.mostrar_en_trabajo.HasValue && concepto.mostrar_en_trabajo.Value == true) || //(equipo.EsTrabajo.HasValue && equipo.EsTrabajo.Value == false && concepto.mostrar_en_equipo.HasValue && concepto.mostrar_en_equipo.Value == true)) //{ decimal total_concepto_anio = 0; decimal meses_cargados_anio = 0; for (int i = 0; i < 12; i++) { Ingreso_egreso_mensual_equipo valor_equipo_mes = cxt.Ingresos_egresos_mensuales_equipos.FirstOrDefault(x => x.id_equipo == id_equipo && x.mes == i + 1 && x.anio == anio); if (valor_equipo_mes != null) { Valor_mes vm = valor_equipo_mes.Valores_meses.FirstOrDefault(ii => ii.id_item == concepto.id_item && ii.id_ingreso_egreso_mensual == valor_equipo_mes.id_ingreso_egreso_mensual); if (vm != null) { Valores_anio.Add(new valor_item_mes() { id_concepto = concepto.id_item, agrupacion = ((agrupaciones)i + 1), valor = vm.valor }); total_concepto_anio += vm.valor; meses_cargados_anio++; } else { Valores_anio.Add(new valor_item_mes() { id_concepto = concepto.id_item, agrupacion = ((agrupaciones)i + 1), valor = 0 }); } } else { Valores_anio.Add(new valor_item_mes() { id_concepto = concepto.id_item, agrupacion = ((agrupaciones)i + 1), valor = 0 }); } } decimal promedio = meses_cargados_anio > 0 ? total_concepto_anio / meses_cargados_anio : 0; Valores_anio.Add(new valor_item_mes() { id_concepto = concepto.id_item, agrupacion = agrupaciones.total_anio, valor = total_concepto_anio }); Valores_anio.Add(new valor_item_mes() { id_concepto = concepto.id_item, agrupacion = agrupaciones.promedio_mensual, valor = promedio }); //} } } }