using OASystem.Domain.ViewModels.Groups;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OASystem.Domain.Dtos.Groups
{
    public class EnterExitCostDto
    {
    }
    /// 
    /// 出入境费用详情 Dto
    /// 
    public class EnterExitCostInfobyDiIdDto : PortDtoBase
    {
        /// 
        /// 团组Id
        /// 
        public int DiId { get; set; }
    }
    /// 
    /// 出入境费用 Add And Update  Dto
    /// 
    public class EnterExitCostOperateDto : PortDtoBase 
    {
        public int UserId { get; set; }
        /// 
        /// Id
        /// 
        public int Id { get; set; }
        /// 
        /// 团组Id
        /// 
        public int DiId { get; set; }
        #region 境内费用(其他费用)
        /// 
        ///  境内费用(其他费用)选择框
        /// 
        public int ChoiceOne { get; set; }
        /// 
        /// 境内费用(其他费用)
        /// 
        public decimal InsidePay { get; set; }
        #region 境内费用(其他费用)子项
        /// 
        /// 签证费
        /// 
        public decimal Visa { get; set; }
        /// 
        /// 签证费描述
        /// 
        public string? VisaRemark { get; set; }
        /// 
        /// 疫苗费
        /// 
        public decimal YiMiao { get; set; }
        /// 
        /// 核酸检测费用
        /// 
        public decimal HeSuan { get; set; }
        /// 
        /// 服务费用
        /// 
        public decimal Service { get; set; }
        /// 
        /// 参展门票
        /// 
        public decimal Ticket { get; set; }
        /// 
        /// 保险费
        /// 
        public decimal Safe { get; set; }
        #endregion
        #endregion
        #region 国际旅费
        /// 
        ///  国际旅费合计选择框
        /// 
        public int ChoiceTwo { get; set; }
        /// 
        ///  经济舱小计选择框
        /// 
        public int SumJJC { get; set; }
        /// 
        ///  公务舱小计选择框
        /// 
        public int SumGWC { get; set; }
        /// 
        ///  公务舱小计选择框
        /// 
        public int SumTDC { get; set; }
        #region 国际旅费子项
        /// 
        /// 国际旅费合计(经济舱)
        /// 
        public decimal OutsideJJPay { get; set; }
        /// 
        ///  国际旅费合计(公务舱)
        /// 
        public decimal OutsideGWPay { get; set; }
        /// 
        /// 国际旅费合计(头等舱)
        /// 
        public decimal OutsideTDPay { get; set; }
        /// 
        ///  国际机票(经济舱)
        /// 
        public decimal AirJJ { get; set; }
        /// 
        ///  国际机票(公务舱)
        /// 
        public decimal AirGW { get; set; }
        /// 
        ///  国际机票(头等舱)
        /// 
        public decimal AirTD { get; set; }
        /// 
        ///  国外城市间交通费
        /// 
        public decimal CityTranffic { get; set; }
        /// 
        ///  多个币种存储
        ///  存储方式: 美元(USD):6.2350|.......|墨西哥比索(MXN):1.0000
        /// 
        public List? Currencys { get; set; }
        #endregion
        #endregion
        #region 住宿费
        /// 
        ///  住宿费合计选择框
        /// 
        public int ChoiceThree { get; set; }
        /// 
        /// 住宿费子项Data
        /// 
        public List? QuarterageData { get; set; }
        #endregion
        #region 伙食费
        /// 
        ///  伙食费合计选择框
        /// 
        public int ChoiceFour { get; set; }
        /// 
        /// 伙食费子项Data
        /// 
        public List? BoardWagesData { get; set; }
        #endregion
        #region 公杂费
        /// 
        ///  公杂费合计选择框
        /// 
        public int ChoiceFive { get; set; }
        /// 
        /// 公杂费子项Data
        /// 
        public List? MiscellaneousFeeData { get; set; }
        #endregion
        #region 培训费
        /// 
        ///  培训费用选择框
        /// 
        public int ChoiceSix { get; set; }
        /// 
        /// 培训费子项Data
        /// 
        public List? TrainingExpenseData { get; set; }
        #endregion
        #region 最下面 选择框状态
        /// 
        /// 经济舱选择框
        /// 
        public int AirJJC_Checked { get; set; }
        /// 
        /// 公务舱选择框
        /// 
        public int AirGWC_Checked { get; set; }
        /// 
        /// 公务舱选择框
        /// 
        public int AirTDC_Checked { get; set; }
        #endregion
    }
    public class ConfirmCostDto {
        /// 
        /// 类型
        /// 1:确认 2:撤回
        /// 
        public int Type { get; set; }
        /// 
        /// 数据Id
        /// 
        public int Id { get; set; }
    }
    /// 
    /// 出入境费用 - 表格导出 Dto
    /// 
    public class EnterExitCostDownloadDto : PortDtoBase
    {
        public int DiId { get; set; }
        /// 
        /// 模板类型
        /// 1 明细表
        /// 2 表格
        /// 3 团组成员名单
        /// 
        public int ExportType { get; set; }
        /// 
        /// 类型Id
        /// 
        public int SubTypeId { get; set; }
    }
    /// 
    /// 出入境费用 - 一键清空 dto
    /// 
    public class EnterExitCostOneClickClearDto : PortDtoBase
    {
        public int UserId { get; set; }
        public int DiId { get; set; }
        public int Id { get; set; }
    }
    /// 
    /// 团组模块 - 出入境国家费用标准 Page List
    /// 
    public class NationalTravelFeePageDto : DtoBase
    {
        /// 
        /// 国家
        /// 
        public string Country { get; set; }
        /// 
        /// 城市
        /// 
        public string City { get; set; }
    }
    /// 
    /// 团组模块 - 出入境国家费用标准 
    /// 根据国家城市查询Dto
    /// 
    public class NationalTravelFeeByCountryAndCityDto : PortDtoBase
    {
        /// 
        /// 国家
        /// 
        public string Country { get; set; }
        /// 
        /// 城市
        /// 
        public string City { get; set; }
    }
    /// 
    /// 出入境费用子项删除
    /// 
    public class EnterExitCostSubItemDelDto : DelBaseDto
    { }
    /// 
    /// 团组模块 - 出入境国家费用标准 - Del
    /// 
    public class NationalTravelFeeDelDto : DelBaseDto
    {
        
    }
    /// 
    /// 团组模块 - 出入境国家费用标准 - Add Or Update Dto
    /// 
    public class NationalTravelFeeOperateDto:PortDtoBase
    {
        /// 
        /// 编号
        /// add Id = 0 Or Update Id=Id值
        /// 
        public int Id { get; set; }
        /// 
        /// 创建者Id
        /// 
        public int UserId { get; set; }
        /// 
        /// 洲别
        /// 
        public string? Continent { get; set; }
        /// 
        /// 国家
        /// 
        public string? Country { get; set; }
        /// 
        /// 城市
        /// 
        public string? City { get; set; }
        /// 
        /// 币种
        /// Sys_SetData STid=66
        /// 
        public int Currency { get; set; }
        /// 
        /// 住宿费
        /// 
        public decimal? RoomCost { get; set; } = 0;
        /// 
        /// 伙食费
        /// 
        public decimal? FoodCost { get; set; } = 0;
        /// 
        /// 公杂费 
        /// 
        public decimal? PublicCost { get; set; } = 0;
        /// 
        /// 备注
        /// 
        public string? Remark { get; set; }
    }
}