TimeSheetAppointment.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Drawing;
  4. using System.Windows.Media.Imaging;
  5. using Comal.Classes;
  6. using InABox.Core;
  7. using InABox.WPF;
  8. namespace PRSDesktop
  9. {
  10. public class TimeSheetAppointment : CalendarAppointment<TimeSheet>
  11. {
  12. public override TimeSpan StartTime
  13. {
  14. get => Model.Approved.IsEmpty() ? Model.Start : Model.ApprovedStart;
  15. set
  16. {
  17. }
  18. }
  19. public override TimeSpan EndTime
  20. {
  21. get => Model.Approved.IsEmpty() ? Model.Finish : Model.ApprovedFinish;
  22. set
  23. {
  24. }
  25. }
  26. public override DateTime Date
  27. {
  28. get => Model.Date;
  29. set
  30. {
  31. }
  32. }
  33. public override bool CanAdjust => false;
  34. public TimeSheetAppointment(TimeSheet model, Employee employee, Func<TimeSheetModel, String> color) : base(model, employee, x => x.ActivityLink.Color)
  35. {
  36. Notes = Model.Notes;
  37. Subject = Model.ActivityLink.Description;
  38. var images = new List<Bitmap>();
  39. if (!model.Approved.IsEmpty())
  40. images.Add(Resources.tick_sml.Resize(32,32));
  41. images.Add(Resources.tick_sml.Resize(32, 32));
  42. Image = ImageUtils.MergeBitmaps(images, 10)?.AsBitmapImage();
  43. }
  44. }
  45. }