using System; using System.Collections.ObjectModel; using Comal.Classes; using InABox.Core; using Xamarin.Forms; namespace comal.timesheets { public class AssignmentListDataModelItem : CoreDataModelItem { public Guid Id => Row.Get(c => c.ID); public int Number => Row.Get(c => c.Number); public Guid EmployeeId => Row.Get(c => c.EmployeeLink.ID); public Guid JobID => Row.Get(c => c.JobLink.ID); public string JobNumber => Row.Get(c => c.JobLink.JobNumber); public String Subject => string.Format("{0}{1} {2}", Row.Get(c => c.Number), Row.Get(c=>c.JobLink.ID) != Guid.Empty ? $"({Row.Get(c => c.JobLink.JobNumber)})" : "", Row.Get(c => c.Title)); public string Notes => Row.Get(c => c.Description); public DateTime StartTime => Row.Get(c => c.Date).Add(Row.Get(c => c.Start)); public DateTime EndTime => Row.Get(c => c.Date).Add(Row.Get(c => c.Finish)); public bool Completed => !Row.Get(c => c.Completed).IsEmpty(); public Color Color { get { var color = Row.Get(c => c.ActivityLink.Color); return !String.IsNullOrWhiteSpace(color) ? Color.FromHex(color) : Color.Silver; } set { Row.Set(c => c.ActivityLink.Color, value.ToHex()); } } public Color TextColor => Color.Black; public ObservableCollection ResourceIds => new ObservableCollection() { Row.Get(c => c.EmployeeLink.ID) }; } }