using OASystem.Domain.Dtos; using OASystem.Domain.Dtos.Groups; 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 EnterExitCostDraftView:Grp_EnterExitCostDraft { } public class PermissionViewUserview { public int Id { get; set; } public string Name { get; set; } } /// <summary> /// 出入境费用info /// </summary> public class EnterExitCostDraftInfoView { public bool IsSave { get; set; } public bool IsView { get; set; } = false; public int[] ViewUsers { get; set; } = Array.Empty<int>(); /// <summary> /// Id /// </summary> public int Id { get; set; } /// <summary> /// 团组Id /// </summary> public string DraftName { get; set; } /// <summary> /// 境内费用(其他费用) /// </summary> public decimal InsidePay { get; set; } #region 境内费用(其他费用)子项 /// <summary> /// 签证费 /// </summary> public decimal Visa { get; set; } /// <summary> /// 签证费描述 /// </summary> public string? VisaRemark { get; set; } /// <summary> /// 疫苗费 /// </summary> public decimal YiMiao { get; set; } /// <summary> /// 核酸检测费用 /// </summary> public decimal HeSuan { get; set; } /// <summary> /// 服务费用 /// </summary> public decimal Service { get; set; } /// <summary> /// 参展门票 /// </summary> public decimal Ticket { get; set; } /// <summary> /// 保险费 /// </summary> public decimal Safe { get; set; } public string FirstItemRemark { get; set; } #endregion /// <summary> /// 国际旅费合计(经济舱) /// </summary> public decimal OutsideJJPay { get; set; } /// <summary> /// 国际旅费合计(公务舱) /// </summary> public decimal OutsideGWPay { get; set; } /// <summary> /// 国际旅费合计(头等舱) /// </summary> public decimal OutsideTDPay { get; set; } #region 国际旅费合计(经济舱\公务舱\头等舱) /// <summary> /// 国际机票(经济舱) /// </summary> public decimal AirJJ { get; set; } /// <summary> /// 国际机票(公务舱) /// </summary> public decimal AirGW { get; set; } /// <summary> /// 国际机票(头等舱) /// </summary> public decimal AirTD { get; set; } /// <summary> /// 国外城市间交通费 /// </summary> public decimal CityTranffic { get; set; } public string TwoItemRemark { get; set; } #region 汇率币种 /// <summary> /// 多个币种存储 /// 存储方式: 美元(USD):6.2350|.......|墨西哥比索(MXN):1.0000 /// </summary> public List<CurrencyInfo>? Currencys { get; set; } #endregion #endregion #region 选择框状态 /// <summary> /// 境内费用(其他费用)选择框 /// </summary> public int ChoiceOne { get; set; } /// <summary> /// 国际旅费合计选择框 /// </summary> public int ChoiceTwo { get; set; } /// <summary> /// 经济舱小计选择框 /// </summary> public int SumJJC { get; set; } /// <summary> /// 公务舱小计选择框 /// </summary> public int SumGWC { get; set; } /// <summary> /// 头等舱小计选择框 /// </summary> public int SumTDC { get; set; } /// <summary> /// 住宿费合计选择框 /// </summary> public int ChoiceThree { get; set; } /// <summary> /// 住宿费子项Data /// </summary> public List<DayAndCostDraftInfoView>? QuarterageData { get; set; } /// <summary> /// 伙食费合计选择框 /// </summary> public int ChoiceFour { get; set; } /// <summary> /// 伙食费子项Data /// </summary> public List<DayAndCostDraftInfoView>? BoardWagesData { get; set; } /// <summary> /// 公杂费合计选择框 /// </summary> public int ChoiceFive { get; set; } /// <summary> /// 公杂费子项Data /// </summary> public List<DayAndCostDraftInfoView>? MiscellaneousFeeData { get; set; } /// <summary> /// 培训费用选择框 /// </summary> public int ChoiceSix { get; set; } /// <summary> /// 培训费子项Data /// </summary> public List<DayAndCostDraftInfoView>? TrainingExpenseData { get; set; } /// <summary> /// 经济舱选择框 /// </summary> public int AirJJC_Checked { get; set; } /// <summary> /// 公务舱选择框 /// </summary> public int AirGWC_Checked { get; set; } /// <summary> /// 头等舱选择框 /// </summary> public int AirTDC_Checked { get; set; } /// <summary> /// 其他款项选择框 /// </summary> public int OtherExpenses_Checked { get; set; } /// <summary> /// 其他款项子项Data /// </summary> public List<DayOtherPriceDraftView> DayOtherPriceData { get; set; } #endregion } /// <summary> /// 出入境国家(城市)费用标准子项Info View /// </summary> public class DayAndCostDraftInfoView { /// <summary> /// Id /// </summary> public int Id { get; set; } /// <summary> /// 团组Id /// </summary> public int ParentId { get; set; } /// <summary> /// 类型:1为住宿费;2为伙食费;3为公杂费;4培训费用 /// </summary> public int Type { get; set; } /// <summary> /// 类型名称 /// </summary> public string? TypeName { get { string str = ""; if (Type == 1) str = string.Format("住宿费"); else if (Type == 2) str = string.Format("伙食费"); else if (Type == 3) str = string.Format("公杂费"); else if (Type == 4) str = string.Format("培训费"); return str; } } /// <summary> /// 天数 /// </summary> public int Days { get; set; } /// <summary> /// 出入境国家费用标准 - Id /// </summary> public int NationalTravelFeeId { get; set; } /// <summary> /// 出入境国家费用标准 - 国家 /// </summary> public string? Country { get; set; } /// <summary> /// 出入境国家费用标准 - 城市 /// </summary> public string City { get; set; } ///// <summary> ///// 地名 ///// </summary> //public string? Place { get; set; } /// <summary> /// 地名 /// </summary> public string? PlaceName { get { string str = ""; if (!string.IsNullOrEmpty(Country)) { if (City.Contains("城市")) str = Country; else str = City; } return str; } } /// <summary> /// 费用标准 /// </summary> public decimal Cost { get; set; } /// <summary> /// 币种 Id /// Sys_SetData STid = 66 /// </summary> public int Currency { get; set; } /// <summary> /// 币种Code /// </summary> public string? CurremcyCode { get; set; } /// <summary> /// 币种名称 /// </summary> public string? CurrencyName { get; set; } /// <summary> /// 小计 /// </summary> public decimal SubTotal { get; set; } /// <summary> /// 备注 /// </summary> public string? Remark { get; set; } = ""; } public class DayOtherPriceDraftView { public int Id { get; set; } public int ParentId { get; set; } public int SetDataId { get; set; } public int Index { get; set; } public decimal Cost { get; set; } public int Currency { get; set; } public decimal SubTotal { get; set; } public string Remark { get; set; } } /// <summary> /// 出入境国家(城市)费用标准子项Add View /// </summary> public class DayAndCostDraftAddView { /// <summary> /// 主键编号 /// </summary> public int Id { get; set; } /// <summary> /// 主表Id /// </summary> public int ParentId { get; set; } /// <summary> /// 类型:1为住宿费;2为伙食费;3为公杂费;4培训费用 /// </summary> public int Type { get; set; } /// <summary> /// 天数 /// </summary> public int Days { get; set; } /// <summary> /// 出入境国家费用标准 - Id /// </summary> public int NationalTravelFeeId { get; set; } /// <summary> /// 费用标准 /// </summary> public decimal Cost { get; set; } /// <summary> /// 币种 Id /// Sys_SetData STid = 66 /// </summary> public int Currency { get; set; } /// <summary> /// 小计 /// </summary> public decimal SubTotal { get; set; } /// <summary> /// 备注 /// </summary> public string? Remark { get; set; } = ""; } public class DayOtherPriceDraftAddView { public int Id { get; set; } public int ParentId { get; set; } public int SetDataId { get; set; } public int Index { get; set; } public decimal Cost { get; set; } public int Currency { get; set; } public decimal SubTotal { get; set; } public string Remark { get; set; } } /// <summary> /// 出入境费用子项删除 /// </summary> public class EnterExitCostDraftSubItemDelDto : DelBaseDto { } #region 移动端 草稿 #region Info Parent View public class DayAndCostDraftMobileInfoView { public int SubId { get; set; } public int ParentId { get; set; } public int Type { get; set; } public int Days { get; set; } public int NationalTravelFeeId { get; set; } public string Arae { get; set; } public decimal Cost { get; set; } public int Currency { get; set; } public string CurrencyName { get; set; } public decimal SubTotal { get; set; } } public class DayOtherPriceDraftMobileInfoView { public int SubId { get; set; } public int ParentId { get; set; } public int Index { get; set; } public int SetDataId { get; set; } public string SetDataName { get; set; } public decimal Cost { get; set; } public int Currency { get; set; } public string CurrencyName { get; set; } public decimal SubTotal { get; set; } public string Remark { get; set; } } public class EnterExitCostDraftMobileParentInfoView { public int Id { get; set; } #region 汇率币种 /// <summary> /// 多个币种存储 /// 存储方式: 美元(USD):6.2350|.......|墨西哥比索(MXN):1.0000 /// </summary> public List<CurrencyInfo> Currencys { get; set; } = new List<CurrencyInfo> { }; #endregion #region 1:境内费用(其他费用) /// <summary> /// 境内费用(其他费用)选择框 /// </summary> public int ChoiceOne { get; set; } /// <summary> /// 境内费用(其他费用) 合计 /// </summary> public decimal ChoiceOneTotalCost { get; set; } #endregion #region 2:国际旅费 /// <summary> /// 国际旅费合计选择框 (经济舱) /// </summary> public int ChoiceTwoJJ { get; set; } /// <summary> /// 国际旅费合计(经济舱) /// </summary> public decimal OutsideJJPay { get; set; } /// <summary> /// 国际旅费合计选择框(公务舱) /// </summary> public int ChoiceTwoGW { get; set; } /// <summary> /// 国际旅费合计(公务舱) /// </summary> public decimal OutsideGWPay { get; set; } /// <summary> /// 国际旅费合计选择框(头等舱) /// </summary> public int ChoiceTwoTD { get; set; } /// <summary> /// 国际旅费合计(头等舱) /// </summary> public decimal OutsideTDPay { get; set; } #endregion #region 3:住宿费 /// <summary> /// 住宿费合计 选择框 /// </summary> public int ChoiceThree { get; set; } /// <summary> /// 住宿费合计 /// </summary> public decimal ChoiceThreeTotalCost { get; set; } #endregion #region 4:伙食费 /// <summary> /// 伙食费合计 选择框 /// </summary> public int ChoiceFour { get; set; } /// <summary> /// 伙食费合计 /// </summary> public decimal ChoiceFourTotalCost { get; set; } #endregion #region 5:公杂费 /// <summary> /// 公杂费合计 选择框 /// </summary> public int ChoiceFive { get; set; } /// <summary> /// 公杂费合计 /// </summary> public decimal ChoiceFiveTotalCost { get; set; } #endregion #region 6:培训费 /// <summary> /// 培训费用选择框 /// </summary> public int ChoiceSix { get; set; } /// <summary> /// 公杂费合计 /// </summary> public decimal ChoiceSixTotalCost { get; set; } #endregion #region 7:其他 /// <summary> /// 其他款项 选择框 /// </summary> public int OtherExpenses_Checked { get; set; } /// <summary> /// 其他款项 选择框 /// </summary> public decimal OtherExpensesTotalCost { get; set; } #endregion /// <summary> /// 经济舱费用总计 /// </summary> public decimal TouristClassTotalCost { get { return OutsideJJPay <= 0 ? 0.00M : OutsideJJPay + ChoiceOneTotalCost + ChoiceThreeTotalCost + ChoiceFourTotalCost + ChoiceFiveTotalCost + ChoiceSixTotalCost + OtherExpensesTotalCost; } } /// <summary> /// 公务舱费用总计 /// </summary> public decimal BusinessClassTotalCost { get { return OutsideGWPay <= 0 ? 0.00M : OutsideGWPay + ChoiceOneTotalCost + ChoiceThreeTotalCost + ChoiceFourTotalCost + ChoiceFiveTotalCost + ChoiceSixTotalCost + OtherExpensesTotalCost; } } /// <summary> /// 头等舱费用总计 /// </summary> public decimal FirstClassTotalCost { get { return OutsideTDPay <= 0 ? 0.00M : OutsideTDPay + ChoiceOneTotalCost + ChoiceThreeTotalCost + ChoiceFourTotalCost + ChoiceFiveTotalCost + ChoiceSixTotalCost + OtherExpensesTotalCost; } } } /// <summary> /// 出入境费用详情 Dto /// </summary> public class EnterExitCostDraftInfobyDiIdDto : PortDtoBase { /// <summary> /// 团组Id /// </summary> public int DraftId { get; set; } public int CurrUserId { get; set; } } public class PostEnterExitCostDraftMobileSubInfoDto : EnterExitCostDraftInfobyDiIdDto { /// <summary> /// 费用项Type /// 1:境内费用 2:国际旅费 3:住宿费 4:伙食费 5:公杂费 6:培训费 7:其他 /// </summary> public int SubType { get; set; } } public class ChoiceDraftMobileSubInfo3To6View { /// <summary> /// 主表Id /// </summary> public int ParentId { get; set; } /// <summary> /// 住宿费合计 选择框 /// </summary> public int Choice { get; set; } /// <summary> /// 住宿费合计 /// </summary> public decimal TotalCost { get; set; } public DayAndCostDraftMobileInfoView[] Details { get; set; } } public class ChoiceSevenDraftMobileSubInfoView { /// <summary> /// 主表Id /// </summary> public int ParentId { get; set; } /// <summary> /// 其他款项 选择框 /// </summary> public int OtherExpenses_Checked { get; set; } /// <summary> /// 其他款项 选择框 /// </summary> public decimal OtherExpensesTotalCost { get; set; } public DayOtherPriceDraftMobileInfoView[] Details { get; set; } } #endregion #endregion }