public string RegrasAndamentos(string tipoAndamento, string modalidade, int idProcesso) { string retorno = string.Empty; if (tipoAndamento.ToUpper().Equals("CONCLUÍDO") || tipoAndamento.ToUpper().Equals("EM CONFERÊNCIA")) { if (modalidade.ToUpper().Equals("PREGÃO ELETRÔNICO") || modalidade.ToUpper().Equals("PREGÃO PRESENCIAL")) { DetachedCriteria dcPregoeiro = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); dcPregoeiro.CreateAlias("Processo", "pro").CreateAlias("Papel", "pap"); dcPregoeiro.Add(Expression.Eq("pro.Id", idProcesso)); dcPregoeiro.Add(Expression.Eq("pap.Descricao", "PREGOEIRO")); DetachedCriteria dcProcessoAndamento = DetachedCriteria.For(typeof(ProcessoAndamento)); dcProcessoAndamento.CreateAlias("Processo", "pro").CreateAlias("FluxoAndamento", "flu").CreateAlias("flu.Fase", "fas"); dcProcessoAndamento.Add(Expression.Eq("pro.Id", idProcesso)); dcProcessoAndamento.Add(Expression.Eq("fas.Descricao", "REALIZAÇÃO")); if (!ProcessoPapelPessoa.Exists(dcPregoeiro) && ProcessoAndamento.Exists(dcProcessoAndamento)) { retorno = "FAVOR CADASTRAR UM PREGOEIRO ANTES DE EFETUAR A CONCLUSÃO"; } } } return(retorno); }
public ProcessoPapelPessoa[] listarPessoasProcesso(int idProcesso) { DetachedCriteria pesquisaPessoas = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); pesquisaPessoas.Add(Expression.Eq("Processo.Id", idProcesso)); return(ProcessoPapelPessoa.FindAll(pesquisaPessoas)); }
public ProcessoPapelPessoa getPPPporPessoaProcesso(int idPessoa, int idProcesso) { DetachedCriteria pesqPPP1 = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); pesqPPP1.Add(Expression.Eq("Pessoa.Id", idPessoa)) .Add(Expression.Eq("Processo.Id", idProcesso)); return(ProcessoPapelPessoa.FindFirst(pesqPPP1)); }
public ProcessoPapelPessoa[] listarPessoasPorProcessoPapelPrincipal(int idProcesso, int idPapel) { DetachedCriteria dc = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); dc.Add(Expression.Eq("Processo.Id", idProcesso)); dc.Add(Expression.Eq("Papel.Id", idPapel)); return(ProcessoPapelPessoa.FindAll(dc)); }
public ProcessoPapelPessoa getPPPPessoaProcessoPapelVencedor(string vencedor, int idPai) { DetachedCriteria pesqPPP = DetachedCriteria.For(typeof(ProcessoPapelPessoa), "ppp"); pesqPPP.Add(Expression.Eq("Pessoa.Id", int.Parse(vencedor))) .Add(Expression.Eq("Papel.Id", Papel.FindOne(Expression.Eq("Descricao", "VENCEDOR")).Id)) .Add(Expression.Eq("Processo.Id", idPai)); return(ProcessoPapelPessoa.FindFirst(pesqPPP)); }
public ProcessoPapelPessoa existePPP(int papel, int pessoa, int processo) { DetachedCriteria dc = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); dc.Add(Expression.Eq("Pessoa.Id", pessoa)); dc.Add(Expression.Eq("Papel.Id", papel)); dc.Add(Expression.Eq("Processo.Id", processo)); return(ProcessoPapelPessoa.FindFirst(dc)); }
public ProcessoPapelPessoa[] getPPPByProcessoPapelAnalista(Processo objProcesso) { DetachedCriteria dcPessoa = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); dcPessoa.CreateAlias("Papel", "pap"); dcPessoa.Add(Expression.Eq("Processo", objProcesso)); dcPessoa.Add(Expression.InsensitiveLike("pap.Descricao", "ANALISTA DE PROCESSO")); return(ProcessoPapelPessoa.FindAll(dcPessoa)); }
public ProcessoPapelPessoa getPPPPregoeiroPrincipal(int processo) { DetachedCriteria dc = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); dc.CreateAlias("Papel", "pap"); dc.Add(Expression.Eq("pap.Descricao", "PREGOEIRO")); dc.Add(Expression.Eq("Processo.Id", processo)); dc.Add(Expression.Eq("PregoeiroPrincipal", true)); return(ProcessoPapelPessoa.FindFirst(dc)); }
public static bool existeVencedor(int processo) { Console.WriteLine("testandoooo"); DetachedCriteria pesqVencedor = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); pesqVencedor.Add(Expression.Eq("Processo.Id", processo)); pesqVencedor.CreateAlias("Papel", "pap").Add(Expression.Eq("pap.Descricao", "VENCEDOR")); if (ProcessoPapelPessoa.Exists(pesqVencedor)) { Console.WriteLine("true"); return(true); } else { Console.WriteLine("false"); return(false); } }
public static bool isProcessoPapelPessoaCadastrado(int processo, int papel, int pessoa) { DetachedCriteria dcPesqExistePPP = DetachedCriteria.For(typeof(ProcessoPapelPessoa)); dcPesqExistePPP.Add(Expression.Eq("Pessoa.Id", pessoa)); dcPesqExistePPP.Add(Expression.Eq("Papel.Id", papel)); dcPesqExistePPP.Add(Expression.Eq("Processo.Id", processo)); ProcessoPapelPessoa objPPP = ProcessoPapelPessoa.FindFirst(dcPesqExistePPP); if (objPPP == null) { Console.WriteLine("EH NULO"); return(false); } else { Console.WriteLine("NAO EH NULO: " + objPPP.Id); return(true); } }
public string executarFuncaoCorrigirPregoeirosProcesso(string di, string df) { SrvUnidadeExercicioFuncaoPessoa objSrvUEFP = new SrvUnidadeExercicioFuncaoPessoa(); SrvProcessoPapelPessoa objSrvPPP = new SrvProcessoPapelPessoa(); List <string> lista = this.listarProcessosComDataConclusao(di, df); string papel = this.getCodigoPapelPorDescricao("PREGOEIRO"); ProcessoPapelPessoa objPPP = null; string resultado = "Lista de SPU's: "; foreach (string cod in lista) { string select = @" SELECT uex.pk_cod_unidade_exercicio_uex as unidade, pan.fk_cod_processo_pro as processo FROM adm_licitar.tb_processo_andamento_pan pan INNER JOIN adm_licitar.tb_fluxo_andamento_fan fan ON fan.pk_cod_fluxo_andamento_fan = pan.fk_cod_fluxo_andamento_fan INNER JOIN adm_licitar.tb_atividade_ati ati ON ati.pk_cod_atividade_ati = fan.fk_cod_atividade_ati INNER JOIN adm_licitar.tb_unidade_exercicio_uex uex ON uex.pk_cod_unidade_exercicio_uex = pan.fk_cod_unidade_exercicio_uex WHERE pan.fk_cod_processo_pro = '@processo' AND ati.txt_descricao_ati = 'TRAMITAR' AND uex.txt_descricao_uex ILIKE 'PREGOEIRO%' ORDER BY pan.dat_cadastro_pan DESC LIMIT 1 " ; select = select.Replace("@processo", cod); DataTable dt = Consultar(select); bool existePregoeiroProcesso = false; using (TransactionScope scope = new TransactionScope()) { try { foreach (DataRow row in dt.Rows) { string unidade = row["unidade"].ToString(); int idUnidade = 0; if (int.TryParse(unidade, out idUnidade)) { UnidadeExercicioFuncaoPessoa[] listaPregoeiros = objSrvUEFP.ListarPregoeirosDaSubUnidade(idUnidade); if (listaPregoeiros.Length > 0) { ProcessoPapelPessoa[] listaPPP = objSrvPPP.listarPessoasPorProcessoPapelPrincipal(Convert.ToInt32(cod), Convert.ToInt32(papel)); if (listaPPP.Length > 0) { foreach (ProcessoPapelPessoa p in listaPPP) { if (p.Pessoa == listaPregoeiros[0].Pessoa) { if (!p.PregoeiroPrincipal) { p.PregoeiroPrincipal = true; p.Update(); resultado += Processo.numSPU(p.Processo.Id) + "; "; } existePregoeiroProcesso = true; } else { p.PregoeiroPrincipal = false; p.Update(); } } } if (!existePregoeiroProcesso) { objPPP = new ProcessoPapelPessoa(); objPPP.Papel = new Papel(Convert.ToInt32(papel)); objPPP.Pessoa = listaPregoeiros[0].Pessoa; objPPP.Processo = new Processo(Convert.ToInt32(cod)); objPPP.PregoeiroPrincipal = true; int idProcesso = objPPP.Processo.Id; resultado += Processo.numSPU(idProcesso) + "; "; objPPP.Save(); } } } } scope.VoteCommit(); } catch { scope.VoteRollBack(); resultado = "Ocorreu um erro!"; } } } resultado += "<br/> Processos Corrigidos com Sucesso!"; return(resultado); }