GroupListDto.cs 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596
  1. using FluentValidation;
  2. using Newtonsoft.Json;
  3. using OASystem.Domain.ViewModels;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.ComponentModel;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. namespace OASystem.Domain.Dtos.Groups
  11. {
  12. /// <summary>
  13. /// 获取团组列表 请求实体类
  14. /// </summary>
  15. public class GroupListDto : DtoBase
  16. {
  17. }
  18. public class GroupProvCityBasicSourceDto : DtoBase
  19. {
  20. public string Search { get; set; }
  21. }
  22. /// <summary>
  23. /// 获取团组列表 Page 请求实体类
  24. /// </summary>
  25. public class GroupPageListDto : UserPageFuncDtoBase
  26. {
  27. public int PageIndex { get; set; } = 1;
  28. public int PageSize { get; set; } = 10;
  29. /// <summary>
  30. /// 是否操作完成
  31. /// -1 全部 0否 1是
  32. /// </summary>
  33. public int IsSure { get; set; }
  34. /// <summary>
  35. /// 搜索条件
  36. /// 团组类型/团队名称/客户名称/客户单位/接团操作人
  37. /// </summary>
  38. public string? SearchCriteria { get; set; }
  39. public string Department { get; set; }
  40. public string Rank { get; set; }
  41. }
  42. /// <summary>
  43. /// 获取团组singe Share 请求实体类
  44. /// </summary>
  45. public class ShareGroupInfoDto : PortDtoBase
  46. {
  47. /// <summary>
  48. /// 团组Id
  49. /// </summary>
  50. public int Id { get; set; }
  51. }
  52. /// <summary>
  53. /// 获取团组singe 请求实体类
  54. /// </summary>
  55. public class GroupInfoDto : DtoBase
  56. {
  57. /// <summary>
  58. /// 团组Id
  59. /// </summary>
  60. public int Id { get; set; }
  61. }
  62. /// <summary>
  63. /// 团组信息 操作
  64. /// 请求dto
  65. /// </summary>
  66. public class GroupOperationDto : DtoBase
  67. {
  68. /// <summary>
  69. /// 操作状态
  70. /// 1 添加
  71. /// 2 修改
  72. /// 3 删除
  73. /// </summary>
  74. public int Status { get; set; }
  75. /// <summary>
  76. /// 团组Id
  77. /// </summary>
  78. public int Id { get; set; }
  79. /// <summary>
  80. /// 城市类型Id
  81. /// Sys_Cities
  82. /// </summary>
  83. public int CityId { get; set; }
  84. /// <summary>
  85. /// 用户Id
  86. /// </summary>
  87. public int UserId { get; set; }
  88. /// <summary>
  89. /// 销售报价号
  90. /// </summary>
  91. public string SalesQuoteNo { get; set; }
  92. ///// <summary>
  93. ///// 团组号
  94. ///// </summary>
  95. //public string TeamNo { get; set; }
  96. /// <summary>
  97. /// 团组操作人
  98. /// </summary>
  99. public int JietuanOperator { get; set; }
  100. /// <summary>
  101. /// 客户级别
  102. /// setData Id
  103. /// </summary>
  104. public int TeamLevSId { get; set; }
  105. /// <summary>
  106. /// 团组类型
  107. /// setData Id
  108. /// </summary>
  109. public int TeamDid { get; set; }
  110. /// <summary>
  111. /// 团组名称
  112. /// </summary>
  113. public string TeamName { get; set; }
  114. /// <summary>
  115. /// 客户名称
  116. /// </summary>
  117. public string ClientName { get; set; }
  118. /// <summary>
  119. /// 客户单位
  120. /// </summary>
  121. public string ClientUnit { get; set; }
  122. /// <summary>
  123. /// 出访国家
  124. /// 多个国家 | 隔开 eg:韩国|日本
  125. /// </summary>
  126. public string VisitCountry { get; set; }
  127. /// <summary>
  128. /// 出访时间
  129. /// </summary>
  130. public string VisitDate { get; set; }
  131. /// <summary>
  132. /// 出访天数
  133. /// </summary>
  134. public int VisitDays { get; set; }
  135. /// <summary>
  136. /// 出访人数
  137. /// </summary>
  138. public int VisitPNumber { get; set; }
  139. /// <summary>
  140. /// 合同时间
  141. /// </summary>
  142. public string TontractTime { get; set; }
  143. /// <summary>
  144. /// 是否用于投标
  145. /// 0 是 1 否
  146. /// </summary>
  147. public int IsBid { get; set; }
  148. /// <summary>
  149. /// 预付期限
  150. /// </summary>
  151. public int PayDay { get; set; }
  152. /// <summary>
  153. /// 支付款项(预付)
  154. /// </summary>
  155. public decimal PaymentMoney { get; set; }
  156. /// <summary>
  157. /// 出访目的
  158. /// </summary>
  159. public string VisitPurpose { get; set; }
  160. /// <summary>
  161. /// 特殊需求
  162. /// </summary>
  163. public string SpecialNeeds { get; set; }
  164. /// <summary>
  165. /// 其他需求
  166. /// </summary>
  167. public string OtherNeeds { get; set; }
  168. /// <summary>
  169. /// 出国任务审批部门名称
  170. /// </summary>
  171. public string CGRWSPBMMC { get; set; }
  172. /// <summary>
  173. /// 出国任务审批文号
  174. /// </summary>
  175. public string CGRWSPWH { get; set; }
  176. /// <summary>
  177. /// 政治审查部门名称
  178. /// </summary>
  179. public string ZZSCBMMC { get; set; }
  180. /// <summary>
  181. /// 政治审查部门审批文号
  182. /// </summary>
  183. public string ZZSCSPWH { get; set; }
  184. /// <summary>
  185. /// 手机号
  186. /// </summary>
  187. public string TellPhone { get; set; }
  188. /// <summary>
  189. /// 微信号
  190. /// </summary>
  191. public string WeChatNo { get; set; }
  192. /// <summary>
  193. /// 备注
  194. /// </summary>
  195. public string Remark { get; set; }
  196. /// <summary>
  197. /// OP提成等级
  198. /// </summary>
  199. public int OpRoyaltyLv { get; set; }
  200. /// <summary>
  201. /// 等级说明
  202. /// </summary>
  203. public string opRoyaltyRemark { get; set; }
  204. /// <summary>
  205. /// 公务需求
  206. /// </summary>
  207. public string Officialneeds { get; set; }
  208. }
  209. /// <summary>
  210. /// 团组信息删除
  211. /// </summary>
  212. public class GroupDelDto : DtoBase
  213. {
  214. /// <summary>
  215. /// 团组Id
  216. /// </summary>
  217. public int Id { get; set; }
  218. /// <summary>
  219. /// 用户Id
  220. /// </summary>
  221. public int UserId { get; set; }
  222. }
  223. /// <summary>
  224. /// 团组名称
  225. /// </summary>
  226. public class GroupNameDto : PortDtoBase
  227. {
  228. }
  229. public class DownGroupContractFileDto
  230. {
  231. /// <summary>
  232. /// 团组Id
  233. /// </summary>
  234. public int GroupId { get; set; }
  235. /// <summary>
  236. /// 文件类型
  237. /// </summary>
  238. public int FileType { get; set; }
  239. /// <summary>
  240. /// 用户Id
  241. /// </summary>
  242. public int UserId { get; set; }
  243. }
  244. public class tableSetting
  245. {
  246. public int Index { get;set; }
  247. public string Property { get; set; }
  248. }
  249. public class GroupNameScreenDto : DtoBase
  250. {
  251. public string groupName { get; set; } = "";
  252. public int userId { get; set; } = -1;
  253. }
  254. #region GroupNameScreenDto 验证
  255. public class GroupNameScreenDtoFoaValidator : AbstractValidator<GroupNameScreenDto>
  256. {
  257. public GroupNameScreenDtoFoaValidator() {
  258. RuleFor(it => it.PortType)
  259. .NotNull()
  260. .NotEmpty()
  261. .InclusiveBetween(1, 3)
  262. .WithMessage(MsgTips.Port);
  263. }
  264. }
  265. #endregion
  266. /// <summary>
  267. ///
  268. /// </summary>
  269. public class GroupListByCTableAndUserIdDto : DtoBase
  270. {
  271. /// <summary>
  272. /// 业务类型Id
  273. /// 酒店预定,机票预定,等等
  274. /// 76 酒店预订 77 行程 79 车/导游地接
  275. /// 80 签证 81 邀请/公务活动 82 团组客户保险
  276. /// 85 机票预订 98 其他款项 751 酒店早餐
  277. /// </summary>
  278. public int CTable { get; set; }
  279. /// <summary>
  280. /// 用户Id
  281. /// </summary>
  282. public int UserId { get; set; }
  283. public string TeamName { get; set; } = "";
  284. }
  285. /// <summary>
  286. /// 确认出团dto
  287. /// </summary>
  288. public class ConfirmationGroupDto : PortDtoBase
  289. {
  290. /// <summary>
  291. /// 团组Id
  292. /// </summary>
  293. public int GroupId { get; set; }
  294. /// <summary>
  295. /// 团组信息操作人
  296. /// </summary>
  297. public int GroupsOperator { get; set; }
  298. }
  299. /// <summary>
  300. /// 根据团组ID获取签证人员请
  301. /// 求实体类
  302. /// </summary>
  303. public class ClientByGroupIdDto : DtoBase
  304. {
  305. /// <summary>
  306. /// 团组Id
  307. /// </summary>
  308. public int GroupId { get; set; }
  309. }
  310. public class GroupListByWhere : DtoBase
  311. {
  312. /// <summary>
  313. /// 用户Id
  314. /// </summary>
  315. public int UserId { get; set; }
  316. /// <summary>
  317. /// 页面Id
  318. /// </summary>
  319. public int PageId { get; set; }
  320. /// <summary>
  321. /// 团组类型id
  322. /// </summary>
  323. public int TeamDid { get; set; }
  324. /// <summary>
  325. /// 团组状态
  326. /// </summary>
  327. public int IsSure { get; set; }
  328. /// <summary>
  329. /// 团组名称
  330. /// </summary>
  331. public string TeamName { get; set; }
  332. /// <summary>
  333. /// 客户名称
  334. /// </summary>
  335. public string ClientName { get; set; }
  336. /// <summary>
  337. /// 客户单位
  338. /// </summary>
  339. public string ClientUnit { get; set; }
  340. /// <summary>
  341. /// 出访时间
  342. /// </summary>
  343. public string visitDataTime { get; set; }
  344. }
  345. public class GroupProcessOperationDto : PortDtoBase
  346. {
  347. /// <summary>
  348. /// 操作状态
  349. /// 1 添加
  350. /// 2 修改
  351. /// 3 删除
  352. /// </summary>
  353. public int Status { get; set; }
  354. /// <summary>
  355. /// 团组Id
  356. /// </summary>
  357. public int Id { get; set; }
  358. public int CityId { get; set; }
  359. public string CityName { get; set; }
  360. /// <summary>
  361. /// 用户Id
  362. /// </summary>
  363. public int UserId { get; set; }
  364. /// <summary>
  365. /// 销售报价号
  366. /// </summary>
  367. public string SalesQuoteNo { get; set; }
  368. ///// <summary>
  369. ///// 团组号
  370. ///// </summary>
  371. //public string TeamNo { get; set; }
  372. /// <summary>
  373. /// 团组操作人
  374. /// </summary>
  375. public int JietuanOperator { get; set; }
  376. /// <summary>
  377. /// 客户级别
  378. /// setData Id
  379. /// </summary>
  380. public int TeamLevSId { get; set; }
  381. /// <summary>
  382. /// 团组类型
  383. /// setData Id
  384. /// </summary>
  385. public int TeamDid { get; set; }
  386. /// <summary>
  387. /// 团组名称
  388. /// </summary>
  389. public string TeamName { get; set; }
  390. /// <summary>
  391. /// 客户名称
  392. /// </summary>
  393. public string ClientName { get; set; }
  394. /// <summary>
  395. /// 客户单位
  396. /// </summary>
  397. public string ClientUnit { get; set; }
  398. /// <summary>
  399. /// 出访国家
  400. /// 多个国家 | 隔开 eg:韩国|日本
  401. /// </summary>
  402. public string VisitCountry { get; set; }
  403. /// <summary>
  404. /// 出访时间
  405. /// </summary>
  406. public string VisitDate { get; set; }
  407. /// <summary>
  408. /// 出访天数
  409. /// </summary>
  410. public int VisitDays { get; set; }
  411. /// <summary>
  412. /// 出访人数
  413. /// </summary>
  414. public int VisitPNumber { get; set; }
  415. /// <summary>
  416. /// 合同时间
  417. /// </summary>
  418. public string TontractTime { get; set; }
  419. /// <summary>
  420. /// 预付期限
  421. /// </summary>
  422. public int PayDay { get; set; }
  423. /// <summary>
  424. /// 支付款项(预付)
  425. /// </summary>
  426. public decimal PaymentMoney { get; set; }
  427. /// <summary>
  428. /// 出访目的
  429. /// </summary>
  430. public string VisitPurpose { get; set; }
  431. /// <summary>
  432. /// 特殊需求
  433. /// </summary>
  434. public string SpecialNeeds { get; set; }
  435. /// <summary>
  436. /// 其他需求
  437. /// </summary>
  438. public string OtherNeeds { get; set; }
  439. /// <summary>
  440. /// 出国任务审批部门名称
  441. /// </summary>
  442. public string CGRWSPBMMC { get; set; }
  443. /// <summary>
  444. /// 出国任务审批文号
  445. /// </summary>
  446. public string CGRWSPWH { get; set; }
  447. /// <summary>
  448. /// 政治审查部门名称
  449. /// </summary>
  450. public string ZZSCBMMC { get; set; }
  451. /// <summary>
  452. /// 政治审查部门审批文号
  453. /// </summary>
  454. public string ZZSCSPWH { get; set; }
  455. /// <summary>
  456. /// 手机号
  457. /// </summary>
  458. public string TellPhone { get; set; }
  459. /// <summary>
  460. /// 微信号
  461. /// </summary>
  462. public string WeChatNo { get; set; }
  463. /// <summary>
  464. /// 备注
  465. /// </summary>
  466. public string Remark { get; set; }
  467. /// <summary>
  468. /// OP提成等级
  469. /// </summary>
  470. public int OpRoyaltyLv { get; set; }
  471. /// <summary>
  472. /// 等级说明
  473. /// </summary>
  474. public string opRoyaltyRemark { get; set; }
  475. /// <summary>
  476. /// 公务需求
  477. /// </summary>
  478. public string Officialneeds { get; set; }
  479. /// <summary>
  480. /// 接团客户名单
  481. /// AddMultiple Infos
  482. /// </summary>
  483. public List<TourClientListProcessInfo> TourClientListInfos { get; set; }
  484. }
  485. }