public DataSet Booking(DataTable dtTicketInfo, DataSet dsTentativeInfo, string referenceNumber, out string api, out string status, out string statusReason) { try { DataSet dsBookingResult = null; string str = dtTicketInfo.Rows[0]["OtherInfo"].ToString(); string[] strArray = str.Split(';'); api = ""; status = ""; statusReason = ""; api = strArray[0].ToString(); #region KesineniBooking if (api == "Kes") { int sourceStationId = 0; int destinationStationId = 0; string journeyDate = ""; long serviceId = 0; int coachTypeId = 0; int noOfSeats = 0; string seatNumbersList = ""; string firstNameList = ""; string lastNameList = ""; string genderList = ""; string ageList = ""; string contactNumberList = ""; string boardingPointIdList = ""; string droppingPointId = ""; string ticketFare = ""; string emailId = ""; string address = ""; string photoIdType = ""; string photoIdNo = ""; string photoIdIssuingAuthority = ""; decimal totalBasicFare = 0; decimal serviceTaxPercentage = 0; string discountcode = ""; sourceStationId = Convert.ToInt32(strArray[1].ToString()); destinationStationId = Convert.ToInt32(strArray[2].ToString()); journeyDate = strArray[3].ToString(); serviceId = Convert.ToInt64(strArray[4].ToString()); coachTypeId = Convert.ToInt32(strArray[5].ToString()); noOfSeats = Convert.ToInt32(strArray[7].ToString()); seatNumbersList = strArray[8].ToString(); boardingPointIdList = strArray[9].ToString(); ticketFare = Convert.ToString(strArray[6].ToString()); droppingPointId = strArray[11].ToString(); emailId = dtTicketInfo.Rows[0]["EmailId"].ToString(); address = dtTicketInfo.Rows[0]["Address"].ToString(); photoIdType = "photoIdType"; photoIdNo = referenceNumber; photoIdIssuingAuthority = "photoIdIssuingAuthority"; totalBasicFare = Convert.ToDecimal(strArray[10].ToString()); serviceTaxPercentage = Convert.ToDecimal(0); discountcode = "0"; if (dtTicketInfo.Columns.Contains("FullNameList") && dtTicketInfo.Columns.Contains("PhoneNoList") && dtTicketInfo.Columns.Contains("AgeList") && dtTicketInfo.Columns.Contains("GenderList")) { if (dtTicketInfo.Rows[0]["FullNameList"].ToString() != "" && dtTicketInfo.Rows[0]["PhoneNoList"].ToString() != "" && dtTicketInfo.Rows[0]["AgeList"].ToString() != "" && dtTicketInfo.Rows[0]["GenderList"].ToString() != "") { firstNameList = dtTicketInfo.Rows[0]["FullNameList"].ToString(); lastNameList = dtTicketInfo.Rows[0]["FullNameList"].ToString(); genderList = dtTicketInfo.Rows[0]["GenderList"].ToString(); ageList = dtTicketInfo.Rows[0]["AgeList"].ToString(); contactNumberList = dtTicketInfo.Rows[0]["PhoneNoList"].ToString(); } else { firstNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); genderList = dtTicketInfo.Rows[0]["Title"].ToString(); ageList = dtTicketInfo.Rows[0]["Age"].ToString(); contactNumberList = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { firstNameList = firstNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = lastNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); contactNumberList = contactNumberList + "," + dtTicketInfo.Rows[0]["PhoneNo"].ToString(); ageList = ageList + "," + dtTicketInfo.Rows[0]["Age"].ToString(); genderList = genderList + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } } } else { firstNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); genderList = dtTicketInfo.Rows[0]["Title"].ToString(); ageList = dtTicketInfo.Rows[0]["Age"].ToString(); contactNumberList = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { firstNameList = firstNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = lastNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); contactNumberList = contactNumberList + "," + dtTicketInfo.Rows[0]["PhoneNo"].ToString(); ageList = ageList + "," + dtTicketInfo.Rows[0]["Age"].ToString(); genderList = genderList + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } } if (dtTicketInfo.Columns.Contains("IdType") && dtTicketInfo.Columns.Contains("IdNo") && dtTicketInfo.Columns.Contains("IdIssuedBy")) { if (dtTicketInfo.Rows[0]["IdType"].ToString() != "" && dtTicketInfo.Rows[0]["IdNo"].ToString() != "") { photoIdType = dtTicketInfo.Rows[0]["IdType"].ToString(); photoIdNo = dtTicketInfo.Rows[0]["IdNo"].ToString(); photoIdIssuingAuthority = dtTicketInfo.Rows[0]["IdIssuedBy"].ToString(); } } DataSet ds = dsTentativeInfo; if (ds != null) { if (ds.Tables[0].Rows.Count > 0 && ds.Tables[0].Columns.Count > 1) { int serviceTransId = 0; long blockedTicketId = 0; serviceTransId = Convert.ToInt32(ds.Tables[0].Rows[0]["ServiceTransDateID"].ToString()); blockedTicketId = Convert.ToInt64(ds.Tables[0].Rows[0]["BlockedTicketID"].ToString()); dsBookingResult = objKesineniAPILayer.BookTicketsConfirmationOnwardJourney(sourceStationId, destinationStationId, journeyDate, serviceId, serviceTransId, noOfSeats, blockedTicketId, GenerateManabusRefNo(), GenerateManabusRefNo()); status = "Success"; statusReason = ""; } } else { status = "Fail"; statusReason = "Need to write."; } } #endregion #region BitlaBooking if (api == "Bit") { objBitlaAPILayer.ReservationId = strArray[1].ToString(); objBitlaAPILayer.OriginId = strArray[2].ToString(); objBitlaAPILayer.DestinationId = strArray[3].ToString(); objBitlaAPILayer.BoardingAt = strArray[5].ToString(); objBitlaAPILayer.NoOfSeats = strArray[4].ToString(); objBitlaAPILayer.RefNumber = referenceNumber; int noOfSeats = Convert.ToInt32(strArray[4].ToString()); string selectedSeats = strArray[6].ToString(); string[] selectedSeatsArray = selectedSeats.Split(','); book_ticket bookTicket = new book_ticket(); object[] obj = new object[2]; book_ticketSeat_detailsSeat_detail[] sD = new book_ticketSeat_detailsSeat_detail[noOfSeats]; if (dtTicketInfo.Columns.Contains("FullNameList") && dtTicketInfo.Columns.Contains("PhoneNoList") && dtTicketInfo.Columns.Contains("AgeList") && dtTicketInfo.Columns.Contains("GenderList") && dtTicketInfo.Columns.Contains("IdType") && dtTicketInfo.Columns.Contains("IdNo") && dtTicketInfo.Columns.Contains("IdIssuedBy")) { if (dtTicketInfo.Rows[0]["FullNameList"].ToString() != "" && dtTicketInfo.Rows[0]["PhoneNoList"].ToString() != "" && dtTicketInfo.Rows[0]["AgeList"].ToString() != "" && dtTicketInfo.Rows[0]["GenderList"].ToString() != "" && dtTicketInfo.Rows[0]["IdType"].ToString() != "" && dtTicketInfo.Rows[0]["IdNo"].ToString() != "" && dtTicketInfo.Rows[0]["IdIssuedBy"].ToString() != "") { string[] fullNameListArray = dtTicketInfo.Rows[0]["FullNameList"].ToString().Split(','); string[] phoneNoListArray = dtTicketInfo.Rows[0]["PhoneNoList"].ToString().Split(','); string[] ageListArray = dtTicketInfo.Rows[0]["AgeList"].ToString().Split(','); string[] genderListArray = dtTicketInfo.Rows[0]["GenderList"].ToString().Split(','); string address = dtTicketInfo.Rows[0]["Address"].ToString(); string idType = dtTicketInfo.Rows[0]["IdType"].ToString(); string idNo = dtTicketInfo.Rows[0]["IdNo"].ToString(); string idIssuedBy = dtTicketInfo.Rows[0]["IdIssuedBy"].ToString(); for (int i = 0; i < noOfSeats; i++) { book_ticketSeat_detailsSeat_detail sdd = new book_ticketSeat_detailsSeat_detail(); sdd.seat_number = selectedSeatsArray[i].ToString(); sdd.title = genderListArray[i].ToString(); sdd.name = fullNameListArray[i].ToString(); sdd.age = ageListArray[i].ToString(); sdd.sex = genderListArray[i].ToString(); if (i == 0) { sdd.is_primary = "true"; } else { sdd.is_primary = "false"; } sdd.address = address; string id = "";//1 -> Pan Card, 2 -> D/L, 3 -> Passport, 4 -> Voter, 5 -> Aadhar Card if (idType.ToString().ToLower().Contains("pan")) { id = "1"; } else if (idType.ToString().ToLower().Contains("dri")) { id = "2"; } else if (idType.ToString().ToLower().Contains("pass")) { id = "3"; } else if (idType.ToString().ToLower().Contains("voter")) { id = "4"; } else if (idType.ToString().ToLower().Contains("adhar")) { id = "5"; } else if (idType.ToString().ToLower().Contains("ration")) { id = "4"; } sdd.id_card_type = id; sdd.id_card_number = idNo; sdd.id_card_issued_by = idIssuedBy; sD[i] = sdd; } } else { for (int i = 0; i < noOfSeats; i++) { book_ticketSeat_detailsSeat_detail sdd = new book_ticketSeat_detailsSeat_detail(); sdd.seat_number = selectedSeatsArray[i].ToString(); sdd.title = "Mr"; sdd.name = dtTicketInfo.Rows[0]["FullName"].ToString(); sdd.age = dtTicketInfo.Rows[0]["Age"].ToString(); sdd.sex = dtTicketInfo.Rows[0]["Title"].ToString(); if (i == 0) { sdd.is_primary = "true"; } else { sdd.is_primary = "false"; } sdd.address = ""; sdd.id_card_type = "";//1 -> Pan Card, 2 -> D/L, 3 -> Passport, 4 -> Voter, 5 -> Aadhar Card sdd.id_card_number = ""; sdd.id_card_issued_by = ""; sD[i] = sdd; } } } else { for (int i = 0; i < noOfSeats; i++) { book_ticketSeat_detailsSeat_detail sdd = new book_ticketSeat_detailsSeat_detail(); sdd.seat_number = selectedSeatsArray[i].ToString(); sdd.title = "Mr"; sdd.name = dtTicketInfo.Rows[0]["FullName"].ToString(); sdd.age = dtTicketInfo.Rows[0]["Age"].ToString(); sdd.sex = dtTicketInfo.Rows[0]["Title"].ToString(); if (i == 0) { sdd.is_primary = "true"; } else { sdd.is_primary = "false"; } sdd.address = ""; sdd.id_card_type = "";//1 -> Pan Card, 2 -> D/L, 3 -> Passport, 4 -> Voter, 5 -> Aadhar Card sdd.id_card_number = ""; sdd.id_card_issued_by = ""; sD[i] = sdd; } } book_ticketSeat_details ss = new book_ticketSeat_details(); ss.seat_detail = sD; book_ticketContact_detail cc = new book_ticketContact_detail(); cc.mobile_number = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); cc.email = dtTicketInfo.Rows[0]["EmailId"].ToString(); cc.emergency_name = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); obj[0] = ss; obj[1] = cc; bookTicket.Items = obj; objBitlaAPILayer.TicketDetails = bookTicket; DataSet dsBookTicket = dsTentativeInfo; DataSet dsBookTicket2 = objBitlaAPILayer.BookTicket(); if (dsBookTicket2 != null) { if (dsBookTicket2.Tables[0].Rows.Count > 0) { status = "Success"; statusReason = ""; dsBookingResult = dsBookTicket2; } else { status = "Fail"; statusReason = "Need to write."; } } else { status = "Fail"; statusReason = "Need to write."; } } #endregion #region AbhiBusBooking if (api == "Abh") { string jDate = ""; string sId = ""; string dId = ""; string serviceId = ""; string selectedSeats = ""; int noOfSeats = 0; string bId = ""; string genderType = ""; string psgrName = ""; jDate = strArray[1].ToString(); sId = strArray[2].ToString(); dId = strArray[3].ToString(); serviceId = strArray[4].ToString(); selectedSeats = strArray[5].ToString(); bId = strArray[6].ToString(); noOfSeats = Convert.ToInt32(strArray[7].ToString()); genderType = dtTicketInfo.Rows[0]["Title"].ToString(); psgrName = dtTicketInfo.Rows[0]["FullName"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { psgrName = psgrName + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); genderType = genderType + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } DataSet ds11 = dsTentativeInfo; DataTable dt1 = ds11.Tables[0]; if (dt1 != null && dt1.Columns.Count > 0 && dt1.Rows.Count > 0) { string sel_seats = dt1.Rows[0]["sel_seats"].ToString(); string sel_seat_row_cols = dt1.Rows[0]["sel_seat_row_cols"].ToString(); string total_fare = dt1.Rows[0]["total_fare"].ToString(); if (sel_seats != "" && sel_seat_row_cols != "" && total_fare != "") { DataTable dt2 = objAbhiBusAPILayer.SeatBooking(jDate, sId, dId, serviceId, selectedSeats, genderType, psgrName, bId, dtTicketInfo.Rows[0]["Address"].ToString(), dtTicketInfo.Rows[0]["FullName"].ToString(), dtTicketInfo.Rows[0]["PhoneNo"].ToString(), dtTicketInfo.Rows[0]["EmailId"].ToString(), referenceNumber); status = "Success"; statusReason = "Need to write"; dsBookingResult = new DataSet(); dsBookingResult.Tables.Add(dt2); } } else { status = "Fail"; statusReason = "Need to write"; } } #endregion #region KalladaBooking if (api == "Kal") { string jDate = ""; string sId = ""; string dId = ""; string serviceId = ""; string selectedSeats = ""; int noOfSeats = 0; string bId = ""; string genderType = ""; string psgrName = ""; jDate = strArray[1].ToString(); sId = strArray[2].ToString(); dId = strArray[3].ToString(); serviceId = strArray[4].ToString(); selectedSeats = strArray[5].ToString(); bId = strArray[6].ToString(); noOfSeats = Convert.ToInt32(strArray[7].ToString()); genderType = dtTicketInfo.Rows[0]["Title"].ToString(); psgrName = dtTicketInfo.Rows[0]["FullName"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { psgrName = psgrName + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); genderType = genderType + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } DataSet ds11 = dsTentativeInfo; DataTable dt1 = ds11.Tables[0]; if (dt1 != null && dt1.Columns.Count > 0 && dt1.Rows.Count > 0) { string sel_seats = dt1.Rows[0]["sel_seats"].ToString(); string sel_seat_row_cols = dt1.Rows[0]["sel_seat_row_cols"].ToString(); string total_fare = dt1.Rows[0]["total_fare"].ToString(); if (sel_seats != "" && sel_seat_row_cols != "" && total_fare != "") { DataTable dt2 = objKalladaAPILayer.SeatBooking(jDate, sId, dId, serviceId, selectedSeats, genderType, psgrName, bId, dtTicketInfo.Rows[0]["Address"].ToString(), dtTicketInfo.Rows[0]["FullName"].ToString(), dtTicketInfo.Rows[0]["PhoneNo"].ToString(), dtTicketInfo.Rows[0]["EmailId"].ToString(), referenceNumber); status = "Success"; statusReason = "Need to write"; dsBookingResult = new DataSet(); dsBookingResult.Tables.Add(dt2); } } else { status = "Fail"; statusReason = "Need to write"; } } #endregion return dsBookingResult; } catch (Exception) { throw; } }
public DataSet TentativeBooking(DataTable dtTicketInfo, string referenceNumber, out string api, out string status, out string statusReason) { try { DataSet ds = null; string str = dtTicketInfo.Rows[0]["OtherInfo"].ToString(); string[] strArray = str.Split(';'); api = ""; status = ""; statusReason = ""; api = strArray[0].ToString(); #region KesneniTentativeBooking if (api == "Kes") { int sourceStationId = 0; int destinationStationId = 0; string journeyDate = ""; long serviceId = 0; int coachTypeId = 0; int noOfSeats = 0; string seatNumbersList = ""; string firstNameList = ""; string lastNameList = ""; string genderList = ""; string ageList = ""; string contactNumberList = ""; string boardingPointIdList = ""; string droppingPointId = ""; string ticketFare = ""; string emailId = ""; string address = ""; string photoIdType = ""; string photoIdNo = ""; string photoIdIssuingAuthority = ""; decimal totalBasicFare = 0; decimal serviceTaxPercentage = 0; string discountcode = ""; string travels = ""; string sourcename = ""; string destinationname = ""; string bustype = ""; string boardingPoint = ""; int age = 0; sourceStationId = Convert.ToInt32(strArray[1].ToString()); destinationStationId = Convert.ToInt32(strArray[2].ToString()); journeyDate = strArray[3].ToString(); serviceId = Convert.ToInt64(strArray[4].ToString()); coachTypeId = Convert.ToInt32(strArray[5].ToString()); noOfSeats = Convert.ToInt32(strArray[7].ToString()); seatNumbersList = strArray[8].ToString(); boardingPointIdList = strArray[9].ToString(); ticketFare = Convert.ToString(strArray[6].ToString()); droppingPointId = strArray[11].ToString(); emailId = dtTicketInfo.Rows[0]["EmailId"].ToString(); address = dtTicketInfo.Rows[0]["Address"].ToString(); travels = dtTicketInfo.Rows[0]["Travels"].ToString(); bustype = dtTicketInfo.Rows[0]["BusType"].ToString(); //sourcename = ViewState["From"].ToString(); //destinationname = ViewState["To"].ToString(); boardingPoint = dtTicketInfo.Rows[0]["BoardingPoint"].ToString(); age = Convert.ToInt32(dtTicketInfo.Rows[0]["Age"].ToString()); string firstname = dtTicketInfo.Rows[0]["FullName"].ToString(); string contactno = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); photoIdType = "photoIdType"; photoIdNo = referenceNumber; photoIdIssuingAuthority = "photoIdIssuingAuthority"; totalBasicFare = Convert.ToDecimal(strArray[10].ToString()); serviceTaxPercentage = Convert.ToDecimal(0); discountcode = "0"; if (dtTicketInfo.Columns.Contains("FullNameList") && dtTicketInfo.Columns.Contains("PhoneNoList") && dtTicketInfo.Columns.Contains("AgeList") && dtTicketInfo.Columns.Contains("GenderList")) { if (dtTicketInfo.Rows[0]["FullNameList"].ToString() != "" && dtTicketInfo.Rows[0]["PhoneNoList"].ToString() != "" && dtTicketInfo.Rows[0]["AgeList"].ToString() != "" && dtTicketInfo.Rows[0]["GenderList"].ToString() != "") { firstNameList = dtTicketInfo.Rows[0]["FullNameList"].ToString(); lastNameList = dtTicketInfo.Rows[0]["FullNameList"].ToString(); genderList = dtTicketInfo.Rows[0]["GenderList"].ToString(); ageList = dtTicketInfo.Rows[0]["AgeList"].ToString(); contactNumberList = dtTicketInfo.Rows[0]["PhoneNoList"].ToString(); } else { firstNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); genderList = dtTicketInfo.Rows[0]["Title"].ToString(); ageList = dtTicketInfo.Rows[0]["Age"].ToString(); contactNumberList = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { firstNameList = firstNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = lastNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); contactNumberList = contactNumberList + "," + dtTicketInfo.Rows[0]["PhoneNo"].ToString(); ageList = ageList + "," + dtTicketInfo.Rows[0]["Age"].ToString(); genderList = genderList + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } } } else { firstNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = dtTicketInfo.Rows[0]["FullName"].ToString(); genderList = dtTicketInfo.Rows[0]["Title"].ToString(); ageList = dtTicketInfo.Rows[0]["Age"].ToString(); contactNumberList = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { firstNameList = firstNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); lastNameList = lastNameList + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); contactNumberList = contactNumberList + "," + dtTicketInfo.Rows[0]["PhoneNo"].ToString(); ageList = ageList + "," + dtTicketInfo.Rows[0]["Age"].ToString(); genderList = genderList + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } } if (dtTicketInfo.Columns.Contains("IdType") && dtTicketInfo.Columns.Contains("IdNo") && dtTicketInfo.Columns.Contains("IdIssuedBy")) { if (dtTicketInfo.Rows[0]["IdType"].ToString() != "" && dtTicketInfo.Rows[0]["IdNo"].ToString() != "" && dtTicketInfo.Rows[0]["IdIssuedBy"].ToString() != "") { photoIdType = dtTicketInfo.Rows[0]["IdType"].ToString(); photoIdNo = dtTicketInfo.Rows[0]["IdNo"].ToString(); photoIdIssuingAuthority = dtTicketInfo.Rows[0]["IdIssuedBy"].ToString(); } } ds = objKesineniAPILayer.BookTicketsOnwardJourney(sourceStationId, destinationStationId, journeyDate, serviceId, coachTypeId, noOfSeats, seatNumbersList, firstNameList, lastNameList, genderList, ageList, contactNumberList, boardingPointIdList, droppingPointId, ticketFare, emailId, address, photoIdType, photoIdNo, photoIdIssuingAuthority, totalBasicFare, serviceTaxPercentage, discountcode); if (ds != null && ds.Tables[0].Rows.Count > 0 && ds.Tables[0].Columns.Count > 1) { status = "Success"; statusReason = ""; } if (ds.Tables[0].Columns.Count == 1) { status = "Fail"; statusReason = ds.Tables[0].Rows[0]["Message"].ToString(); } } #endregion #region BitlaTentativeBooking if (api == "Bit") { objBitlaAPILayer.ReservationId = strArray[1].ToString(); objBitlaAPILayer.OriginId = strArray[2].ToString(); objBitlaAPILayer.DestinationId = strArray[3].ToString(); objBitlaAPILayer.BoardingAt = strArray[5].ToString(); objBitlaAPILayer.NoOfSeats = strArray[4].ToString(); objBitlaAPILayer.RefNumber = referenceNumber; int noOfSeats = Convert.ToInt32(strArray[4].ToString()); string selectedSeats = strArray[6].ToString(); string[] selectedSeatsArray = selectedSeats.Split(','); book_ticket bookTicket = new book_ticket(); object[] obj = new object[2]; book_ticketSeat_detailsSeat_detail[] sD = new book_ticketSeat_detailsSeat_detail[noOfSeats]; if (dtTicketInfo.Columns.Contains("FullNameList") && dtTicketInfo.Columns.Contains("PhoneNoList") && dtTicketInfo.Columns.Contains("AgeList") && dtTicketInfo.Columns.Contains("GenderList") && dtTicketInfo.Columns.Contains("IdType") && dtTicketInfo.Columns.Contains("IdNo") && dtTicketInfo.Columns.Contains("IdIssuedBy")) { if (dtTicketInfo.Rows[0]["FullNameList"].ToString() != "" && dtTicketInfo.Rows[0]["PhoneNoList"].ToString() != "" && dtTicketInfo.Rows[0]["AgeList"].ToString() != "" && dtTicketInfo.Rows[0]["GenderList"].ToString() != "" && dtTicketInfo.Rows[0]["IdType"].ToString() != "" && dtTicketInfo.Rows[0]["IdNo"].ToString() != "" && dtTicketInfo.Rows[0]["IdIssuedBy"].ToString() != "") { string[] fullNameListArray = dtTicketInfo.Rows[0]["FullNameList"].ToString().Split(','); string[] phoneNoListArray = dtTicketInfo.Rows[0]["PhoneNoList"].ToString().Split(','); string[] ageListArray = dtTicketInfo.Rows[0]["AgeList"].ToString().Split(','); string[] genderListArray = dtTicketInfo.Rows[0]["GenderList"].ToString().Split(','); string address = dtTicketInfo.Rows[0]["Address"].ToString(); string idType = dtTicketInfo.Rows[0]["IdType"].ToString(); string idNo = dtTicketInfo.Rows[0]["IdNo"].ToString(); string idIssuedBy = dtTicketInfo.Rows[0]["IdIssuedBy"].ToString(); for (int i = 0; i < noOfSeats; i++) { book_ticketSeat_detailsSeat_detail sdd = new book_ticketSeat_detailsSeat_detail(); sdd.seat_number = selectedSeatsArray[i].ToString(); sdd.title = genderListArray[i].ToString(); sdd.name = fullNameListArray[i].ToString(); sdd.age = ageListArray[i].ToString(); sdd.sex = genderListArray[i].ToString(); if (i == 0) { sdd.is_primary = "true"; } else { sdd.is_primary = "false"; } sdd.address = address; string id = "";//1 -> Pan Card, 2 -> D/L, 3 -> Passport, 4 -> Voter, 5 -> Aadhar Card if (idType.ToString().ToLower().Contains("pan")) { id = "1"; } else if (idType.ToString().ToLower().Contains("dri")) { id = "2"; } else if (idType.ToString().ToLower().Contains("pass")) { id = "3"; } else if (idType.ToString().ToLower().Contains("voter")) { id = "4"; } else if (idType.ToString().ToLower().Contains("adhar")) { id = "5"; } else if (idType.ToString().ToLower().Contains("ration")) { id = "4"; } sdd.id_card_type = id; sdd.id_card_number = idNo; sdd.id_card_issued_by = idIssuedBy; sD[i] = sdd; } } else { for (int i = 0; i < noOfSeats; i++) { book_ticketSeat_detailsSeat_detail sdd = new book_ticketSeat_detailsSeat_detail(); sdd.seat_number = selectedSeatsArray[i].ToString(); sdd.title = "Mr"; sdd.name = dtTicketInfo.Rows[0]["FullName"].ToString(); sdd.age = dtTicketInfo.Rows[0]["Age"].ToString(); sdd.sex = dtTicketInfo.Rows[0]["Title"].ToString(); if (i == 0) { sdd.is_primary = "true"; } else { sdd.is_primary = "false"; } sdd.address = ""; sdd.id_card_type = "";//1 -> Pan Card, 2 -> D/L, 3 -> Passport, 4 -> Voter, 5 -> Aadhar Card sdd.id_card_number = ""; sdd.id_card_issued_by = ""; sD[i] = sdd; } } } else { for (int i = 0; i < noOfSeats; i++) { book_ticketSeat_detailsSeat_detail sdd = new book_ticketSeat_detailsSeat_detail(); sdd.seat_number = selectedSeatsArray[i].ToString(); sdd.title = "Mr"; sdd.name = dtTicketInfo.Rows[0]["FullName"].ToString(); sdd.age = dtTicketInfo.Rows[0]["Age"].ToString(); sdd.sex = dtTicketInfo.Rows[0]["Title"].ToString(); if (i == 0) { sdd.is_primary = "true"; } else { sdd.is_primary = "false"; } sdd.address = ""; sdd.id_card_type = "";//1 -> Pan Card, 2 -> D/L, 3 -> Passport, 4 -> Voter, 5 -> Aadhar Card sdd.id_card_number = ""; sdd.id_card_issued_by = ""; sD[i] = sdd; } } book_ticketSeat_details ss = new book_ticketSeat_details(); ss.seat_detail = sD; book_ticketContact_detail cc = new book_ticketContact_detail(); cc.mobile_number = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); cc.email = dtTicketInfo.Rows[0]["EmailId"].ToString(); cc.emergency_name = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); obj[0] = ss; obj[1] = cc; bookTicket.Items = obj; objBitlaAPILayer.TicketDetails = bookTicket; ds = objBitlaAPILayer.ValidateBookTicket(); string strValidateBookTicket = ""; if (ds != null) { if (ds.Tables[0].Rows.Count > 0 && ds.Tables[0].Columns.Count == 2) { strValidateBookTicket = ds.Tables[0].Rows[0]["message"].ToString(); } } if (strValidateBookTicket == "Success! You can book this ticket.") { status = "Success"; statusReason = ""; } else { status = "Fail"; statusReason = ds.Tables[0].Rows[0]["message"].ToString(); } } #endregion #region AbhiBusTentativeBooking if (api == "Abh") { string jDate = ""; string sId = ""; string dId = ""; string serviceId = ""; string selectedSeats = ""; int noOfSeats = 0; string bId = ""; string genderType = ""; string psgrName = ""; jDate = strArray[1].ToString(); sId = strArray[2].ToString(); dId = strArray[3].ToString(); serviceId = strArray[4].ToString(); selectedSeats = strArray[5].ToString(); bId = strArray[6].ToString(); noOfSeats = Convert.ToInt32(strArray[7].ToString()); genderType = dtTicketInfo.Rows[0]["Title"].ToString(); psgrName = dtTicketInfo.Rows[0]["FullName"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { psgrName = psgrName + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); genderType = genderType + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } DataTable dt1 = objAbhiBusAPILayer.SeatBlocking(jDate, sId, dId, serviceId, selectedSeats); ds = new DataSet(); ds.Tables.Add(dt1); if (dt1 != null && dt1.Columns.Count > 0 && dt1.Rows.Count > 0) { string sel_seats = dt1.Rows[0]["sel_seats"].ToString(); string sel_seat_row_cols = dt1.Rows[0]["sel_seat_row_cols"].ToString(); string total_fare = dt1.Rows[0]["total_fare"].ToString(); if (sel_seats != "" && total_fare != "") { status = "Success"; statusReason = ""; } else { status = "Fail"; statusReason = "Your given seat numbers are already booked or not available in seat layout."; } } else { status = "Fail"; statusReason = "Your given seat numbers are already booked or not available in seat layout."; } } #endregion #region KalladaTentativeBooking if (api == "Kal") { string jDate = ""; string sId = ""; string dId = ""; string serviceId = ""; string selectedSeats = ""; int noOfSeats = 0; string bId = ""; string genderType = ""; string psgrName = ""; jDate = strArray[1].ToString(); sId = strArray[2].ToString(); dId = strArray[3].ToString(); serviceId = strArray[4].ToString(); selectedSeats = strArray[5].ToString(); bId = strArray[6].ToString(); noOfSeats = Convert.ToInt32(strArray[7].ToString()); genderType = dtTicketInfo.Rows[0]["Title"].ToString(); psgrName = dtTicketInfo.Rows[0]["FullName"].ToString(); if (noOfSeats > 1) { for (int i = 0; i < noOfSeats - 1; i++) { psgrName = psgrName + "," + dtTicketInfo.Rows[0]["FullName"].ToString(); genderType = genderType + "," + dtTicketInfo.Rows[0]["Title"].ToString(); } } DataTable dt1 = objKalladaAPILayer.SeatBlocking(jDate, sId, dId, serviceId, selectedSeats); ds = new DataSet(); ds.Tables.Add(dt1); if (dt1 != null && dt1.Columns.Count > 0 && dt1.Rows.Count > 0) { string sel_seats = dt1.Rows[0]["sel_seats"].ToString(); string sel_seat_row_cols = dt1.Rows[0]["sel_seat_row_cols"].ToString(); string total_fare = dt1.Rows[0]["total_fare"].ToString(); if (sel_seats != "" && total_fare != "") { status = "Success"; statusReason = ""; } else { status = "Fail"; statusReason = "Your given seat numbers are already booked or not available in seat layout."; } } else { status = "Fail"; statusReason = "Your given seat numbers are already booked or not available in seat layout."; } } #endregion #region TicketGooseBooking if (api == "Tig") { string scheduleId = ""; string TravelDate = ""; string FromStationId = ""; string ToStationId = ""; string boardingPointId = ""; string emailId = ""; string mobileNbr = ""; string address = ""; string[] otherInfo = dtTicketInfo.Rows[0]["OtherInfo"].ToString().Split(';'); FromStationId = otherInfo[1].ToString(); ToStationId = otherInfo[2].ToString(); TravelDate = otherInfo[3].ToString(); scheduleId = otherInfo[4].ToString(); boardingPointId = otherInfo[5].ToString(); emailId = dtTicketInfo.Rows[0]["EmailId"].ToString(); mobileNbr = dtTicketInfo.Rows[0]["PhoneNo"].ToString(); address = dtTicketInfo.Rows[0]["Address"].ToString(); string[] seatNos = dtTicketInfo.Rows[0]["SeatNos"].ToString().Split(','); string[] ages = dtTicketInfo.Rows[0]["AgeList"].ToString().Split(','); string[] genders = dtTicketInfo.Rows[0]["GenderList"].ToString().Split(','); string[] names = dtTicketInfo.Rows[0]["FullNameList"].ToString().Split(','); PassengerDetailDTO[] PassengerDetailDT = new PassengerDetailDTO[seatNos.Length]; for (int i = 0; i < seatNos.Length; i++) { PassengerDetailDTO PassengerDetailDTO1 = new PassengerDetailDTO(); PassengerDetailDTO1.age = ages[i].ToString(); PassengerDetailDTO1.name = names[i].ToString(); PassengerDetailDTO1.seatNbr = seatNos[i].ToString(); PassengerDetailDTO1.sex = genders[i].ToString(); PassengerDetailDT[i] = PassengerDetailDTO1; } DataTable dt = objTicketGooseAPILayer.BlockSeatsForBooking(scheduleId, TravelDate, FromStationId, ToStationId, boardingPointId, emailId, mobileNbr, address, PassengerDetailDT); ds = new DataSet(); ds.Tables.Add(dt); if (dt != null) { if (dt.Rows.Count > 0) { if (dt.Columns.Contains("BookingId")) { status = "Success"; statusReason = ""; } else { status = "Fail"; statusReason = "Your given seat numbers are already booked or not available in seat layout."; } } else { status = "Fail"; statusReason = "Your given seat numbers are already booked or not available in seat layout."; } } else { status = "Fail"; statusReason = "Your given seat numbers are already booked or not available in seat layout."; } } #endregion return ds; } catch (Exception) { throw; } }
protected void BookTicket() { try { int sourceStationId = 0; int destinationStationId = 0; string journeyDate = ""; long serviceId = 0; int serviceTransId = 0; int noOfSeats = 0; string address = ""; string contactNo = ""; string emailID = ""; long blockedTicketId = 0; string apiname = ""; string boradingpointid = ""; int k = 0; string status = ""; string api = ""; DataSet dsbookresult = null; if (Session["manabusrefno"] != null) { ObjBAL = new ClsBAL(); ObjBAL.manabusRefNo = Session["manabusrefno"].ToString(); _objDataSetBook = (DataSet)ObjBAL.GetTcktDetByMRefNo(); if (_objDataSetBook != null) { if (_objDataSetBook.Tables.Count > 0) { if (_objDataSetBook.Tables[0].Rows.Count > 0) { if (_objDataSetBook.Tables[0].Rows.Count < 3) { #region Book Ticket foreach (DataRow dr in _objDataSetBook.Tables[0].Rows) { string manabusrefNo = dr["OnewayMBRefNo"].ToString(); apiname = dr["APIName"].ToString(); sourceStationId = Convert.ToInt32(dr["SourceId"].ToString()); destinationStationId = Convert.ToInt32(dr["DestinationId"].ToString()); DateTime doj = Convert.ToDateTime(dr["DateOfJourney"]); boradingpointid = dr["BoardingPointID"].ToString(); if (apiname == "Abhibus" || apiname == "Kallada") { journeyDate = doj.ToString("yyyy-MM-dd"); } else { journeyDate = doj.ToString("yyyy/MM/dd"); } if (dr["ServiceID"].ToString() == "") { serviceId = 0; } else { serviceId = Convert.ToInt64(dr["ServiceID"].ToString()); } string bookinId = ""; address = dr["Address"].ToString(); contactNo = dr["ContactNo"].ToString(); emailID = dr["EmailId"].ToString(); if (dr["ServiceTranDateID"].ToString() == "") { serviceTransId = 0; } else { serviceTransId = Convert.ToInt32(dr["ServiceTranDateID"].ToString()); } noOfSeats = Convert.ToInt32(dr["NoOfSeats"].ToString()); if (apiname != "TicketGoose") { if (dr["BlockedId"].ToString() == "") { blockedTicketId = 0; } else { blockedTicketId = Convert.ToInt64(dr["BlockedId"].ToString()); } } else { blockedTicketId = 0; bookinId = Convert.ToString(dr["BlockedId"].ToString()); } string seatNos = dr["SeatNos"].ToString(); string gendertype = dr["Gender"].ToString(); string psgrname = dr["FullName"].ToString(); string idType = dr["IDType"].ToString(); string idNo = dr["IDNumber"].ToString(); string idIssuedBy = dr["IDIssuedBy"].ToString(); string[] selectedSeatsArray = seatNos.Split(','); book_ticket bookTicket = new book_ticket(); object[] obj = new object[2]; book_ticketSeat_detailsSeat_detail[] sD = new book_ticketSeat_detailsSeat_detail[noOfSeats]; string strPassengers = dr["PassengerDetails"].ToString(); string[] strPassengersArray = strPassengers.Split(','); for (int i = 0; i < noOfSeats; i++) { book_ticketSeat_detailsSeat_detail sdd = new book_ticketSeat_detailsSeat_detail(); sdd.seat_number = selectedSeatsArray[i].ToString(); string strPassenger = strPassengersArray[i].ToString(); string[] strPassengerArray = strPassenger.Split('-'); sdd.title = strPassengerArray[1].ToString(); if (strPassengerArray[1].ToString() == "Mr") { sdd.sex = "M"; } else { sdd.sex = "F"; } if (i == 0) { sdd.is_primary = "true"; } else { sdd.is_primary = "false"; } sdd.address = address; string id = "";//1 -> Pan Card, 2 -> D/L, 3 -> Passport, 4 -> Voter, 5 -> Aadhar Card if (idType.ToString().ToLower().Contains("pan")) { id = "1"; } else if (idType.ToString().ToLower().Contains("dri")) { id = "2"; } else if (idType.ToString().ToLower().Contains("pass")) { id = "3"; } else if (idType.ToString().ToLower().Contains("voter")) { id = "4"; } else if (idType.ToString().ToLower().Contains("adhar")) { id = "5"; } else if (idType.ToString().ToLower().Contains("ration")) { id = "4"; } sdd.id_card_type = id; sdd.id_card_number = idNo; sdd.id_card_issued_by = idIssuedBy; sD[i] = sdd; } book_ticketSeat_details ss = new book_ticketSeat_details(); ss.seat_detail = sD; book_ticketContact_detail cc = new book_ticketContact_detail(); cc.mobile_number = contactNo; cc.email = emailID; cc.emergency_name = contactNo; obj[0] = ss; bookTicket.Items = obj; dsbookresult = CommonBookticket(sourceStationId, destinationStationId, journeyDate, serviceId, serviceTransId, blockedTicketId, boradingpointid, bookTicket, noOfSeats, seatNos, gendertype, psgrname, address, dr["FullName"].ToString(), contactNo, emailID, Session["manabusrefno"].ToString(), manabusrefNo, apiname, out api, out status, bookinId); if (status == "Success") { InsertBookedTicketDetails(dsbookresult, manabusrefNo, api); } else { lblReturnMsg.Text = "Failed to book. Please contact administartor of LoveJourney."; lblReturnMsg.Visible = true; } } #endregion #region GetTicketDetails if (status == "Success") { #region Update Cash Coupon UpdateCashCoupon(Session["manabusrefno"].ToString(), emailID); #endregion GetTicketDetails(); } #endregion } } } } } } catch (Exception ex) { throw ex; } }