1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- using System;
- using System.Linq;
- using InABox.Core;
- namespace Comal.Classes
- {
- [UserTracking(typeof(ManufacturingPacket))]
- public class Setout : Entity, IPersistent, IRemotable, ILicense<ManufacturingLicense>
- {
- [EntityRelationship(DeleteAction.Cascade)]
- public JobLink JobLink { get; set; }
- [UniqueCodeEditor(Visible = Visible.Default, Editable = Editable.Enabled)]
- public string Number { get; set; }
- [Obsolete("Supreceded by ManufacturingPacket.Serial")]
- public string Reference { get; set; }
- [MemoEditor]
- public string Description { get; set; }
- [Obsolete("Superceded by ManufacturingPacket.Location")]
- public string Location { get; set; }
- public DateTime DueDate { get; set; }
- //[NullEditor]
- //public PackableList<FactoryTemplateItem> Items { get; set; }
- //[NullEditor]
- //public PackableList<ManufacturingItem> Manufacturing { get; set; }
- private class JobStageLookup : LookupDefinitionGenerator<JobStage, Setout>
- {
- public override Filter<JobStage> DefineFilter(Setout[] items)
- {
- if (items.Length == 1)
- return new Filter<JobStage>(x => x.Job.ID).IsEqualTo(items.First().JobLink.ID).And(x => x.IsHeader).IsEqualTo(false);
- return new Filter<JobStage>(x => x.ID).IsEqualTo(Guid.Empty);
- }
- public override Columns<Setout> DefineFilterColumns()
- => Columns.None<Setout>().Add(x => x.JobLink.ID);
- }
- [LookupDefinition(typeof(JobStageLookup))]
- public JobStageLink JobStage { get; set; }
- public SetoutGroupLink Group { get; set; }
- public override string ToString()
- {
- return string.Format("{0}: {1}", Number, Reference);
- }
- static Setout()
- {
- DefaultColumns.Add<Setout>(x => x.Number);
- DefaultColumns.Add<Setout>(x => x.Description);
- DefaultColumns.Add<Setout>(x => x.DueDate);
- }
- }
- }
|