private bool getBoxes(long nomenclatureId, int units, out NomenclatureData tare) { var nomenclature = new Nomenclature() { ReadingId = nomenclatureId }; if (nomenclature.IsKeg() || nomenclature.BoxType.Empty) { tare = null; return false; } tare = new NomenclatureData(); tare.Description = new ObjectValue(nomenclature.BoxType.Description, nomenclature.BoxType.Id); tare.Quantity = units / nomenclature.UnitsQuantityPerPack; return true; }
private void addTrays(Dictionary<long, NomenclatureData> tareDictionary, int standartTrays, Nomenclature nomenclatureTray) { if (standartTrays < 1) return; NomenclatureData tare; if (tareDictionary.TryGetValue(nomenclatureTray.Id, out tare)) { tare.Quantity += standartTrays; } else { tare = new NomenclatureData { Description = new ObjectValue(nomenclatureTray.Description, nomenclatureTray.Id), Quantity = standartTrays }; tareDictionary.Add(nomenclatureTray.Id, tare); } }
private void fillEditableTable(WaresTypes waresTypes) { var isTare = waresTypes == WaresTypes.Tare; var table = isTare ? Document.TareInfo : Document.NomenclatureInfo; list = new List<NomenclatureData>(); if (table.Rows.Count > 0) { foreach (DataRow row in table.Rows) { long nomemclatureId = (long)row[isTare ? Document.Tare : Document.Nomenclature]; string nomenclatureDescription = null; bool withoutTray = false; var shelfLifeDays = 0; var unitsQuantityPerPallet = 0; if (isTare) { nomenclatureDescription = FastInputDataCache.GetCashedData(typeof(Nomenclature).Name).GetDescription(nomemclatureId); } else { var nomenclature = new Nomenclature() { ReadingId = nomemclatureId }; nomenclatureDescription = nomenclature.Description; shelfLifeDays = nomenclature.ShelfLife; unitsQuantityPerPallet = nomenclature.UnitsQuantityPerPallet; withoutTray = nomenclature.WithoutTray; } NomenclatureData element = new NomenclatureData { LineNumber = Convert.ToInt64(row["LineNumber"]), Description = new ObjectValue(nomenclatureDescription, nomemclatureId), ShelfLifeDays = shelfLifeDays, UnitsAmountInOneStandartPallet = unitsQuantityPerPallet, WithoutTray = withoutTray }; element.Quantity = Convert.ToInt32(row[isTare ? Document.TareCount : Document.NomenclatureCount]); if (!isTare) { Parties party = new Parties() { ReadingId = row[Document.NomenclatureParty] }; element.Date = party.DateOfManufacture; element.UpdatePalletQuantity(); } list.Add(element); } } else if (isTare) { computeTare(); } }
private List<Tuple<int, int, long, int>> buildNonStandartQuantitiesList(NomenclatureData nomenclatureData, int countInOnePack, long trayId) { var pallets = new List<Tuple<int, int, long, int>>(); for (int stickerIndex = 0; stickerIndex < nomenclatureData.StandartPalletsCount; stickerIndex++) { pallets.Add(new Tuple<int, int, long, int>(nomenclatureData.UnitsAmountInOneStandartPallet / countInOnePack, nomenclatureData.UnitsAmountInOneStandartPallet, trayId, nomenclatureData.UnitsAmountInOneStandartPallet)); } if (nomenclatureData.UnitsOnNotFullPallet > 0) { pallets.Add(new Tuple<int, int, long, int>(nomenclatureData.UnitsOnNotFullPallet / countInOnePack, nomenclatureData.UnitsOnNotFullPallet, trayId, nomenclatureData.UnitsAmountInOneStandartPallet)); } for (int stickerIndex = 0; stickerIndex < nomenclatureData.NonStandartPalletsCount; stickerIndex++) { pallets.Add(new Tuple<int, int, long, int>(nomenclatureData.UnitsAmountInOneNonStandartPallet / countInOnePack, nomenclatureData.UnitsAmountInOneNonStandartPallet, trayId, nomenclatureData.UnitsAmountInOneNonStandartPallet)); } if (nomenclatureData.UnitsOnNotFullNonStandartPallet > 0) { pallets.Add(new Tuple<int, int, long, int>(nomenclatureData.UnitsOnNotFullNonStandartPallet / countInOnePack, nomenclatureData.UnitsOnNotFullNonStandartPallet, trayId, nomenclatureData.UnitsAmountInOneNonStandartPallet)); } return pallets; }