예제 #1
0
        public FluxoAndamento RetornaFluxoAndamento(string modalidade, string tipoAndamento, string fase)
        {
            DetachedCriteria pesqAtividade = DetachedCriteria.For(typeof(Atividade));

            pesqAtividade.Add(Expression.Eq("Descricao", tipoAndamento).IgnoreCase());

            DetachedCriteria pesqFase = DetachedCriteria.For(typeof(Fase));

            pesqFase.Add(Expression.Eq("Descricao", fase.ToUpper()).IgnoreCase());


            DetachedCriteria pesqWorkFlow = DetachedCriteria.For(typeof(Workflow));

            pesqWorkFlow.Add(Expression.Sql(@"
				this_.pk_cod_workflow_wor =
				(select fk_cod_workflow_wor from adm_licitar.tb_workflow_modalidade_unidade_exercicio_wmu wmu
				inner join adm_licitar.tb_modalidade_mod mod on mod.pk_cod_modalidade_mod = wmu.fk_cod_modalidade_mod
				where txt_descricao_mod ilike '"                 + modalidade + @"')"));


            Atividade.FindFirst(pesqAtividade);
            Workflow.FindFirst(pesqWorkFlow);
            Fase.FindFirst(pesqFase);


            DetachedCriteria pesqFluxoAndamento = DetachedCriteria.For(typeof(FluxoAndamento));

            pesqFluxoAndamento.CreateAlias("Atividade", "ati").CreateAlias("Fase", "fas").CreateAlias("Workflow", "work");
            pesqFluxoAndamento.Add(Expression.Eq("ati.Id", Atividade.FindFirst(pesqAtividade).Id));
            pesqFluxoAndamento.Add(Expression.Eq("fas.Id", Fase.FindFirst(pesqFase).Id));
            pesqFluxoAndamento.Add(Expression.Eq("work.Id", Workflow.FindFirst(pesqWorkFlow).Id));
            pesqFluxoAndamento.Add(Expression.Eq("CombinacaoAtiva", true));

            return(FluxoAndamento.FindFirst(pesqFluxoAndamento));
        }
예제 #2
0
        public static FluxoAndamento getFluxoAndamentoCadastroCadastradoPGE(string modalidade)
        {
            DetachedCriteria dcFluxo = DetachedCriteria.For(typeof(FluxoAndamento));

            dcFluxo.CreateAlias("Fase", "fas");
            dcFluxo.CreateAlias("Atividade", "ati");
            dcFluxo.Add(Expression.Eq("fas.Descricao", "CADASTRO"));
            dcFluxo.Add(Expression.Eq("ati.Descricao", "CADASTRADO"));
            dcFluxo.Add(Expression.Sql("this_.fk_cod_workflow_wor in (select wor.pk_cod_workflow_wor from adm_licitar.tb_workflow_modalidade_unidade_exercicio_wmu wmu inner join adm_licitar.tb_workflow_wor wor on wmu.fk_cod_workflow_wor = wor.pk_cod_workflow_wor where wmu.fk_cod_modalidade_mod='" + modalidade + "')"));
            return(FluxoAndamento.FindFirst(dcFluxo));
        }
예제 #3
0
        public Frase[] RetornaFrasesProntas(int idProcesso, string tipoAndamento)
        {
            SrvProcesso       srvProc  = new SrvProcesso();
            SrvFluxoAndamento srvFluxo = new SrvFluxoAndamento();

            Processo             oProcesso         = Processo.Find(idProcesso);
            SrvProcessoAndamento srvPA             = new SrvProcessoAndamento();
            FluxoAndamento       objFluxoAndamento = srvFluxo.RetornaFluxoAndamento(oProcesso.Classificacao.Modalidade.Descricao, tipoAndamento);

            if (objFluxoAndamento != null)
            {
                return(srvPA.FrasesAndamento(Atividade.BuscarPorDescricao(tipoAndamento).Id, objFluxoAndamento.Id));
            }
            else
            {
                return(null);
            }
        }