ArticleRequest.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel.DataAnnotations;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace Common.Http
  8. {
  9. /// <summary>
  10. /// Request to load article categories
  11. /// </summary>
  12. public class ArticleCategoryReq
  13. {
  14. /// <summary>
  15. /// Language code for response: "lo" (Lao), "en" (English)
  16. /// Default: "lo"
  17. /// </summary>
  18. public string? lang { get; set; } = "lo";
  19. /// <summary>
  20. /// Page number (0-based index)
  21. /// Default: 0
  22. /// </summary>
  23. public int pageNumber { get; set; } = 0;
  24. /// <summary>
  25. /// Number of items per page
  26. /// Default: 10
  27. /// </summary>
  28. public int pageSize { get; set; } = 10;
  29. /// <summary>
  30. /// Parent category ID (null = get root categories)
  31. /// </summary>
  32. public int? parentId { get; set; }
  33. }
  34. /// <summary>
  35. /// Request to load articles
  36. /// </summary>
  37. public class ArticleLoadReq
  38. {
  39. /// <summary>
  40. /// Language code for response: "lo" (Lao), "en" (English)
  41. /// Default: "lo"
  42. /// </summary>
  43. public string? lang { get; set; } = "lo";
  44. /// <summary>
  45. /// Page number (0-based index)
  46. /// Default: 0
  47. /// </summary>
  48. public int pageNumber { get; set; } = 0;
  49. /// <summary>
  50. /// Number of items per page
  51. /// Default: 10
  52. /// </summary>
  53. public int pageSize { get; set; } = 10;
  54. /// <summary>
  55. /// Filter by category ID (optional)
  56. /// </summary>
  57. public int? categoryId { get; set; }
  58. /// <summary>
  59. /// Filter by featured articles only
  60. /// </summary>
  61. public bool? isFeatured { get; set; }
  62. /// <summary>
  63. /// Article slug for getting single article detail
  64. /// </summary>
  65. public string? slug { get; set; }
  66. }
  67. }