public static ExternalCartAddOrderResult ExternalCart_AddOrder(string language, WebPartner partner, string externalCartId, BookingOrder order) { if (partner == null) { throw new System.ArgumentNullException("partner"); } if (order == null) { throw new System.ArgumentNullException("order"); } BookingClaim claim = new BookingClaim { orders = new System.Collections.Generic.List <BookingOrder>() }; claim.orders.Add(order); XElement xml = BookingProvider.BuildBookingClaimXml(partner.id, claim); DataSet ds = DatabaseOperationProvider.QueryProcedure("up_guest_ExternalCart_AddOrder", "result", new { lang = language, OrdersXML = xml, CartId = externalCartId, PartPass = partner.passId }); return(( from DataRow row in ds.Tables["result"].Rows select BookingProvider.factory.ExternalCartAddOrderResult(row)).FirstOrDefault <ExternalCartAddOrderResult>()); }
public static ReservationState DoBooking(string language, int partnerId, int partnerPassId, BookingClaim claim) { if (claim == null) { throw new System.ArgumentNullException("claim"); } XElement xml = BookingProvider.BuildBookingClaimXml(partnerId, claim); return(BookingProvider.BuildBookingProcessResult(language, "save", xml, new int?(partnerPassId))); }
public static CheckPromoCodeResult CheckExcursionPromoCode(string language, int partnerId, BookingClaim claim, string promoCode) { if (claim == null) { throw new System.ArgumentNullException("claim"); } if (string.IsNullOrEmpty(promoCode)) { throw new System.ArgumentNullException("promoCode"); } XElement xml = BookingProvider.BuildBookingClaimXml(partnerId, claim); DataSet ds = DatabaseOperationProvider.QueryProcedure("[promo].[up_CheckExPromoCodes]", "errors", new { OrdersXML = xml, lang = language, PromoCode = promoCode }); CheckPromoCodeResult result = ( from DataRow row in ds.Tables["errors"].Rows select BookingProvider.factory.CheckPromoCodeResult(row)).FirstOrDefault <CheckPromoCodeResult>(); result.code = promoCode; return(result); }