Beispiel #1
0
        public ProspectoContainer DataProspeccion(int id)
        {
            ProspectoContainer salida = new ProspectoContainer();

            salida.Prospeccion   = ProspeccionDataAccess.ObtenerPorID(id);
            salida.Empresa       = EmpresaDataAccess.ObtenerPorID(salida.Prospeccion.empresa_id);
            salida.Gestiones     = GestionprospeccionDataAccess.ObtenerEntidades().FindAll(g => g.prospecto_id == id);
            salida.UltimaGestion = salida.Gestiones.OrderByDescending(d => d.gstp_fecha_accion).FirstOrDefault();

            return(salida);
        }
Beispiel #2
0
        public BootstrapTableResult <ProspectoContainer> ListadoProspeccion(string sort = "Empresa.emp_rut", string order = "asc", int limit = 30, int offset = 0, string search = "")
        {
            CookieHeaderValue cookie = Request.Headers.GetCookies("Oficina").FirstOrDefault();
            int codOficina           = Convert.ToInt32(cookie.Cookies.FirstOrDefault(s => s.Name == "Oficina").Value);

            List <ProspectoContainer> salida = new List <ProspectoContainer>();
            BootstrapTableResult <ProspectoContainer> salida_final = new BootstrapTableResult <ProspectoContainer>();

            ProspeccionDataAccess.ObtenerEntidades().FindAll(x => x.oficina == codOficina).ForEach(pro => {
                ProspectoContainer container = new ProspectoContainer();
                container.Prospeccion        = pro;
                container.Gestiones          = GestionprospeccionDataAccess.ObtenerEntidades().FindAll(g => g.prospecto_id == pro.pros_id);
                container.UltimaGestion      = container.Gestiones.OrderByDescending(d => d.gstp_fecha_accion).FirstOrDefault();
                container.Empresa            = EmpresaDataAccess.ObtenerPorID(pro.empresa_id);
                salida.Add(container);
            });

            if (!string.IsNullOrEmpty(search))
            {
                salida = salida.FindAll(s => s.Empresa.emp_nombre.ToLower().Contains(search.ToLower()) ||
                                        s.Empresa.emp_rut.ToLower().Contains(search.ToLower().Replace(".", "")) ||
                                        s.Empresa.emp_holding.ToLower().Contains(search.ToLower())
                                        ).ToList();
            }

            switch (order)
            {
            case "asc":
                switch (sort)
                {
                case "Empresa.emp_rut":
                    salida = salida.OrderBy(o => o.Empresa.emp_rut).ToList();
                    break;

                case "Empresa.emp_nombre":
                    salida = salida.OrderBy(o => o.Empresa.emp_nombre).ToList();
                    break;

                case "Empresa.emp_holding":
                    salida = salida.OrderBy(o => o.Empresa.emp_holding).ToList();
                    break;

                case "Prospeccion.pros_caja_origen":
                    salida = salida.OrderBy(o => o.Prospeccion.pros_caja_origen).ToList();
                    break;

                case "UltimaGestion.gstp_fecha_accion":
                    salida = salida.OrderBy(o => o.UltimaGestion.gstp_fecha_accion).ToList();
                    break;
                }
                break;

            case "desc":
                switch (sort)
                {
                case "Empresa.emp_rut":
                    salida = salida.OrderByDescending(o => o.Empresa.emp_rut).ToList();
                    break;

                case "Empresa.emp_nombre":
                    salida = salida.OrderByDescending(o => o.Empresa.emp_nombre).ToList();
                    break;

                case "Empresa.emp_holding":
                    salida = salida.OrderByDescending(o => o.Empresa.emp_holding).ToList();
                    break;

                case "Prospeccion.pros_caja_origen":
                    salida = salida.OrderByDescending(o => o.Prospeccion.pros_caja_origen).ToList();
                    break;

                case "UltimaGestion.gstp_fecha_accion":
                    salida = salida.OrderByDescending(o => o.UltimaGestion.gstp_fecha_accion).ToList();
                    break;
                }
                break;
            }

            salida_final.total = salida.Count;
            salida_final.rows  = salida.Skip(offset).Take(limit).ToList();
            return(salida_final);
        }