internal PNRPair FillTicketNos(PNRPair etdzPNR, ETDZMode mode, string settleCode, IEnumerable <TicketNoView.Item> ticketNoItems, Guid oemId) { PNRPair result = validateTicketNos(etdzPNR, ticketNoItems, oemId); foreach (Passenger passenger in Passengers) { TicketNoView.Item ticketNos = ticketNoItems.FirstOrDefault(item => string.Compare(item.Name, passenger.Name, StringComparison.OrdinalIgnoreCase) == 0); if (ticketNos == null) { throw new CustomException("缺少乘机人[" + passenger.Name + "]的票号信息。"); } passenger.FillTicketNos(settleCode, ticketNos.TicketNos, mode); } Code = result; return(result); }
internal void FillTicketNos(string settleCode, IEnumerable <string> ticketNos, ETDZMode mode) { if (_tickets.Count != ticketNos.Count()) { throw new CustomException("输入票号数与实际票号数量不一致"); } var index = 0; foreach (var item in ticketNos) { _tickets[index].ETDZ(settleCode, item, mode); index++; } }
internal void ETDZ(string settleCode, string ticketNo, ETDZMode mode) { UpdateTicketNo(settleCode, ticketNo); this.ETDZTime = DateTime.Now; this.ETDZMode = mode; }