
package com.tmerclub.cloud.user.dto;

import com.tmerclub.cloud.common.util.PriceUtil;
import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import lombok.Data;
import lombok.ToString;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 商品信息
 *
 * @author YXF
 * @date 2020-12-23 15:27:24
 */
@Data
@ToString
public class UserAdminDTO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 用户id列表
     */
    private List<Long> userIds;
    /**
     * 正数代表增加，负数代表减少，只能输入整数，
     * 根据修改后的成长值重新计算会员等级
     */
    @Max(value = Integer.MAX_VALUE, message = "最大值不能超过" + Integer.MAX_VALUE)
    @Min(value = Integer.MIN_VALUE, message = "最小值不能小于" + Integer.MIN_VALUE)
    private Integer growth;
    /**
     * 修改成长值，是否赠送礼物
     *  0不赠送，1赠送
     */
    private Integer isSendReward;
    /**
     * 正数代表增加，负数代表减少，只能输入整数，
     * 修改会员积分
     */
    @Max(value = Long.MAX_VALUE, message = "最大值不能超过" + Long.MAX_VALUE)
    @Min(value = Long.MIN_VALUE, message = "最小值不能小于" + Long.MIN_VALUE)
    private Long score;

    /**
     * 标签id
     */
    private List<Long> tagList;

    /**
     * 修改余额
     * 正数代表增加，负数代表减少，只能输入数字，最多两位小数
     */
    @Max(value = PriceUtil.MAX_AMOUNT, message = "最大值不能超过" + PriceUtil.MAX_AMOUNT)
    @Min(value = Long.MIN_VALUE, message = "最小值不能小于" + Long.MIN_VALUE)
    private BigDecimal balanceValue;

}
