예제 #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!System.Web.HttpContext.Current.User.Identity.IsAuthenticated || !System.Web.HttpContext.Current.User.IsInRole("REVISOR"))
            {
                Response.Redirect("~/Default.aspx");
            }

            if (!IsPostBack)
            {
                Int64 idDossie = Convert.ToInt64(HttpUtility.HtmlDecode(Request.QueryString["IdDossie"]));

                Dossie dossie = new Dossie();
                dossie.Carrega(idDossie, GridViewResultado);

                Session["NovoDossie"] = GridViewResultado.DataSource;

                if (idDossie > 0)
                {
                    HiddenFieldIdDossie.Value = idDossie.ToString();

                    if (dossie.IdDossie == 0)
                    {
                        Response.Redirect("~/Default.aspx");
                    }

                    TextBoxNome.Text = dossie.NomeDossie;
                }
                else
                {
                    ButtonExcluir.Visible = false;
                }
            }
            GridViewResultado.PreRender += GridViewResultado_PreRender;
        }
예제 #2
0
        protected void ButtonEnviar_Click(object sender, EventArgs e)
        {
            Dossie dossie = new Dossie();

            dossie.NomeDossie = TextBoxNome.Text;

            if (HiddenFieldIdDossie.Value != "")
            {
                dossie.IdDossie = Convert.ToInt32(HiddenFieldIdDossie.Value);

                if (dossie.Atualiza(GridViewResultado) == false)
                {
                    Response.Write("<script>alert('Ocorreu um problema na atualização dos dados.')</script>");
                    return;
                }
            }
            else
            {
                if (dossie.Insere(GridViewResultado) == false)
                {
                    Response.Write("<script>alert('Ocorreu um problema na atualização dos dados.')</script>");
                    return;
                }
            }

            Response.Redirect("~/Dossies.aspx");
        }
예제 #3
0
        private void CriarXmlDossie(Dossie dossie, string nomeArquivoXml)
        {
            var serializer = new XmlSerializer(typeof(Dossie));

            Files.DeleteIfExist(nomeArquivoXml);

            using (var filestream = new FileStream(nomeArquivoXml, FileMode.CreateNew))
            {
                serializer.Serialize(filestream, dossie);
            }
        }
예제 #4
0
        private void GerarXmlDossie(string caminhoExportacaoDoPacote, Dossie dossie)
        {
            var nomeDossie = string.Format(
                "{0}_{1}",
                dossie.NumeroContrato.RemoverDiacritico().Replace(@"/", string.Empty),
                dossie.TipoDossieId);

            var caminhoDossie = Path.Combine(caminhoExportacaoDoPacote, nomeDossie);

            Directories.CreateIfNotExist(caminhoDossie);

            caminhoDossie = Path.Combine(caminhoDossie, nomeDossie + ".xml");

            this.CriarXmlDossie(dossie, caminhoDossie);
        }
예제 #5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                GridViewDossie.EmptyDataText = "Nenhuma dossiê foi incluído";

                Dossie dossie = new Dossie();
                dossie.CarregaDossies(GridViewDossie);
            }

            if (!System.Web.HttpContext.Current.User.Identity.IsAuthenticated || !System.Web.HttpContext.Current.User.IsInRole("REVISOR"))
            {
                ButtonNova.Visible = false;
            }
        }
예제 #6
0
        protected void ButtonExcluir_Click(object sender, EventArgs e)
        {
            Dossie dossie = new Dossie();

            dossie.IdDossie = Convert.ToInt32(HiddenFieldIdDossie.Value);

            if (dossie.Excluir() == true)
            {
                Response.Redirect("~/Dossies.aspx");
            }
            else
            {
                Response.Write("<script>alert('Ocorreu um problema na atualização dos dados.')</script>");
            }
        }
예제 #7
0
        private void GerarItensDocumentais(string caminhoExportacaoDoPacote, Dossie dossie)
        {
            foreach (var item in dossie.ItensDocumentais)
            {
                var caminhoItemDocumental = Path.Combine(
                    caminhoExportacaoDoPacote,
                    dossie.NumeroContrato.RemoverDiacritico().Replace(@"/", string.Empty) + "_" + dossie.TipoDossieId,
                    item.TipoDocumento.RemoverDiacritico().RemoverEspacosEntreAsPalavras());

                Directories.CreateIfNotExist(caminhoItemDocumental);

                var caminhoItemDocumentalXml = Path.Combine(
                    caminhoItemDocumental,
                    item.NomeParaArquivo + ".xml");

                this.CriarXmlItemDocumental(caminhoItemDocumentalXml, item);
                this.BaixarPdfItemDocumental(item, caminhoItemDocumental);
            }
        }
        private PacoteParaExportar ObterComDossiers(PacoteParaExportar pacoteParaExportar, IList <Processo> processos)
        {
            foreach (var processo in processos)
            {
                var sequencial = processo.Lote.Identificacao.Substring(processo.Lote.Identificacao.Length - 4, 4);

                var dossie = new Dossie
                {
                    DataGeracaoXml      = DateTime.Now,
                    NumeroContrato      = processo.Identificacao,
                    QuantidadePaginas   = processo.QtdePaginas,
                    Sequencial          = sequencial.ToInt(),
                    TipoDossieDescricao = processo.TipoDeProcesso.Descricao,
                    TipoDossieId        = processo.TipoDeProcesso.Id,
                    ProcessoId          = processo.Id
                };

                this.AdicionarDocumentosAoDossie(pacoteParaExportar, dossie, sequencial, processo);
            }

            return(pacoteParaExportar);
        }
        private void AdicionarDocumentosAoDossie(PacoteParaExportar pacoteParaExportar, Dossie dossie, string sequencial, Processo processo)
        {
            var documentos = this.documentoRepositorio
                             .ObterTodosPorLoteComTipoDocumento(processo.Lote.Id);

            ////a) NUMERO_CONTRATO+TIPO_CONTRATO+CODIGO_TIPO_DOCUMENTO+CODIGO_SEQUENCIA.PDF
            var somentePdfs = documentos.Where(
                x => x.Status != DocumentoStatus.Excluido &&
                x.Virtual);

            foreach (var documento in somentePdfs)
            {
                var nomePdf = string.Format(
                    "{0}_{1}_{2}_{3}",
                    processo.Identificacao.RemoverDiacritico().Replace(@"/", string.Empty),
                    processo.TipoDeProcesso.Descricao.RemoverDiacritico().RemoverEspacosEntreAsPalavras(),
                    documento.TipoDocumento.Id,
                    documento.Id);

                var itemDocumental = new ItemDocumental
                {
                    NumeroDossie    = processo.Identificacao,
                    TipoDocumento   = documento.TipoDocumento.Description,
                    NomeParaArquivo = nomePdf,
                    DocumentoId     = documento.Id
                };

                dossie.AdicionarItemDocumental(itemDocumental);
            }

            pacoteParaExportar.AdicionarDossier(dossie);
        }