EnterExitCostDto.cs 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802
  1. using OASystem.Domain.ViewModels.Groups;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace OASystem.Domain.Dtos.Groups
  8. {
  9. public class EnterExitCostDto
  10. {
  11. }
  12. /// <summary>
  13. /// 出入境费用详情 Dto
  14. /// </summary>
  15. public class EnterExitCostInfobyDiIdDto : PortDtoBase
  16. {
  17. /// <summary>
  18. /// 团组Id
  19. /// </summary>
  20. public int DiId { get; set; }
  21. }
  22. public class PostEnterExitCostMobileSubInfoDto : EnterExitCostInfobyDiIdDto
  23. {
  24. /// <summary>
  25. /// 费用项Type
  26. /// 1:境内费用 2:国际旅费 3:住宿费 4:伙食费 5:公杂费 6:培训费 7:其他
  27. /// </summary>
  28. public int SubType { get; set; }
  29. }
  30. /// <summary>
  31. /// 出入境费用 Add And Update Dto
  32. /// </summary>
  33. public class EnterExitCostOperateDto : PortDtoBase
  34. {
  35. public int UserId { get; set; }
  36. /// <summary>
  37. /// Id
  38. /// </summary>
  39. public int Id { get; set; }
  40. /// <summary>
  41. /// 团组Id
  42. /// </summary>
  43. public int DiId { get; set; }
  44. #region 境内费用(其他费用)
  45. /// <summary>
  46. /// 境内费用(其他费用)选择框
  47. /// </summary>
  48. public int ChoiceOne { get; set; }
  49. /// <summary>
  50. /// 境内费用(其他费用)
  51. /// </summary>
  52. public decimal InsidePay { get; set; }
  53. #region 境内费用(其他费用)子项
  54. /// <summary>
  55. /// 签证费
  56. /// </summary>
  57. public decimal Visa { get; set; }
  58. /// <summary>
  59. /// 签证费描述
  60. /// </summary>
  61. public string? VisaRemark { get; set; }
  62. /// <summary>
  63. /// 疫苗费
  64. /// </summary>
  65. public decimal YiMiao { get; set; }
  66. /// <summary>
  67. /// 核酸检测费用
  68. /// </summary>
  69. public decimal HeSuan { get; set; }
  70. /// <summary>
  71. /// 服务费用
  72. /// </summary>
  73. public decimal Service { get; set; }
  74. /// <summary>
  75. /// 参展门票
  76. /// </summary>
  77. public decimal Ticket { get; set; }
  78. /// <summary>
  79. /// 保险费
  80. /// </summary>
  81. public decimal Safe { get; set; }
  82. public string FirstItemRemark { get; set; }
  83. #endregion
  84. #endregion
  85. #region 国际旅费
  86. /// <summary>
  87. /// 国际旅费合计选择框
  88. /// </summary>
  89. public int ChoiceTwo { get; set; }
  90. /// <summary>
  91. /// 经济舱小计选择框
  92. /// </summary>
  93. public int SumJJC { get; set; }
  94. /// <summary>
  95. /// 公务舱小计选择框
  96. /// </summary>
  97. public int SumGWC { get; set; }
  98. /// <summary>
  99. /// 公务舱小计选择框
  100. /// </summary>
  101. public int SumTDC { get; set; }
  102. /// <summary>
  103. /// 第二项备注
  104. /// </summary>
  105. public string TwoItemRemark { get; set; }
  106. #region 国际旅费子项
  107. /// <summary>
  108. /// 国际旅费合计(经济舱)
  109. /// </summary>
  110. public decimal OutsideJJPay { get; set; }
  111. /// <summary>
  112. /// 国际旅费合计(公务舱)
  113. /// </summary>
  114. public decimal OutsideGWPay { get; set; }
  115. /// <summary>
  116. /// 国际旅费合计(头等舱)
  117. /// </summary>
  118. public decimal OutsideTDPay { get; set; }
  119. /// <summary>
  120. /// 国际机票(经济舱)
  121. /// </summary>
  122. public decimal AirJJ { get; set; }
  123. /// <summary>
  124. /// 国际机票(公务舱)
  125. /// </summary>
  126. public decimal AirGW { get; set; }
  127. /// <summary>
  128. /// 国际机票(头等舱)
  129. /// </summary>
  130. public decimal AirTD { get; set; }
  131. /// <summary>
  132. /// 国外城市间交通费
  133. /// </summary>
  134. public decimal CityTranffic { get; set; }
  135. /// <summary>
  136. /// 多个币种存储
  137. /// 存储方式: 美元(USD):6.2350|.......|墨西哥比索(MXN):1.0000
  138. /// </summary>
  139. public List<CurrencyInfo>? Currencys { get; set; }
  140. #endregion
  141. #endregion
  142. #region 住宿费
  143. /// <summary>
  144. /// 住宿费合计选择框
  145. /// </summary>
  146. public int ChoiceThree { get; set; }
  147. /// <summary>
  148. /// 住宿费子项Data
  149. /// </summary>
  150. public List<DayAndCostAddView>? QuarterageData { get; set; }
  151. #endregion
  152. #region 伙食费
  153. /// <summary>
  154. /// 伙食费合计选择框
  155. /// </summary>
  156. public int ChoiceFour { get; set; }
  157. /// <summary>
  158. /// 伙食费子项Data
  159. /// </summary>
  160. public List<DayAndCostAddView>? BoardWagesData { get; set; }
  161. #endregion
  162. #region 公杂费
  163. /// <summary>
  164. /// 公杂费合计选择框
  165. /// </summary>
  166. public int ChoiceFive { get; set; }
  167. /// <summary>
  168. /// 公杂费子项Data
  169. /// </summary>
  170. public List<DayAndCostAddView>? MiscellaneousFeeData { get; set; }
  171. #endregion
  172. #region 培训费
  173. /// <summary>
  174. /// 培训费用选择框
  175. /// </summary>
  176. public int ChoiceSix { get; set; }
  177. /// <summary>
  178. /// 培训费子项Data
  179. /// </summary>
  180. public List<DayAndCostAddView>? TrainingExpenseData { get; set; }
  181. #endregion
  182. #region 其他费用
  183. /// <summary>
  184. /// 其他费用选择框
  185. /// </summary>
  186. public int OtherExpenses_Checked { get; set; }
  187. /// <summary>
  188. /// 培训费子项Data
  189. /// </summary>
  190. public List<DayOtherPriceView> DayOtherPriceData { get; set; }
  191. #endregion
  192. #region 最下面 选择框状态
  193. /// <summary>
  194. /// 经济舱选择框
  195. /// </summary>
  196. public int AirJJC_Checked { get; set; }
  197. /// <summary>
  198. /// 公务舱选择框
  199. /// </summary>
  200. public int AirGWC_Checked { get; set; }
  201. /// <summary>
  202. /// 公务舱选择框
  203. /// </summary>
  204. public int AirTDC_Checked { get; set; }
  205. #endregion
  206. }
  207. public class ConfirmCostDto {
  208. /// <summary>
  209. /// 类型
  210. /// 1:确认 2:撤回
  211. /// </summary>
  212. public int Type { get; set; }
  213. /// <summary>
  214. /// 数据Id
  215. /// </summary>
  216. public int Id { get; set; }
  217. }
  218. /// <summary>
  219. /// 出入境费用 - 表格导出 Dto
  220. /// </summary>
  221. public class EnterExitCostDownloadDto : PortDtoBase
  222. {
  223. public int DiId { get; set; }
  224. /// <summary>
  225. /// 模板类型
  226. /// 1 明细表
  227. /// 2 表格
  228. /// 3 团组成员名单
  229. /// </summary>
  230. public int ExportType { get; set; }
  231. /// <summary>
  232. /// 类型Id
  233. /// </summary>
  234. public int SubTypeId { get; set; }
  235. }
  236. /// <summary>
  237. /// 出入境费用 - 一键清空 dto
  238. /// </summary>
  239. public class EnterExitCostOneClickClearDto : PortDtoBase
  240. {
  241. public int UserId { get; set; }
  242. public int DiId { get; set; }
  243. public int Id { get; set; }
  244. }
  245. /// <summary>
  246. /// 团组模块 - 出入境国家费用标准 Page List
  247. /// </summary>
  248. public class NationalTravelFeePageDto : DtoBase
  249. {
  250. /// <summary>
  251. /// 国家
  252. /// </summary>
  253. public string Country { get; set; }
  254. /// <summary>
  255. /// 城市
  256. /// </summary>
  257. public string City { get; set; }
  258. }
  259. /// <summary>
  260. /// 团组模块 - 出入境国家费用标准
  261. /// 根据国家城市查询Dto
  262. /// </summary>
  263. public class NationalTravelFeeByCountryAndCityDto : PortDtoBase
  264. {
  265. /// <summary>
  266. /// 国家
  267. /// </summary>
  268. public string Country { get; set; }
  269. /// <summary>
  270. /// 城市
  271. /// </summary>
  272. public string City { get; set; }
  273. }
  274. /// <summary>
  275. /// 出入境费用子项删除
  276. /// </summary>
  277. public class EnterExitCostSubItemDelDto : DelBaseDto
  278. { }
  279. /// <summary>
  280. /// 团组模块 - 出入境国家费用标准 - Del
  281. /// </summary>
  282. public class NationalTravelFeeDelDto : DelBaseDto
  283. {
  284. }
  285. /// <summary>
  286. /// 团组模块 - 出入境国家费用标准 - Add Or Update Dto
  287. /// </summary>
  288. public class NationalTravelFeeOperateDto:PortDtoBase
  289. {
  290. /// <summary>
  291. /// 编号
  292. /// add Id = 0 Or Update Id=Id值
  293. /// </summary>
  294. public int Id { get; set; }
  295. /// <summary>
  296. /// 创建者Id
  297. /// </summary>
  298. public int UserId { get; set; }
  299. /// <summary>
  300. /// 洲别
  301. /// </summary>
  302. public string? Continent { get; set; }
  303. /// <summary>
  304. /// 国家
  305. /// </summary>
  306. public string? Country { get; set; }
  307. /// <summary>
  308. /// 城市
  309. /// </summary>
  310. public string? City { get; set; }
  311. /// <summary>
  312. /// 币种
  313. /// Sys_SetData STid=66
  314. /// </summary>
  315. public int Currency { get; set; }
  316. /// <summary>
  317. /// 住宿费
  318. /// </summary>
  319. public decimal? RoomCost { get; set; } = 0;
  320. /// <summary>
  321. /// 伙食费
  322. /// </summary>
  323. public decimal? FoodCost { get; set; } = 0;
  324. /// <summary>
  325. /// 公杂费
  326. /// </summary>
  327. public decimal? PublicCost { get; set; } = 0;
  328. /// <summary>
  329. /// 备注
  330. /// </summary>
  331. public string? Remark { get; set; }
  332. }
  333. #region Mobile Request Dto
  334. public class PostEnterExitCostMobileGroupDataDto : DtoBase
  335. {
  336. public string GroupName { get; set; }
  337. }
  338. public class PostEnterExitCostMobileCurrencyDataDto : DtoBase
  339. {
  340. public string CurrencyName { get; set; }
  341. }
  342. public class PostEnterExitCostMobileOtherItemCurrencyDataDto : PortDtoBase
  343. {
  344. public int DiId { get; set; }
  345. }
  346. public class GetEnterExitCostMobileFeeTipsDto : PortDtoBase {
  347. /// <summary>
  348. /// 团组Id
  349. /// </summary>
  350. public int GroupId { get; set; }
  351. /// <summary>
  352. /// 提示数据类型
  353. /// 1 实时汇率
  354. /// 2 签证费用
  355. /// 3 机票费用
  356. /// </summary>
  357. public int TipsType { get; set; }
  358. }
  359. public class PostNationalTravelFeeMobileDataDto :DtoBase
  360. {
  361. /// <summary>
  362. /// 搜索条件
  363. /// </summary>
  364. public string Search { get; set; }
  365. }
  366. public class PostNationalTravelFeeMobileInfoDto : PortDtoBase
  367. {
  368. public int DiId { get; set; }
  369. }
  370. #region op
  371. public class PostEnterExitCostMobileUpdateDtoBase : PortDtoBase {
  372. public int Id { get; set; }
  373. public int DiId { get; set; }
  374. public int CurrUserId { get; set; }
  375. }
  376. public class PostEnterExitCostMobileFeeRateOpDto : PostEnterExitCostMobileUpdateDtoBase
  377. {
  378. /// <summary>
  379. /// 多个币种存储
  380. /// 存储方式: 美元(USD):6.2350|.......|墨西哥比索(MXN):1.0000
  381. /// </summary>
  382. public CurrencyInfo[] Currencys { get; set; }
  383. }
  384. public class PostEnterExitCostMobileFeeOpCheckboxDto : PostEnterExitCostMobileUpdateDtoBase
  385. {
  386. /// <summary>
  387. /// 境内费用(其他费用)选择框
  388. /// </summary>
  389. public int ChoiceOne { get; set; }
  390. /// <summary>
  391. /// 国际旅费合计选择框
  392. /// </summary>
  393. public int ChoiceTwo { get; set; }
  394. /// <summary>
  395. /// 经济舱小计选择框
  396. /// </summary>
  397. public int SumJJC { get; set; }
  398. /// <summary>
  399. /// 公务舱小计选择框
  400. /// </summary>
  401. public int SumGWC { get; set; }
  402. /// <summary>
  403. /// 公务舱小计选择框
  404. /// </summary>
  405. public int SumTDC { get; set; }
  406. /// <summary>
  407. /// 住宿费合计选择框
  408. /// </summary>
  409. public int ChoiceThree { get; set; }
  410. /// <summary>
  411. /// 伙食费合计选择框
  412. /// </summary>
  413. public int ChoiceFour { get; set; }
  414. /// <summary>
  415. /// 公杂费合计选择框
  416. /// </summary>
  417. public int ChoiceFive { get; set; }
  418. /// <summary>
  419. /// 培训费用选择框
  420. /// </summary>
  421. public int ChoiceSix { get; set; }
  422. /// <summary>
  423. /// 其他费用选择框
  424. /// </summary>
  425. public int OtherExpenses_Checked { get; set; }
  426. }
  427. public class EnterExitCostMobileOpSingleCheckboxDto: PostEnterExitCostMobileUpdateDtoBase
  428. {
  429. /// <summary>
  430. /// 子项复选框类型
  431. /// 3:住宿费; 4:伙食费; 5:公杂费; 6:培训费;7:其他;
  432. /// </summary>
  433. public int ItemType { get; set; }
  434. /// <summary>
  435. /// 是否选中
  436. /// 0 未选择 1 选中
  437. /// </summary>
  438. public int IsSelected { get; set; }
  439. }
  440. public class PostEnterExitCostMobileOpStep1Dto : PostEnterExitCostMobileUpdateDtoBase
  441. {
  442. /// <summary>
  443. /// 复选框选中
  444. /// 0 未选中 1 选中
  445. /// </summary>
  446. public int ChoiceOne { get; set; }
  447. /// <summary>
  448. /// 签证费
  449. /// </summary>
  450. public decimal Visa { get; set; }
  451. /// <summary>
  452. /// 签证费描述
  453. /// </summary>
  454. public string? VisaRemark { get; set; }
  455. /// <summary>
  456. /// 疫苗费
  457. /// </summary>
  458. public decimal YiMiao { get; set; }
  459. /// <summary>
  460. /// 核酸检测费用
  461. /// </summary>
  462. public decimal HeSuan { get; set; }
  463. /// <summary>
  464. /// 服务费用
  465. /// </summary>
  466. public decimal Service { get; set; }
  467. /// <summary>
  468. /// 参展门票
  469. /// </summary>
  470. public decimal Ticket { get; set; }
  471. /// <summary>
  472. /// 保险费
  473. /// </summary>
  474. public decimal Safe { get; set; }
  475. public string FirstItemRemark { get; set; }
  476. }
  477. public class PostEnterExitCostMobileOpStep2Dto : PostEnterExitCostMobileUpdateDtoBase
  478. {
  479. /// <summary>
  480. /// 复选框选中(经济舱)
  481. /// 0 未选中 1 选中
  482. /// </summary>
  483. public int ChoiceTwoJJ { get; set; }
  484. /// <summary>
  485. /// 国际旅费合计(经济舱)
  486. /// </summary>
  487. public decimal OutsideJJPay { get; set; }
  488. /// <summary>
  489. /// 复选框选中(公务舱)
  490. /// 0 未选中 1 选中
  491. /// </summary>
  492. public int ChoiceTwoGW { get; set; }
  493. /// <summary>
  494. /// 国际旅费合计(公务舱)
  495. /// </summary>
  496. public decimal OutsideGWPay { get; set; }
  497. /// <summary>
  498. /// 复选框选中(头等舱)
  499. /// 0 未选中 1 选中
  500. /// </summary>
  501. public int ChoiceTwoTD { get; set; }
  502. /// <summary>
  503. /// 国际旅费合计(头等舱)
  504. /// </summary>
  505. public decimal OutsideTDPay { get; set; }
  506. /// <summary>
  507. /// 国际机票(经济舱)
  508. /// </summary>
  509. public decimal AirJJ { get; set; }
  510. /// <summary>
  511. /// 国际机票(公务舱)
  512. /// </summary>
  513. public decimal AirGW { get; set; }
  514. /// <summary>
  515. /// 国际机票(头等舱)
  516. /// </summary>
  517. public decimal AirTD { get; set; }
  518. /// <summary>
  519. /// 国外城市间交通费
  520. /// </summary>
  521. public decimal CityTranffic { get; set; }
  522. }
  523. public class PostEnterExitCostMobileOpStep3To6Dto
  524. {
  525. public int PortType { get; set; }
  526. public int DiId { get; set; }
  527. public int CurrUserId { get; set; }
  528. /// <summary>
  529. /// 费用类型
  530. /// 1 住宿费;2 伙食费;3 公杂费;4 培训费
  531. /// </summary>
  532. public int FeeType { get; set; }
  533. /// <summary>
  534. /// 详情
  535. /// </summary>
  536. public DayAndCostMobileInfoDto[] Infos { get; set; }
  537. }
  538. public class PostEnterExitCostMobileOpSingleStep3To6Dto : DayAndCostMobileInfoDto
  539. {
  540. public int PortType { get; set; }
  541. public int DiId { get; set; }
  542. public int CurrUserId { get; set; }
  543. /// <summary>
  544. /// 数据主表Id
  545. /// </summary>
  546. //public int ParentId { get; set; }
  547. /// <summary>
  548. /// 复选框
  549. /// 0 未选中 1 选中
  550. /// </summary>
  551. //public int IsSelect { get; set; }
  552. /// <summary>
  553. /// 费用类型
  554. /// 3 住宿费;4 伙食费;5 公杂费;6 培训费
  555. /// </summary>
  556. public int FeeType { get; set; }
  557. }
  558. public class DayAndCostMobileInfoDto
  559. {
  560. /// <summary>
  561. /// 数据子表Id
  562. /// </summary>
  563. public int SubId { get; set; }
  564. /// <summary>
  565. /// 天数
  566. /// </summary>
  567. public int Days { get; set; }
  568. /// <summary>
  569. /// 地名Id
  570. /// </summary>
  571. public int NationalTravelFeeId { get; set; }
  572. /// <summary>
  573. /// 费用标准
  574. /// </summary>
  575. public decimal Cost { get; set; }
  576. /// <summary>
  577. /// 币种
  578. /// Sys_SetData STid = 66
  579. /// </summary>
  580. public int Currency { get; set; }
  581. /// <summary>
  582. /// 小计
  583. /// </summary>
  584. public decimal SubTotal { get; set; }
  585. }
  586. public class PostEnterExitCostMobileOpStep7Dto
  587. {
  588. public int PortType { get; set; }
  589. public int DiId { get; set; }
  590. public int CurrUserId { get; set; }
  591. /// <summary>
  592. /// 详情
  593. /// </summary>
  594. public DayOtherPriceMobileInfoDto[] Infos { get; set; }
  595. }
  596. public class PostEnterExitCostMobileOpSingleStep7Dto : DayOtherPriceMobileInfoDto
  597. {
  598. public int PortType { get; set; }
  599. //public int DiId { get; set; }
  600. public int CurrUserId { get; set; }
  601. ///// <summary>
  602. ///// 数据主表Id
  603. ///// </summary>
  604. //public int ParentId { get; set; }
  605. ///// <summary>
  606. ///// 复选框
  607. ///// 0 未选中 1 选中
  608. ///// </summary>
  609. //public int IsSelect { get; set; }
  610. }
  611. public class DayOtherPriceMobileInfoDto
  612. {
  613. public int SubId { get; set; }
  614. public int Diid { get; set; }
  615. public int SetDataId { get; set; }
  616. public int Index { get; set; }
  617. public decimal Cost { get; set; }
  618. public int Currency { get; set; }
  619. public decimal SubTotal { get; set; }
  620. public string Remark { get; set; }
  621. }
  622. #endregion
  623. #endregion
  624. }