예제 #1
0
 private static decimal getTotalFare(IEnumerable <FlightView> flights, DataTransferObject.Command.PNR.PriceView patPrice)
 {
     if (patPrice != null)
     {
         return(patPrice.Fare);
     }
     if (flights.First().BunkType == BunkType.Production)
     {
         return(flights.First().Fare);
     }
     return(flights.Sum(f => f.Fare));
 }
예제 #2
0
        private void bindPassenger(IEnumerable <PassengerView> passengers, IEnumerable <FlightView> flights, DataTransferObject.Command.PNR.PriceView patPrice)
        {
            var passengersHTML = new StringBuilder();

            passengersHTML.Append("<table><tr><th>姓名</th><th>类型</th><th>联系方式</th><th>证件类型</th><th>证件号</th><th>票面价</th><th>民航基金/燃油税</th><th>总价</th></tr>");
            var totalFare       = getTotalFare(flights, patPrice);
            var totalAirportFee = patPrice == null?flights.Sum(f => f.AirportFee) : patPrice.AirportTax;

            var totalBAF = flights.Sum(f => f.BAF);

            foreach (var item in passengers)
            {
                passengersHTML.Append("<tr>");
                passengersHTML.AppendFormat("<td>{0}</td>", item.Name);
                passengersHTML.AppendFormat("<td>{0}</td>", item.PassengerType.GetDescription());
                passengersHTML.AppendFormat("<td>{0}</td>", item.Phone);
                passengersHTML.AppendFormat("<td>{0}</td>", item.CredentialsType.ToString());
                passengersHTML.AppendFormat("<td>{0}</td>", item.Credentials);
                passengersHTML.AppendFormat("<td class='Price'>{0}</td>", totalFare.TrimInvaidZero());
                passengersHTML.AppendFormat("<td>{0}/{1}</td>", totalAirportFee.TrimInvaidZero(), totalBAF.TrimInvaidZero());
                passengersHTML.AppendFormat("<td>{0}</td>", (totalFare + totalAirportFee + totalBAF).TrimInvaidZero());
                passengersHTML.Append("</tr>");
            }
            passengersHTML.Append("</table>");
            this.divPassengers.InnerHtml = passengersHTML.ToString();
            this.hidPassengerCount.Value = passengers.Count().ToString();
            this.hidPassengerType.Value  = ((int)passengers.First().PassengerType).ToString();
        }