Пример #1
0
        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);
        }
Пример #2
0
 public async Task <IEnumerable <Material> > Get()
 {
     return(await _repository.Get().ConfigureAwait(false));
 }
 public Materials Get(Int64 ixMaterial) => _materialsRepository.Get(ixMaterial);