package com.cyksj.model.entity;

import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.Date;

/*
 *项目名: netflix
 *文件名: DistributeWaitingSendPoints
 *创建者: JavaZou
 *创建时间:2022/11/15 12:11
 */
@Getter
@Setter
public class DistributeWaitingSendPoints extends BaseEntity{
	/**
	 * 分销订单产生用户id
	 */
	private Long userId;

	/**
	 * 积分待发人
	 */
	private Long sharedId;

	private Long orderId;

	private BigDecimal points;

	/**
	 * 额外返利积分(目前只针对普通推广)
	 */
	private BigDecimal extraRebate;

	/**
	 * 倍数
	 */
	private BigDecimal extraMultiple;

	/**
	 * 原本积分奖励
	 */
	private BigDecimal oriPoints;

	private BigDecimal refundPoints;

	/**
	 * 退款状态不再发
	 */
	private Status sendStatus;

	private Integer version;

	private Date sendTime;

	/**
	 * 针对实物 是否已发货
	 * true 已发货 默认true
	 */
	private Boolean isDelivery;

	/**
	 * 分销提成平摊折扣金额
	 * 是否参与渠道分销规则
	 */
	private Boolean isRule;

	/**
	 * 平摊积分
	 */
	private BigDecimal deductPoints;

	/**
	 * 获取提成比例
	 */
	private Integer rate;

	/**
	 * 是否特殊设备分销订单
	 */
	private Boolean isSpecialEp;

	/**
	 * 是否是会员分销
	 */
	private Boolean isVip;

	@Getter
	public enum Status{
		close("分销订单关闭,积分奖励不分发"),
		success("积分发送成功"),
		waiting("积分等待发送"),
		not_exist("用户不存在,导致发送失败"),
		;
		String desc;

		Status(String desc) {
			this.desc = desc;
		}
	}
}
