/// <summary> /// Obtem um funcionario e converte em Model /// </summary> /// <param name="id"></param> /// <param name="model"></param> /// <param name="mensagemErro"></param> /// <returns></returns> private bool ObterFuncionario(Guid id, ref FuncionarioModel model, ref string mensagemErro) { //Preparar a requisição e o retorno RetornoObterDto <FuncionarioDto> retorno = new RetornoObterDto <FuncionarioDto>(); RequisicaoObterDto requisicaoDto = new RequisicaoObterDto() { Id = id, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço FuncionarioBll funcionarioBll = new FuncionarioBll(true); funcionarioBll.Obter(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { mensagemErro = retorno.Mensagem; return(false); } else { //Converter para Model return(model.ConverterDtoParaModel(retorno.Entidade, ref mensagemErro)); } }
public Funcionario listarFuncionario(int codFuncionario) { FuncionarioBll objFuncionarioBll = FactoryBll.criarFuncionarioBll(); Funcionario objFuncionario = FactoryClasses.criarFuncionario(); objFuncionario.Codigo = codFuncionario; return(objFuncionarioBll.listarFuncionario(objFuncionario)); }
public ActionResult Editar(FuncionarioModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } if (!SessaoUsuario.SessaoLogin.Administrador) { ViewBag.MensagemErro = "Para editar um funcionario é necessário " + $"logar com um funcionario administrador."; return(View("SemPermissao")); } //Valida a entidade recebida if (!ModelState.IsValid) { return(View(model)); } //Converte para DTO FuncionarioDto funcionarioDto = new FuncionarioDto(); string mensagemErro = ""; if (!model.ConverterModelParaDto(ref funcionarioDto, ref mensagemErro)) { ViewBag.Mensagem = mensagemErro; return(View("Erro")); } //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoEntidadeDto <FuncionarioDto> requisicaoDto = new RequisicaoEntidadeDto <FuncionarioDto>() { EntidadeDto = funcionarioDto, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço FuncionarioBll funcionarioBll = new FuncionarioBll(true); funcionarioBll.Editar(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { ModelState.AddModelError("", retorno.Mensagem); return(View(model)); } TempData["Retorno"] = "ALTERADO"; //Voltar para o visualizar do funcionario return(RedirectToAction("Index")); }
public Boolean excluirFuncionario(int codFuncionario) { Funcionario objFuncionario = FactoryClasses.criarFuncionario(); objFuncionario.Codigo = Convert.ToInt32(codFuncionario); FuncionarioBll objFuncionarioBll = FactoryBll.criarFuncionarioBll(); return(objFuncionarioBll.excluirFuncionario(objFuncionario)); }
public Funcionario efetuarLogin(string login, string senha) { FuncionarioBll objFuncionarioBll = FactoryBll.criarFuncionarioBll(); Funcionario objFuncionario = FactoryClasses.criarFuncionario(); objFuncionario.Login = login.ToLower().Trim(); objFuncionario.Senha = senha.ToLower().Trim(); return(objFuncionarioBll.efetuaLogin(objFuncionario)); }
public ActionResult Incluir(FuncionarioModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } //Validar a model recebida if (!ModelState.IsValid) { return(View(model)); } //Converter para DTO FuncionarioDto funcionarioDto = new FuncionarioDto(); string mensagemErro = ""; if (!model.ConverterModelParaDto(ref funcionarioDto, ref mensagemErro)) { ModelState.AddModelError("Servico", $"Erro ao converter para Dto: {mensagemErro}"); return(View(model)); } funcionarioDto.Id = Guid.NewGuid(); //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoEntidadeDto <FuncionarioDto> requisicaoDto = new RequisicaoEntidadeDto <FuncionarioDto>() { EntidadeDto = funcionarioDto, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço FuncionarioBll funcionarioBll = new FuncionarioBll(true); funcionarioBll.Incluir(requisicaoDto, ref retorno); //Verificar o retorno if (retorno.Retorno == false) { //Se houver erro, exibir na tela de inclusão ModelState.AddModelError("", retorno.Mensagem); return(View(model)); } TempData["Retorno"] = "INCLUIDO"; //Retornar para index return(RedirectToAction("Index")); }
public void CrudFuncionario() { RequisicaoEntidadeDto <FuncionarioDto> requisicaoDto = new RequisicaoEntidadeDto <FuncionarioDto>() { EntidadeDto = RetornarNovoFuncionario() }; Assert.IsTrue(Utilidades.RetornarAutenticacaoRequisicaoPreenchida(requisicaoDto)); FuncionarioBll funcionarioBll = new FuncionarioBll(true); // Incluir RetornoDto retornoDto = new RetornoDto(); funcionarioBll.Incluir(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); // Editar requisicaoDto.EntidadeDto.Nome = "Funcionario atualizado " + DateTime.Now; funcionarioBll.Editar(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); // Obter RetornoObterDto <FuncionarioDto> retornoObterDto = new RetornoObterDto <FuncionarioDto>(); RequisicaoObterDto requisicaoObterDto = new RequisicaoObterDto() { Id = requisicaoDto.EntidadeDto.Id, IdUsuario = requisicaoDto.IdUsuario, Identificacao = requisicaoDto.Identificacao }; funcionarioBll.Obter(requisicaoObterDto, ref retornoObterDto); Assert.AreEqual(true, retornoObterDto.Retorno); // Obter lista RequisicaoObterListaDto requisicaoObterListaDto = new RequisicaoObterListaDto() { CampoOrdem = "DESCRICAO", IdUsuario = requisicaoDto.IdUsuario, Identificacao = requisicaoDto.Identificacao, NumeroItensPorPagina = 2, Pagina = 1 }; RetornoObterListaDto <FuncionarioDto> retornoObterListaDto = new RetornoObterListaDto <FuncionarioDto>(); funcionarioBll.ObterListaFiltrada(requisicaoObterListaDto, ref retornoObterListaDto); Assert.AreEqual(true, retornoObterDto.Retorno); // Excluir funcionarioBll.Excluir(requisicaoObterDto, ref retornoDto); Assert.AreEqual(true, retornoObterDto.Retorno); }
public Collection <Funcionario> listarFuncionarios() { Collection <Funcionario> objFuncionarioColecao; FuncionarioBll objFuncionarioBll = FactoryBll.criarFuncionarioBll(); objFuncionarioColecao = (Collection <Funcionario>)HttpRuntime.Cache["lista"]; if (objFuncionarioColecao == null) { HttpRuntime.Cache.Insert("lista", objFuncionarioBll.listarFuncionarios()); objFuncionarioColecao = (Collection <Funcionario>)HttpRuntime.Cache["lista"]; } return(objFuncionarioColecao); }
public ActionResult ExcluirFuncionario(ExclusaoModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } if (!SessaoUsuario.SessaoLogin.Administrador) { ViewBag.MensagemErro = "Para excluir um funcionario é necessário " + $"logar com um funcionario administrador."; return(View("SemPermissao")); } if (!SessaoUsuario.SessaoLogin.Administrador) { ViewBag.Mensagem = "Este funcionario não tem permissão para excluir outros funcionarios."; return(View("Erro")); } //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoObterDto requisicaoDto = new RequisicaoObterDto() { Id = model.Id, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço FuncionarioBll funcionarioBll = new FuncionarioBll(true); funcionarioBll.Excluir(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { ModelState.AddModelError("", retorno.Mensagem); return(View("Excluir", model)); } TempData["Retorno"] = "EXCLUIDO"; //Voltar para a index de funcionario return(RedirectToAction("Index")); }
/// <summary> /// Retorna uma lista de funcinários de acordo com o tipo passado /// </summary> /// <returns></returns> public static List <SelectListItem> RetornarListaFuncionarios(TipoFuncionario tipo) { RequisicaoObterListaDto requisicaoDto = new RequisicaoObterListaDto() { CampoOrdem = "NOME", Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario, NaoPaginarPesquisa = true, }; if (tipo != TipoFuncionario.NaoIdentificado) { requisicaoDto.ListaFiltros.Add("TIPO", ((int)tipo).ToString()); } requisicaoDto.ListaFiltros.Add("INATIVO", "false"); FuncionarioBll funcionarioBll = new FuncionarioBll(false); RetornoObterListaDto <FuncionarioDto> retornoDto = new RetornoObterListaDto <FuncionarioDto>(); if (!funcionarioBll.ObterListaFiltrada(requisicaoDto, ref retornoDto)) { return(null); } List <SelectListItem> listaRetorno = new List <SelectListItem>(); listaRetorno.Add(new SelectListItem() { Value = "null", Text = "Todos" }); foreach (var func in retornoDto.ListaEntidades) { listaRetorno.Add(new SelectListItem() { Value = func.Id.ToString(), Text = func.Nome }); } return(listaRetorno); }
/// <summary> /// Obtem uma listra filtrada de funcionarios /// </summary> /// <param name="filtros"></param> /// <returns></returns> public string ObterListaFiltrada(FiltrosFuncionarioModel filtros) { //Requisição para obter a lista RequisicaoObterListaDto requisicaoDto = new RequisicaoObterListaDto() { CampoOrdem = "NOME", IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, NaoPaginarPesquisa = filtros.NaoPaginaPesquisa, Pagina = filtros.Pagina, NumeroItensPorPagina = 20 }; //Adicionar filtros utilizados if (!string.IsNullOrWhiteSpace(filtros.Nome)) { requisicaoDto.ListaFiltros.Add("NOME", filtros.Nome.Trim()); } if (!string.IsNullOrWhiteSpace(filtros.ObterInativos)) { requisicaoDto.ListaFiltros.Add("INATIVO", filtros.ObterInativos.Trim()); } if (filtros.Tipo != TipoFuncionario.NaoIdentificado) { requisicaoDto.ListaFiltros.Add("TIPO", ((int)filtros.Tipo).ToString()); } //Consumir o serviço FuncionarioBll funcionarioBll = new FuncionarioBll(true); RetornoObterListaDto <FuncionarioDto> retornoDto = new RetornoObterListaDto <FuncionarioDto>(); funcionarioBll.ObterListaFiltrada(requisicaoDto, ref retornoDto); string retorno = new JavaScriptSerializer().Serialize(retornoDto); return(retorno); }