package com.fs.course.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fs.common.annotation.Excel;
import lombok.Data;
import com.fs.common.core.domain.BaseEntity;
import lombok.EqualsAndHashCode;

/**
 * 会员每日看课统计对象 fs_user_course_company_statistics
 *
 * @author fs
 * @date 2025-10-27
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FsUserCourseCompanyStatistics extends BaseEntity{

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

    /** 项目ID */
//    @Excel(name = "项目ID")
    private Long projectId;

    /** 完播次数（人次） */
    @Excel(name = "完播次数", readConverterExp = "人=次")
    private Long completeWatchCount;

    /** 观看次数（人次） */
    @Excel(name = "观看次数", readConverterExp = "人=次")
    private Long watchCount;

    /** 完播率（完播次数/观看次数） */
    @Excel(name = "完播率", readConverterExp = "完=播次数/观看次数")
    private Long completeRate;

    /** 答题人次 */
    @Excel(name = "答题人次")
    private Long answerCount;

    /** 正确人次 */
    @Excel(name = "正确人次")
    private Long correctCount;

    /** 正确率（正确人次/答题人次） */
    @Excel(name = "正确率", readConverterExp = "正=确人次/答题人次")
    private Long correctRate;

    /** 领取次数 */
    @Excel(name = "领取次数")
    private Long receiveCount;

    /** 领取金额（元） */
    @Excel(name = "领取金额", readConverterExp = "元=")
    private BigDecimal receiveAmount;

    /** 会员数量 */
    @Excel(name = "会员数量")
    private Long userCount;

    /** 会员黑名单数量 */
    @Excel(name = "会员黑名单数量")
    private Long userBlacklistCount;

    /** 公司ID */
//    @Excel(name = "公司ID")
    private Long companyId;

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

    /** 统计日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "统计日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;


}
