InviteConfigRequest.java 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. package com.xuekairui.invite.dto;
  2. import jakarta.validation.constraints.Max;
  3. import jakarta.validation.constraints.Min;
  4. import lombok.Data;
  5. /**
  6. * 邀请配置更新请求(运营)
  7. * 支持多渠道配置
  8. */
  9. @Data
  10. public class InviteConfigRequest {
  11. /** 每次邀请奖励爬虫次数(历史字段,已废弃) */
  12. @Min(1)
  13. private Integer rewardCrawlerCount;
  14. /** 奖励类型:MEMBERSHIP-赠送会员时长 CRAWLER-爬虫次数(历史) */
  15. private String rewardType;
  16. /** 邀请人奖励会员时长(月) */
  17. @Min(1)
  18. @Max(12)
  19. private Integer rewardMonths;
  20. /** 每日最大奖励次数上限 */
  21. @Min(1)
  22. private Integer maxDailyReward;
  23. /** 邀请码有效天数 */
  24. @Min(1)
  25. private Integer inviteCodeExpireDays;
  26. /** 每人每天最大邀请次数 */
  27. @Min(1)
  28. @Max(100)
  29. private Integer maxInvitePerDay;
  30. /** 单个账号总邀请上限 */
  31. @Min(1)
  32. @Max(999)
  33. private Integer maxTotalInvites;
  34. // ========== 多渠道配置 ==========
  35. /** Windows客户端下载地址 */
  36. private String appDownloadUrl;
  37. /** 小程序页面路径(如 /pages/download/index) */
  38. private String miniappPath;
  39. /** 小程序AppID */
  40. private String miniappAppId;
  41. /** 微信公众号引导跳转URL */
  42. private String wechatRedirectUrl;
  43. /** 钉钉应用ID */
  44. private String dingtalkAppId;
  45. /** 飞书应用ID */
  46. private String feishuAppId;
  47. // ========== 落地页配置 ==========
  48. /** 落地页标题 */
  49. private String landingTitle;
  50. /** 落地页描述 */
  51. private String landingDesc;
  52. /** 应用名称 */
  53. private String appName;
  54. /** 状态:0-停用 1-启用 */
  55. @Min(0)
  56. @Max(1)
  57. private Integer status;
  58. /** 备注 */
  59. private String remark;
  60. }