EntityDocumentUtils.cs 928 B

123456789101112131415161718192021222324252627282930
  1. using System;
  2. using InABox.Clients;
  3. using InABox.Core;
  4. namespace InABox.Mobile
  5. {
  6. public static class EntityDocumentUtils
  7. {
  8. public static T SaveDocument<T>(MobileDocument image, Func<T> shell, string auditmessage) where T : IEntityDocumentShell
  9. {
  10. T result = default(T);
  11. Document doc = new Document()
  12. {
  13. FileName = image.FileName,
  14. Data = image.Data,
  15. CRC = CoreUtils.CalculateCRC(image.Data),
  16. TimeStamp = DateTime.Now
  17. };
  18. new Client<Document>().Save(doc, auditmessage);
  19. result = shell();
  20. result.DocumentID = doc.ID;
  21. result.FileName = doc.FileName;
  22. result.Thumbnail = MobileUtils.ImageTools.CreateThumbnail(doc.Data, 128, 128);
  23. result.Save(auditmessage);
  24. return result;
  25. }
  26. }
  27. }