CorporateProfit.cs 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Reflection.Metadata.Ecma335;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace OASystem.Domain.ViewModels.Statistics
  8. {
  9. /// <summary>
  10. /// 企业利润报表
  11. /// </summary>
  12. public class CorporateProfit
  13. {
  14. public int DiId { get; set; }
  15. public string TeamName { get; set; }
  16. public DateTime CreateDt { get; set; }
  17. /// <summary>
  18. /// 总支出
  19. /// </summary>
  20. public decimal TotalExpenditure { get; set; }
  21. /// <summary>
  22. /// 支出Item
  23. /// </summary>
  24. public List<ExpenditureInfo> ExpenditureItem { get; set; }
  25. /// <summary>
  26. /// 应收金额
  27. /// </summary>
  28. public decimal AmountReceivable { get; set; }
  29. /// <summary>
  30. /// 已收金额
  31. /// </summary>
  32. public decimal AmountReceived { get; set; }
  33. /// <summary>
  34. /// 应收利润
  35. /// </summary>
  36. public decimal ReceivableProfit { get; set; }
  37. /// <summary>
  38. /// 已收利润
  39. /// </summary>
  40. public decimal ReceivedProfit { get; set; }
  41. }
  42. public class ExpenditureInfo
  43. {
  44. /// <summary>
  45. /// 名称
  46. /// </summary>
  47. public string ItemName { get; set; }
  48. /// <summary>
  49. /// 金额
  50. /// </summary>
  51. public decimal Amount { get; set; }
  52. }
  53. #region 企业利润 View
  54. public class CorporateProfitMonthView
  55. {
  56. /// <summary>
  57. /// 月份
  58. /// </summary>
  59. public int Month { get; set; }
  60. /// <summary>
  61. /// 利润
  62. /// </summary>
  63. public decimal Profit { get; set; }
  64. public Object GroupInfos { get; set; }
  65. }
  66. #endregion
  67. #region 团组各类型预订数量 View
  68. public class BookingNumberBaseView
  69. {
  70. public string Name { get; set; }
  71. public int Number { get; set; }
  72. }
  73. /// <summary>
  74. /// 接团 View
  75. /// </summary>
  76. public class GroupBookingNumberView: BookingNumberBaseView
  77. {
  78. public List<GroupInfo> GroupItem { get; set; }
  79. }
  80. /// <summary>
  81. /// 酒店 View
  82. /// </summary>
  83. public class HotelBookingNumberView : BookingNumberBaseView
  84. {
  85. public List<HotelInfo> HotelItem { get; set; }
  86. }
  87. public class HotelInfo : StatisticsHotelInfo
  88. {
  89. public GroupInfo GroupInfo { get; set; }
  90. }
  91. public class GroupInfo
  92. {
  93. /// <summary>
  94. /// 团组Id
  95. /// </summary>
  96. public int DiId { get; set; }
  97. /// <summary>
  98. /// 团组名称
  99. /// </summary>
  100. public string TeamName { get; set; }
  101. /// <summary>
  102. /// 接团时间
  103. /// </summary>
  104. public string CreateTime { get; set; }
  105. /// <summary>
  106. /// 单位
  107. /// </summary>
  108. public string ClientUnit { get; set; }
  109. /// <summary>
  110. /// 负责人
  111. /// </summary>
  112. public string Principal { get; set; }
  113. }
  114. public class GroupTypeNumberInfo
  115. {
  116. public int DiId { get; set; }
  117. public string GroupName { get; set; }
  118. public List<TypeInfo> TypeItem { get; set; }
  119. }
  120. public class TypeInfo
  121. {
  122. /// <summary>
  123. /// 类型Id
  124. /// 1 接团 2 酒店 3 机票 4 车辆
  125. /// </summary>
  126. public int Id { get; set; }
  127. public string Name { get {
  128. if (Id == 1) return "接团";
  129. else if (Id == 2) return "酒店";
  130. else if (Id == 3) return "机票";
  131. else if (Id == 4) return "车辆";
  132. return "Unknown";
  133. } }
  134. public List<RegionInfo> RegionItem { get; set; }
  135. }
  136. public class RegionInfo
  137. {
  138. public string Name { get; set; }
  139. public int Number { get; set; }
  140. public List<dynamic> Data { get; set; }= new List<dynamic>();
  141. }
  142. public class StatisticsHotelInfo
  143. {
  144. public string HotelName { get; set; }
  145. public int SingleRoomNum { get; set; }
  146. public int DoubleRoomNum { get; set; }
  147. public int SuiteRoomNum { get; set; }
  148. public int OtherRoomNum { get; set; }
  149. }
  150. #endregion
  151. }