// GET: Cargos public async Task <IActionResult> Index(int page = 1, string searchString = null) { var Cargos = from p in _context.Cargos select p; if (!String.IsNullOrEmpty(searchString)) { Cargos = Cargos.Where(p => p.Nome.Contains(searchString)); } decimal nCargos = Cargos.Count(); int NUMERO_PAGINAS = ((int)nCargos / TamanhoPagina); if (nCargos % TamanhoPagina == 0) { NUMERO_PAGINAS -= 1; } CargosViewModel vm = new CargosViewModel { Cargos = Cargos.OrderBy(p => p.Nome).Skip((page - 1) * TamanhoPagina).Take(TamanhoPagina), PaginaAtual = page, PrimeiraPagina = Math.Max(1, page - NUMERO_PAGINAS), TotalPaginas = (int)Math.Ceiling(nCargos / TamanhoPagina) }; vm.UltimaPagina = Math.Min(vm.TotalPaginas, page + NUMERO_PAGINAS); vm.StringProcura = searchString; return(View(vm)); }
public ActionResult Atualizar([Bind(Include = "Id, Descricao, Vendedor")] CargosViewModel viewModel, int?id) { if (id == null) { return(RedirectToAction(nameof(Index))); } var cargo = _cargosRepositorio.ObterCargoPorId(id.Value); if (cargo == null) { RegistroNaoEncontrado(); } cargo.Alterar(new Cargo(viewModel.Descricao, viewModel.Vendedor)); if (Validar(cargo)) { _cargosRepositorio.Atualizar(cargo); TempData["Sucesso"] = true; GravarLogAuditoria(TipoLogAuditoria.UPDATE, cargo); } return(View(viewModel)); }
// GET: Cargos public IActionResult Index(int page = 1) { decimal numberProducts = _context.Cargos.Count(); CargosViewModel vm = new CargosViewModel { Cargos = _context.Cargos //.OrderBy(p => p.Nome) .Skip((page - 1) * NUMERO_DE_CARGOS_POR_PAGINA) .Take(NUMERO_DE_CARGOS_POR_PAGINA), PaginaAtual = page, TotalPaginas = (int)Math.Ceiling(numberProducts / NUMERO_DE_CARGOS_POR_PAGINA), PrimeiraPagina = Math.Max(1, page - NUMERO_DE_PAGINAS_ANTES_DEPOIS), }; vm.UltimaPagina = Math.Min(vm.TotalPaginas, page + NUMERO_DE_PAGINAS_ANTES_DEPOIS); return(View(vm)); }
public ActionResult Cadastrar([Bind(Include = "Descricao, Vendedor")] CargosViewModel viewModel) { var cargo = new Cargo(viewModel.Descricao, viewModel.Vendedor); if (Validar(cargo)) { cargo.Id = _cargosRepositorio.Cadastrar(cargo); if (!_controleAcessoRepositorio.ExistePermissaoNoCargo(cargo.Id)) { var menus = _controleAcessoRepositorio.ObterMenus().ToList(); PermissaoAcesso permissaoAcesso = new PermissaoAcesso(); foreach (var menu in menus) { var campos = menus .Where(m => m.Id == menu.Id) .SelectMany(c => c.Campos); permissaoAcesso.IncluirPermissaoAcesso(new PermissaoAcesso { MenuId = menu.Id, CargoId = cargo.Id, Acessar = false, Cadastrar = false, Atualizar = false, Excluir = false, Logs = false, Campos = campos }); } _controleAcessoRepositorio.AplicarPermissoes(cargo.Id, permissaoAcesso.PermissoesAcesso); } TempData["Sucesso"] = true; GravarLogAuditoria(TipoLogAuditoria.INSERT, cargo); } return(View(viewModel)); }
// GET: Cargos public async Task <IActionResult> Index(int page = 1, string searchString = "", string sort = "true", string procurar = "Nome") { var cargos = from p in _context.Cargos select p; if (!String.IsNullOrEmpty(searchString)) { cargos = cargos.Where(p => p.NomeCargo.Contains(searchString)); if (procurar.Equals("Nome")) { cargos = cargos.Where(p => p.NomeCargo.Contains(searchString)); } } decimal numberCargos = _context.Cargos.Count(); CargosViewModel vm = new CargosViewModel { Sort = sort, Cargos = _context.Cargos.OrderBy(p => p.NomeCargo).Skip((page - 1) * CARGOS_PER_PAGE).Take(CARGOS_PER_PAGE), CurrentPage = page, FirstPageShow = Math.Max(1, page - NUMBER_PAGES_BEFORE_AND_AFTER), TotalPages = (int)Math.Ceiling(numberCargos / NUMBER_CARGO_PER_PAGE), Procurar = procurar }; if (sort.Equals("true")) { vm.Cargos = cargos.OrderBy(p => p.NomeCargo).Skip((page - 1) * NUMBER_CARGO_PER_PAGE).Take(NUMBER_CARGO_PER_PAGE); } else { vm.Cargos = cargos.OrderByDescending(p => p.NomeCargo).Skip((page - 1) * NUMBER_CARGO_PER_PAGE).Take(NUMBER_CARGO_PER_PAGE); } vm.LastPageShow = Math.Min(vm.TotalPages, page + NUMBER_PAGES_BEFORE_AND_AFTER); vm.StringProcurar = searchString; return(View(vm)); }
public ActionResult Atualizar(int?id) { if (id == null) { return(RedirectToAction(nameof(Index))); } var cargo = _cargosRepositorio.ObterCargoPorId(id.Value); if (cargo == null) { RegistroNaoEncontrado(); } var viewModel = new CargosViewModel { Id = cargo.Id, Descricao = cargo.Descricao, Vendedor = cargo.Vendedor }; return(View(viewModel)); }