/// <summary> /// Define os valores de cada controle de propriedades de arquivo para exibição /// </summary> /// <param name="propriedade">Propriedades do arquivo</param> private void DefineControlePropriedades(PropriedadeObjeto propriedade) { List <UsuarioApi> usuarios = (List <UsuarioApi>)GerenciamentoUsuario.CarregaUsuariosApi(); UsuarioApi usuario = usuarios.Exists(u => u.Id == propriedade.IdUsuarioUpload) ? usuarios.First(u => u.Id == propriedade.IdUsuarioUpload) : null; List <AcaoArquivo> arquivos = new List <AcaoArquivo>(); GerenciamentoArquivo.ExtraiDocumentosObjeto(propriedade, ref arquivos); this.TxtPropriedadeNomeArquivo.Text = propriedade.NomeOriginal; this.TxtPropriedadeCompetenciaInicial.Text = propriedade.DetalheSped.CompetenciaInicial.HasValue ? propriedade.DetalheSped.CompetenciaInicial.Value.ToString("dd/MM/yyyy") : string.Empty; this.TxtPropriedadeCompetenciaFinal.Text = propriedade.DetalheSped.CompetenciaFinal.HasValue ? propriedade.DetalheSped.CompetenciaFinal.Value.ToString("dd/MM/yyyy") : string.Empty; this.TxtPropriedadeTipoEscrituracao.Text = Dominio.ValorTextoDe(propriedade.DetalheSped.TipoEscrituracao); this.TxtPropriedadeFinalidade.Text = propriedade.DetalheSped.FinalidadeArquivo.HasValue ? (byte)propriedade.DetalheSped.FinalidadeArquivo + " - " + Dominio.ValorTextoDe(propriedade.DetalheSped.FinalidadeArquivo) : string.Empty; this.TxtPropriedadeParticipanteCnpj.Text = Util.FormataCnpj(propriedade.DetalheSped.EntidadeCnpj); this.TxtPropriedadeParticipanteInscricaoEstadual.Text = propriedade.DetalheSped.EntidadeIe; this.TxtPropriedadeParticipanteRazaoSocial.Text = propriedade.DetalheSped.EntidadeRazaoSocial; this.TxtPropriedadeOrigem.Text = usuario != null ? usuario.Nome : USUARIO_NAO_ENCONTRADO; this.TxtPropriedadeDataRecepcao.Text = propriedade.DataUpload.ToString("dd/MM/yyyy HH:mm"); if (propriedade.DetalheSped.DataProcessamentoPva.HasValue) { this.TxtPropriedadeArquivoValidado.Text = Dominio.ValorTextoDe(propriedade.DetalheSped.StatusPva); this.TxtPropriedadeArquivoValidado.Visible = true; this.TxtPropriedadeDataArquivoValidado.Text = propriedade.DetalheSped.DataProcessamentoPva.Value.ToString("dd/MM/yyyy HH:mm"); this.TxtPropriedadeDataArquivoValidado.Visible = true; } if (propriedade.DetalheSped.DataAssinatura.HasValue) { this.TxtPropriedadeArquivoAssinadoSucesso.Visible = true; this.TxtPropriedadeDataArquivoAssinadoSucesso.Text = propriedade.DetalheSped.DataAssinatura.Value.ToString("dd/MM/yyyy HH:mm"); this.TxtPropriedadeDataArquivoAssinadoSucesso.Visible = true; } if (propriedade.DetalheSped.DataTransmissaoSefaz.HasValue) { this.TxtPropriedadeArquivoTransmitidoSucesso.Visible = true; this.TxtPropriedadeDataArquivoTransmitidoSucesso.Text = propriedade.DetalheSped.DataTransmissaoSefaz.Value.ToString("dd/MM/yyyy"); this.TxtPropriedadeDataArquivoTransmitidoSucesso.Visible = true; } /* * this.LblPropriedadeArquivoConciliadoIndiciosErro.Text = propriedade.DetalheSped; * this.LblPropriedadeDataArquivoConciliadoIndiciosErro.Text = propriedade.DetalheSped..ToString("dd/MM/yyyy"); */ ////this.LblPropriedadeUsuarioUltimoAcesso = ; ////this.LblPropriedadeDataUltimoAcesso = ; this.RptArquivo.DataSource = arquivos.OrderBy(a => a.DataExecucao); this.RptArquivo.DataBind(); }
/// <summary> /// Procura dentro da propriedade do objeto todos os arquivo que estiverem "pendurados" nele /// </summary> /// <param name="propriedadeObjeto">Objeto a ser verificado</param> /// <param name="arquivos">Lista de arquivos pertencentes ao objeto</param> public static void ExtraiDocumentosObjeto(PropriedadeObjeto propriedadeObjeto, ref List <AcaoArquivo> arquivos) { if (arquivos == null) { arquivos = new List <AcaoArquivo>(); } if (propriedadeObjeto.Acoes != null && propriedadeObjeto.Acoes.Count > 0) { foreach (PropriedadeAcao propriedadeAcao in propriedadeObjeto.Acoes) { if (propriedadeAcao.Arquivos != null && propriedadeAcao.Arquivos.Count > 0) { foreach (PropriedadeObjeto lPropriedadeObjeto in propriedadeAcao.Arquivos) { if (lPropriedadeObjeto.Acoes != null && lPropriedadeObjeto.Acoes.Count > 0) { ExtraiDocumentosObjeto(lPropriedadeObjeto, ref arquivos); } AcaoArquivo arquivo = null; if (!arquivos.Any(a => a.TipoAcao == propriedadeAcao.TipoAcao)) { arquivo = new AcaoArquivo() { TipoAcao = propriedadeAcao.TipoAcao, DataExecucao = propriedadeAcao.ExecutadoEm, IdArquivos = new List <int>() }; arquivos.Add(arquivo); } else { arquivo = arquivos.First(a => a.TipoAcao == propriedadeAcao.TipoAcao); } arquivo.IdArquivos.Add(lPropriedadeObjeto.IdArquivo); } } } } }
/// <summary> /// Define os valores de cada controle de propriedades de arquivo para exibição /// </summary> /// <param name="propriedade">Propriedades do arquivo</param> private void DefineControlePropriedades(PropriedadeObjeto propriedade) { List <UsuarioApi> usuarios = (List <UsuarioApi>)GerenciamentoUsuario.CarregaUsuariosApi(); string linkDownloadArquivo = GerenciamentoArquivo.ObtemLinkParaDownload(new List <int>() { propriedade.IdArquivo }); UsuarioApi usuario = usuarios.Exists(u => u.Id == propriedade.IdUsuarioUpload) ? usuarios.First(u => u.Id == propriedade.IdUsuarioUpload) : null; this.TxtPropriedadeChaveAcesso.Text = propriedade.DetalheDfe.Chave; this.TxtPropriedadeTipoDocumento.Text = Dominio.ValorTextoDe(propriedade.TipoArquivo); this.TxtPropriedadeNumeroDocumento.Text = propriedade.DetalheDfe.Numero.ToString(); this.TxtPropriedadeDataEmissao.Text = propriedade.DetalheDfe.DataEmissao.Value.ToString("dd/MM/yyyy"); this.TxtPropriedadeEmissorCnpj.Text = Util.FormataCnpj(propriedade.DetalheDfe.EmitenteCnpj); this.TxtPropriedadeEmissorInscricaoEstadual.Text = propriedade.DetalheDfe.EmitenteIe; this.TxtPropriedadeEmissorRazaoSocial.Text = propriedade.DetalheDfe.EmitenteRazaoSocial; this.TxtPropriedadeDestinatarioCnpj.Text = Util.FormataCnpj(propriedade.DetalheDfe.DestinatarioCnpj); this.TxtPropriedadeDestinatarioInscricaoEstadual.Text = propriedade.DetalheDfe.DestinatarioIe; this.TxtPropriedadeDestinatarioRazaoSocial.Text = propriedade.DetalheDfe.DestinatarioRazaoSocial; this.TxtPropriedadeOrigem.Text = usuario != null ? usuario.Nome : USUARIO_NAO_ENCONTRADO; this.TxtPropriedadeDataRecepcao.Text = propriedade.DataUpload.ToString("dd/MM/yyyy HH:mm"); this.TxtPropriedadeSituacaoSefaz.Text = propriedade.DetalheDfe.StatusSefaz; this.TxtPropriedadeDataSituacaoSefaz.Text = propriedade.DetalheDfe.DataStatusSefaz.HasValue ? propriedade.DetalheDfe.DataStatusSefaz.Value.ToString("dd/MM/yyyy HH:mm") : string.Empty; this.TxtPropriedadeIntegridadeArquivoProtocoloAutorizacao.Text = (propriedade.DetalheDfe.EProtocoloPresente.HasValue && propriedade.DetalheDfe.EProtocoloPresente.Value) ? TEXTO_COM_PROTOCOLO_AUTORIZACAO : TEXTO_SEM_PROTOCOLO_AUTORIZACAO; this.TxtPropriedadeIntegridadeArquivoAssinaturaDigital.Text = (propriedade.DetalheDfe.EAssinaturaValida.HasValue && propriedade.DetalheDfe.EAssinaturaValida.Value) ? TEXTO_ASSINATURA_DIGITAL_VALIDA : TEXTO_ASSINATURA_DIGITAL_INVALIDA; this.TxtPropriedadeDataIntegridadeArquivoAssinaturaDigital.Text = propriedade.DetalheDfe.DataStatusSefaz.HasValue ? propriedade.DetalheDfe.DataStatusSefaz.Value.ToString("dd/MM/yyyy HH:mm") : string.Empty; this.TxtPropriedadeDataIntegridadeArquivoProtocoloAutorizacao.Text = propriedade.DetalheDfe.DataStatusSefaz.HasValue ? propriedade.DetalheDfe.DataStatusSefaz.Value.ToString("dd/MM/yyyy HH:mm") : string.Empty; ////TxtPropriedadeDataManifestacaoDestinatario.Text = ; ////TxtPropriedadeUsuarioUltimoAcesso.Text = ; ////TxtPropriedadeDataUltimoAcesso.Text = ; this.BtnPropriedadeDownload.CommandArgument = propriedade.IdArquivo.ToString(); }