fixed errors and implemented sending for CREWA/D PASA/D through dbh
This commit is contained in:
parent
8249c8f01d
commit
805ef43551
@ -25,7 +25,7 @@ namespace bsmd.dbh
|
||||
try
|
||||
{
|
||||
Root root = new Root();
|
||||
root.Version = RootVersion.Item71;
|
||||
root.Version = RootVersion.Item72;
|
||||
root.SourceDocumentVersion = "7.1";
|
||||
root.Timestamp = DateTime.Now;
|
||||
string filenameComponent;
|
||||
@ -461,38 +461,41 @@ namespace bsmd.dbh
|
||||
|
||||
#endregion
|
||||
|
||||
#region CREW
|
||||
#region CREWA
|
||||
|
||||
case Message.NotificationClass.CREW:
|
||||
case Message.NotificationClass.CREW: // this is CREWA
|
||||
{
|
||||
|
||||
RootCREW rootCREW = new RootCREW();
|
||||
RootCREWA rootCREW = new RootCREWA();
|
||||
|
||||
rootCREW.CrewMember = new RootCREWCrewMember[message.Elements.Count];
|
||||
rootCREW.CrewMember = new RootCREWACrewMember[message.Elements.Count];
|
||||
for (int i = 0; i < message.Elements.Count; i++)
|
||||
{
|
||||
CREW crew = message.Elements[i] as CREW;
|
||||
rootCREW.CrewMember[i] = new RootCREWCrewMember();
|
||||
rootCREW.CrewMember[i] = new RootCREWACrewMember();
|
||||
if (crew.CrewMemberDateOfBirth.HasValue)
|
||||
rootCREW.CrewMember[i].CrewMemberDateOfBirth = crew.CrewMemberDateOfBirth.Value;
|
||||
rootCREW.CrewMember[i].CrewMemberDuty = crew.CrewMemberDuty;
|
||||
rootCREW.CrewMember[i].CrewMemberFirstName = crew.CrewMemberFirstName;
|
||||
rootCREW.CrewMember[i].CrewMemberGenderSpecified = crew.CrewMemberGender.HasValue;
|
||||
if (crew.CrewMemberGender.HasValue)
|
||||
rootCREW.CrewMember[i].CrewMemberGender = SetGender(crew.CrewMemberGender.Value);
|
||||
rootCREW.CrewMember[i].CrewMemberIdentityDocumentId = crew.CrewMemberIdentityDocumentId;
|
||||
rootCREW.CrewMember[i].DateOfBirth = crew.CrewMemberDateOfBirth.Value;
|
||||
rootCREW.CrewMember[i].DutyOnBoard = crew.CrewMemberDuty;
|
||||
rootCREW.CrewMember[i].FirstName = crew.CrewMemberFirstName;
|
||||
rootCREW.CrewMember[i].LastName = crew.CrewMemberLastName;
|
||||
rootCREW.CrewMember[i].Nationality = crew.CrewMemberNationality;
|
||||
rootCREW.CrewMember[i].PlaceOfBirth = crew.CrewMemberPlaceOfBirth;
|
||||
rootCREW.CrewMember[i].Gender = SetGender(crew.CrewMemberGender.Value);
|
||||
|
||||
if (crew.NotificationSchengen ?? false)
|
||||
{
|
||||
rootCREW.CrewMember[i].DetailsSchengen = new RootCREWACrewMemberDetailsSchengen();
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentId = crew.CrewMemberIdentityDocumentId;
|
||||
if (crew.CrewMemberIdentityDocumentType.HasValue)
|
||||
rootCREW.CrewMember[i].CrewMemberIdentityDocumentType = (IdDocType)crew.CrewMemberIdentityDocumentType.Value;
|
||||
rootCREW.CrewMember[i].CrewMemberLastName = crew.CrewMemberLastName;
|
||||
rootCREW.CrewMember[i].CrewMemberNationality = crew.CrewMemberNationality;
|
||||
rootCREW.CrewMember[i].CrewMemberPlaceOfBirth = crew.CrewMemberPlaceOfBirth;
|
||||
rootCREW.CrewMember[i].CrewMemberVisaNumber = crew.CrewMemberVisaNumber;
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentType = (IdDocType)crew.CrewMemberIdentityDocumentType.Value;
|
||||
rootCREW.CrewMember[i].DetailsSchengen.VisaNumber = crew.CrewMemberVisaNumber;
|
||||
if (crew.CrewMemberIdentityDocumentIssuingState.Trim().Length == 2)
|
||||
rootCREW.CrewMember[i].CrewMemberIdentityDocumentIssuingState = crew.CrewMemberIdentityDocumentIssuingState;
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentIssuingState = crew.CrewMemberIdentityDocumentIssuingState;
|
||||
if (crew.CrewMemberIdentityDocumentExpiryDate.HasValue)
|
||||
rootCREW.CrewMember[i].CrewMemberIdentityDocumentExpiryDate = crew.CrewMemberIdentityDocumentExpiryDate.Value;
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentExpiryDate = crew.CrewMemberIdentityDocumentExpiryDate.Value;
|
||||
}
|
||||
// rootCREW.ReportingParty = rp;
|
||||
}
|
||||
|
||||
root.Items = new object[1];
|
||||
root.Items[0] = rootCREW;
|
||||
|
||||
@ -501,41 +504,153 @@ namespace bsmd.dbh
|
||||
|
||||
#endregion
|
||||
|
||||
#region PAS
|
||||
case Message.NotificationClass.PAS:
|
||||
#region CREWD
|
||||
|
||||
case Message.NotificationClass.CREWD:
|
||||
{
|
||||
RootPAS rootPAS = new RootPAS();
|
||||
rootPAS.Passenger = new RootPASPassenger[message.Elements.Count];
|
||||
|
||||
RootCREWD rootCREW = new RootCREWD();
|
||||
|
||||
rootCREW.CrewMember = new RootCREWDCrewMember[message.Elements.Count];
|
||||
for (int i = 0; i < message.Elements.Count; i++)
|
||||
{
|
||||
CREW crew = message.Elements[i] as CREW;
|
||||
rootCREW.CrewMember[i] = new RootCREWDCrewMember();
|
||||
if (crew.CrewMemberDateOfBirth.HasValue)
|
||||
rootCREW.CrewMember[i].DateOfBirth = crew.CrewMemberDateOfBirth.Value;
|
||||
rootCREW.CrewMember[i].DutyOnBoard = crew.CrewMemberDuty;
|
||||
rootCREW.CrewMember[i].FirstName = crew.CrewMemberFirstName;
|
||||
rootCREW.CrewMember[i].LastName = crew.CrewMemberLastName;
|
||||
rootCREW.CrewMember[i].Nationality = crew.CrewMemberNationality;
|
||||
rootCREW.CrewMember[i].PlaceOfBirth = crew.CrewMemberPlaceOfBirth;
|
||||
rootCREW.CrewMember[i].Gender = SetGender(crew.CrewMemberGender.Value);
|
||||
|
||||
if (crew.NotificationSchengen ?? false)
|
||||
{
|
||||
rootCREW.CrewMember[i].DetailsSchengen = new RootCREWDCrewMemberDetailsSchengen();
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentId = crew.CrewMemberIdentityDocumentId;
|
||||
if (crew.CrewMemberIdentityDocumentType.HasValue)
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentType = (IdDocType)crew.CrewMemberIdentityDocumentType.Value;
|
||||
rootCREW.CrewMember[i].DetailsSchengen.VisaNumber = crew.CrewMemberVisaNumber;
|
||||
if (crew.CrewMemberIdentityDocumentIssuingState.Trim().Length == 2)
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentIssuingState = crew.CrewMemberIdentityDocumentIssuingState;
|
||||
if (crew.CrewMemberIdentityDocumentExpiryDate.HasValue)
|
||||
rootCREW.CrewMember[i].DetailsSchengen.IdentityDocumentExpiryDate = crew.CrewMemberIdentityDocumentExpiryDate.Value;
|
||||
}
|
||||
}
|
||||
|
||||
root.Items = new object[1];
|
||||
root.Items[0] = rootCREW;
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
#region PASA
|
||||
|
||||
case Message.NotificationClass.PAS: // this is PASA
|
||||
{
|
||||
RootPASA rootPAS = new RootPASA();
|
||||
rootPAS.Passenger = new RootPASAPassenger[message.Elements.Count];
|
||||
for (int i = 0; i < message.Elements.Count; i++)
|
||||
{
|
||||
PAS pas = message.Elements[i] as PAS;
|
||||
rootPAS.Passenger[i] = new RootPASPassenger();
|
||||
rootPAS.Passenger[i].PassengerLastName = pas.PassengerLastName;
|
||||
rootPAS.Passenger[i].PassengerFirstName = pas.PassengerFirstName;
|
||||
rootPAS.Passenger[i].PassengerPlaceOfBirth = pas.PassengerPlaceOfBirth;
|
||||
rootPAS.Passenger[i] = new RootPASAPassenger();
|
||||
rootPAS.Passenger[i].LastName = pas.PassengerLastName;
|
||||
rootPAS.Passenger[i].FirstName = pas.PassengerFirstName;
|
||||
rootPAS.Passenger[i].PlaceOfBirth = pas.PassengerPlaceOfBirth;
|
||||
if (pas.PassengerDateOfBirth.HasValue)
|
||||
rootPAS.Passenger[i].PassengerDateOfBirth = pas.PassengerDateOfBirth.Value;
|
||||
rootPAS.Passenger[i].PassengerGenderSpecified = pas.PassengerGender.HasValue;
|
||||
if (pas.PassengerGender.HasValue)
|
||||
rootPAS.Passenger[i].PassengerGender = SetGender(pas.PassengerGender.Value);
|
||||
rootPAS.Passenger[i].PassengerNationality = pas.PassengerNationality;
|
||||
rootPAS.Passenger[i].DateOfBirth = pas.PassengerDateOfBirth.Value;
|
||||
rootPAS.Passenger[i].Gender = SetGender(pas.PassengerGender.Value);
|
||||
rootPAS.Passenger[i].Nationality = pas.PassengerNationality;
|
||||
|
||||
if (pas.NotificationSchengen ?? false)
|
||||
{
|
||||
rootPAS.Passenger[i].DetailsSchengen = new RootPASAPassengerDetailsSchengen();
|
||||
if (pas.PassengerIdentityDocumentType.HasValue)
|
||||
rootPAS.Passenger[i].PassengerIdentityDocumentType = (IdDocType)pas.PassengerIdentityDocumentType.Value;
|
||||
rootPAS.Passenger[i].PassengerIdentityDocumentId = pas.PassengerIdentityDocumentId;
|
||||
rootPAS.Passenger[i].PassengerVisaNumber = pas.PassengerVisaNumber;
|
||||
rootPAS.Passenger[i].PassengerPortOfEmbarkation = pas.PassengerPortOfEmbarkation;
|
||||
rootPAS.Passenger[i].PassengerPortOfDisembarkation = pas.PassengerPortOfDisembarkation;
|
||||
rootPAS.Passenger[i].PassengerInTransit = pas.PassengerInTransit ?? false ? RootSECValidISSCOnBoard.Y : RootSECValidISSCOnBoard.N;
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentType = (IdDocType)pas.PassengerIdentityDocumentType.Value;
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentId = pas.PassengerIdentityDocumentId;
|
||||
if(!pas.PassengerVisaNumber.IsNullOrEmpty())
|
||||
rootPAS.Passenger[i].DetailsSchengen.VisaNumber = pas.PassengerVisaNumber;
|
||||
rootPAS.Passenger[i].DetailsSchengen.PortOfEmbarkation = pas.PassengerPortOfEmbarkation;
|
||||
rootPAS.Passenger[i].DetailsSchengen.PortOfDisembarkation = pas.PassengerPortOfDisembarkation;
|
||||
rootPAS.Passenger[i].DetailsSchengen.InTransit = pas.PassengerInTransit ?? false ? RootSECValidISSCOnBoard.Y : RootSECValidISSCOnBoard.N;
|
||||
if (pas.PassengerIdentityDocumentIssuingState.Trim().Length == 2)
|
||||
rootPAS.Passenger[i].PassengerIdentityDocumentIssuingState = pas.PassengerIdentityDocumentIssuingState;
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentIssuingState = pas.PassengerIdentityDocumentIssuingState;
|
||||
if (pas.PassengerIdentityDocumentExpiryDate.HasValue)
|
||||
rootPAS.Passenger[i].PassengerIdentityDocumentExpiryDate = pas.PassengerIdentityDocumentExpiryDate.Value;
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentExpiryDate = pas.PassengerIdentityDocumentExpiryDate.Value;
|
||||
}
|
||||
// rootPAS.ReportingParty = rp;
|
||||
|
||||
if(pas.NotificationPAX ?? false)
|
||||
{
|
||||
rootPAS.Passenger[i].DetailsPAX = new RootPASAPassengerDetailsPAX();
|
||||
if (!pas.EmergencyCare.IsNullOrEmpty())
|
||||
rootPAS.Passenger[i].DetailsPAX.EmergencyCare = pas.EmergencyCare;
|
||||
if (!pas.EmergencyContactNumber.IsNullOrEmpty())
|
||||
rootPAS.Passenger[i].DetailsPAX.EmergencyContactNumber = pas.EmergencyContactNumber;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
root.Items = new object[1];
|
||||
root.Items[0] = rootPAS;
|
||||
}
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
#region PASD
|
||||
|
||||
case Message.NotificationClass.PASD:
|
||||
{
|
||||
RootPASD rootPAS = new RootPASD();
|
||||
rootPAS.Passenger = new RootPASDPassenger[message.Elements.Count];
|
||||
for (int i = 0; i < message.Elements.Count; i++)
|
||||
{
|
||||
PAS pas = message.Elements[i] as PAS;
|
||||
rootPAS.Passenger[i] = new RootPASDPassenger();
|
||||
rootPAS.Passenger[i].LastName = pas.PassengerLastName;
|
||||
rootPAS.Passenger[i].FirstName = pas.PassengerFirstName;
|
||||
rootPAS.Passenger[i].PlaceOfBirth = pas.PassengerPlaceOfBirth;
|
||||
if (pas.PassengerDateOfBirth.HasValue)
|
||||
rootPAS.Passenger[i].DateOfBirth = pas.PassengerDateOfBirth.Value;
|
||||
rootPAS.Passenger[i].Gender = SetGender(pas.PassengerGender.Value);
|
||||
rootPAS.Passenger[i].Nationality = pas.PassengerNationality;
|
||||
|
||||
if (pas.NotificationSchengen ?? false)
|
||||
{
|
||||
rootPAS.Passenger[i].DetailsSchengen = new RootPASDPassengerDetailsSchengen();
|
||||
if (pas.PassengerIdentityDocumentType.HasValue)
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentType = (IdDocType)pas.PassengerIdentityDocumentType.Value;
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentId = pas.PassengerIdentityDocumentId;
|
||||
if (!pas.PassengerVisaNumber.IsNullOrEmpty())
|
||||
rootPAS.Passenger[i].DetailsSchengen.VisaNumber = pas.PassengerVisaNumber;
|
||||
rootPAS.Passenger[i].DetailsSchengen.PortOfEmbarkation = pas.PassengerPortOfEmbarkation;
|
||||
rootPAS.Passenger[i].DetailsSchengen.PortOfDisembarkation = pas.PassengerPortOfDisembarkation;
|
||||
rootPAS.Passenger[i].DetailsSchengen.InTransit = pas.PassengerInTransit ?? false ? RootSECValidISSCOnBoard.Y : RootSECValidISSCOnBoard.N;
|
||||
if (pas.PassengerIdentityDocumentIssuingState.Trim().Length == 2)
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentIssuingState = pas.PassengerIdentityDocumentIssuingState;
|
||||
if (pas.PassengerIdentityDocumentExpiryDate.HasValue)
|
||||
rootPAS.Passenger[i].DetailsSchengen.IdentityDocumentExpiryDate = pas.PassengerIdentityDocumentExpiryDate.Value;
|
||||
}
|
||||
|
||||
if (pas.NotificationPAX ?? false)
|
||||
{
|
||||
rootPAS.Passenger[i].DetailsPAX = new RootPASDPassengerDetailsPAX();
|
||||
if (!pas.EmergencyCare.IsNullOrEmpty())
|
||||
rootPAS.Passenger[i].DetailsPAX.EmergencyCare = pas.EmergencyCare;
|
||||
if (!pas.EmergencyContactNumber.IsNullOrEmpty())
|
||||
rootPAS.Passenger[i].DetailsPAX.EmergencyContactNumber = pas.EmergencyContactNumber;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
root.Items = new object[1];
|
||||
root.Items[0] = rootPAS;
|
||||
}
|
||||
break;
|
||||
|
||||
#endregion
|
||||
|
||||
#region BKRA
|
||||
|
||||
Loading…
Reference in New Issue
Block a user