12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- using System;
- using System.Linq.Expressions;
- using InABox.Core;
- namespace Comal.Classes
- {
-
- public interface IEmployeeRequiredQualification
- {
- EmployeeLink Employee { get; set; }
-
- QualificationLink Qualification { get; set; }
- }
-
- public class EmployeeRequiredQualificationCrossGenerator : AutoEntityCrossGenerator<IEmployeeRequiredQualification,EmployeeRole,RoleQualification>
- {
- public override Expression<Func<EmployeeRole, Guid>> LeftProperty => x => x.EmployeeLink.ID;
- public override Expression<Func<IEmployeeRequiredQualification, Guid>> LeftMapping => x => x.Employee.ID;
- public override Expression<Func<EmployeeRole, Guid>> LeftLink => x => x.RoleLink.ID;
- public override Expression<Func<RoleQualification, Guid>> RightProperty => x => x.Qualification.ID;
- public override Expression<Func<IEmployeeRequiredQualification, Guid>> RightMapping => x => x.Qualification.ID;
- public override Expression<Func<RoleQualification, Guid>> RightLink => x => x.Role.ID;
- public override bool Distinct => true;
- public override Column<IEmployeeRequiredQualification>[] IDColumns => new Column<IEmployeeRequiredQualification>[]
- {
- new Column<IEmployeeRequiredQualification>(x => x.Employee.ID),
- new Column<IEmployeeRequiredQualification>(x => x.Qualification.ID)
- };
- }
-
- [UserTracking(typeof(Employee))]
- [AutoEntity(typeof(EmployeeRequiredQualificationCrossGenerator))]
- public class EmployeeRequiredQualification : Entity, IRemotable, IPersistent, IEmployeeRequiredQualification,
- ILicense<CoreLicense>
- {
- public EmployeeLink Employee { get; set; }
- public QualificationLink Qualification { get; set; }
- }
- }
|