GiftCardManageSaveDTO.java 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package com.ylx.giftCard.domain.dto;
  2. import io.swagger.annotations.ApiModel;
  3. import io.swagger.annotations.ApiModelProperty;
  4. import lombok.Data;
  5. import javax.validation.constraints.DecimalMax;
  6. import javax.validation.constraints.DecimalMin;
  7. import javax.validation.constraints.Min;
  8. import javax.validation.constraints.NotBlank;
  9. import javax.validation.constraints.NotNull;
  10. import javax.validation.constraints.Size;
  11. import java.io.Serializable;
  12. import java.math.BigDecimal;
  13. import java.time.LocalDate;
  14. @Data
  15. @ApiModel("购物卡管理新增DTO")
  16. public class GiftCardManageSaveDTO implements Serializable {
  17. private static final long serialVersionUID = -3120530382569245494L;
  18. /**
  19. * 商户ID
  20. */
  21. @ApiModelProperty("商户ID")
  22. private String merchantId;
  23. /**
  24. * 购物卡名称
  25. */
  26. @NotBlank(message = "购物卡名称不能为空")
  27. @Size(max = 20, message = "购物卡名称不能超过20个字符")
  28. @ApiModelProperty(value = "购物卡名称", required = true)
  29. private String name;
  30. /**
  31. * 缩略图URL(上传后存储路径)
  32. */
  33. @NotBlank(message = "图片不能为空")
  34. @ApiModelProperty(value = "图片URL", required = true)
  35. private String imageUrl;
  36. /**
  37. * 购物卡金额
  38. */
  39. @NotNull(message = "购物卡金额不能为空")
  40. @DecimalMin(value = "0.01", message = "购物卡金额必须大于0")
  41. @ApiModelProperty(value = "购物卡金额", required = true)
  42. private BigDecimal amount;
  43. /**
  44. * 商户提成比例
  45. */
  46. @NotNull(message = "商户提成比例不能为空")
  47. @DecimalMin(value = "0", message = "商户提成比例不能小于0")
  48. @DecimalMax(value = "100", message = "商户提成比例不能大于100")
  49. @ApiModelProperty(value = "商户提成比例", required = true)
  50. private BigDecimal commissionRate;
  51. /**
  52. * 库存
  53. */
  54. @NotNull(message = "库存不能为空")
  55. @Min(value = 0, message = "库存不能小于0")
  56. @ApiModelProperty(value = "库存", required = true)
  57. private Integer stock;
  58. /**
  59. * 有效期开始日期
  60. */
  61. @NotNull(message = "有效期开始日期不能为空")
  62. @ApiModelProperty(value = "有效期开始日期", required = true)
  63. private LocalDate validStartDate;
  64. /**
  65. * 有效期结束日期
  66. */
  67. @NotNull(message = "有效期结束日期不能为空")
  68. @ApiModelProperty(value = "有效期结束日期", required = true)
  69. private LocalDate validEndDate;
  70. /**
  71. * 是否上架:1=上架,0=下架,不传默认下架
  72. */
  73. @ApiModelProperty("是否上架:1=上架,0=下架,不传默认下架")
  74. private Integer isPublished;
  75. /**
  76. * 详情
  77. */
  78. @ApiModelProperty("详情")
  79. private String description;
  80. }