/// <summary> /// Obtiene la Informacion del Emisor para el Documento /// </summary> /// <typeparam name="TSunat">Documento SUNAT</typeparam> /// <param name="entidad">Entidad Doc</param> /// <returns>UBL SupplierPartyType</returns> public static SupplierPartyType GetInfoEmisor <TSunat>(SunatDocumentBase <TSunat> entidad) where TSunat : new() { var account = new SupplierPartyType { CustomerAssignedAccountID = entidad.RucEmisor, AdditionalAccountID = new IdentifierType[] { ((int)entidad.TipoDocumentoIdentidadEmisor).ToString() }, Party = new PartyType { PartyName = new PartyNameType[] { entidad.NombreComercialEmisor }, PartyLegalEntity = new[] { new PartyLegalEntityType { RegistrationName = entidad.NombreRazonSocialEmisor, } }, } }; return(account); }
/// <summary> /// Obtiene el Signature para el Documento /// </summary> /// <typeparam name="TSunat">Documento SUNAT</typeparam> /// <param name="entidad">Entidad Doc</param> /// <returns>UBL Signature</returns> public static SignatureType[] GetSignature <TSunat>(SunatDocumentBase <TSunat> entidad) where TSunat : new() { var sign = new[] { new SignatureType { ID = "IDSignSP", SignatoryParty = new PartyType { PartyIdentification = new[] { new PartyIdentificationType { ID = entidad.RucEmisor } }, PartyName = new[] { new PartyNameType { Name = entidad.NombreRazonSocialEmisor } } }, DigitalSignatureAttachment = new AttachmentType { ExternalReference = new ExternalReferenceType { URI = "#SignatureSP" } } } }; return(sign); }