1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- using System;
- using System.Linq;
- using System.Linq.Expressions;
- using InABox.Core;
- namespace Comal.Classes
- {
- public class QuoteDiagramLink : EntityLink<QuoteDiagram>
- {
- [NullEditor]
- public override Guid ID { get; set; }
- [TextBoxEditor(Editable = Editable.Hidden)]
- public string Description { get; set; }
- }
- [UserTracking(typeof(Quote))]
- public class QuoteDiagram : Entity, IRemotable, IPersistent, IOneToMany<Quote>, IStringAutoIncrement<QuoteDiagram>, ILicense<QuotesManagementLicense>
- {
- [EntityRelationship(DeleteAction.Cascade)]
- public QuoteLink Quote { get; set; }
- public string Number { get; set; }
- public string Description { get; set; }
- private class QuoteDocumentLookup : LookupDefinitionGenerator<QuoteDocument, QuoteDiagram>
- {
- public override Filter<QuoteDocument> DefineFilter(QuoteDiagram[] items)
- {
- if (items == null || !items.Any())
- return LookupFactory.DefineFilter<QuoteDocument>();
- return new Filter<QuoteDocument>(x => x.EntityLink.ID).IsEqualTo(items.First().Quote.ID);
- }
- public override Columns<QuoteDiagram> DefineFilterColumns()
- => new Columns<QuoteDiagram>(x => x.Quote.ID);
- }
- [LookupDefinition(typeof(QuoteDocumentLookup))]
- public QuoteDocumentLink Document { get; set; }
- public int DocumentPage { get; set; }
- public string Data { get; set; }
- public string Notes { get; set; }
- public Expression<Func<QuoteDiagram, string>> AutoIncrementField() => x => x.Number;
- public Filter<QuoteDiagram> AutoIncrementFilter() => null;
- public String AutoIncrementPrefix() => "";
- public string AutoIncrementFormat() => "{0:D4}";
- }
- }
|