EmployeeTeamModel.cs 908 B

12345678910111213141516171819202122232425262728
  1. using System;
  2. using System.IO;
  3. using System.Linq;
  4. using System.Linq.Expressions;
  5. using Comal.Classes;
  6. using InABox.Core;
  7. using System.Diagnostics.CodeAnalysis;
  8. using InABox.Mobile;
  9. using Xamarin.Forms;
  10. namespace PRS.Mobile
  11. {
  12. public class EmployeeTeamModel : CoreRepository<EmployeeTeamModel, EmployeeTeamShell, EmployeeTeam>
  13. {
  14. public EmployeeTeamModel(IModelHost host, Func<Filter<EmployeeTeam>>? filter = null, Func<string>? cachefilename = null) : base(host, filter, cachefilename)
  15. {
  16. }
  17. protected override Expression<Func<EmployeeTeam, object>> ImageColumn => x => x.EmployeeLink.Thumbnail.ID;
  18. public EmployeeTeamSummary[] AvailableTeams => Items
  19. .Select(x => new EmployeeTeamSummary(x.TeamID, x.TeamName))
  20. .Distinct(new EmployeeTeamSummaryEqualityComparer())
  21. .OrderBy(x=>x.Name)
  22. .ToArray();
  23. }
  24. }