You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

127 lines
3.8 KiB

  1. using EasyBL;
  2. using EasyBL.WebApi;
  3. using EasyBL.WebApi.Common;
  4. using EasyBL.WebApi.Filters;
  5. using EasyBL.WebApi.Message;
  6. using EasyBL.WEBAPP;
  7. using EasyBL.WEBAPP.SYS;
  8. using Entity.ShowEasyDtos;
  9. using Entity.Sugar;
  10. using Newtonsoft.Json;
  11. using SqlSugar.Base;
  12. using System;
  13. using System.Collections.Generic;
  14. using System.Linq;
  15. using System.Net;
  16. using System.Net.Http;
  17. using System.Web;
  18. using System.Web.Http;
  19. namespace WebApp.Controllers
  20. {
  21. public class BookingController : ApiController
  22. {
  23. /// <summary>
  24. /// 獲取類別數據
  25. /// </summary>
  26. /// <param name="argumentClassID"></param>
  27. /// <returns></returns>
  28. [HttpGet]
  29. public HttpResponseMessage GetArgumentClassList(string argumentClassID)
  30. {
  31. return new BookingService().GetArgumentClassList(argumentClassID);
  32. }
  33. /// <summary>
  34. /// 獲取類別數據
  35. /// </summary>
  36. /// <param name="argumentClassID"></param>
  37. /// <returns></returns>
  38. [HttpGet]
  39. [SEApiSecurityFilter]
  40. public HttpResponseMessage GetBookingCategory(string Account, string LangType)
  41. {
  42. var SEToken = SETokenUtil.GetToken(this.Request);
  43. return new BookingService().GetBookingCategory(SEToken.Account, LangType);
  44. }
  45. /// <summary>
  46. ///
  47. /// </summary>
  48. /// <param name=""></param>
  49. /// <returns></returns>
  50. [HttpGet]
  51. [SEApiSecurityFilter]
  52. public HttpResponseMessage Bookings(
  53. string Lang,
  54. string SubCategoryIDs,
  55. string BookingStatuses,
  56. string PaymentStatuses)
  57. {
  58. List<string> rsSubCategoryIDs = new List<string>();
  59. List<string> rsBookingStatuses = new List<string>();
  60. List<string> rsPaymentStatuses = new List<string>();
  61. var SEToken = SETokenUtil.GetToken(this.Request);
  62. if (!string.IsNullOrEmpty(SubCategoryIDs)) {
  63. rsSubCategoryIDs = JsonConvert.DeserializeObject<List<string>>(SubCategoryIDs);
  64. }
  65. if (!string.IsNullOrEmpty(BookingStatuses))
  66. {
  67. rsBookingStatuses = JsonConvert.DeserializeObject<List<string>>(BookingStatuses);
  68. }
  69. if (!string.IsNullOrEmpty(PaymentStatuses))
  70. {
  71. rsPaymentStatuses = JsonConvert.DeserializeObject<List<string>>(PaymentStatuses);
  72. }
  73. return new BookingService().GetBookings(SEToken.Account, Lang, rsSubCategoryIDs, rsBookingStatuses, rsPaymentStatuses);
  74. }
  75. /// <summary>
  76. ///
  77. /// </summary>
  78. /// <param name=""></param>
  79. /// <returns></returns>
  80. [HttpGet]
  81. public HttpResponseMessage TestBookings(
  82. string Account,
  83. string Lang,
  84. string SubCategoryIDs,
  85. string BookingStatuses,
  86. string PaymentStatuses)
  87. {
  88. List<string> rsSubCategoryIDs = new List<string>();
  89. List<string> rsBookingStatuses = new List<string>();
  90. List<string> rsPaymentStatuses = new List<string>();
  91. if (!string.IsNullOrEmpty(SubCategoryIDs))
  92. {
  93. rsSubCategoryIDs = JsonConvert.DeserializeObject<List<string>>(SubCategoryIDs);
  94. }
  95. if (!string.IsNullOrEmpty(BookingStatuses))
  96. {
  97. rsBookingStatuses = JsonConvert.DeserializeObject<List<string>>(BookingStatuses);
  98. }
  99. if (!string.IsNullOrEmpty(PaymentStatuses))
  100. {
  101. rsPaymentStatuses = JsonConvert.DeserializeObject<List<string>>(PaymentStatuses);
  102. }
  103. return new BookingService().GetBookings(Account, Lang, rsSubCategoryIDs, rsBookingStatuses, rsPaymentStatuses);
  104. }
  105. }
  106. }