Esempio n. 1
0
            public static UInventory_InventoryItem UInventory_InventoryItem(MInventory_LibraryEntry entry)
            {
                //var color = Color.FromAhsb(255, entry.Hue, entry.Saturation / 100.0, entry.Value / 100.0);

                var result = new UInventory_InventoryItem()
                {
                    Id               = entry.InventoryItemId,
                    Type             = entry.InventoryItemTypeCode,
                    Sku              = entry.Sku,
                    Name             = entry.Name,
                    Manufacturer     = entry.Manufacturer,
                    Collection       = entry.Collection,
                    Quantity         = entry.Quantity,
                    ReservedQuantity = entry.ReservedQuantity,
                    Color            = MCommon_Color(entry.Hue, entry.Saturation, entry.Value)
                };

                return(result);
            }
            public static AInventory_InventoryItem Create_InventoryItem_Data(MInventory_LibraryEntry entry)
            {
                //var color = Color.FromAhsb(255, entry.Hue, entry.Saturation / 100.0, entry.Value / 100.0);

                var result = new AInventory_InventoryItem()
                {
                    Id                  = entry.InventoryItemId,
                    Type                = entry.InventoryItemTypeCode,
                    Sku                 = entry.Sku,
                    Name                = entry.Name,
                    Manufacturer        = entry.Manufacturer,
                    Collection          = entry.Collection,
                    Quantity            = entry.Quantity,
                    ReservedQuantity    = entry.ReservedQuantity,
                    Color               = Create_Common_ColorData(entry.Hue, entry.Saturation, entry.Value),
                    InventoryItemStocks = Create_Admin_InventoryItem_StockDataList(entry.Stocks)
                };

                return(result);
            }
Esempio n. 3
0
        private List <MInventory_LibraryEntry> LoadEntries()
        {
            //Logger.LogMessage("InventoryItemLibrary::LoadEntries");

            var entries = new List <MInventory_LibraryEntry>();

            using (var ctx = QuiltContextFactory.Create())
            {
                var dbInventoryItems = ctx.InventoryItems
                                       .Include(r => r.InventoryItemTypeCodeNavigation)
                                       .Include(r => r.InventoryItemStocks)
                                       .Include(r => r.InventoryItemTags)
                                       .ThenInclude(r => r.Tag)
                                       .Where(r => r.Quantity > 0)
                                       .OrderBy(r => r.Hue).ThenBy(r => r.Value).ThenBy(r => r.Saturation)
                                       .ToList();

                foreach (var dbInventoryItem in dbInventoryItems)
                {
                    var dbCollectionTag   = dbInventoryItem.InventoryItemTags.Where(r => r.Tag.TagTypeCode == TagTypeCodes.Collection).SingleOrDefault();
                    var dbManufacturerTag = dbInventoryItem.InventoryItemTags.Where(r => r.Tag.TagTypeCode == TagTypeCodes.Manufacturer).SingleOrDefault();

                    IList <MInventory_LibraryItemStockEntry> stocks = null;
                    foreach (var dbInventoryItemStock in dbInventoryItem.InventoryItemStocks)
                    {
                        if (stocks == null)
                        {
                            stocks = new List <MInventory_LibraryItemStockEntry>();
                        }

                        var stock = new MInventory_LibraryItemStockEntry(
                            dbInventoryItemStock.InventoryItemStockId,
                            dbInventoryItemStock.UnitOfMeasureCodeNavigation.Name,
                            dbInventoryItemStock.UnitCost,
                            dbInventoryItemStock.StockDateTimeUtc,
                            dbInventoryItemStock.OriginalQuantity,
                            dbInventoryItemStock.CurrentQuantity);

                        stocks.Add(stock);
                    }

                    var entry = new MInventory_LibraryEntry(
                        dbInventoryItem.InventoryItemId,
                        dbInventoryItem.Sku,
                        dbInventoryItem.Name,
                        dbInventoryItem.InventoryItemTypeCode,
                        dbInventoryItem.PricingScheduleId,
                        dbManufacturerTag?.Tag.Value,
                        dbCollectionTag?.Tag.Value,
                        dbInventoryItem.Quantity,
                        dbInventoryItem.ReservedQuantity,
                        dbInventoryItem.Hue,
                        dbInventoryItem.Saturation,
                        dbInventoryItem.Value,
                        stocks ?? EMPTY_STOCK_LIST);

                    entries.Add(entry);
                }
            }

            return(entries);
        }
Esempio n. 4
0
 public static MProject_ProjectSnapshotComponent MProject_ProjectSnapshotComponent(ProjectSnapshotComponent dbProjectSnapshotComponent, MInventory_LibraryEntry mInventoryItem, InventoryItemType dbInventoryItemType, UnitOfMeasure dbUnitOfMeasure, decimal unitPrice, decimal totalPrice)
 {
     return(new MProject_ProjectSnapshotComponent()
     {
         ProjectSnapshotComponentId = dbProjectSnapshotComponent.ProjectSnapshotComponentId,
         Description = mInventoryItem.Name,
         Quantity = dbProjectSnapshotComponent.Quantity,
         UnitPrice = unitPrice,
         TotalPrice = totalPrice,
         ConsumableReference = CreateConsumableReference.FromInventoryItemId(mInventoryItem.InventoryItemId),
         Sku = mInventoryItem.Sku,
         UnitOfMeasure = GetValue.MCommon_UnitOfMeasure(dbUnitOfMeasure.UnitOfMeasureCode),
         UnitOfMeasureName = dbUnitOfMeasure.Name,
         Category = dbInventoryItemType.Name,
         Collection = mInventoryItem.Collection,
         Manufacturer = mInventoryItem.Manufacturer
     });
 }