package com.fs.hisStore.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

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

/**
 * 会员看课统计-按课程统计对象 fs_user_watch_course_statistics
 *
 * @author fs
 * @date 2025-06-17
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("fs_user_watch_course_statistics")
public class FsUserWatchCourseStatisticsScrm extends BaseEntity{

    /** 主键id */
    private Long id;

    /** 营期id */
//    @Excel(name = "营期id")
    private Long periodId;

    /** 营期名称 */
    @Excel(name = "营期名称")
    private String periodName;

    /** 营期开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "营期线", width = 30, dateFormat = "yyyy-MM-dd")
    private Date periodStartingTime;

    /** 课程开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "播出时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date courseStartDateTime;

    /** 课程id */
//    @Excel(name = "课程id")
    private Long courseId;

    /** 课程名称 */
    @Excel(name = "课程名称")
    private String courseName;

    /** 视频id */
//    @Excel(name = "视频id")
    private Long videoId;

    /** 视频标题 */
    @Excel(name = "视频小节")
    private String videoTitle;

    /** 销售公司id */
//    @Excel(name = "销售公司id")
    private Long companyId;

    /** 销售公司名称 */
    @Excel(name = "销售公司")
    private String companyName;

    /** 销售id */
//    @Excel(name = "销售id")
    private Long companyUserId;

    /** 销售名称 */
    @Excel(name = "所属销售")
    private String companyUserName;

    /** 新增会员数量 */
    @Excel(name = "新增会员")
    private Integer newUserNum;

    /** 会员数量 */
    @Excel(name = "会员数量")
    private Integer userNum;

    /** 观看人数 */
    @Excel(name = "观看人数")
    private Integer watchNum;

    /** 上线率+% */
    @Excel(name = "上线率")
    private String onlineRatePercent;

    /** 完播人数 */
    @Excel(name = "完播人数")
    private Integer completeWatchNum;

    /** 上线率 */
    private BigDecimal onlineRate;

    /** 完播率 */
//    @Excel(name = "完播率")
    private BigDecimal completeWatchRate;

    /** 完播率+% */
    @Excel(name = "完播率")
    private String completeWatchRatePercent;

    /** 答题人数 */
    @Excel(name = "答题人数")
    private Integer answerNum;

    /** 答题正确人数 */
    @Excel(name = "正确人数")
    private Integer answerRightNum;

    /** 答题正确率 */
//    @Excel(name = "正确率")
    private BigDecimal answerRightRate;

    /** 答题正确率+% */
    @Excel(name = "正确率")
    private String answerRightRatePercent;

    /** 红包领取数量 */
    @Excel(name = "红包领取个数")
    private Integer redPacketNum;

    /** 红包领取总额 */
    @Excel(name = "红包领取总额")
    private BigDecimal redPacketAmount;

    /** 用户的创建日期 */
    private Date userCreateDate;

    /** 营期日期 */
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date periodLine;

}
