using OASystem.Domain.Entities.Groups;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace OASystem.Domain.ViewModels.Groups
{
    public class AirTicketReservationsView:Grp_AirTicketReservations
    {
        /// <summary>
        /// 总经理是否审核
        /// </summary>
        public int IsAuditGM { get; set; }
        /// <summary>
        /// 舱类型
        /// </summary>
        public string CTypeName { get; set; }
        public string PreCurrencyStr { get; set; }
        public string CurrencyStr { get; set; }

        public string FlightDescription { get; set; }
        public string ClientNameStr { get; set; }
        public int IsPay { get; set; }
    }

    public class AirGroupCostParameterView
    {
        /// <summary>
        /// 经济舱成本
        /// </summary>
        public decimal JJCCB { get; set; }
        /// <summary>
        /// 经济舱系数
        /// </summary>
        public decimal JJCXS { get; set; }
        /// <summary>
        /// 经济舱人数
        /// </summary>
        public int JJCRS { get; set; }
        /// <summary>
        /// 公务舱成本
        /// </summary>
        public decimal GWCCB { get; set; }
        /// <summary>
        /// 公务舱系数
        /// </summary>
        public decimal GWCXS { get; set; }
        /// <summary>
        /// 公务舱人数
        /// </summary>
        public int GWCRS { get; set; }
    }

    public class AirTicketReservationsPayView
    {
        /// <summary>
        /// 团组号
        /// </summary>
        public string TourCode { get; set; }
        /// <summary>
        /// 团组名称
        /// </summary>
        public string TeamName { get; set; }
        /// <summary>
        /// 城市A-B
        /// </summary>
        public string FlightsCity { get; set; }
        /// <summary>
        /// 航班说明
        /// </summary>
        public string FlightsDescription { get; set; }
        /// <summary>
        /// 航班号
        /// </summary>
        public string FlightsCode { get; set; }
        /// <summary>
        /// 舱位
        /// </summary>
        public string CTypeName { get; set; }
        /// <summary>
        /// 客人姓名
        /// </summary>
        public string ClientName { get; set; }
        /// <summary>
        /// 舱位人数
        /// </summary>
        public int ClientNum { get; set; }
        /// <summary>
        /// 单价
        /// </summary>
        public decimal PrePrice { get; set; }
        /// <summary>
        /// 总价
        /// </summary>
        public decimal Price { get; set; }
        /// <summary>
        /// 支付方式
        /// </summary>
        public string PayType { get; set; }
        /// <summary>
        /// 费用表示
        /// </summary>
        public string OrbitalPrivateTransfer { get; set; }
        /// <summary>
        /// 卡号
        /// </summary>
        public string BankNo { get; set; }
        /// <summary>
        /// 卡类型
        /// </summary>
        public string BankType { get; set; }
        /// <summary>
        /// 支付时间
        /// </summary>
        public DateTime CreateTime { get; set; }
        /// <summary>
        /// 收款方
        /// </summary>
        public string Payee { get; set; }
        /// <summary>
        /// 费用说明
        /// </summary>
        public string PriceDescription { get; set; }
        /// <summary>
        /// 币种
        /// </summary>
        public string CurrencyStr { get; set; }
    }

    /// <summary>
    /// 导出行程单数据
    /// </summary>
    public class Itinerary
    {
        /// <summary>
        /// 航空公司记录编码
        /// </summary>
        public string AirlineRecordCode { get; set; } = "--";
        /// <summary>
        /// 订座记录编码
        /// </summary>
        public string ReservationRecordCode{ get; set; } = "--";
        /// <summary>
        /// 旅客姓名
        /// </summary>
        public string ClientName{ get; set; } = "--";
        /// <summary>
        /// 票号
        /// </summary>
        public string TicketNumber{ get; set; } = "--";
        /// <summary>
        /// 身份识别代码
        /// </summary>
        public string IdentificationCode{ get; set; } = "--";
        /// <summary>
        /// 联票
        /// </summary>
        public string JointTicket{ get; set; } = "--";
        /// <summary>
        /// 出票航空公司
        /// </summary>
        public string AirlineCompany{ get; set; } = "--";
        /// <summary>
        /// 出票时间
        /// </summary>
        public string TimeIssue{ get; set; } = "--";
        /// <summary>
        /// 代理人
        /// </summary>
        public string DrawingAgent{ get; set; } = "--";
        /// <summary>
        /// 航协代码
        /// </summary>
        public string NavigationCode{ get; set; } = "--";
        /// <summary>
        /// 代理人地址
        /// </summary>
        public string AgentsAddress{ get; set; } = "--";
        /// <summary>
        /// 代理人电话
        /// </summary>
        public string AgentPhone{ get; set; } = "--";
        /// <summary>
        /// 代理人传真
        /// </summary>
        public string AgentFacsimile{ get; set; } = "--";
        /// <summary>
        /// 航班数据
        /// </summary>
        public List<AirInfo> AirInfo { get;set; } = new List<AirInfo>();
    }
    /// <summary>
    /// 航班信息
    /// </summary>
    public class AirInfo
    {
        /// <summary>
        /// 始发地/到达地
        /// </summary>
        public string Destination { get; set; }
        /// <summary>
        /// 航班号
        /// </summary>
        public string Flight { get; set; }
        /// <summary>
        /// 座位等级
        /// </summary>
        public string SeatingClass { get; set; }
        /// <summary>
        /// 日期
        /// </summary>
        public string FlightDate { get; set; }
        /// <summary>
        /// 起飞时间
        /// </summary>
        public string DepartureTime { get; set; }
        /// <summary>
        /// 到达时间
        /// </summary>
        public string LandingTime { get; set; }
        /// <summary>
        /// 有效期
        /// </summary>
        public string ValidityPeriod { get; set; }
        /// <summary>
        /// 客票状态
        /// </summary>
        public string TicketStatus { get; set; }
        /// <summary>
        /// 行李
        /// </summary>
        public string Luggage { get; set; }
        /// <summary>
        /// 起飞航站楼
        /// </summary>
        public string DepartureTerminal { get; set; }
        /// <summary>
        /// 到达航站楼
        /// </summary>
        public string LandingTerminal { get; set; }
    }
}