package org.dromara.zhishu.domain;

import lombok.*;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.IdType;
import org.dromara.common.mybatis.core.domain.BaseEntity;

import java.io.Serializable;

/**
 * 分润记录实体类
 * 对应表名：profit_sharing_log
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("profit_sharing_log")
public class ProfitSharingLog extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 订单ID
     */
    private Long orderId;

    /**
     * 订单编号
     */
    private String orderSn;

    /**
     * 分润规则ID
     */
    private Long cfgId;

    /**
     * 状态 0-待出款 1-已出款
     */
    private Integer status;

    /**
     * 分润受益方ID（平台 商家 上级）
     */
    private Long beneficiaryId;

    /**
     * 分润受益方名字
     */
    private String beneficiaryName;

    /**
     * 计算基准金额（单位：分）
     */
    private Long calcBaseAmount;

    /**
     * 分润比例
     */
    private Integer shareRate;

    /**
     * 分润金额（单位：分）
     */
    private Long shareAmount;

    /**
     * 结算时间戳（毫秒）
     */
    private Long settlementTime;

    /**
     * 账期（例如202509，用于按月度对账）
     */
    private Long accountingPeriod;

    /**
     * 创建时间戳（毫秒）
     */
    private Long createdTime;

    /**
     * 创建人ID
     */
    private Long createdBy;

    /**
     * 更新时间戳（毫秒）
     */
    private Long updatedTime;

    /**
     * 更新人ID
     */
    private Long updatedBy;

    /**
     * 是否启用 0-启用 1-禁用
     */
    private Integer isDel;

    private Long startTime;

    private Long endTime;
}