示例#1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            Usuario = Utilerias.FiltrarUsuario(this);
            ChecarMensaje();

            if (!IsPostBack)
            {
                Periodo Periodo = Usuario.ConsultarPeriodoActual();
                PresupuestosZona   = Usuario.Zona.Rellenar().Presupuestos;
                periodoActual.Text = Periodo.Descripcion.ToString();


                List <PresupuestoZona> presupuestos = Usuario.Rellenar().Zona.Rellenar().Presupuestos;
                foreach (PresupuestoZona p in presupuestos)
                {
                    if (p.Rellenar().PresupuestoDivisional.Rellenar().Periodo.EsActivo)
                    {
                        prepZona.Text = p.Monto.ToString();
                        prepdZona     = p;
                        prepD         = prepdZona.PresupuestoDisponible();
                        break;
                    }
                }

                List <Modelo.Area> AreasZona = new List <Modelo.Area>();
                AreasZona = Usuario.Zona.Rellenar().Areas;
                foreach (Modelo.Area a in AreasZona)
                {
                    List <Necesidad> aux = NecesidadDAO.Listar().Where(p => p.ClaveArea == a.Clave && p.ClaveEstatus == 4).ToList();
                    if (aux.Count != 0)
                    {
                        foreach (Necesidad z in aux.Where(p => p.ClavePeriodo == Periodo.Clave))
                        {
                            NecesidadesZona.Add(z);
                        }
                    }
                }
                foreach (Necesidad n in NecesidadesZona)
                {
                    List <NecesidadDetalle> aux = NecesidadDetalleDAO.Listar().Where(p => p.ClaveNecesidad == n.Clave).ToList();
                    if (aux.Count != 0)
                    {
                        double totales = 0;
                        foreach (NecesidadDetalle a in aux)
                        {
                            double totalArea = a.Volumen * a.PrecioUnitario;
                            totales += totalArea;
                            NecesidadZonaDetalle.Add(a);
                        }
                        totalesNecesidades.Add(totales);
                    }
                }


                PresupuestosZona = Usuario.Zona.Rellenar().Presupuestos;
                Areas            = Usuario.Zona.Rellenar().Areas;


                foreach (PresupuestoZona p in PresupuestosZona)
                {
                    if (p.Rellenar().PresupuestoDivisional.Rellenar().Periodo.EsActivo)
                    {
                        PresupuestoZonaActivo = p;
                        break;
                    }
                }
                string Filas = "";
                foreach (Modelo.Area a in Areas)
                {
                    List <PresupuestoArea> aux = a.Rellenar().Presupuestos.Where(p => p.ClavePresupuestoZona == PresupuestoZonaActivo.Clave).ToList();
                    PresupuestosAreas.Add(aux[0]);
                }

                if (PresupuestoZonaActivo.Rellenar().PresupuestoDivisional.Rellenar().Periodo.EsActivo)
                {
                    int x       = 0;
                    int bandera = totalesNecesidades.Count;
                    foreach (Modelo.PresupuestoArea r in PresupuestosAreas)
                    {
                        r.Rellenar();
                        Periodo periodo = r.PresupuestoZona.Rellenar().PresupuestoDivisional.Rellenar().Periodo;
                        if (x < bandera)
                        {
                            Filas += Disenio.GenerarFilaTabla(r.Area.Nombre,
                                                              "$ " + totalesNecesidades[x].ToString(),
                                                              "$ " + r.Monto.ToString(),
                                                              "<div class='input-group'>" +
                                                              "<span class='input-group-addon'><i class='fa fa-dollar'></i></span>" +
                                                              "<input value ='" + r.Monto + "'" + " name='prepz" + r.Clave + "'" + " id = 'txtprep'" + "type='text' class='form-control' value='' onkeyup='presupuesto(this);'/>" +
                                                              "</div>");
                            id++;
                            x++;
                        }
                        else
                        {
                            Filas += Disenio.GenerarFilaTabla(r.Area.Nombre,
                                                              "$ 0",
                                                              "$ " + r.Monto.ToString(),
                                                              "<div class='input-group'>" +
                                                              "<span class='input-group-addon'><i class='fa fa-dollar'></i></span>" +
                                                              "<input value ='" + r.Monto + "'" + " name='prepz" + r.Clave + "'" + " id = 'txtprep'" + "type='text' class='form-control' value='' onkeyup='presupuesto(this);'/>" +
                                                              "</div>");
                            id++;
                            x++;
                        }
                    }
                }
                litTBody.Text = Filas;
            }
        }