|
@@ -1,19 +1,24 @@
|
|
|
using System;
|
|
|
+using System.Linq.Expressions;
|
|
|
using InABox.Core;
|
|
|
|
|
|
namespace Comal.Classes
|
|
|
{
|
|
|
- public class JobBillOfMaterials : Entity, IRemotable, IPersistent, IOneToMany<Job>, ISequenceable, ILicense<ProjectManagementLicense>
|
|
|
+ public class JobBillOfMaterials : Entity, IRemotable, IPersistent, IOneToMany<Job>, ISequenceable, ILicense<ProjectManagementLicense>, INumericAutoIncrement<JobBillOfMaterials>
|
|
|
{
|
|
|
[NullEditor]
|
|
|
[EntityRelationship(DeleteAction.Cascade)]
|
|
|
public JobLink Job { get; set; }
|
|
|
|
|
|
+ [IntegerEditor(Visible = Visible.Default, Editable = Editable.Disabled)]
|
|
|
[EditorSequence(1)]
|
|
|
+ public int Number { get; set; }
|
|
|
+
|
|
|
+ [EditorSequence(2)]
|
|
|
public string Description { get; set; }
|
|
|
|
|
|
[TimestampEditor]
|
|
|
- [EditorSequence(2)]
|
|
|
+ [EditorSequence(3)]
|
|
|
[LoggableProperty]
|
|
|
public DateTime Approved { get; set; }
|
|
|
|
|
@@ -23,6 +28,16 @@ namespace Comal.Classes
|
|
|
[MemoEditor]
|
|
|
public string Notes { get; set; }
|
|
|
|
|
|
+ public Expression<Func<JobBillOfMaterials, int>> AutoIncrementField()
|
|
|
+ {
|
|
|
+ return x => x.Number;
|
|
|
+ }
|
|
|
+
|
|
|
+ public Filter<JobBillOfMaterials> AutoIncrementFilter()
|
|
|
+ {
|
|
|
+ return new Filter<JobBillOfMaterials>(x => x.Job.ID).IsEqualTo(Job.ID);
|
|
|
+ }
|
|
|
+
|
|
|
protected override void Init()
|
|
|
{
|
|
|
base.Init();
|