GroupStatementView.cs 51 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073
  1. using Google.Protobuf;
  2. using Newtonsoft.Json;
  3. using OASystem.Domain.Entities.Financial;
  4. using OASystem.Domain.Entities.Groups;
  5. using System;
  6. using System.Collections.Generic;
  7. using System.Linq;
  8. using System.Runtime.Intrinsics.Arm;
  9. using System.Text;
  10. using System.Threading.Tasks;
  11. namespace OASystem.Domain.ViewModels.Statistics
  12. {
  13. /// <summary>
  14. /// 团组报表
  15. /// </summary>
  16. public class GroupStatementView
  17. {
  18. }
  19. /// <summary>
  20. /// 团组报表
  21. /// Items View
  22. /// </summary>
  23. public class GroupStatementItemView
  24. {
  25. /// <summary>
  26. /// 序号
  27. /// </summary>
  28. public int Row_Number { get; set; }
  29. /// <summary>
  30. /// 是否操作完成
  31. /// 0否1是
  32. /// </summary>
  33. public int IsSure { get; set; }
  34. /// <summary>
  35. /// 主键Id
  36. /// 团组Id
  37. /// </summary>
  38. public int Id { get; set; }
  39. /// <summary>
  40. /// 团号
  41. /// </summary>
  42. public string? TourCode { get; set; }
  43. /// <summary>
  44. /// 接团操作人
  45. /// </summary>
  46. public string? JietuanOperator { get; set; }
  47. /// <summary>
  48. /// 团组等级Id
  49. /// </summary>
  50. public int TeamLevId { get; set; }
  51. /// <summary>
  52. /// 团组等级
  53. /// </summary>
  54. public string? TeamLev { get; set; }
  55. /// <summary>
  56. /// 团组名称
  57. /// </summary>
  58. public string? TeamName { get; set; }
  59. /// <summary>
  60. /// 客户名称
  61. /// </summary>
  62. public string? ClientName { get; set; }
  63. /// <summary>
  64. /// 客户所属公司
  65. /// </summary>
  66. public string? ClientUnit { get; set; }
  67. /// <summary>
  68. /// 团组类型Id
  69. /// </summary>
  70. public int TeamTypeId { get; set; }
  71. /// <summary>
  72. /// 团组类型
  73. /// </summary>
  74. public string? TeamType { get; set; }
  75. /// <summary>
  76. /// 出团日期
  77. /// </summary>
  78. public DateTime VisitDate { get; set; }
  79. /// <summary>
  80. /// 出行天数
  81. /// </summary>
  82. public int VisitDays { get; set; }
  83. /// <summary>
  84. /// 出行人数
  85. /// </summary>
  86. public int VisitPNumber { get; set; }
  87. /// <summary>
  88. /// 最后收款时间
  89. /// </summary>
  90. public DateTime? LastCollectionTime { get; set; }
  91. }
  92. /// <summary>
  93. /// 团组报表
  94. /// Details View
  95. /// </summary>
  96. public class GroupStatementDetailsView
  97. {
  98. /// <summary>
  99. /// 费用总计 描述
  100. /// </summary>
  101. public string? FeeTotalStr { get; set; }
  102. /// <summary>
  103. /// 团组收入
  104. /// Data View
  105. /// </summary>
  106. public GroupIncomeView? GroupIncome { get; set; }
  107. /// <summary>
  108. /// 团组收入
  109. /// 描述
  110. /// </summary>
  111. public string? GroupIncomeStr { get; set; }
  112. /// <summary>
  113. /// 团组支出
  114. /// </summary>
  115. public GroupExpenditureView? GroupExpenditure { get; set; }
  116. }
  117. #region 团组收入
  118. /// <summary>
  119. /// 团组收入
  120. /// Data View
  121. /// </summary>
  122. public class GroupIncomeView
  123. {
  124. /// <summary>
  125. /// 应收 Items
  126. /// </summary>
  127. public List<Gsd_ForeignReceivablesView>? Receivables { get; set; }
  128. /// <summary>
  129. /// 应收 Str
  130. /// </summary>
  131. public string? ReceivableStr { get; set; }
  132. /// <summary>
  133. /// 已收 Items
  134. /// </summary>
  135. public List<Gsd_ProceedsReceivedView>? ProceedsReceivedViews { get; set; }
  136. /// <summary>
  137. /// 已收 Str
  138. /// </summary>
  139. public string? ProceedsReceivedStr { get; set; }
  140. /// <summary>
  141. /// 支出费用 Items
  142. /// </summary>
  143. public List<Gsd_ExtraCostsView>? ExtraCostsViews { get; set; }
  144. /// <summary>
  145. /// 支出费用 Str
  146. /// </summary>
  147. public string? ExtraCostsStr { get; set; }
  148. /// <summary>
  149. /// 收款退还 Items
  150. /// </summary>
  151. public List<Gsd_PaymentRefundAndOtherMoneyView>? PaymentRefundAndOtherMoneyViews { get; set; }
  152. /// <summary>
  153. /// 收款退还 Str
  154. /// </summary>
  155. public string? PaymentRefundAndOtherMoneyStr { get; set; }
  156. }
  157. /// <summary>
  158. /// 应收报表
  159. /// </summary>
  160. public class Gsd_ForeignReceivablesView
  161. {
  162. public int Id { get; set; }
  163. public int diid { get; set; }
  164. /// <summary>
  165. /// 添加方式
  166. /// 0 - 账单模块 1 - 成本预算模块 2 - 实际报价
  167. /// </summary>
  168. public int AddingWay { get; set; }
  169. /// <summary>
  170. /// 审核状态 AddingWay==2该项有值
  171. /// 0 - 未审核 1 - 审核通过 2 - 审核不通过
  172. /// </summary>
  173. public int Status { get; set; }
  174. public string StatusStr
  175. {
  176. get
  177. {
  178. string str = "-";
  179. if (AddingWay == 2)
  180. {
  181. if (Status == 0) str = "未审核";
  182. else if (Status == 1) str = "审核通过";
  183. else if (Status == 2) str = "审核不通过";
  184. }
  185. return str;
  186. }
  187. }
  188. public string Auditor { get; set; }
  189. public string AuditorStr { get {
  190. string str = "-";
  191. if (AddingWay == 2)
  192. {
  193. if (Status != 0)
  194. {
  195. str = @$"{Auditor} ";
  196. }
  197. }
  198. return str;
  199. } }
  200. //public DateTime? AuditTime { get; set; }
  201. /// <summary>
  202. /// 费用名称
  203. /// </summary>
  204. public string? PriceName { get; set; }
  205. /// <summary>
  206. /// 单价
  207. /// </summary>
  208. public decimal Price { get; set; } = 0.00M;
  209. /// <summary>
  210. /// 数量
  211. /// </summary>
  212. public int Count { get; set; }
  213. /// <summary>
  214. /// 单位
  215. /// </summary>
  216. public string? Unit { get; set; }
  217. /// <summary>
  218. /// 币种
  219. /// </summary>
  220. public int Currency { get; set; }
  221. /// <summary>
  222. /// 币种 Code
  223. /// </summary>
  224. public string CurrencyCode { get; set; }
  225. /// <summary>
  226. /// 币种 Name
  227. /// </summary>
  228. public string CurrencyName { get; set; }
  229. /// <summary>
  230. /// 汇率
  231. /// </summary>
  232. public decimal Rate { get; set; } = 1.0000M;
  233. /// <summary>
  234. /// 应收金额
  235. /// </summary>
  236. public decimal ItemSumPrice { get; set; } = 0.00M;
  237. public string Remark { get; set; }
  238. }
  239. /// <summary>
  240. /// 已收报表
  241. /// </summary>
  242. public class Gsd_ProceedsReceivedView
  243. {
  244. public int Id { get; set; }
  245. public int Diid { get; set; }
  246. public string SectionTimeDt { get; set; }
  247. /// <summary>
  248. /// 到款时间
  249. /// </summary>
  250. public string SectionTime { get {
  251. string dt = "";
  252. if (!string.IsNullOrEmpty(SectionTimeDt))
  253. {
  254. DateTime validDate;
  255. bool isValid = DateTime.TryParse(SectionTimeDt, out validDate);
  256. if (isValid)
  257. {
  258. dt = validDate.ToString("yyyy-MM-dd");
  259. }
  260. }
  261. return dt;
  262. } }
  263. /// <summary>
  264. /// 费用金额
  265. /// </summary>
  266. public decimal Price { get; set; } = 0.00M;
  267. /// <summary>
  268. /// 币种
  269. /// </summary>
  270. public int Currency { get; set; }
  271. /// <summary>
  272. /// 币种 Code
  273. /// </summary>
  274. public string CurrencyCode { get; set; }
  275. /// <summary>
  276. /// 币种 Name
  277. /// </summary>
  278. public string CurrencyName { get; set; }
  279. /// <summary>
  280. /// 支出单位
  281. /// </summary>
  282. public string? Client { get; set; }
  283. /// <summary>
  284. /// 转账标识Id
  285. /// </summary>
  286. public int ReceivablesType { get; set; }
  287. /// <summary>
  288. /// 转账类型名称
  289. /// </summary>
  290. public string ReceivablesTypeName { get; set; }
  291. /// <summary>
  292. /// 备注
  293. /// </summary>
  294. public string? Remark { get; set; }
  295. }
  296. /// <summary>
  297. /// 超支费用
  298. /// </summary>
  299. public class Gsd_ExtraCostsView
  300. {
  301. public int GECId { get; set; }
  302. public int GECDiId { get; set; }
  303. /// <summary>
  304. /// 费用名称
  305. /// </summary>
  306. public string? PriceName { get; set; }
  307. /// <summary>
  308. /// 付款金额
  309. /// </summary>
  310. public decimal PayMoney { get; set; } = 0.00M;
  311. /// <summary>
  312. /// 付款币种
  313. /// </summary>
  314. public string? PaymentCurrency { get; set; }
  315. /// <summary>
  316. /// 当天汇率
  317. /// </summary>
  318. public decimal DayRate { get; set; } = 1.0000M;
  319. /// <summary>
  320. /// 人民币金额
  321. /// </summary>
  322. public decimal CNYPrice { get; set; } = 0.00M;
  323. /// <summary>
  324. /// 收款方
  325. /// </summary>
  326. public string? Payee { get; set; }
  327. /// <summary>
  328. /// 费用标识
  329. /// -1 未选择 0 公转 1 私转
  330. /// </summary>
  331. public int OrbitalPrivateTransfer { get; set; }
  332. /// <summary>
  333. /// 支付方式
  334. /// </summary>
  335. public string? PayWay { get; set; }
  336. /// <summary>
  337. /// 卡类型
  338. /// </summary>
  339. public string? CardType { get; set; }
  340. /// <summary>
  341. /// 付款状态
  342. /// </summary>
  343. public int IsPay { get; set; }
  344. /// <summary>
  345. /// 申请人
  346. /// </summary>
  347. public string? Applicant { get; set; }
  348. }
  349. /// <summary>
  350. /// 收款退还
  351. /// </summary>
  352. public class Gsd_PaymentRefundAndOtherMoneyView
  353. {
  354. public int Id { get; set; }
  355. public int DiId { get; set; }
  356. /// <summary>
  357. /// 费用名称
  358. /// </summary>
  359. public string? PriceName { get; set; }
  360. /// <summary>
  361. /// 币种code
  362. /// </summary>
  363. public string? PayCurrencyCode { get; set; }
  364. /// <summary>
  365. /// 币种名称
  366. /// </summary>
  367. public string? PayCurrencyName { get; set; }
  368. /// <summary>
  369. /// 费用
  370. /// </summary>
  371. public decimal Price { get; set; } = 0.00M;
  372. /// <summary>
  373. /// 人民币金额
  374. /// </summary>
  375. public decimal CNYPrice { get; set; } = 0.00M;
  376. /// <summary>
  377. /// 当时汇率
  378. /// </summary>
  379. public decimal ThisRate { get; set; } = 1.0000M;
  380. /// <summary>
  381. /// 收款方
  382. /// </summary>
  383. public string? Payee { get; set; }
  384. /// <summary>
  385. /// 付款时间
  386. /// </summary>
  387. public string? PayTime { get; set; }
  388. /// <summary>
  389. /// 费用标识
  390. /// -1 未选择 0 公转 1 私转
  391. /// </summary>
  392. public int OrbitalPrivateTransfer { get; set; }
  393. public string CostMark
  394. {
  395. get
  396. {
  397. return OrbitalPrivateTransfer == 0 ? "公转" : OrbitalPrivateTransfer == 1 ? "私转" : "-";
  398. }
  399. }
  400. /// <summary>
  401. /// 支付方式
  402. /// </summary>
  403. public string? PayType { get; set; }
  404. /// <summary>
  405. /// 付款状态
  406. /// 0 未付款 1 已付款
  407. /// </summary>
  408. public int IsPay { get; set; }
  409. public string IsPayLable
  410. {
  411. get
  412. {
  413. return IsPay == 0 ? "未付款" : IsPay == 1 ? "已付款" : "-";
  414. }
  415. }
  416. /// <summary>
  417. /// 申请人
  418. /// </summary>
  419. public string? Applicant { get; set; }
  420. public string Remark { get; set; }
  421. }
  422. #region 收款退还 View
  423. public class Gsd_PaymentRefundAndOtherMoneyDataSource1View : Grp_CreditCardPayment
  424. {
  425. /// <summary>
  426. /// 申请人
  427. /// </summary>
  428. public string Appliction { get; set; }
  429. public int PrId { get; set; }
  430. public int PrDiId { get; set; }
  431. public string PrPriceName { get; set; }
  432. public decimal PrPrice { get; set; } = 0.00M;
  433. public int PrCurrencyId { get; set; }
  434. public int PrPayType { get; set; }
  435. public int PrPriceType { get; set; }
  436. public string SKTHRemark { get; set; }
  437. };
  438. #endregion
  439. #endregion
  440. #region 团组支出
  441. /// <summary>
  442. /// 团组支出 View
  443. /// </summary>
  444. public class GroupExpenditureView
  445. {
  446. /// <summary>
  447. /// 酒店费用集合
  448. /// </summary>
  449. public List<GroupHotelFeeView>? GroupHotelFeeViews { get; set; }
  450. /// <summary>
  451. /// 酒店费用描述
  452. /// </summary>
  453. public string? GroupHotelFeeStr { get; set; }
  454. /// <summary>
  455. /// 地接费用集合
  456. /// </summary>
  457. public List<GroupCTGGRFeeView>? GroupCTGGRFeeViews { get; set; }
  458. /// <summary>
  459. /// 地接费用描述
  460. /// </summary>
  461. public string? GroupCTGGRFeeStr { get; set; }
  462. /// <summary>
  463. /// 机票费用集合
  464. /// </summary>
  465. public List<GroupAirFeeView>? GroupAirFeeViews { get; set; }
  466. /// <summary>
  467. /// 机票费用描述
  468. /// </summary>
  469. public string? GroupAirFeeStr { get; set; }
  470. /// <summary>
  471. /// 签证费用集合
  472. /// </summary>
  473. public List<GroupVisaFeeView>? GroupVisaFeeViews { get; set; }
  474. /// <summary>
  475. /// 签证费用描述
  476. /// </summary>
  477. public string? GroupVisaFeeStr { get; set; }
  478. /// <summary>
  479. /// 邀请/公务费用集合
  480. /// </summary>
  481. public List<GroupInvitationalFeeView>? GroupInvitationalFeeViews { get; set; }
  482. /// <summary>
  483. /// 邀请/公务费用描述
  484. /// </summary>
  485. public string? GroupInvitationalFeeStr { get; set; }
  486. /// <summary>
  487. /// 保险费用集合
  488. /// </summary>
  489. public List<GroupInsuranceFeeView>? GroupInsuranceFeeViews { get; set; }
  490. /// <summary>
  491. /// 保险费用描述
  492. /// </summary>
  493. public string? GroupInsuranceFeeStr { get; set; }
  494. /// <summary>
  495. /// 增减款项费用集合
  496. /// </summary>
  497. public List<GroupDecreaseFeeView>? GroupDecreaseFeeViews { get; set; }
  498. /// <summary>
  499. /// 增减款项费用描述
  500. /// </summary>
  501. public string? GroupDecreaseFeeStr { get; set; }
  502. public List<GroupRoyaltyFeeView> GroupRoyaltyFeeViews { get; set; }
  503. public string? GroupRoyaltyFeeStr { get; set; }
  504. public List<GroupReimburseFeeInfoView> GroupReimburseFeeViews { get; set; }
  505. public string? GroupReimburseFeeStr { get; set; }
  506. }
  507. /// <summary>
  508. /// 酒店费用View
  509. /// </summary>
  510. public class GroupHotelFeeView
  511. {
  512. /// <summary>
  513. /// 团组Id
  514. /// </summary>
  515. public int HrDiId { get; set; }
  516. /// <summary>
  517. /// 酒店Id
  518. /// </summary>
  519. public int HrId { get; set; }
  520. /// <summary>
  521. /// 城市
  522. /// </summary>
  523. public string? City { get; set; }
  524. /// <summary>
  525. /// 酒店名称
  526. /// </summary>
  527. public string? HotelName { get; set; }
  528. /// <summary>
  529. /// 入住时间
  530. /// </summary>
  531. public string? CheckInDate { get; set; }
  532. /// <summary>
  533. /// 离店时间
  534. /// </summary>
  535. public string? CheckOutDate { get; set; }
  536. /// <summary>
  537. /// 单间价格
  538. /// </summary>
  539. public decimal SingleRoomPrice { get; set; } = 0.00M;
  540. /// <summary>
  541. /// 单间数量
  542. /// </summary>
  543. public int SingleRoomCount { get; set; }
  544. /// <summary>
  545. /// 双间价格
  546. /// </summary>
  547. public decimal DoubleRoomPrice { get; set; } = 0.00M;
  548. /// <summary>
  549. /// 双间数量
  550. /// </summary>
  551. public int DoubleRoomCount { get; set; }
  552. /// <summary>
  553. /// 套房价格
  554. /// </summary>
  555. public decimal SuiteRoomPrice { get; set; } = 0.00M;
  556. /// <summary>
  557. /// 套房数量
  558. /// </summary>
  559. public int SuiteRoomCount { get; set; }
  560. /// <summary>
  561. /// 其他房型价格
  562. /// </summary>
  563. public decimal OtherRoomPrice { get; set; } = 0.00M;
  564. /// <summary>
  565. /// 其他房型数量
  566. /// </summary>
  567. public int OtherRoomCount { get; set; }
  568. /// <summary>
  569. /// 房间费用
  570. /// </summary>
  571. public decimal RoomPrice { get; set; }
  572. /// <summary>
  573. /// 房间费用币种
  574. /// </summary>
  575. public string RoomPriceCurrency { get; set; }
  576. /// <summary>
  577. /// 房间费用提示信息
  578. /// </summary>
  579. public string RoomInfoTips { get; set; }
  580. /// <summary>
  581. /// excel Label
  582. /// </summary>
  583. public string RoomFeeLabel { get { return $"{RoomPrice.ToString("#0.00")} {RoomPriceCurrency}"; } }
  584. /// <summary>
  585. /// 早餐费用
  586. /// </summary>
  587. public decimal BreakfastPrice { get; set; } = 0.00M;
  588. /// <summary>
  589. /// 早餐币种
  590. /// </summary>
  591. public string? BreakfastCurrency { get; set; }
  592. /// <summary>
  593. /// 早餐提示消息
  594. /// </summary>
  595. public string BreakfastInfoTips { get; set; }
  596. /// <summary>
  597. /// excel Label
  598. /// </summary>
  599. public string BreakfastFeeLabel { get { return $"{BreakfastPrice.ToString("#0.00")} {BreakfastCurrency}"; } }
  600. ///// <summary>
  601. ///// 由地接支付
  602. ///// 0 是 1否
  603. ///// </summary>
  604. //public int Isoppay { get; set; }
  605. /// <summary>
  606. /// 地税
  607. /// </summary>
  608. public decimal GovernmentRent { get; set; } = 0.00M;
  609. /// <summary>
  610. /// 地税币种
  611. /// </summary>
  612. public string? GovernmentRentCurrency { get; set; }
  613. /// <summary>
  614. /// 地税提示消息
  615. /// </summary>
  616. public string GovernmentRentTips { get; set; }
  617. /// <summary>
  618. /// excel Label
  619. /// </summary>
  620. public string GovernmentRentFeeLabel { get { return $"{GovernmentRent.ToString("#0.00")} {GovernmentRentCurrency}"; } }
  621. /// <summary>
  622. /// 城市价格
  623. /// </summary>
  624. public decimal CityTax { get; set; } = 0.00M;
  625. /// <summary>
  626. /// 城市币种
  627. /// </summary>
  628. public string? CityTaxCurrency { get; set; }
  629. /// <summary>
  630. /// 城市税提示信息
  631. /// </summary>
  632. public string? CityTaxTips { get; set; }
  633. /// <summary>
  634. /// excel Label
  635. /// </summary>
  636. public string CityTaxFeeLabel { get { return $"{CityTax.ToString("#0.00")} {CityTaxCurrency}"; } }
  637. /// <summary>
  638. /// 信用卡金额
  639. /// </summary>
  640. public decimal PayMoney { get; set; } = 0.00M;
  641. /// <summary>
  642. /// 信用卡金额币种
  643. /// </summary>
  644. public string? PaymentCurrency { get; set; }
  645. /// <summary>
  646. /// 人民币金额
  647. /// </summary>
  648. public decimal CNYPrice { get; set; } = 0.00M;
  649. /// <summary>
  650. /// 人民币金额
  651. /// </summary>
  652. public string CNYPriceLabel { get { return $"{CNYPrice.ToString("#0.00")} CNY"; } }
  653. ///// <summary>
  654. ///// 当天汇率
  655. ///// </summary>
  656. //public decimal DayRate { get; set; } = 0.0000M;
  657. ///// <summary>
  658. ///// 币种汇率
  659. ///// </summary>
  660. //public string? CurrencyRateStr { get; set; }
  661. /// <summary>
  662. /// 收款方
  663. /// </summary>
  664. public string? Payee { get; set; }
  665. ///// <summary>
  666. ///// 费用标识
  667. ///// -1 未选择 0 公转 1 私转
  668. ///// </summary>
  669. public int OrbitalPrivateTransfer { get; set; }
  670. public string CostMark
  671. {
  672. get
  673. {
  674. var label = string.Empty;
  675. if (OrbitalPrivateTransfer == 0) label = "公转";
  676. else if (OrbitalPrivateTransfer == 1) label = "私转";
  677. return label;
  678. }
  679. }
  680. /// <summary>
  681. /// 支付方式
  682. /// </summary>
  683. public string? PayWay { get; set; }
  684. ///// <summary>
  685. ///// 卡类型
  686. ///// </summary>
  687. //public string? CardType { get; set; }
  688. /// <summary>
  689. /// 是否支付
  690. /// -1 未选择 0 未付款 1 已付款 2 其它费用子项未付款
  691. /// </summary>
  692. public int IsPay { get; set; }
  693. public string IsPayLable
  694. {
  695. get
  696. {
  697. var label = $"未选择";
  698. if (IsPay == 0) label = "未付款";
  699. else if (IsPay == 1) label = "已付款";
  700. else if (IsPay == 2) label = "其它费用子项未付款";
  701. return label;
  702. }
  703. }
  704. /// <summary>
  705. ///
  706. /// </summary>
  707. public string PayTips { get; set; }
  708. /// <summary>
  709. /// 操作人
  710. /// </summary>
  711. public string? Applicant { get; set; }
  712. public string Remark { get; set; }
  713. }
  714. /// <summary>
  715. /// 地接费用View
  716. /// </summary>
  717. public class GroupCTGGRFeeView
  718. {
  719. public int CTGGRDiId { get; set; }
  720. public int CTGGRId { get; set; }
  721. /// <summary>
  722. /// 地区
  723. /// </summary>
  724. public string? Area { get; set; }
  725. /// <summary>
  726. /// 费用名称
  727. /// </summary>
  728. public string? PriceName { get; set; }
  729. /// <summary>
  730. /// 费用描述
  731. /// </summary>
  732. public string? PriceContent { get; set; }
  733. /// <summary>
  734. /// 付款金额
  735. /// </summary>
  736. public decimal PayMoney { get; set; } = 0.00M;
  737. /// <summary>
  738. /// 付款币种
  739. /// </summary>
  740. public string? PaymentCurrency { get; set; }
  741. /// <summary>
  742. /// 此次付款百分比
  743. /// </summary>
  744. public decimal PayPercentage { get; set; } = 0.00M;
  745. /// <summary>
  746. /// 已付款金额
  747. /// </summary>
  748. public decimal AmountPaid { get; set; } = 0.00M;
  749. /// <summary>
  750. /// 尾款
  751. /// </summary>
  752. public decimal BalancePayment { get; set; } = 0.00M;
  753. /// <summary>
  754. /// 消费日期
  755. /// </summary>
  756. public DateTime DatePrice { get; set; }
  757. /// <summary>
  758. /// 当时汇率
  759. /// </summary>
  760. public decimal DayRate { get; set; } = 1.0000M;
  761. /// <summary>
  762. /// 付款人民币金额
  763. /// </summary>
  764. public decimal CNYPrice { get; set; }
  765. /// <summary>
  766. /// 付款金额
  767. /// </summary>
  768. public string? Payee { get; set; }
  769. /// <summary>
  770. /// 付款时间
  771. /// </summary>
  772. public string? AuditGMDate { get; set; }
  773. /// <summary>
  774. /// 费用标识
  775. /// -1 未选择 0 公转 1 私转
  776. /// </summary>
  777. public int OrbitalPrivateTransfer { get; set; }
  778. /// <summary>
  779. /// 费用标识Text
  780. /// </summary>
  781. public string CostMark
  782. {
  783. get
  784. {
  785. return OrbitalPrivateTransfer == 0 ? "公转" : OrbitalPrivateTransfer == 1 ? "私转" : "-";
  786. }
  787. }
  788. /// <summary>
  789. /// 支付方式
  790. /// </summary>
  791. public string? PayWay { get; set; }
  792. /// <summary>
  793. /// 是否支付
  794. /// -1 未选择 0 未付款 1 已付款
  795. /// </summary>
  796. public int IsPay { get; set; }
  797. public string IsPayLabel
  798. {
  799. get
  800. {
  801. return IsPay == 0 ? "未付款" : IsPay == 1 ? "已付款" : "-";
  802. }
  803. }
  804. /// <summary>
  805. /// 操作人
  806. /// </summary>
  807. public string? Applicant { get; set; }
  808. }
  809. /// <summary>
  810. /// 机票费用View
  811. /// </summary>
  812. public class GroupAirFeeView
  813. {
  814. public int AirId { get; set; }
  815. public int AirDiId { get; set; }
  816. /// <summary>
  817. /// 舱位类型
  818. /// </summary>
  819. public string? AirTypeName { get; set; }
  820. /// <summary>
  821. /// 航班号
  822. /// </summary>
  823. public string? FlightsCode { get; set; }
  824. /// <summary>
  825. /// 城市A-B
  826. /// </summary>
  827. public string? FlightsCity { get; set; }
  828. /// <summary>
  829. /// 航班日期
  830. /// </summary>
  831. public string? FlightsDate { get; set; }
  832. /// <summary>
  833. /// 航班时间
  834. /// </summary>
  835. public string? FlightsTime { get; set; }
  836. /// <summary>
  837. /// 客户姓名
  838. /// </summary>
  839. public string? ClientName { get; set; }
  840. /// <summary>
  841. /// 客户人数
  842. /// </summary>
  843. public int ClientNum { get; set; }
  844. /// <summary>
  845. /// 付款金额
  846. /// </summary>
  847. public decimal PayMoney { get; set; } = 0.00M;
  848. /// <summary>
  849. /// 付款币种
  850. /// </summary>
  851. public string? PayMoneyCurrency { get; set; }
  852. /// <summary>
  853. /// CNY 金额
  854. /// </summary>
  855. public decimal CNYPrice { get; set; } = 0.00M;
  856. /// <summary>
  857. /// 当时汇率
  858. /// </summary>
  859. public decimal DayRate { get; set; } = 1.0000M;
  860. /// <summary>
  861. /// 付款时间
  862. /// </summary>
  863. public string? AuditGMDate { get; set; }
  864. /// <summary>
  865. /// 收款方
  866. /// </summary>
  867. public string? Payee { get; set; }
  868. /// <summary>
  869. /// 费用标识
  870. /// -1 未选择 0 公转 1 私转
  871. /// </summary>
  872. public int OrbitalPrivateTransfer { get; set; }
  873. /// <summary>
  874. /// 支付方式
  875. /// </summary>
  876. public string? PayWay { get; set; }
  877. /// <summary>
  878. /// 卡类型
  879. /// </summary>
  880. public string? CardType { get; set; }
  881. /// <summary>
  882. /// 是否支付
  883. /// -1 未选择 0 未付款 1 已付款
  884. /// </summary>
  885. public int IsPay { get; set; }
  886. /// <summary>
  887. /// 操作人
  888. /// </summary>
  889. public string? Applicant { get; set; }
  890. /// <summary>
  891. /// SetDataId
  892. /// </summary>
  893. public int CType { get; set; }
  894. }
  895. /// <summary>
  896. /// 签证费用View
  897. /// </summary>
  898. public class GroupVisaFeeView
  899. {
  900. public int VisaId { get; set; }
  901. public int VisaDiId { get; set; }
  902. /// <summary>
  903. /// 客户名称
  904. /// </summary>
  905. public string? VisaClient { get; set; }
  906. /// <summary>
  907. /// 付款金额
  908. /// </summary>
  909. public decimal PayMoney { get; set; } = 0.00M;
  910. /// <summary>
  911. /// 付款金额
  912. /// </summary>
  913. public decimal CNYPrice { get; set; } = 0.00M;
  914. /// <summary>
  915. /// 付款币种
  916. /// </summary>
  917. public string? PayMoneyCurrency { get; set; }
  918. /// <summary>
  919. /// 当时汇率
  920. /// </summary>
  921. public decimal DayRate { get; set; } = 1.0000M;
  922. /// <summary>
  923. /// 付款时间
  924. /// </summary>
  925. public string? AuditGMDate { get; set; }
  926. /// <summary>
  927. /// 收款方
  928. /// </summary>
  929. public string? Payee { get; set; }
  930. /// <summary>
  931. /// 费用标识
  932. /// -1 未选择 0 公转 1 私转
  933. /// </summary>
  934. public int OrbitalPrivateTransfer { get; set; }
  935. /// <summary>
  936. /// 支付方式
  937. /// </summary>
  938. public string? PayWay { get; set; }
  939. /// <summary>
  940. /// 卡类型
  941. /// </summary>
  942. public string? CardType { get; set; }
  943. /// <summary>
  944. /// 是否支付
  945. /// -1 未选择 0 未付款 1 已付款
  946. /// </summary>
  947. public int IsPay { get; set; }
  948. /// <summary>
  949. /// 操作人
  950. /// </summary>
  951. public string? Applicant { get; set; }
  952. }
  953. /// <summary>
  954. /// 邀请/公务费用View
  955. /// </summary>
  956. public class GroupInvitationalFeeView
  957. {
  958. public int IOAId { get; set; }
  959. public int IOADiId { get; set; }
  960. /// <summary>
  961. /// 邀请方地区
  962. /// </summary>
  963. public string? InviterArea { get; set; }
  964. /// <summary>
  965. /// 邀请方
  966. /// </summary>
  967. public string? Inviter { get; set; }
  968. /// <summary>
  969. /// 邀请时间
  970. /// </summary>
  971. public string? InviteTime { get; set; }
  972. /// <summary>
  973. /// 邀请函费用
  974. /// </summary>
  975. public decimal InviteCost { get; set; } = 0.00M;
  976. /// <summary>
  977. /// 邀请函币种
  978. /// </summary>
  979. public string? InviteCurrency { get; set; }
  980. /// <summary>
  981. /// 快递费用
  982. /// </summary>
  983. public decimal SendCost { get; set; } = 0.00M;
  984. /// <summary>
  985. /// 快递币种
  986. /// </summary>
  987. public string? SendCurrency { get; set; }
  988. /// <summary>
  989. /// 活动费用
  990. /// </summary>
  991. public decimal EventsCost { get; set; } = 0.00M;
  992. /// <summary>
  993. /// 活动币种
  994. /// </summary>
  995. public string? EventsCurrency { get; set; }
  996. /// <summary>
  997. /// 翻译费用
  998. /// </summary>
  999. public decimal TranslateCost { get; set; } = 0.00M;
  1000. /// <summary>
  1001. /// 翻译币种
  1002. /// </summary>
  1003. public string? TranslateCurrency { get; set; }
  1004. /// <summary>
  1005. /// 付款金额
  1006. /// </summary>
  1007. public decimal PayMoney { get; set; } = 0.00M;
  1008. /// <summary>
  1009. /// 付款币种
  1010. /// </summary>
  1011. public string? PaymentCurrency { get; set; }
  1012. /// <summary>
  1013. /// 人民币费用
  1014. /// </summary>
  1015. public decimal CNYPrice { get; set; } = 0.00M;
  1016. /// <summary>
  1017. /// 人民币费用(后台计算)
  1018. /// </summary>
  1019. public decimal CNYPrice2 { get; set; } = 0.00M;
  1020. /// <summary>
  1021. /// 当时币种汇率
  1022. /// </summary>
  1023. public string? CurrencyRateStr { get; set; }
  1024. /// <summary>
  1025. /// 收款方
  1026. /// </summary>
  1027. public string? Payee { get; set; }
  1028. /// <summary>
  1029. /// 付款时间
  1030. /// </summary>
  1031. public string? AuditGMDate { get; set; }
  1032. /// <summary>
  1033. /// 费用标识
  1034. /// -1 未选择 0 公转 1 私转
  1035. /// </summary>
  1036. public int OrbitalPrivateTransfer { get; set; }
  1037. /// <summary>
  1038. /// 支付方式
  1039. /// </summary>
  1040. public string? PayWay { get; set; }
  1041. /// <summary>
  1042. /// 是否支付
  1043. /// -1 未选择 0 未付款 1 已付款
  1044. /// </summary>
  1045. public int IsPay { get; set; }
  1046. /// <summary>
  1047. /// 操作人
  1048. /// </summary>
  1049. public string? Applicant { get; set; }
  1050. }
  1051. /// <summary>
  1052. /// 保险费用View
  1053. /// </summary>
  1054. public class GroupInsuranceFeeView
  1055. {
  1056. public int InsuranceId { get; set; }
  1057. public int InsuranceDiId { get; set; }
  1058. /// <summary>
  1059. /// 客户名称
  1060. /// </summary>
  1061. public string? ClientName { get; set; }
  1062. /// <summary>
  1063. /// 付款金额
  1064. /// </summary>
  1065. public decimal PayMoney { get; set; } = 0.00M;
  1066. /// <summary>
  1067. /// 付款币种
  1068. /// </summary>
  1069. public string? PayMoneyCurrency { get; set; }
  1070. /// <summary>
  1071. /// 人民币金额
  1072. /// </summary>
  1073. public decimal CNYPrice { get; set; } = 0.00M;
  1074. /// <summary>
  1075. /// 付款时间
  1076. /// </summary>
  1077. public string? AuditGMDate { get; set; }
  1078. /// <summary>
  1079. /// 收款方
  1080. /// </summary>
  1081. public string? Payee { get; set; }
  1082. /// <summary>
  1083. /// 费用标识
  1084. /// -1 未选择 0 公转 1 私转
  1085. /// </summary>
  1086. public int OrbitalPrivateTransfer { get; set; }
  1087. /// <summary>
  1088. /// 支付方式
  1089. /// </summary>
  1090. public string? PayWay { get; set; }
  1091. /// <summary>
  1092. /// 是否支付
  1093. /// -1 未选择 0 未付款 1 已付款
  1094. /// </summary>
  1095. public int IsPay { get; set; }
  1096. /// <summary>
  1097. /// 操作人
  1098. /// </summary>
  1099. public string? Applicant { get; set; }
  1100. }
  1101. /// <summary>
  1102. /// 增减款项View
  1103. /// </summary>
  1104. public class GroupDecreaseFeeView
  1105. {
  1106. public int DPId { get; set; }
  1107. public int DPDiId { get; set; }
  1108. /// <summary>
  1109. /// 费用名称
  1110. /// </summary>
  1111. public string? PriceName { get; set; }
  1112. /// <summary>
  1113. /// 付款金额
  1114. /// </summary>
  1115. public decimal PayMoney { get; set; } = 0.00M;
  1116. /// <summary>
  1117. /// 付款币种
  1118. /// </summary>
  1119. public string? PayMoneyCurrency { get; set; }
  1120. /// <summary>
  1121. /// 当时汇率
  1122. /// </summary>
  1123. public decimal DayRate { get; set; } = 1.0000M;
  1124. /// <summary>
  1125. /// 人民币金额
  1126. /// </summary>
  1127. public decimal CNYPrice { get; set; } = 0.00M;
  1128. /// <summary>
  1129. /// 付款时间
  1130. /// </summary>
  1131. public string? AuditGMDate { get; set; }
  1132. /// <summary>
  1133. /// 收款方
  1134. /// </summary>
  1135. public string? Payee { get; set; }
  1136. /// <summary>
  1137. /// 费用标识
  1138. /// -1 未选择 0 公转 1 私转
  1139. /// </summary>
  1140. public int OrbitalPrivateTransfer { get; set; }
  1141. /// <summary>
  1142. /// 支付方式
  1143. /// </summary>
  1144. public string? PayWay { get; set; }
  1145. /// <summary>
  1146. /// 是否支付
  1147. /// -1 未选择 0 未付款 1 已付款
  1148. /// </summary>
  1149. public int IsPay { get; set; }
  1150. /// <summary>
  1151. /// 操作人
  1152. /// </summary>
  1153. public string? Applicant { get; set; }
  1154. }
  1155. public class GroupRoyaltyFeeInfo
  1156. {
  1157. public int GroupId { get; set; }
  1158. public string OverviewInfo { get; set; }
  1159. [JsonIgnore]
  1160. public string DetailedInfo { get; set; }
  1161. public string[] DetailedInfoText
  1162. {
  1163. get
  1164. {
  1165. var jsonArray = Array.Empty<string>();
  1166. string str = DetailedInfo;
  1167. if (string.IsNullOrWhiteSpace(str)) return jsonArray;
  1168. str = str.Trim();
  1169. if ((str.StartsWith("{") && str.EndsWith("}")) || // 检查是否是 JSON 对象
  1170. (str.StartsWith("[") && str.EndsWith("]"))) // 检查是否是 JSON 数组
  1171. {
  1172. try
  1173. {
  1174. return JsonConvert.DeserializeObject<string[]>(str);
  1175. }
  1176. catch (JsonException)
  1177. {
  1178. return jsonArray;
  1179. }
  1180. }
  1181. return jsonArray;
  1182. }
  1183. }
  1184. public string DetailedInfoExcelText
  1185. {
  1186. get
  1187. {
  1188. string label = string.Empty;
  1189. var array = DetailedInfoText;
  1190. if (!array.Any()) return label;
  1191. foreach (var item in array) label += $"{item}\n";
  1192. if (label.EndsWith(@"\n")) label = label.Substring(0, label.Length - 2);
  1193. return label;
  1194. }
  1195. }
  1196. public decimal Amount { get; set; }
  1197. public int IsConfirm { get; set; }
  1198. public string IsConfrimText { get { return IsConfirm == 1 ? "已确认" : "未确认"; } }
  1199. public int IsSeed { get; set; }
  1200. public string IsSeedText { get { return IsSeed == 1 ? "已发放" : "未发放"; } }
  1201. public string RoyaltyUserName { get; set; }
  1202. public string CreateUserName { get; set; }
  1203. public DateTime CreateTime { get; set; }
  1204. }
  1205. public class GroupReimburseFeeInfoView
  1206. {
  1207. /// <summary>
  1208. /// 金额总计
  1209. /// </summary>
  1210. public decimal TotalAmt { get; set; }
  1211. public string Currency { get; set; } = "CNY";
  1212. //public GroupReimburseFeeSubInfo[]? FeeItems { get; set; }
  1213. /// <summary>
  1214. /// 申请原因
  1215. /// </summary>
  1216. public string AppReason { get; set; }
  1217. public int FAudit { get; set; }
  1218. public int MAudit { get; set; }
  1219. /// <summary>
  1220. /// 审核状态
  1221. /// </summary>
  1222. public string AuditStatusFlg
  1223. {
  1224. get
  1225. {
  1226. var fLabel = FAudit == 0 ? "财务未审核" : FAudit == 1 ? "财务已审核" : "财务审核未通过";
  1227. var mLabel = MAudit == 0 ? "总经理未审核" : MAudit == 1 ? "总经理已审核" : "总经理审核未通过";
  1228. return $"{fLabel}<br />{mLabel}";
  1229. }
  1230. }
  1231. /// <summary>
  1232. /// 付款描述
  1233. /// </summary>
  1234. public string PayStatusFlag { get; set; }
  1235. /// <summary>
  1236. /// 转账标识
  1237. /// </summary>
  1238. public string TransferLabel { get; set; }
  1239. /// <summary>
  1240. /// 申请公司
  1241. /// </summary>
  1242. public string ApplyComp { get; set; }
  1243. /// <summary>
  1244. /// 申请人
  1245. /// </summary>
  1246. public string ApplyName { get; set; }
  1247. /// <summary>
  1248. /// 申请时间
  1249. /// </summary>
  1250. public DateTime ApplyTime { get; set; }
  1251. }
  1252. public class GroupReimburseFeeSubInfo
  1253. {
  1254. /// <summary>
  1255. /// 费用名称
  1256. /// </summary>
  1257. public string? PriceName { get; set; }
  1258. /// <summary>
  1259. /// 数量
  1260. /// </summary>
  1261. public decimal Quantity { get; set; }
  1262. /// <summary>
  1263. /// 单价
  1264. /// </summary>
  1265. public decimal Price { get; set; }
  1266. /// <summary>
  1267. /// 小记
  1268. /// </summary>
  1269. public decimal SubTotal { get; set; }
  1270. public string Currency { get; set; } = "CNY";
  1271. public string Remark { get; set; }
  1272. }
  1273. /// <summary>
  1274. /// 操作人员提成View
  1275. /// </summary>
  1276. public class GroupRoyaltyFeeView
  1277. {
  1278. public int GroupId { get; set; }
  1279. public string OverviewInfo { get; set; }
  1280. public string[] DetailedInfoText { get; set; }
  1281. public decimal Amount { get; set; }
  1282. public string IsConfrimText { get; set; }
  1283. public string IsSeedText { get; set; }
  1284. public string RoyaltyUserName { get; set; }
  1285. public string CreateUserName { get; set; }
  1286. public DateTime CreateTime { get; set; }
  1287. }
  1288. #endregion
  1289. #region 团组统计报表下载
  1290. /// <summary>
  1291. /// Excel 签证费用View
  1292. /// </summary>
  1293. public class GroupVisaFeeExcelView
  1294. {
  1295. public int VisaId { get; set; }
  1296. public int VisaDiId { get; set; }
  1297. /// <summary>
  1298. /// 客户名称
  1299. /// </summary>
  1300. public string? VisaClient { get; set; }
  1301. /// <summary>
  1302. /// 付款金额
  1303. /// </summary>
  1304. public decimal PayMoney { get; set; } = 0.00M;
  1305. /// <summary>
  1306. /// 付款金额
  1307. /// </summary>
  1308. public decimal CNYPrice { get; set; } = 0.00M;
  1309. /// <summary>
  1310. /// 付款币种
  1311. /// </summary>
  1312. public string? PayMoneyCurrency { get; set; }
  1313. /// <summary>
  1314. /// 当时汇率
  1315. /// </summary>
  1316. public decimal DayRate { get; set; } = 1.0000M;
  1317. /// <summary>
  1318. /// 付款时间
  1319. /// </summary>
  1320. public string? AuditGMDate { get; set; }
  1321. /// <summary>
  1322. /// 收款方
  1323. /// </summary>
  1324. public string? Payee { get; set; }
  1325. /// <summary>
  1326. /// 费用标识
  1327. /// -1 未选择 0 公转 1 私转
  1328. /// </summary>
  1329. public string CostMark { get; set; }
  1330. /// <summary>
  1331. /// 支付方式
  1332. /// </summary>
  1333. public string? PaymentModes { get; set; }
  1334. /// <summary>
  1335. /// 卡类型
  1336. /// </summary>
  1337. public string? CardType { get; set; }
  1338. /// <summary>
  1339. /// 是否支付
  1340. /// </summary>
  1341. public string IsPay { get; set; }
  1342. /// <summary>
  1343. /// 付款时间
  1344. /// </summary>
  1345. public string ConsumptionDate { get; set; }
  1346. public string Remark { get; set; }
  1347. /// <summary>
  1348. /// 操作人
  1349. /// </summary>
  1350. public string? Applicant { get; set; }
  1351. public DateTime CreateTime { get; set; }
  1352. }
  1353. /// <summary>
  1354. /// Excel 商邀费用View
  1355. /// </summary>
  1356. public class GroupOAFeeExcelView
  1357. {
  1358. public int IOAId { get; set; }
  1359. public int IOADiId { get; set; }
  1360. /// <summary>
  1361. /// 邀请方地区
  1362. /// </summary>
  1363. public string? InviterArea { get; set; }
  1364. /// <summary>
  1365. /// 邀请方
  1366. /// </summary>
  1367. public string? Inviter { get; set; }
  1368. /// <summary>
  1369. /// 邀请时间
  1370. /// </summary>
  1371. public string? InviteTime { get; set; }
  1372. /// <summary>
  1373. /// 邀请函费用
  1374. /// </summary>
  1375. public decimal InviteCost { get; set; } = 0.00M;
  1376. /// <summary>
  1377. /// 邀请函币种
  1378. /// </summary>
  1379. public string? InviteCurrency { get; set; }
  1380. /// <summary>
  1381. /// 快递费用
  1382. /// </summary>
  1383. public decimal SendCost { get; set; } = 0.00M;
  1384. /// <summary>
  1385. /// 快递币种
  1386. /// </summary>
  1387. public string? SendCurrency { get; set; }
  1388. /// <summary>
  1389. /// 活动费用
  1390. /// </summary>
  1391. public decimal EventsCost { get; set; } = 0.00M;
  1392. /// <summary>
  1393. /// 活动币种
  1394. /// </summary>
  1395. public string? EventsCurrency { get; set; }
  1396. /// <summary>
  1397. /// 翻译费用
  1398. /// </summary>
  1399. public decimal TranslateCost { get; set; } = 0.00M;
  1400. /// <summary>
  1401. /// 翻译币种
  1402. /// </summary>
  1403. public string? TranslateCurrency { get; set; }
  1404. /// <summary>
  1405. /// 付款金额
  1406. /// </summary>
  1407. public decimal PayMoney { get; set; } = 0.00M;
  1408. /// <summary>
  1409. /// 付款币种汇率
  1410. /// </summary>
  1411. public decimal DayRate { get; set; } = 0.0000M;
  1412. /// <summary>
  1413. /// 付款币种
  1414. /// </summary>
  1415. public string? PaymentCurrency { get; set; }
  1416. /// <summary>
  1417. /// 人民币费用
  1418. /// </summary>
  1419. public decimal CNYPrice { get; set; } = 0.00M;
  1420. /// <summary>
  1421. /// 收款方
  1422. /// </summary>
  1423. public string? Payee { get; set; }
  1424. /// <summary>
  1425. /// 消费日期
  1426. /// </summary>
  1427. public string ConsumptionDate { get; set; }
  1428. /// <summary>
  1429. /// 费用标识
  1430. /// </summary>
  1431. public string CostMark { get; set; }
  1432. /// <summary>
  1433. /// 支付标识
  1434. /// </summary>
  1435. public string IsPay { get; set; }
  1436. /// <summary>
  1437. /// 支付方式
  1438. /// </summary>
  1439. public string PaymentModes { get; set; }
  1440. /// <summary>
  1441. /// 备注
  1442. /// </summary>
  1443. public string Remark { get; set; }
  1444. /// <summary>
  1445. /// 审核时间
  1446. /// </summary>
  1447. public string? AuditGMDate { get; set; }
  1448. /// <summary>
  1449. /// 操作人
  1450. /// </summary>
  1451. public string? Applicant { get; set; }
  1452. public DateTime CreateTime { get; set; }
  1453. }
  1454. /// <summary>
  1455. /// Excel 机票费用View
  1456. /// </summary>
  1457. public class GroupAirTicketExcelView
  1458. {
  1459. public int AirId { get; set; }
  1460. public int AirDiId { get; set; }
  1461. /// <summary>
  1462. /// 航班号
  1463. /// </summary>
  1464. public string? FlightsCode { get; set; }
  1465. /// <summary>
  1466. /// 城市A-B
  1467. /// </summary>
  1468. public string? FlightsCity { get; set; }
  1469. /// <summary>
  1470. /// 舱位类型
  1471. /// </summary>
  1472. public string? AirTypeName { get; set; }
  1473. /// <summary>
  1474. /// 航班日期
  1475. /// </summary>
  1476. public string? FlightsDate { get; set; }
  1477. /// <summary>
  1478. /// 航班时间
  1479. /// </summary>
  1480. public string? FlightsTime { get; set; }
  1481. /// <summary>
  1482. /// 客户姓名
  1483. /// </summary>
  1484. public string? ClientName { get; set; }
  1485. /// <summary>
  1486. /// 客户人数
  1487. /// </summary>
  1488. public int ClientNum { get; set; }
  1489. /// <summary>
  1490. /// 费用描述
  1491. /// </summary>
  1492. public string PriceDescription { get; set; }
  1493. /// <summary>
  1494. /// 付款金额
  1495. /// </summary>
  1496. public decimal PayMoney { get; set; } = 0.00M;
  1497. /// <summary>
  1498. /// 当时汇率
  1499. /// </summary>
  1500. public decimal DayRate { get; set; } = 1.0000M;
  1501. /// <summary>
  1502. /// 付款币种
  1503. /// </summary>
  1504. public string? PayMoneyCurrency { get; set; }
  1505. /// <summary>
  1506. /// CNY 金额
  1507. /// </summary>
  1508. public decimal CNYPrice { get; set; } = 0.00M;
  1509. /// <summary>
  1510. /// 付款时间
  1511. /// </summary>
  1512. public string ConsumptionDate { get; set; }
  1513. /// <summary>
  1514. /// 收款方
  1515. /// </summary>
  1516. public string? Payee { get; set; }
  1517. /// <summary>
  1518. /// 费用标识
  1519. /// </summary>
  1520. public string CostMark { get; set; }
  1521. /// <summary>
  1522. /// 是否支付
  1523. /// </summary>
  1524. public string IsPay { get; set; }
  1525. /// <summary>
  1526. /// 支付方式
  1527. /// </summary>
  1528. public string? PaymentModes { get; set; }
  1529. /// <summary>
  1530. /// 卡类型
  1531. /// </summary>
  1532. public string? CardType { get; set; }
  1533. /// <summary>
  1534. /// 审核时间
  1535. /// </summary>
  1536. public string? AuditGMDate { get; set; }
  1537. /// <summary>
  1538. /// 操作人
  1539. /// </summary>
  1540. public string? Applicant { get; set; }
  1541. /// <summary>
  1542. /// 创建时间
  1543. /// </summary>
  1544. public DateTime CreateTime { get; set; }
  1545. /// <summary>
  1546. /// SetDataId
  1547. /// </summary>
  1548. public int CType { get; set; }
  1549. public string Remark { get; set; }
  1550. }
  1551. /// <summary>
  1552. /// Excel 保险费用View
  1553. /// </summary>
  1554. public class GroupInsureExcelView
  1555. {
  1556. public int InsuranceId { get; set; }
  1557. public int InsuranceDiId { get; set; }
  1558. /// <summary>
  1559. /// 客户名称
  1560. /// </summary>
  1561. public string? ClientName { get; set; }
  1562. /// <summary>
  1563. /// 付款金额
  1564. /// </summary>
  1565. public decimal PayMoney { get; set; } = 0.00M;
  1566. /// <summary>
  1567. /// 付款币种
  1568. /// </summary>
  1569. public string? PayMoneyCurrency { get; set; }
  1570. /// <summary>
  1571. /// 当时汇率
  1572. /// </summary>
  1573. public decimal DayRate { get; set; }
  1574. /// <summary>
  1575. /// 人民币金额
  1576. /// </summary>
  1577. public decimal CNYPrice { get; set; } = 0.00M;
  1578. /// <summary>
  1579. /// 付款时间
  1580. /// </summary>
  1581. public string ConsumptionDate { get; set; }
  1582. /// <summary>
  1583. /// 费用标识
  1584. /// </summary>
  1585. public string CostMark { get; set; }
  1586. /// <summary>
  1587. /// 审核时间
  1588. /// </summary>
  1589. public string? AuditGMDate { get; set; }
  1590. /// <summary>
  1591. /// 收款方
  1592. /// </summary>
  1593. public string? Payee { get; set; }
  1594. /// <summary>
  1595. /// 是否支付
  1596. /// </summary>
  1597. public string IsPay { get; set; }
  1598. /// <summary>
  1599. /// 支付方式
  1600. /// </summary>
  1601. public string? PaymentModes { get; set; }
  1602. /// <summary>
  1603. /// 操作人
  1604. /// </summary>
  1605. public string? Applicant { get; set; }
  1606. public DateTime CreateTime { get; set; }
  1607. public string Remark { get; set; }
  1608. }
  1609. /// <summary>
  1610. /// Excel 保险费用View
  1611. /// </summary>
  1612. public class GroupOtherFeeExcelView
  1613. {
  1614. public int DPId { get; set; }
  1615. public int DPDiId { get; set; }
  1616. /// <summary>
  1617. /// 费用名称
  1618. /// </summary>
  1619. public string? PriceName { get; set; }
  1620. /// <summary>
  1621. /// 付款金额
  1622. /// </summary>
  1623. public decimal PayMoney { get; set; } = 0.00M;
  1624. /// <summary>
  1625. /// 付款币种
  1626. /// </summary>
  1627. public string? PayMoneyCurrency { get; set; }
  1628. /// <summary>
  1629. /// 当时汇率
  1630. /// </summary>
  1631. public decimal DayRate { get; set; } = 1.0000M;
  1632. /// <summary>
  1633. /// 人民币金额
  1634. /// </summary>
  1635. public decimal CNYPrice { get; set; } = 0.00M;
  1636. /// <summary>
  1637. /// 付款时间
  1638. /// </summary>
  1639. public string? AuditGMDate { get; set; }
  1640. /// <summary>
  1641. /// 收款方
  1642. /// </summary>
  1643. public string? Payee { get; set; }
  1644. /// <summary>
  1645. /// 费用标识
  1646. /// </summary>
  1647. public string CostMark { get; set; }
  1648. /// <summary>
  1649. /// 支付方式
  1650. /// </summary>
  1651. public string? PaymentModes { get; set; }
  1652. /// <summary>
  1653. /// 是否支付
  1654. /// </summary>
  1655. public string IsPay { get; set; }
  1656. /// <summary>
  1657. /// 操作人
  1658. /// </summary>
  1659. public string? Applicant { get; set; }
  1660. public DateTime CreateTime { get; set; }
  1661. public string? Remark { get; set; }
  1662. }
  1663. /// <summary>
  1664. /// 操作人员提成View
  1665. /// </summary>
  1666. public class GroupRoyaltyFeeExcelView
  1667. {
  1668. public int GroupId { get; set; }
  1669. public string OverviewInfo { get; set; }
  1670. public string DetailedInfoExcelText { get; set; }
  1671. public decimal Amount { get; set; }
  1672. public string IsConfrimText { get; set; }
  1673. public string IsSeedText { get; set; }
  1674. public string RoyaltyUserName { get; set; }
  1675. public string CreateUserName { get; set; }
  1676. public DateTime CreateTime { get; set; }
  1677. }
  1678. #endregion
  1679. }