public (Double nLength, Double nWidth, Double nHeight, Int64 ixLengthUnit, Int64 ixWidthUnit, Int64 ixHeightUnit) getInventoryUnitDimensions(InventoryUnitsPost inventoryUnitsPost) { //var inventoryUnit = _inventoryunitsRepository.Get(inventoryUnitsPost.ixInventoryUnit); var _material = _materialsRepository.Get(inventoryUnitsPost.ixMaterial); // Does IU have a HU? and we have to make sure that the Handling UNIT is not broken if ((inventoryUnitsPost.ixHandlingUnit > 0) && (_inventoryunittransactionsRepository.IndexDb().Where(x => x.ixHandlingUnitAfter == inventoryUnitsPost.ixHandlingUnit).Count() < 2)) { var handlingUnit = _handlingunitsRepository.Get(inventoryUnitsPost.ixHandlingUnit ?? 0); if (handlingUnit.nLength > 0 && handlingUnit.nWidth > 0 && handlingUnit.nHeight > 0 && handlingUnit.ixLengthUnit > 0 && handlingUnit.ixWidthUnit > 0 && handlingUnit.ixHeightUnit > 0) { // The HU has dimensions we use it return(handlingUnit.nLength ?? 0, handlingUnit.nWidth ?? 0, handlingUnit.nHeight ?? 0, handlingUnit.ixLengthUnit ?? 0, handlingUnit.ixWidthUnit ?? 0, handlingUnit.ixHeightUnit ?? 0); } // Does the HU have a MHC else if (handlingUnit.ixMaterialHandlingUnitConfiguration > 0 && (handlingUnit.MaterialHandlingUnitConfigurations.nLength > 0 && handlingUnit.MaterialHandlingUnitConfigurations.nWidth > 0 && handlingUnit.MaterialHandlingUnitConfigurations.nHeight > 0 && handlingUnit.MaterialHandlingUnitConfigurations.ixLengthUnit > 0 && handlingUnit.MaterialHandlingUnitConfigurations.ixWidthUnit > 0 && handlingUnit.MaterialHandlingUnitConfigurations.ixHeightUnit > 0)) { // The MHC has dimensions we use it return(handlingUnit.MaterialHandlingUnitConfigurations.nLength ?? 0, handlingUnit.MaterialHandlingUnitConfigurations.nWidth ?? 0, handlingUnit.MaterialHandlingUnitConfigurations.nHeight ?? 0, handlingUnit.MaterialHandlingUnitConfigurations.ixLengthUnit ?? 0, handlingUnit.MaterialHandlingUnitConfigurations.ixWidthUnit ?? 0, handlingUnit.MaterialHandlingUnitConfigurations.ixHeightUnit ?? 0); } // Does HU have a packing material? else if (handlingUnit.ixPackingMaterial > 0 && (handlingUnit.MaterialsFKDiffPackingMaterial.nLength > 0 && handlingUnit.MaterialsFKDiffPackingMaterial.nWidth > 0 && handlingUnit.MaterialsFKDiffPackingMaterial.nHeight > 0 && handlingUnit.MaterialsFKDiffPackingMaterial.ixLengthUnit > 0 && handlingUnit.MaterialsFKDiffPackingMaterial.ixWidthUnit > 0 && handlingUnit.MaterialsFKDiffPackingMaterial.ixHeightUnit > 0)) { // The packing material has dimensions we use it return(handlingUnit.MaterialsFKDiffPackingMaterial.nLength ?? 0, handlingUnit.MaterialsFKDiffPackingMaterial.nWidth ?? 0, handlingUnit.MaterialsFKDiffPackingMaterial.nHeight ?? 0, handlingUnit.MaterialsFKDiffPackingMaterial.ixLengthUnit ?? 0, handlingUnit.MaterialsFKDiffPackingMaterial.ixWidthUnit ?? 0, handlingUnit.MaterialsFKDiffPackingMaterial.ixHeightUnit ?? 0); } else if (_material.nLength > 0 && _material.nWidth > 0 && _material.nHeight > 0 && _material.ixLengthUnit > 0 && _material.ixWidthUnit > 0 && _material.ixHeightUnit > 0) { // The material has unit dimensions we use it return(_material.nLength ?? 0, _material.nWidth ?? 0, _material.nHeight ?? 0, _material.ixLengthUnit ?? 0, _material.ixWidthUnit ?? 0, _material.ixHeightUnit ?? 0); } } else if (_material.nLength > 0 && _material.nWidth > 0 && _material.nHeight > 0 && _material.ixLengthUnit > 0 && _material.ixWidthUnit > 0 && _material.ixHeightUnit > 0) { // The material has unit dimensions we use it return(_material.nLength ?? 0, _material.nWidth ?? 0, _material.nHeight ?? 0, _material.ixLengthUnit ?? 0, _material.ixWidthUnit ?? 0, _material.ixHeightUnit ?? 0); } else { return(0, 0, 0, 0, 0, 0); } return(0, 0, 0, 0, 0, 0); }
public HandlingUnits Get(Int64 ixHandlingUnit) => _handlingunitsRepository.Get(ixHandlingUnit);