public Cidade Pesquisar(int id, string descricao, TipoConsulta tipo) { Cidade model = new Cidade(); if (tipo == TipoConsulta.Id) { model = _session.ServiceCidade.RetornarPorId(id); } if (tipo == TipoConsulta.Descricao) { if (!string.IsNullOrWhiteSpace(descricao)) { var lista = _session.ServiceCidade.ListarPorNome(descricao); if (lista.Count() == 1) { model = lista.Single(); } else { //var frm = CompositionRoot.ResolveWithArgument<frmCidade>(new Ninject.Parameters.ConstructorArgument("pesquisa", true)); var frm = new frmCidade(true, descricao); frm.ShowDialog(); if (frm.DialogResult == DialogResult.OK) { model = _session.ServiceCidade.RetornarPorId(Funcoes.IdRetorno); } } } } if (tipo == TipoConsulta.Tela) { var frm = new frmCidade(true, ""); frm.ShowDialog(); if (frm.DialogResult == DialogResult.OK) { model = _session.ServiceCidade.RetornarPorId(Funcoes.IdRetorno); } } return(model); }
public Cidade Pesquisar(int id, string descricao, int codEmpresa, TipoPesquisaGeral tipoPesquisa) { if (id == 0 && tipoPesquisa == TipoPesquisaGeral.pgId) { return(null); } if (string.IsNullOrEmpty(descricao) && tipoPesquisa == TipoPesquisaGeral.pgDescricao) { return(null); } if (tipoPesquisa == TipoPesquisaGeral.pgTela) { frmCidade formulario = new frmCidade(""); if (formulario.ShowDialog() == DialogResult.OK) { if (DadosStaticos.IdSelecionado == 0) { return(null); } using (var unitOfWork = ObjectFactory.GetInstance <IUnitOfWork>()) { return(unitOfWork.ServicoCidade.ObterPorId(DadosStaticos.IdSelecionado)); } } } if (tipoPesquisa == TipoPesquisaGeral.pgId && id > 0) { using (var unitOfWork = ObjectFactory.GetInstance <IUnitOfWork>()) { var model = unitOfWork.ServicoCidade.ObterPorId(id); if (model == null) { throw new Exception("Registro não encontrado!"); } return(model); } } if (tipoPesquisa == TipoPesquisaGeral.pgDescricao && descricao.Length > 0) { using (var unitOfWork = ObjectFactory.GetInstance <IUnitOfWork>()) { var model = unitOfWork.ServicoCidade.Filtrar("DESC_CIDADE", descricao, codEmpresa); if (model == null) { frmCidade formulario = new frmCidade(); if (formulario.ShowDialog() == DialogResult.OK) { return(unitOfWork.ServicoCidade.ObterPorId(DadosStaticos.IdSelecionado)); } return(null); } else { if (model.Count() == 1) { return(unitOfWork.ServicoCidade.ObterPorId(model.First().Cod_Cidade)); } else { frmCidade formulario = new frmCidade(descricao); if (formulario.ShowDialog() == DialogResult.OK) { return(unitOfWork.ServicoCidade.ObterPorId(DadosStaticos.IdSelecionado)); } } return(null); } } } else { return(null); } }