1234567891011121314151617181920212223242526272829303132333435 |
- using System;
- using System.Collections.Generic;
- using System.Linq.Expressions;
- using InABox.Core;
- namespace Comal.Classes
- {
- public class JobAssignmentCount : CoreAggregate<Job, Assignment, Guid>
- {
- public override Expression<Func<Assignment, Guid>> Aggregate => x => x.ID;
- public override AggregateCalculation Calculation => AggregateCalculation.Count;
- public override Dictionary<Expression<Func<Assignment, object>>, Expression<Func<Job, object>>> Links =>
- new Dictionary<Expression<Func<Assignment, object>>, Expression<Func<Job, object>>>()
- {
- { Assignment => Assignment.JobLink.ID, Job => Job.ID }
- };
- }
- public class JobOpenAssignmentCount : CoreAggregate<Job, Assignment, Guid>
- {
- public override Expression<Func<Assignment, Guid>> Aggregate => x => x.ID;
- public override AggregateCalculation Calculation => AggregateCalculation.Count;
- public override Dictionary<Expression<Func<Assignment, object>>, Expression<Func<Job, object>>> Links =>
- new Dictionary<Expression<Func<Assignment, object>>, Expression<Func<Job, object>>>()
- {
- { Assignment => Assignment.JobLink.ID, Job => Job.ID }
- };
- public override Filter<Assignment> Filter => new Filter<Assignment>(x => x.Completed).IsEqualTo(DateTime.MinValue);
- }
- }
|