ContentRequest.cs 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. using System;
  2. using System.ComponentModel.DataAnnotations;
  3. namespace Common.Http
  4. {
  5. // =============== BANNER ===============
  6. public class BannerLoadReq
  7. {
  8. public string? lang { get; set; } = "lo";
  9. public int pageNumber { get; set; } = 0;
  10. public int pageSize { get; set; } = 10;
  11. /// <summary>Position filter: "home", "sidebar", etc.</summary>
  12. public string? position { get; set; }
  13. }
  14. // =============== CUSTOMER REVIEW ===============
  15. public class CustomerReviewLoadReq
  16. {
  17. public string? lang { get; set; } = "lo";
  18. public int pageNumber { get; set; } = 0;
  19. public int pageSize { get; set; } = 10;
  20. /// <summary>Filter featured reviews only</summary>
  21. public bool? isFeatured { get; set; }
  22. }
  23. public class CustomerReviewCreateReq
  24. {
  25. public string? lang { get; set; } = "lo";
  26. [Required(ErrorMessage = "Customer name is required")]
  27. public string customerName { get; set; } = null!;
  28. [Required(ErrorMessage = "Review content is required")]
  29. public string reviewContent { get; set; } = null!;
  30. public string? destination { get; set; }
  31. public int rating { get; set; }
  32. }
  33. // =============== FAQ ===============
  34. public class FaqCategoryLoadReq
  35. {
  36. public string? lang { get; set; } = "lo";
  37. public int pageNumber { get; set; } = 0;
  38. public int pageSize { get; set; } = 10;
  39. /// <summary>Parent category ID (null = get root categories)</summary>
  40. public int? parentId { get; set; }
  41. }
  42. public class FaqLoadReq
  43. {
  44. public string? lang { get; set; } = "lo";
  45. public int pageNumber { get; set; } = 0;
  46. public int pageSize { get; set; } = 10;
  47. /// <summary>Filter by category ID</summary>
  48. public int? categoryId { get; set; }
  49. /// <summary>Filter featured FAQs only</summary>
  50. public bool? isFeatured { get; set; }
  51. }
  52. }