Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Tessi.Bmd.BosMailFormatter.Export.BmdZip.Builders;
- using Tessi.Bmd.BosMailFormatter.Export.BmdZip.Image;
- using Tessi.Bmd.BosMailFormatter.MessageModels.Files;
- using Tessi.Bmd.BosMailFormatter.MessageModels.MetaDatas;
- using Tessi.Bmd.BosMailFormatter.PluginModels.Contracts.Export;
- namespace Tessi.Bmd.BosMailFormatter.Export.MailBmdZip.Behaviors.Standard
- {
- /// <summary>
- /// Définit les actions lors de la création du séparateur de doc
- /// </summary>
- public class CreatingDocumentTicketBehaviors
- {
- protected static readonly string DefaultMetaType = "OTHER";
- /// <summary>
- /// Crée un séparateur de document et retourne le séparateur créé
- /// </summary>
- public static BmdSheet CreateDocumentTicket(BmdExportContract contract, BmdSeparator bmdSeparator, IBmdBatch scanBatch, MetaFile fileRoot, MetaFile document)
- {
- var documentSeparator = bmdSeparator.GetSeparator(fileRoot, 2);
- var separatorSheet = scanBatch.AddSeparatorSheet(BmdSheetType.DocumentSeparator, document);
- separatorSheet.AddImg(documentSeparator);
- separatorSheet.AddBarcode(contract.BarcodeDocumentSeparatorFormat);
- separatorSheet.AddMeta(GetFileNameMeta("fileName", documentSeparator), DefaultMetaType);
- return separatorSheet;
- }
- /// <summary>
- /// Ajoute les metadonnées du document dans la bmdSheet
- /// </summary>
- public static void AddCustomMetadata<T>(MetaFile document, BmdSheet bmdSheet) where T : MetaData
- {
- T metadata = null;
- if (document.MetaDatas.TryGet(out metadata))
- {
- foreach (var metaDataValue in metadata.GetValues())
- {
- bmdSheet.AddMeta(metaDataValue, GenericBmdDirector.HeaderMetaType);
- }
- }
- }
- /// <summary>
- /// Retourne une MetaDataValue créée à partir de la clé passé en paramètre et du nom du métafile passé en paramètre
- /// </summary>
- private static MetaDataValue GetFileNameMeta(string key, MetaFile file)
- {
- return new MetaDataValue(key, file.Name);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement