package cn.newfeifan.mall.module.distri.controller.app.ptprofitlog.vo;

import cn.newfeifan.mall.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.time.LocalDateTime;

import static cn.newfeifan.mall.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@Schema(description = "管理后台 - 平台利润记录分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PtProfitLogPageReqVO extends PageParam {

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    @Schema(description = "订单Id", example = "26464")
    private Long orderId;

    @Schema(description = "订单编号")
    private String orderNo;

    @Schema(description = "计算百分比模板")
    private String percentTemplate;

    @Schema(description = "变动的当前可用积分值（可为负数）")
    private Long amount;

    @Schema(description = "变动后当前可用积分钱包的余额")
    private Long afterAmount;

    @Schema(description = "收益来源 1:平台服务器费 2:平台收益 3用户下单返回毛利额度 4直推人额度 5合赢奖", example = "1")
    private Integer profitStatus;

    @Schema(description = "收益类型")
    private Integer profitType;

    @Schema(description = "产生积分的用户ID，例如：下订单的用户ID", example = "31502")
    private Long generateUserId;
}