public void addBooking(Booking b) { MBooking bk = new MBooking(); bk.cId = b.cId; bk.createDate = DateTime.ParseExact(b.createDate, "dd/MM/yyyy", System.Globalization.CultureInfo.CurrentCulture); bk.creaditCard = b.payStatus; bk.tripStart = DateTime.ParseExact(b.tripStart, "dd/MM/yyyy HH:mm", System.Globalization.CultureInfo.CurrentCulture); bk.totalPrice = b.totalPrice; List<MBookingLine> bkls = new List<MBookingLine>(); List<BookingLine> bls = b.bookinglines.ToList<BookingLine>(); for (int i = 0; i < bls.Count; i++) { MBookingLine bl = new MBookingLine(); bl.price = bls[i].price; bl.quantity = bls[i].quantity; bl.Station.Id = bls[i].station.Id; bl.time = bls[i].time; bl.BatteryType.id = bls[i].BatteryType.ID; bkls.Add(bl); } bk.bookinglines = bkls; BookingCtr bCtr = new BookingCtr(); if (!bCtr.addBooking(bk)) { FaultException f = new FaultException("Booking failed because one of the station is fully booked"); throw f; } }
public MBookingLine buildBookingLine(BookingLine bl) { MBookingLine b = new MBookingLine() { BatteryType = new MBatteryType { id = bl.btId }, Station = new MStation() { Id = bl.sId }, quantity = bl.quantity, price = bl.price, time = bl.time, bId = bl.bId }; return b; }