/* * Copyright (c) 2018 iTAC Software AG, Germany. All Rights Reserved. * * This software is protected by copyright. Under no circumstances may any part of this file in any form be copied, * printed, edited or otherwise distributed, be stored in a retrieval system, or be translated into another language * without the written permission of iTAC Software AG. */ // created 06.11.2018 11:07:38 using System; using System.Collections.Generic; namespace com.itac.oib.siplacesetupcenter.contracts.data { // source: assembly 5.1.0.84 // source: assembly ASM.AS.OIB.SIPLACESetupCenter.Contracts public class PackagingUnitMapper { // used for itac->asm: True // used for asm->itac: True // maps iTAC namespace conform type to ASM namespace type public static Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit get(PackagingUnit itacPackagingUnit) { if (itacPackagingUnit == null) { return null; } Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit asmPackagingUnit = new Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit(); mapItac2Asm(asmPackagingUnit, itacPackagingUnit); return asmPackagingUnit; } public static void mapItac2Asm(Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit asmPackagingUnit, PackagingUnit itacPackagingUnit) { asmPackagingUnit.UID = itacPackagingUnit.UID; asmPackagingUnit.ComponentName = itacPackagingUnit.ComponentName; asmPackagingUnit.ComponentBarcode = itacPackagingUnit.ComponentBarcode; asmPackagingUnit.Quantity = itacPackagingUnit.Quantity; asmPackagingUnit.OriginalQuantity = itacPackagingUnit.OriginalQuantity; asmPackagingUnit.Manufacturer = itacPackagingUnit.Manufacturer; asmPackagingUnit.ManufacturerDate = itacPackagingUnit.ManufacturerDate; asmPackagingUnit.ExpiryDate = itacPackagingUnit.ExpiryDate; asmPackagingUnit.Supplier = itacPackagingUnit.Supplier; asmPackagingUnit.BatchId = itacPackagingUnit.BatchId; asmPackagingUnit.MsdLevel = itacPackagingUnit.MsdLevel; asmPackagingUnit.Comment = itacPackagingUnit.Comment; asmPackagingUnit.Extra1 = itacPackagingUnit.Extra1; asmPackagingUnit.Extra2 = itacPackagingUnit.Extra2; asmPackagingUnit.Extra3 = itacPackagingUnit.Extra3; // complex property SplicedPackagingUnit, isArray:False, isGeneric:False asmPackagingUnit.SplicedPackagingUnit = com.itac.oib.siplacesetupcenter.contracts.data.PackagingUnitMapper.get( itacPackagingUnit.SplicedPackagingUnit); asmPackagingUnit.MsdOpenDate = itacPackagingUnit.MsdOpenDate; // complex property LockInfos, isArray:False, isGeneric:True asmPackagingUnit.LockInfos = LockInfoMapper.getList(itacPackagingUnit.LockInfos); asmPackagingUnit.LastProductionDate = itacPackagingUnit.LastProductionDate; asmPackagingUnit.ConsumptionDate = itacPackagingUnit.ConsumptionDate; // complex property BatchPackagingUnit, isArray:False, isGeneric:False asmPackagingUnit.BatchPackagingUnit = com.itac.oib.siplacesetupcenter.contracts.data.PackagingUnitMapper.get( itacPackagingUnit.BatchPackagingUnit); asmPackagingUnit.GreyZone = itacPackagingUnit.GreyZone; asmPackagingUnit.AdditionalPartInformation = itacPackagingUnit.AdditionalPartInformation; asmPackagingUnit.ManufacturePartNumber = itacPackagingUnit.ManufacturePartNumber; asmPackagingUnit.OrderingCode = itacPackagingUnit.OrderingCode; asmPackagingUnit.ManufactureLocation = itacPackagingUnit.ManufactureLocation; asmPackagingUnit.RevisionLevel = itacPackagingUnit.RevisionLevel; asmPackagingUnit.PurchaseOrderNumber = itacPackagingUnit.PurchaseOrderNumber; asmPackagingUnit.ShippingNoteNumber = itacPackagingUnit.ShippingNoteNumber; asmPackagingUnit.Batch2 = itacPackagingUnit.Batch2; asmPackagingUnit.SupplierData = itacPackagingUnit.SupplierData; asmPackagingUnit.Serial = itacPackagingUnit.Serial; asmPackagingUnit.RoHS = itacPackagingUnit.RoHS; asmPackagingUnit.BrightnessClass = itacPackagingUnit.BrightnessClass; asmPackagingUnit.Extra4 = itacPackagingUnit.Extra4; asmPackagingUnit.Extra5 = itacPackagingUnit.Extra5; asmPackagingUnit.DateCode = itacPackagingUnit.DateCode; asmPackagingUnit.ComponentBarcodeFragment = itacPackagingUnit.ComponentBarcodeFragment; asmPackagingUnit.CreateDate = itacPackagingUnit.CreateDate; } // maps iTAC namespace conform array to ASM namespace array public static Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit[] get(PackagingUnit[] itacPackagingUnit) { if (itacPackagingUnit == null) { return null; } Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit[] asmPackagingUnit = new Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit[itacPackagingUnit.Length]; for (int i = 0; i < itacPackagingUnit.Length; i++) { // to itac array asmPackagingUnit[i] = PackagingUnitMapper.get(itacPackagingUnit[i]); } return asmPackagingUnit; } // maps iTAC namespace conform array to ASM namespace list public static List getList(PackagingUnit[] asmPackagingUnit) { if (asmPackagingUnit == null) { return null; } List itacPackagingUnit = new List(); for (int i = 0; i < asmPackagingUnit.Length; i++) { itacPackagingUnit.Add(PackagingUnitMapper.get(asmPackagingUnit[i])); } return itacPackagingUnit; } // map type from ASM namespace to iTAC namespace public static PackagingUnit get(Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit asmPackagingUnit) { if (asmPackagingUnit == null) { return null; } PackagingUnit itacPackagingUnit = new PackagingUnit(); mapAsm2Itac(asmPackagingUnit, itacPackagingUnit); return itacPackagingUnit; } public static void mapAsm2Itac(Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit asmPackagingUnit, PackagingUnit itacPackagingUnit) { itacPackagingUnit.UID = asmPackagingUnit.UID; itacPackagingUnit.ComponentName = asmPackagingUnit.ComponentName; itacPackagingUnit.ComponentBarcode = asmPackagingUnit.ComponentBarcode; itacPackagingUnit.Quantity = asmPackagingUnit.Quantity; itacPackagingUnit.OriginalQuantity = asmPackagingUnit.OriginalQuantity; itacPackagingUnit.Manufacturer = asmPackagingUnit.Manufacturer; itacPackagingUnit.ManufacturerDate = asmPackagingUnit.ManufacturerDate; itacPackagingUnit.ExpiryDate = asmPackagingUnit.ExpiryDate; itacPackagingUnit.Supplier = asmPackagingUnit.Supplier; itacPackagingUnit.BatchId = asmPackagingUnit.BatchId; itacPackagingUnit.MsdLevel = asmPackagingUnit.MsdLevel; itacPackagingUnit.Comment = asmPackagingUnit.Comment; itacPackagingUnit.Extra1 = asmPackagingUnit.Extra1; itacPackagingUnit.Extra2 = asmPackagingUnit.Extra2; itacPackagingUnit.Extra3 = asmPackagingUnit.Extra3; itacPackagingUnit.SplicedPackagingUnit = com.itac.oib.siplacesetupcenter.contracts.data.PackagingUnitMapper.get(asmPackagingUnit.SplicedPackagingUnit); // complex asm property SplicedPackagingUnit itacPackagingUnit.MsdOpenDate = asmPackagingUnit.MsdOpenDate; // maps ASM list 2 iTAC array itacPackagingUnit.LockInfos = LockInfoMapper.getArray(asmPackagingUnit.LockInfos); itacPackagingUnit.LastProductionDate = asmPackagingUnit.LastProductionDate; itacPackagingUnit.ConsumptionDate = asmPackagingUnit.ConsumptionDate; itacPackagingUnit.BatchPackagingUnit = com.itac.oib.siplacesetupcenter.contracts.data.PackagingUnitMapper.get(asmPackagingUnit.BatchPackagingUnit); // complex asm property BatchPackagingUnit itacPackagingUnit.GreyZone = asmPackagingUnit.GreyZone; itacPackagingUnit.AdditionalPartInformation = asmPackagingUnit.AdditionalPartInformation; itacPackagingUnit.ManufacturePartNumber = asmPackagingUnit.ManufacturePartNumber; itacPackagingUnit.OrderingCode = asmPackagingUnit.OrderingCode; itacPackagingUnit.ManufactureLocation = asmPackagingUnit.ManufactureLocation; itacPackagingUnit.RevisionLevel = asmPackagingUnit.RevisionLevel; itacPackagingUnit.PurchaseOrderNumber = asmPackagingUnit.PurchaseOrderNumber; itacPackagingUnit.ShippingNoteNumber = asmPackagingUnit.ShippingNoteNumber; itacPackagingUnit.Batch2 = asmPackagingUnit.Batch2; itacPackagingUnit.SupplierData = asmPackagingUnit.SupplierData; itacPackagingUnit.Serial = asmPackagingUnit.Serial; itacPackagingUnit.RoHS = asmPackagingUnit.RoHS; itacPackagingUnit.BrightnessClass = asmPackagingUnit.BrightnessClass; itacPackagingUnit.Extra4 = asmPackagingUnit.Extra4; itacPackagingUnit.Extra5 = asmPackagingUnit.Extra5; itacPackagingUnit.DateCode = asmPackagingUnit.DateCode; itacPackagingUnit.ComponentBarcodeFragment = asmPackagingUnit.ComponentBarcodeFragment; itacPackagingUnit.CreateDate = asmPackagingUnit.CreateDate; } // maps ASM namespace conform list to iTAC namespace array public static PackagingUnit[] getArray(IList asmPackagingUnit) { if (asmPackagingUnit == null) { return null; } PackagingUnit[] itacPackagingUnit = new PackagingUnit[asmPackagingUnit.Count]; for (int i = 0; i < asmPackagingUnit.Count; i++) { itacPackagingUnit[i] = PackagingUnitMapper.get(asmPackagingUnit[i]); } return itacPackagingUnit; } // maps ASM namespace conform array to iTAC namespace array public static PackagingUnit[] getArray(Asm.As.Oib.SiplaceSetupCenter.Contracts.Data.PackagingUnit[] asmPackagingUnit) { if (asmPackagingUnit == null) { return null; } PackagingUnit[] itacPackagingUnit = new PackagingUnit[asmPackagingUnit.Length]; for (int i = 0; i < asmPackagingUnit.Length; i++) { itacPackagingUnit[i] = PackagingUnitMapper.get(asmPackagingUnit[i]); } return itacPackagingUnit; } } }