Esempio n. 1
0
        public ActionResult DesenhosSemImagem(
            string filtrocodstudio,
            string filtrocoddal,
            string filtrodesenho,
            string pagina,
            string totalpaginas,
            string filtrostudio)
        {
            DesenhosSemImagemModelView model = new DesenhosSemImagemModelView();

            model.FiltroCodStudio = filtrocodstudio;
            model.FiltroCodDal    = filtrocoddal;
            model.FiltroDesenho   = filtrodesenho;
            model.FiltroStudio    = filtrostudio;

            if (!string.IsNullOrWhiteSpace(totalpaginas))
            {
                model.TotalPaginas = int.Parse(totalpaginas);
            }

            if (string.IsNullOrWhiteSpace(pagina))
            {
                model.Pagina = 1;
            }
            else
            {
                model.Pagina = int.Parse(pagina);
            }


            ObterItensParaReserva(model);

            model.UrlImagens = ConfigurationManager.AppSettings["PASTA_RESERVAS"];
            return(View(model));
        }
Esempio n. 2
0
        private void ObterItensParaReserva(DesenhosSemImagemModelView model)
        {
            int iItensPorPagina = 24;

            using (var ctx = new TIDalutexContext())
            {
                List <ItemReserva> result = null;

                var query =
                    from dc in ctx.VW_DESENHOS_DISP_RESERVA
                    where
                    (dc.DESENHO.StartsWith(model.FiltroDesenho.ToUpper()) || model.FiltroDesenho == null) &&
                    (dc.COD_STUDIO.ToUpper().StartsWith(model.FiltroCodStudio.ToUpper()) || model.FiltroCodStudio == null) &&
                    (dc.COD_DAL.ToUpper().Contains(model.FiltroCodDal.ToUpper()) || model.FiltroCodDal == null) &&
                    (dc.NOME_STUDIO.ToUpper().Contains(model.FiltroStudio.ToUpper()) || model.FiltroStudio == null)
                    group dc by
                    new
                {
                    dc.DESENHO,
                    dc.COD_STUDIO,
                    dc.COD_DAL,
                    dc.ID_CONTROLE_DESENV,
                    dc.ID_STUDIO,
                    dc.ID_ITEM_STUDIO,
                    dc.NOME_STUDIO
                }
                into dv
                    select new ItemReserva
                {
                    Desenho   = dv.Key.DESENHO.ToUpper(),
                    CodStudio = dv.Key.COD_STUDIO.ToUpper(),
                    CodDal    = dv.Key.COD_DAL.ToUpper(),
                    IDControleDesenvolvimento = dv.Key.ID_CONTROLE_DESENV,
                    IDStudio     = (int)dv.Key.ID_STUDIO,
                    IDItemStudio = (int)dv.Key.ID_ITEM_STUDIO,
                    Studio       = dv.Key.NOME_STUDIO
                };


                if (model.TotalPaginas == 0)
                {
                    result = query.OrderByDescending(x => x.CodDal).ToList();

                    decimal dTotal = result.Count / (decimal)iItensPorPagina;
                    model.TotalPaginas = (int)Decimal.Ceiling(dTotal);
                    if (model.TotalPaginas == 0)
                    {
                        model.TotalPaginas = 1;
                    }

                    model.Galeria = result.Skip((model.Pagina - 1) * iItensPorPagina).Take(iItensPorPagina).ToList();
                }
                else
                {
                    model.Galeria = query.OrderByDescending(x => x.CodDal)
                                    .Skip((model.Pagina - 1) * iItensPorPagina)
                                    .Take(iItensPorPagina)
                                    .ToList();
                }
            }
        }