using System; using InABox.Core; using PRSClasses; namespace Comal.Classes { public abstract class StockEntity : DimensionedEntity { public abstract ProductLink Product { get; set; } public static void LinkStockDimensions() where TStock : StockEntity { LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.ID, x => x.Dimensions.Unit.ID); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.Code, x => x.Dimensions.Unit.Code); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.Description, x => x.Dimensions.Unit.Description); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.HasLength, x => x.Dimensions.Unit.HasLength); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.HasHeight, x => x.Dimensions.Unit.HasHeight); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.HasQuantity, x => x.Dimensions.Unit.HasQuantity); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.HasWeight, x => x.Dimensions.Unit.HasWeight); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.HasWidth, x => x.Dimensions.Unit.HasWidth); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.Formula, x => x.Dimensions.Unit.Formula); LinkedProperties.Register(x => x.Product.UnitOfMeasure, x => x.Format, x => x.Dimensions.Unit.Format); LinkedProperties.Register(x => x.Product.DefaultInstance.Dimensions, x => x.Height, x => x.Dimensions.Height); LinkedProperties.Register(x => x.Product.DefaultInstance.Dimensions, x => x.Length, x => x.Dimensions.Length); LinkedProperties.Register(x => x.Product.DefaultInstance.Dimensions, x => x.Quantity, x => x.Dimensions.Quantity); LinkedProperties.Register(x => x.Product.DefaultInstance.Dimensions, x => x.Weight, x => x.Dimensions.Weight); LinkedProperties.Register(x => x.Product.DefaultInstance.Dimensions, x => x.Width, x => x.Dimensions.Width); LinkedProperties.Register(x => x.Product.DefaultInstance.Dimensions, x => x.Value, x => x.Dimensions.Value); LinkedProperties.Register(x => x.Product.DefaultInstance.Dimensions, x => x.UnitSize, x => x.Dimensions.UnitSize); } } }