Example #1
0
        public ActionResult Index(PermutaListFilter filter)
        {
            if (!User.UnidadeId.HasValue)
            {
                this.AlertError("Atenção!", "Informe a unidade onde você trabalha");
                return(RedirectToAction("Index", "Funcionario"));
            }

            ViewBag.Filter        = filter;
            ViewBag.TipoOptions   = _tipoUnidadeDomain.ToOptions();
            ViewBag.RegiaoOptions = _regiaoUnidadeDomain.ToOptions();
            return(View(_domain.Get().ToIndexView(User, filter)));
        }
Example #2
0
 public static IPagedList <PermutaListVM> ToPagedList(this IEnumerable <Permuta> models, FuncionarioOnline user, PermutaListFilter filter = null)
 {
     return(models.ToListVM(user, filter)
            .OrderByDescending(a => a.DtPublicacao)
            .ToPagedList(filter?.Page ?? 1, 10));
 }
Example #3
0
        public static PermutaIndexVM ToIndexView(this IEnumerable <Permuta> models, FuncionarioOnline user, PermutaListFilter filter = null)
        {
            var current   = models.SingleOrDefault(a => a.FuncionarioId == user.Id && !a.DtExclusao.HasValue);
            var pagedList = models.Where(a => a.Funcionario.CargoId == user.CargoId).ToPagedList(user, filter);

            return(new PermutaIndexVM
            {
                Permuta = current.ToGetVM(),
                Permutas = pagedList
            });
        }
Example #4
0
        public static IEnumerable <PermutaListVM> ToListVM(this IEnumerable <Permuta> models, FuncionarioOnline user, PermutaListFilter filter = null)
        {
            if (filter != null)
            {
                if (filter.Tipos.Any())
                {
                    models = models.Where(a => filter.Tipos.Any(b => b == a.Funcionario.UnidadeTrabalho.TipoUnidadeId));
                }

                if (filter.Regioes.Any())
                {
                    models = models.Where(a => filter.Regioes.Any(b => b == a.Funcionario.UnidadeTrabalho.RegiaoUnidadeId));
                }
            }

            return(models.Where(a => !a.DtExclusao.HasValue &&
                                a.TiposUnidade.Any(b => b.TipoUnidadeId == user.TipoUnidadeId) &&
                                a.Regioes.Any(b => b.RegiaoUnidadeId == user.RegiaoUnidadeId))
                   .Select(model => new PermutaListVM
            {
                Id = model.Id,
                ObservacaoFuncionario = model.ObservacaoFuncionario,
                ObservacaoPermuta = model.ObservacaoPermuta,
                DtPublicacao = model.DtPublicacao,
                Regiao = model.Funcionario.UnidadeTrabalho.RegiaoUnidade.Regiao,
                Unidade = model.Funcionario.UnidadeTrabalho.Nome
            }).ToList());
        }