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(); } }
///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); }