コード例 #1
0
        public void MarcarUltimaDataRealizacao(int idProcesso, ProcessoAndamento fkCodProcAndRemarcado)
        {
            string[] andamentosAgenda =
            {
                "LICITAÇÃO MARCADA",
                // MF Inicio
                "LICITAÇÃO MARCADA EM CONTINUIDADE",
                // MF Fim
                "DISPUTA",
                "SESSÃO FINAL",
                "SESSÃO DE RESULTADO - HABILITAÇÃO",
                "SESSÃO DE RESULTADO - PROPOSTA COMERCIAL",
                "SESSÃO DE ABERTURA - PROPOSTA COMERCIAL",
                "SESSÃO DE ABERTURA - PROPOSTA TÉCNICA",
                "SESSÃO DE RESULTADO - PROPOSTA TÉCNICA"
            };

            DetachedCriteria dc = DetachedCriteria.For(typeof(ProcessoAndamento));

            dc.Add(Expression.Eq("Processo.Id", idProcesso));
            dc.Add(Expression.IsNull("AndamentoCorrigido"));
            dc.Add(Expression.IsNull("AndamentoAdiado"));
            dc.CreateAlias("FluxoAndamento", "fan");
            dc.CreateAlias("fan.Atividade", "ati");
            dc.Add(Expression.In("ati.Descricao", andamentosAgenda));
            dc.Add(Expression.Sql(" this_.dat_andamento_pan >= '" + DateTime.Now + "' order by this_.dat_andamento_pan desc "));
            ProcessoAndamento andamento = ProcessoAndamento.FindFirst(dc);

            if (andamento != null)
            {
                andamento.AndamentoAdiado = fkCodProcAndRemarcado;
                andamento.SaveAndFlush();
            }
        }
コード例 #2
0
        ///Método criado para a central de digitalização de processos salvar andamentos retornando o id do andamento usado
        public int SalvarAndamento(int idProcesso, ref FileUpload fileUpload, Pessoa pessoa, string descricaoModalidade, string faseProcesso, string endereco, string observacaoAndamento)
        {
            Processo          oProcesso          = Processo.Find(idProcesso);
            ProcessoAndamento oProcessoAndamento = new ProcessoAndamento();
            SrvFluxoAndamento srvFluxo           = new SrvFluxoAndamento();
            SrvProcesso       srvProc            = new SrvProcesso();

            SrvMotivoAndamento srvMotivoAnd = new SrvMotivoAndamento();

            oProcessoAndamento.Cadastrante   = pessoa;
            oProcessoAndamento.DataCadastro  = DateTime.Now;
            oProcessoAndamento.DataAndamento = DateTime.Now;
            oProcessoAndamento.Andamento     = observacaoAndamento;
            oProcessoAndamento.Processo      = srvProc.ListarProcesso(idProcesso);

            oProcessoAndamento.FluxoAndamento = srvFluxo.RetornaFluxoAndamento(oProcesso.Classificacao.Modalidade.Descricao, descricaoModalidade, faseProcesso);

            if (!string.IsNullOrEmpty(fileUpload.FileName))
            {
                if (!ValidarExtensao(fileUpload.FileName))
                {
                    throw new Exception("Por favor, verificar se a extensão do arquivo está correta. Tipo de arquivo inválido. Só é aceito arquivos: .pdf, .p7s. Para mairores detalhes entre em contato com a CTI.");
                }
                else
                {
                    if (oProcessoAndamento.FluxoAndamento != null)
                    {
                        oProcessoAndamento.SaveAndFlush();
                        SalvarArquivo(oProcessoAndamento.Id, ref fileUpload, endereco.Replace("@ESTRUTURAREPOSITORIO", SrvDigitalizacao.getEnderecoRegraRepositorio(idProcesso, oProcessoAndamento.Id)));
                        DAOGenerico dao = new DAOGenerico();
                        //dao.AtualizarTabelaoComPublicacaoEdital(oProcessoAndamento.Processo.Id,oProcessoAndamento.Id.ToString());
                    }
                    else
                    {
                        throw new Exception("NÃO EXISTE FLUXO ANDAMENTO CADASTRADO PARA ESSE TIPO DE PROCESSO");
                    }
                }
            }
            else
            {
                throw new Exception("É necessário escolher um arquivo para anexar ao processo.");
            }
            return(oProcessoAndamento.Id);
        }