12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- using System;
- using System.Collections.Generic;
- using System.Linq.Expressions;
- using InABox.Core;
- namespace Comal.Classes
- {
- public interface IJobDocumentSetFolder
- {
- String Name { get; set; }
- }
-
- public class JobDocumentSetFolderDocumentCount : CoreAggregate<JobDocumentSetFolder, JobDocumentSet, Guid>
- {
- public override Expression<Func<JobDocumentSet, Guid>> Aggregate => x => x.ID;
- public override AggregateCalculation Calculation => AggregateCalculation.Count;
- public override Dictionary<Expression<Func<JobDocumentSet, object>>, Expression<Func<JobDocumentSetFolder, object>>> Links =>
- new Dictionary<Expression<Func<JobDocumentSet, object>>, Expression<Func<JobDocumentSetFolder, object>>>()
- {
- { JobDocumentSet => JobDocumentSet.Folder.ID, JobDocumentSetFolder => JobDocumentSetFolder.ID }
- };
- }
-
- public class JobDocumentSetFolder : Entity, IRemotable, IPersistent, IJobDocumentSetFolder, IOneToMany<Job>, ILicense<ProjectManagementLicense>
- {
- [EntityRelationship(DeleteAction.Cascade)]
- [NullEditor]
- public JobLink Job { get; set; }
-
- [NullEditor]
- [EntityRelationship(DeleteAction.Cascade)]
- public JobDocumentSetFolderLink Parent { get; set; }
- [TextBoxEditor]
- [EditorSequence(1)]
- public String Name { get; set; }
-
- [NullEditor]
- [Aggregate(typeof(JobDocumentSetFolderDocumentCount))]
- public int Documents { get; set; }
- }
- public class JobDocumentSetFolderLink : EntityLink<JobDocumentSetFolder>, IJobDocumentSetFolder
- {
- [NullEditor]
- public override Guid ID { get; set; }
-
- public string Name { get; set; }
- }
- }
|