public Armor(string name, Type type, int armorClass, ACMod acm, int StrNeed, NAD Stealth) { this.name = name; this.type = type; this.armorClass = armorClass; this.acm = acm; this.StrNeed = StrNeed; this.Stealth = Stealth; }
protected override void MontarNad(string calificadorDeEntidad3035, string identificacionEntidadCodificada3039, string nombreEntidad) { var _idEntidadCod = CleanText(identificacionEntidadCodificada3039); var _nomEntidad = CleanText(nombreEntidad); var nad = new NAD(calificadorDeEntidad3035, new IdentificacionDeLaParte(_idEntidadCod, null, null), null, _nomEntidad, null, null, null, null, null); Segmentos.Add(nad); Mensaje += nad.getSegmento(); }
public static double SkillCheck(int skill, int times, NAD nadstate) { int veryEasySuccess = 0; //5 int easySuccess = 0; //10 int mediumSuccess = 0; //15 int hardSuccess = 0; //20 int veryHardSuccess = 0; //25 int nearlyImpossibleSuccess = 0; //30 for (int i = 0; i < times; i++) { int diceResult1 = Dice.RollDice("1D20+0"); int diceResult2 = Dice.RollDice("1D20+0"); int diceResult = 0; switch (nadstate) { case NAD.Normal: diceResult = diceResult1; break; case NAD.Advantage: diceResult = (diceResult1 > diceResult2) ? diceResult1 : diceResult2; break; case NAD.Disadvantage: diceResult = (diceResult1 < diceResult2) ? diceResult1 : diceResult2; break; } veryEasySuccess = ((diceResult + skill) > 5) ? veryEasySuccess + 1 : veryEasySuccess; easySuccess = ((diceResult + skill) > 10) ? easySuccess + 1 : easySuccess; mediumSuccess = ((diceResult + skill) > 15) ? mediumSuccess + 1 : mediumSuccess; hardSuccess = ((diceResult + skill) > 20) ? hardSuccess + 1 : hardSuccess; veryHardSuccess = ((diceResult + skill) > 25) ? veryHardSuccess + 1 : veryHardSuccess; nearlyImpossibleSuccess = ((diceResult + skill) > 30) ? nearlyImpossibleSuccess + 1 : nearlyImpossibleSuccess; } double result = (Convert.ToDouble(veryEasySuccess) / Convert.ToDouble(times)) * 12 + (Convert.ToDouble(easySuccess) / Convert.ToDouble(times)) * 18 + (Convert.ToDouble(mediumSuccess) / Convert.ToDouble(times)) * 30 + (Convert.ToDouble(hardSuccess) / Convert.ToDouble(times)) * 18 + (Convert.ToDouble(veryHardSuccess) / Convert.ToDouble(times)) * 12 + (Convert.ToDouble(nearlyImpossibleSuccess) / Convert.ToDouble(times)) * 10; return(result); }
/// <summary> /// Build transport status. /// Original from https://www.gs1.org/sites/default/files/docs/eancom/s4/iftsta.pdf /// </summary> static TSIFTSTA BuildTransportStatus(string controlNumber) { var result = new TSIFTSTA(); // Message header result.UNH = new UNH(); result.UNH.MessageReferenceNumber_01 = controlNumber.PadLeft(14, '0'); result.UNH.MessageIdentifier_02 = new S009(); result.UNH.MessageIdentifier_02.MessageType_01 = "IFTSTA"; result.UNH.MessageIdentifier_02.MessageVersionNumber_02 = "D"; result.UNH.MessageIdentifier_02.MessageReleaseNumber_03 = "96A"; result.UNH.MessageIdentifier_02.ControllingAgencyCoded_04 = "UN"; // Transport status number 95-455 result.BGM = new BGM(); result.BGM.DOCUMENTMESSAGENAME_01 = new C002(); result.BGM.DOCUMENTMESSAGENAME_01.Documentmessagenamecoded_01 = "44"; result.BGM.Documentmessagenumber_02 = "95-455"; result.BGM.Messagefunctioncoded_03 = "9"; // Repeating DTM result.DTM = new List <DTM>(); // Message date/time 4th February 2002 var dtm1 = new DTM(); dtm1.DATETIMEPERIOD_01 = new C507(); dtm1.DATETIMEPERIOD_01.Datetimeperiodqualifier_01 = "137"; dtm1.DATETIMEPERIOD_01.Datetimeperiod_02 = "20020204"; dtm1.DATETIMEPERIOD_01.Datetimeperiodformatqualifier_03 = "102"; result.DTM.Add(dtm1); // Repeating NAD Groups result.NADLoop = new List <Loop_NAD_IFTSTA>(); // Begin NAD Group 1 var nadLoop1 = new Loop_NAD_IFTSTA(); // Freight forwarder identified with GLN 5422331123459 nadLoop1.NAD = new NAD(); nadLoop1.NAD.Partyqualifier_01 = "FW"; nadLoop1.NAD.PARTYIDENTIFICATIONDETAILS_02 = new C082(); nadLoop1.NAD.PARTYIDENTIFICATIONDETAILS_02.Partyididentification_01 = "5422331123459"; nadLoop1.NAD.PARTYIDENTIFICATIONDETAILS_02.Codelistresponsibleagencycoded_03 = "9"; // End NAD Group 1 result.NADLoop.Add(nadLoop1); // Begin NAD Group 2 var nadLoop2 = new Loop_NAD_IFTSTA(); // Consignor identified with GLN 5412345123453 nadLoop2.NAD = new NAD(); nadLoop2.NAD.Partyqualifier_01 = "CZ"; nadLoop2.NAD.PARTYIDENTIFICATIONDETAILS_02 = new C082(); nadLoop2.NAD.PARTYIDENTIFICATIONDETAILS_02.Partyididentification_01 = "5412345123453"; nadLoop2.NAD.PARTYIDENTIFICATIONDETAILS_02.Codelistresponsibleagencycoded_03 = "9"; // End NAD Group 2 result.NADLoop.Add(nadLoop2); // Repeating CNI Groups result.CNILoop = new List <Loop_CNI_IFTSTA>(); // Begin CNI Group 1 var cniLoop1 = new Loop_CNI_IFTSTA(); // First consignment number 4215A cniLoop1.CNI = new CNI(); cniLoop1.CNI.Consolidationitemnumber_01 = "1"; cniLoop1.CNI.DOCUMENTMESSAGEDETAILS_02 = new C503(); cniLoop1.CNI.DOCUMENTMESSAGEDETAILS_02.Documentmessagenumber_01 = "4215A"; // Repeating STS Groups cniLoop1.STSLoop = new List <Loop_STS_IFTSTA>(); // Begin STS Group var stsCni1 = new Loop_STS_IFTSTA(); // Status of the consignment: ‘delivered’ stsCni1.STS = new STS(); stsCni1.STS.STATUSTYPE_01 = new C601(); stsCni1.STS.STATUSTYPE_01.Statustypecoded_01 = "1"; stsCni1.STS.STATUSEVENT_02 = new C555(); stsCni1.STS.STATUSEVENT_02.Statuseventcoded_01 = "21"; // Repeating RFF stsCni1.RFF = new List <RFF>(); // Reference is a delivery note number ‘5/2334' var rffSts1 = new RFF(); rffSts1.REFERENCE_01 = new C506(); rffSts1.REFERENCE_01.Referencequalifier_01 = "DQ"; rffSts1.REFERENCE_01.Referencenumber_02 = "5/2334"; stsCni1.RFF.Add(rffSts1); // Repeating DTM stsCni1.DTM = new List <DTM>(); // Date/time of the status change 1st February 2002 at 14:50 var dtmSts1 = new DTM(); dtmSts1.DATETIMEPERIOD_01 = new C507(); dtmSts1.DATETIMEPERIOD_01.Datetimeperiodqualifier_01 = "334"; dtmSts1.DATETIMEPERIOD_01.Datetimeperiod_02 = "200202011450"; dtmSts1.DATETIMEPERIOD_01.Datetimeperiodformatqualifier_03 = "203"; stsCni1.DTM.Add(dtmSts1); // Repeating NAD stsCni1.NAD = new List <NAD>(); // Delivery party identified with GLN 5411111123451 var nadSts1 = new NAD(); nadSts1.Partyqualifier_01 = "DP"; nadSts1.PARTYIDENTIFICATIONDETAILS_02 = new C082(); nadSts1.PARTYIDENTIFICATIONDETAILS_02.Partyididentification_01 = "5411111123451"; nadSts1.PARTYIDENTIFICATIONDETAILS_02.Codelistresponsibleagencycoded_03 = "9"; stsCni1.NAD.Add(nadSts1); // End STS Group cniLoop1.STSLoop.Add(stsCni1); // End CNI Group 1 result.CNILoop.Add(cniLoop1); // Begin CNI Group 2 var cniLoop2 = new Loop_CNI_IFTSTA(); // Second consignment number 5122C cniLoop2.CNI = new CNI(); cniLoop2.CNI.Consolidationitemnumber_01 = "2"; cniLoop2.CNI.DOCUMENTMESSAGEDETAILS_02 = new C503(); cniLoop2.CNI.DOCUMENTMESSAGEDETAILS_02.Documentmessagenumber_01 = "5122C"; // Repeating STS Groups cniLoop2.STSLoop = new List <Loop_STS_IFTSTA>(); // Begin STS Group var stsCni2 = new Loop_STS_IFTSTA(); // Status of the consignment: ‘Goods on their way’ stsCni2.STS = new STS(); stsCni2.STS.STATUSTYPE_01 = new C601(); stsCni2.STS.STATUSTYPE_01.Statustypecoded_01 = "1"; stsCni2.STS.STATUSEVENT_02 = new C555(); stsCni2.STS.STATUSEVENT_02.Statuseventcoded_01 = "31"; // Repeating DTM stsCni2.DTM = new List <DTM>(); // Date/time of the next status 7th February 2002 var dtmSts2 = new DTM(); dtmSts2.DATETIMEPERIOD_01 = new C507(); dtmSts2.DATETIMEPERIOD_01.Datetimeperiodqualifier_01 = "40E"; dtmSts2.DATETIMEPERIOD_01.Datetimeperiod_02 = "20020207"; dtmSts2.DATETIMEPERIOD_01.Datetimeperiodformatqualifier_03 = "102"; stsCni2.DTM.Add(dtmSts2); // End STS Group cniLoop2.STSLoop.Add(stsCni2); // End CNI Group 2 result.CNILoop.Add(cniLoop2); // Begin CNI Group 3 var cniLoop3 = new Loop_CNI_IFTSTA(); // Third consignment number 5145E cniLoop3.CNI = new CNI(); cniLoop3.CNI.Consolidationitemnumber_01 = "3"; cniLoop3.CNI.DOCUMENTMESSAGEDETAILS_02 = new C503(); cniLoop3.CNI.DOCUMENTMESSAGEDETAILS_02.Documentmessagenumber_01 = "5145E"; // Repeating STS Groups cniLoop3.STSLoop = new List <Loop_STS_IFTSTA>(); // Begin STS Group var stsCni3 = new Loop_STS_IFTSTA(); // The consignment was customs refused and no recipient contact information stsCni3.STS = new STS(); stsCni3.STS.STATUSTYPE_01 = new C601(); stsCni3.STS.STATUSTYPE_01.Statustypecoded_01 = "1"; stsCni3.STS.STATUSEVENT_02 = new C555(); stsCni3.STS.STATUSEVENT_02.Statuseventcoded_01 = "17"; stsCni3.STS.STATUSREASON_03 = new C556(); stsCni3.STS.STATUSREASON_03.Statusreasoncoded_01 = "39"; // Repeating DTM stsCni3.DTM = new List <DTM>(); // The refusal took place 15th January 2002 var dtmSts3 = new DTM(); dtmSts3.DATETIMEPERIOD_01 = new C507(); dtmSts3.DATETIMEPERIOD_01.Datetimeperiodqualifier_01 = "334"; dtmSts3.DATETIMEPERIOD_01.Datetimeperiod_02 = "20020115"; dtmSts3.DATETIMEPERIOD_01.Datetimeperiodformatqualifier_03 = "102"; stsCni3.DTM.Add(dtmSts3); // Identify customs in Heathrow airport as the location of the status stsCni3.LOC = new LOC(); stsCni3.LOC.Placelocationqualifier_01 = "16E"; stsCni3.LOC.LOCATIONIDENTIFICATION_02 = new C517(); stsCni3.LOC.LOCATIONIDENTIFICATION_02.Placelocation_04 = "H.MCUSTOMS AND EXCISE LONDON HEATHROW AIRPORT"; // End STS Group cniLoop3.STSLoop.Add(stsCni3); // End CNI Group 3 result.CNILoop.Add(cniLoop3); // Begin CNI Group 4 var cniLoop4 = new Loop_CNI_IFTSTA(); // Fourth consignment number 7655S cniLoop4.CNI = new CNI(); cniLoop4.CNI.Consolidationitemnumber_01 = "4"; cniLoop4.CNI.DOCUMENTMESSAGEDETAILS_02 = new C503(); cniLoop4.CNI.DOCUMENTMESSAGEDETAILS_02.Documentmessagenumber_01 = "7655S"; // Repeating STS Groups cniLoop4.STSLoop = new List <Loop_STS_IFTSTA>(); // Begin STS Group 1 var stsCni4 = new Loop_STS_IFTSTA(); // The following goods item are lost stsCni4.STS = new STS(); stsCni4.STS.STATUSTYPE_01 = new C601(); stsCni4.STS.STATUSTYPE_01.Statustypecoded_01 = "1"; stsCni4.STS.STATUSEVENT_02 = new C555(); stsCni4.STS.STATUSEVENT_02.Statuseventcoded_01 = "49"; // Repeating DTM stsCni4.DTM = new List <DTM>(); // Date/time reported lost 28th January 2002 var dtmSts4 = new DTM(); dtmSts4.DATETIMEPERIOD_01 = new C507(); dtmSts4.DATETIMEPERIOD_01.Datetimeperiodqualifier_01 = "334"; dtmSts4.DATETIMEPERIOD_01.Datetimeperiod_02 = "20020148"; dtmSts4.DATETIMEPERIOD_01.Datetimeperiodformatqualifier_03 = "102"; stsCni4.DTM.Add(dtmSts4); // Repeating GID Groups stsCni4.GIDLoop = new List <Loop_GID_IFTSTA>(); // Begin GID STS Group var gidSts1 = new Loop_GID_IFTSTA(); // One carton box, first goods item gidSts1.GID = new GID(); gidSts1.GID.Goodsitemnumber_01 = "1"; gidSts1.GID.NUMBERANDTYPEOFPACKAGES_02 = new C213(); gidSts1.GID.NUMBERANDTYPEOFPACKAGES_02.Numberofpackages_01 = "1"; gidSts1.GID.NUMBERANDTYPEOFPACKAGES_02.Typeofpackagesidentification_02 = "CT"; // Repeating PCI GID Groups gidSts1.PCILoop = new List <Loop_PCI_IFTSTA>(); // Begin PCI GID Group var pciGid1 = new Loop_PCI_IFTSTA(); // EAN.UCC SSCC pciGid1.PCI = new PCI(); pciGid1.PCI.Markinginstructionscoded_01 = "33E"; // Repeating GIN pciGid1.GIN = new List <GIN>(); // 354107380000001068 var ginPci1 = new GIN(); ginPci1.Identitynumberqualifier_01 = "BJ"; ginPci1.IDENTITYNUMBERRANGE_02 = new C208(); ginPci1.IDENTITYNUMBERRANGE_02.Identitynumber_01 = "354107380000001068"; pciGid1.GIN.Add(ginPci1); // End PCI GID Group gidSts1.PCILoop.Add(pciGid1); // End GID STS Group stsCni4.GIDLoop.Add(gidSts1); // End STS Group 1 cniLoop4.STSLoop.Add(stsCni4); // Begin STS Group 2 var stsCni5 = new Loop_STS_IFTSTA(); // The following goods items have been delivered stsCni5.STS = new STS(); stsCni5.STS.STATUSTYPE_01 = new C601(); stsCni5.STS.STATUSTYPE_01.Statustypecoded_01 = "1"; stsCni5.STS.STATUSEVENT_02 = new C555(); stsCni5.STS.STATUSEVENT_02.Statuseventcoded_01 = "21"; // Repeating DTM stsCni5.DTM = new List <DTM>(); // Delivered 28th January 2002 var dtmSts5 = new DTM(); dtmSts5.DATETIMEPERIOD_01 = new C507(); dtmSts5.DATETIMEPERIOD_01.Datetimeperiodqualifier_01 = "334"; dtmSts5.DATETIMEPERIOD_01.Datetimeperiod_02 = "20020148"; dtmSts5.DATETIMEPERIOD_01.Datetimeperiodformatqualifier_03 = "102"; stsCni5.DTM.Add(dtmSts5); // Repeating GID Groups stsCni5.GIDLoop = new List <Loop_GID_IFTSTA>(); // Begin GID STS Group var gidSts2 = new Loop_GID_IFTSTA(); // One cardboard box, second goods item gidSts2.GID = new GID(); gidSts2.GID.Goodsitemnumber_01 = "2"; gidSts2.GID.NUMBERANDTYPEOFPACKAGES_02 = new C213(); gidSts2.GID.NUMBERANDTYPEOFPACKAGES_02.Numberofpackages_01 = "1"; gidSts2.GID.NUMBERANDTYPEOFPACKAGES_02.Typeofpackagesidentification_02 = "CT"; // Repeating PCI GID Groups gidSts2.PCILoop = new List <Loop_PCI_IFTSTA>(); // Begin PCI GID Group var pciGid2 = new Loop_PCI_IFTSTA(); // Box marked with EAN.UCC SSCC pciGid2.PCI = new PCI(); pciGid2.PCI.Markinginstructionscoded_01 = "33E"; // Repeating GIN pciGid2.GIN = new List <GIN>(); // EAN.UCC SSCC 354107380000001051 var ginPci2 = new GIN(); ginPci2.Identitynumberqualifier_01 = "BJ"; ginPci2.IDENTITYNUMBERRANGE_02 = new C208(); ginPci2.IDENTITYNUMBERRANGE_02.Identitynumber_01 = "354107380000001051"; pciGid2.GIN.Add(ginPci2); // End PCI GID Group gidSts2.PCILoop.Add(pciGid2); // End GID STS Group stsCni5.GIDLoop.Add(gidSts2); // End STS Group 2 cniLoop4.STSLoop.Add(stsCni5); // Begin STS Group 3 var stsCni6 = new Loop_STS_IFTSTA(); // Consignment delivered stsCni6.STS = new STS(); stsCni6.STS.STATUSTYPE_01 = new C601(); stsCni6.STS.STATUSTYPE_01.Statustypecoded_01 = "1"; stsCni6.STS.STATUSEVENT_02 = new C555(); stsCni6.STS.STATUSEVENT_02.Statuseventcoded_01 = "21"; // Repeating DTM stsCni6.DTM = new List <DTM>(); // Delivered 28th January 2002 var dtmSts6 = new DTM(); dtmSts6.DATETIMEPERIOD_01 = new C507(); dtmSts6.DATETIMEPERIOD_01.Datetimeperiodqualifier_01 = "334"; dtmSts6.DATETIMEPERIOD_01.Datetimeperiod_02 = "20020148"; dtmSts6.DATETIMEPERIOD_01.Datetimeperiodformatqualifier_03 = "102"; stsCni6.DTM.Add(dtmSts6); // Repeating GID Groups stsCni6.GIDLoop = new List <Loop_GID_IFTSTA>(); // Begin GID STS Group var gidSts3 = new Loop_GID_IFTSTA(); // One returnable pallet, third goods item gidSts3.GID = new GID(); gidSts3.GID.Goodsitemnumber_01 = "3"; gidSts3.GID.NUMBERANDTYPEOFPACKAGES_02 = new C213(); gidSts3.GID.NUMBERANDTYPEOFPACKAGES_02.Numberofpackages_01 = "1"; gidSts3.GID.NUMBERANDTYPEOFPACKAGES_02.Typeofpackagesidentification_02 = "09"; gidSts3.GID.NUMBERANDTYPEOFPACKAGES_02.Codelistresponsibleagencycoded_04 = "9"; // Repeating PCI GID Groups gidSts3.PCILoop = new List <Loop_PCI_IFTSTA>(); // Begin PCI GID Group var pciGid3 = new Loop_PCI_IFTSTA(); // Pallet marked with EAN.UCC SSCC pciGid3.PCI = new PCI(); pciGid3.PCI.Markinginstructionscoded_01 = "33E"; // Repeating GIN pciGid3.GIN = new List <GIN>(); // EAN.UCC SSCC 354123451234567892 var ginPci3 = new GIN(); ginPci3.Identitynumberqualifier_01 = "BJ"; ginPci3.IDENTITYNUMBERRANGE_02 = new C208(); ginPci3.IDENTITYNUMBERRANGE_02.Identitynumber_01 = "354123451234567892"; pciGid3.GIN.Add(ginPci3); // End PCI GID Group gidSts3.PCILoop.Add(pciGid3); // End GID STS Group stsCni6.GIDLoop.Add(gidSts3); // End STS Group 3 cniLoop4.STSLoop.Add(stsCni6); // End CNI Group 4 result.CNILoop.Add(cniLoop4); return(result); }
/// <summary> /// Build bayplan. /// Original from http://www.smdg.org/assets/assets/BAPLIE3.1.1-02.pdf? /// </summary> static TSBAPLIE BuildBayplan(string controlNumber) { var result = new TSBAPLIE(); // Message header (ref id = M-EX1/1) result.UNH = new UNH(); result.UNH.MessageReferenceNumber_01 = controlNumber.PadLeft(14, '0'); result.UNH.MessageIdentifier_02 = new S009(); result.UNH.MessageIdentifier_02.MessageType_01 = "BAPLIE"; result.UNH.MessageIdentifier_02.MessageVersionNumber_02 = "D"; result.UNH.MessageIdentifier_02.MessageReleaseNumber_03 = "13B"; result.UNH.MessageIdentifier_02.ControllingAgencyCoded_04 = "UN"; result.UNH.MessageIdentifier_02.AssociationAssignedCode_05 = "SMDG31"; // Partial BAPLIE(code 659), loaded containers only(LOADONLY), final stage(code 38) result.BGM = new BGM(); result.BGM.DOCUMENTMESSAGENAME_01 = new C002(); result.BGM.DOCUMENTMESSAGENAME_01.Documentnamecode_01 = "659"; result.BGM.DOCUMENTMESSAGENAME_01.Codelistresponsibleagencycode_03 = "LOADONLY"; result.BGM.DOCUMENTMESSAGEIDENTIFICATION_02 = new C106(); result.BGM.DOCUMENTMESSAGEIDENTIFICATION_02.Documentidentifier_01 = "M-EX1/1"; result.BGM.Responsetypecode_04 = "38"; // Repeating DTM result.DTM = new List <DTM>(); // Date/time (UTC) when message has been prepared var dtm1 = new DTM(); dtm1.DATETIMEPERIOD_01 = new C507(); dtm1.DATETIMEPERIOD_01.Dateortimeorperiodfunctioncodequalifier_01 = "137"; dtm1.DATETIMEPERIOD_01.Dateortimeorperiodtext_02 = "201304130959"; dtm1.DATETIMEPERIOD_01.Dateortimeorperiodformatcode_03 = "203"; result.DTM.Add(dtm1); // Repeating NAD Groups result.NADLoop = new List <Loop_NAD_BAPLIE>(); // Begin NAD Group var nadLoop1 = new Loop_NAD_BAPLIE(); // Function of sender (terminal) nadLoop1.NAD = new NAD(); nadLoop1.NAD.Partyfunctioncodequalifier_01 = "WZ"; nadLoop1.NAD.PARTYIDENTIFICATIONDETAILS_02 = new C082(); nadLoop1.NAD.PARTYIDENTIFICATIONDETAILS_02.Partyidentifier_01 = "HNE"; nadLoop1.NAD.PARTYIDENTIFICATIONDETAILS_02.Codelistidentificationcode_02 = "TERMINALS"; nadLoop1.NAD.PARTYIDENTIFICATIONDETAILS_02.Codelistresponsibleagencycode_03 = "306"; // End NAD Group result.NADLoop.Add(nadLoop1); // Repeating TDT Groups result.TDTLoop = new List <Loop_TDT_BAPLIE>(); // Begin TDT Group var tdtLoop1 = new Loop_TDT_BAPLIE(); // Discharge voyage number, vessel operator, vessel identification tdtLoop1.TDT = new TDT(); tdtLoop1.TDT.Transportstagecodequalifier_01 = "20"; tdtLoop1.TDT.Meansoftransportjourneyidentifier_02 = "123W45"; tdtLoop1.TDT.CARRIER_05 = new C040(); tdtLoop1.TDT.CARRIER_05.Carrieridentifier_01 = "HLC"; tdtLoop1.TDT.CARRIER_05.Codelistidentificationcode_02 = "LINES"; tdtLoop1.TDT.CARRIER_05.Codelistresponsibleagencycode_03 = "306"; tdtLoop1.TDT.EXCESSTRANSPORTATIONINFORMATION_07 = new C401(); tdtLoop1.TDT.EXCESSTRANSPORTATIONINFORMATION_07.Excesstransportationreasoncode_01 = "9354351"; tdtLoop1.TDT.EXCESSTRANSPORTATIONINFORMATION_07.Excesstransportationresponsibilitycode_02 = "11"; tdtLoop1.TDT.EXCESSTRANSPORTATIONINFORMATION_07.Customershipmentauthorisationidentifier_03 = "ANINA"; // Loading voyage number tdtLoop1.RFF = new RFF(); tdtLoop1.RFF.REFERENCE_01 = new C506(); tdtLoop1.RFF.REFERENCE_01.Referencecodequalifier_01 = "VON"; tdtLoop1.RFF.REFERENCE_01.Referenceidentifier_02 = "123E38"; // Repeating LOC TDT Groups tdtLoop1.LOCLoop = new List <Loop_LOC_BAPLIE_2>(); // Begin LOC TDT Group 1 var locTdtLoop1 = new Loop_LOC_BAPLIE_2(); // Place of departure locTdtLoop1.LOC = new LOC(); locTdtLoop1.LOC.Locationfunctioncodequalifier_01 = "5"; locTdtLoop1.LOC.LOCATIONIDENTIFICATION_02 = new C517(); locTdtLoop1.LOC.LOCATIONIDENTIFICATION_02.Locationidentifier_01 = "BEANR"; // Repeating DTM locTdtLoop1.DTM = new List <DTM>(); // Actual departure time var dtmLoc1 = new DTM(); dtmLoc1.DATETIMEPERIOD_01 = new C507(); dtmLoc1.DATETIMEPERIOD_01.Dateortimeorperiodfunctioncodequalifier_01 = "136"; dtmLoc1.DATETIMEPERIOD_01.Dateortimeorperiodtext_02 = "201304301048"; dtmLoc1.DATETIMEPERIOD_01.Dateortimeorperiodformatcode_03 = "203"; locTdtLoop1.DTM.Add(dtmLoc1); // End LOC TDT Group 1 tdtLoop1.LOCLoop.Add(locTdtLoop1); // Begin LOC TDT Group 2 var locTdtLoop2 = new Loop_LOC_BAPLIE_2(); // Next port of call locTdtLoop2.LOC = new LOC(); locTdtLoop2.LOC.Locationfunctioncodequalifier_01 = "61"; locTdtLoop2.LOC.LOCATIONIDENTIFICATION_02 = new C517(); locTdtLoop2.LOC.LOCATIONIDENTIFICATION_02.Locationidentifier_01 = "FRLEH"; // Repeating DTM locTdtLoop2.DTM = new List <DTM>(); // Estimated arrival time var dtmLoc2 = new DTM(); dtmLoc2.DATETIMEPERIOD_01 = new C507(); dtmLoc2.DATETIMEPERIOD_01.Dateortimeorperiodfunctioncodequalifier_01 = "178"; dtmLoc2.DATETIMEPERIOD_01.Dateortimeorperiodtext_02 = "201305012100"; dtmLoc2.DATETIMEPERIOD_01.Dateortimeorperiodformatcode_03 = "203"; locTdtLoop2.DTM.Add(dtmLoc2); // End LOC TDT Group 2 tdtLoop1.LOCLoop.Add(locTdtLoop2); // End TDT Group result.TDTLoop.Add(tdtLoop1); // End of message header result.UNS = new UNS(); result.UNS.Sectionidentification_01 = "D"; // Repeating LOC Groups result.LOCLoop = new List <Loop_LOC_BAPLIE>(); // Begin LOC Group 1 var locLoop1 = new Loop_LOC_BAPLIE(); // Stowage location (used) locLoop1.LOC = new LOC(); locLoop1.LOC.Locationfunctioncodequalifier_01 = "147"; locLoop1.LOC.LOCATIONIDENTIFICATION_02 = new C517(); locLoop1.LOC.LOCATIONIDENTIFICATION_02.Locationidentifier_01 = "0200688"; locLoop1.LOC.LOCATIONIDENTIFICATION_02.Codelistidentificationcode_02 = "9711"; locLoop1.LOC.LOCATIONIDENTIFICATION_02.Codelistresponsibleagencycode_03 = "5"; // Repeating EQD Groups locLoop1.EQDLoop = new List <Loop_EQD_BAPLIE>(); // Begin EQD Group var eqdLocLoop1 = new Loop_EQD_BAPLIE(); // 40' open top container eqdLocLoop1.EQD = new EQD(); eqdLocLoop1.EQD.Equipmenttypecodequalifier_01 = "CN"; eqdLocLoop1.EQD.EQUIPMENTIDENTIFICATION_02 = new C237(); eqdLocLoop1.EQD.EQUIPMENTIDENTIFICATION_02.Equipmentidentifier_01 = "SUDU1234569"; eqdLocLoop1.EQD.EQUIPMENTIDENTIFICATION_02.Codelistidentificationcode_02 = "6346"; eqdLocLoop1.EQD.EQUIPMENTIDENTIFICATION_02.Codelistresponsibleagencycode_03 = "5"; eqdLocLoop1.EQD.EQUIPMENTSIZEANDTYPE_03 = new C224(); eqdLocLoop1.EQD.EQUIPMENTSIZEANDTYPE_03.Equipmentsizeandtypedescriptioncode_01 = "42U0"; eqdLocLoop1.EQD.EQUIPMENTSIZEANDTYPE_03.Codelistidentificationcode_02 = "6346"; eqdLocLoop1.EQD.EQUIPMENTSIZEANDTYPE_03.Codelistresponsibleagencycode_03 = "5"; eqdLocLoop1.EQD.Fulloremptyindicatorcode_06 = "5"; // Repeating NAD eqdLocLoop1.NAD = new List <NAD>(); // Container operator (HSD) var nadEqd1 = new NAD(); nadEqd1.Partyfunctioncodequalifier_01 = "CF"; nadEqd1.PARTYIDENTIFICATIONDETAILS_02 = new C082(); nadEqd1.PARTYIDENTIFICATIONDETAILS_02.Partyidentifier_01 = "HSD"; nadEqd1.PARTYIDENTIFICATIONDETAILS_02.Codelistidentificationcode_02 = "LINES"; nadEqd1.PARTYIDENTIFICATIONDETAILS_02.Codelistresponsibleagencycode_03 = "306"; eqdLocLoop1.NAD.Add(nadEqd1); // Repeating MEA eqdLocLoop1.MEA = new List <MEA>(); // Gross weight (22.6 t) var meaEqd1 = new MEA(); meaEqd1.Measurementpurposecodequalifier_01 = "AAE"; meaEqd1.MEASUREMENTDETAILS_02 = new C502(); meaEqd1.MEASUREMENTDETAILS_02.Measuredattributecode_01 = "AET"; meaEqd1.VALUERANGE_03 = new C174(); meaEqd1.VALUERANGE_03.Measurementunitcode_01 = "KGM"; meaEqd1.VALUERANGE_03.Measure_02 = "22600"; eqdLocLoop1.MEA.Add(meaEqd1); // Repeating DIM eqdLocLoop1.DIM = new List <DIM>(); // Overheight (92 cm) var dimEqd1 = new DIM(); dimEqd1.Dimensiontypecodequalifier_01 = "13"; dimEqd1.DIMENSIONS_02 = new C211(); dimEqd1.DIMENSIONS_02.Measurementunitcode_01 = "CMT"; dimEqd1.DIMENSIONS_02.Heightmeasure_04 = "92"; eqdLocLoop1.DIM.Add(dimEqd1); // End EQD Group locLoop1.EQDLoop.Add(eqdLocLoop1); // Control total locLoop1.CNT = new CNT(); locLoop1.CNT.CONTROL_01 = new C270(); locLoop1.CNT.CONTROL_01.Controlqualifier_01 = "8"; locLoop1.CNT.CONTROL_01.Controlvalue_02 = "1"; // End LOC Group 1 result.LOCLoop.Add(locLoop1); // Begin LOC Group 2 var locLoop2 = new Loop_LOC_BAPLIE(); // Stowage location (blocked) locLoop2.LOC = new LOC(); locLoop2.LOC.Locationfunctioncodequalifier_01 = "147"; locLoop2.LOC.LOCATIONIDENTIFICATION_02 = new C517(); locLoop2.LOC.LOCATIONIDENTIFICATION_02.Locationidentifier_01 = "0200690"; locLoop2.LOC.LOCATIONIDENTIFICATION_02.Codelistidentificationcode_02 = "9711"; locLoop2.LOC.LOCATIONIDENTIFICATION_02.Codelistresponsibleagencycode_03 = "5"; // Repeating FTX locLoop2.FTX = new List <FTX>(); // Lost slot var ftxLoc1 = new FTX(); ftxLoc1.Textsubjectcodequalifier_01 = "AGW"; ftxLoc1.TEXTREFERENCE_03 = new C107(); ftxLoc1.TEXTREFERENCE_03.Freetextdescriptioncode_01 = "LOST"; ftxLoc1.TEXTREFERENCE_03.Codelistidentificationcode_02 = "STOWLOC"; ftxLoc1.TEXTREFERENCE_03.Codelistresponsibleagencycode_03 = "306"; locLoop2.FTX.Add(ftxLoc1); // Equipment causing lost slot locLoop2.RFF = new RFF(); locLoop2.RFF.REFERENCE_01 = new C506(); locLoop2.RFF.REFERENCE_01.Referencecodequalifier_01 = "EQ"; locLoop2.RFF.REFERENCE_01.Referenceidentifier_02 = "SUDU123459"; // Control total locLoop2.CNT = new CNT(); locLoop2.CNT.CONTROL_01 = new C270(); locLoop2.CNT.CONTROL_01.Controlqualifier_01 = "8"; locLoop2.CNT.CONTROL_01.Controlvalue_02 = "0"; // End LOC Group 2 result.LOCLoop.Add(locLoop2); return(result); }
private Interchange CovertToInterChange(WebOrderHeaderModel webOrderHeader, List <WebOrderDetailModel> webOrderDetail) { Interchange interchange = new Interchange(); interchange.RecipientId = webOrderHeader.SenderAddress; interchange.SenderId = webOrderHeader.ReceiverAddress; Quote quote = new Quote(); quote.MessageType = "ORDERS"; quote.ReleaseNumber = "01B"; quote.AssociationAssignedCode = "EAN010"; quote.DocumentNumber = webOrderHeader.OrderResponseNo; quote.ReleaseNumber = "01B"; quote.MessageFunction = webOrderHeader.DetailsStatus.ToString(); DTM responseDate = new DTM(); DTM deliveryDate = new DTM(); responseDate.ID = 137; responseDate.DateTime = webOrderHeader.ResponseDate; responseDate.Code = 102; deliveryDate.ID = 2; deliveryDate.DateTime = webOrderHeader.DeliveryDate; deliveryDate.Code = 102; quote.MessageDate = responseDate; quote.DeliveryDate = deliveryDate; quote.DocumentNumber = webOrderHeader.BuyerOrderNo; NAD buingAddress = new NAD(); NAD shippingAddress = new NAD(); NAD supplierAddress = new NAD(); buingAddress.PartyQualifier = "BY"; buingAddress.PartyId = webOrderHeader.BuyingAddress; shippingAddress.PartyQualifier = "ST"; shippingAddress.PartyId = webOrderHeader.ShippingAddress; supplierAddress.PartyQualifier = "SU"; supplierAddress.PartyId = webOrderHeader.SupplierAddress; quote.NAD = new List <NAD>(); quote.NAD.Add(buingAddress); quote.NAD.Add(shippingAddress); quote.NAD.Add(supplierAddress); List <LineItem> lineList = new List <LineItem>(); int index = 1; foreach (WebOrderDetailModel item in webOrderDetail) { LineItem lineItem = new LineItem(); lineItem.GTIN = item.GTINCode; lineItem.Code = item.ItemStatus.ToString(); lineItem.LineNumber = index; lineItem.itemTypeIDCode = "SRV"; Price priceItem = new Price(); priceItem.Code = "AAF"; priceItem.Amount = Convert.ToDecimal(item.ItemPrice); QTY quantityItem = new QTY(); quantityItem.Quantity = Convert.ToInt32(item.BackOrderQty); quantityItem.QuantityType = "113"; lineItem.Price = priceItem; lineItem.QTY = quantityItem; index++; lineList.Add(lineItem); } quote.Lines = lineList; interchange.QuoteMessage = quote; return(interchange); }