package com.fs.course.domain;

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.util.Date;

/**
 * 看课历史记录对象 fs_course_watch_log
 *
 * @author fs
 * @date 2025-05-21
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class FsCourseWatchHistoryLog extends BaseEntity{

    /** 日志Id */
    private Long logId;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** 小节id */
    @Excel(name = "小节id")
    private Long videoId;

    /** 记录类型 1看课中 2完课 3待看课 4看课中断 */
    @Excel(name = "记录类型 1看课中 2完课 3待看课 4看课中断")
    private Long logType;

    /** 企微外部联系人id */
    @Excel(name = "企微外部联系人id")
    private Long qwExternalContactId;

    /** 播放时长 */
    @Excel(name = "播放时长")
    private Long duration;

    /** 分享人企微userId */
    @Excel(name = "分享人企微userId")
    private String qwUserId;

    /** 客服id */
    @Excel(name = "客服id")
    private Long companyUserId;

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

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

    /** 归属发送方式：1 个微  2 企微 */
    @Excel(name = "归属发送方式：1 个微  2 企微")
    private Long sendType;

    /** 奖励类型 1：红包 2积分 */
    @Excel(name = "奖励类型 1：红包 2积分")
    private Long rewardType;

    /** 最后心跳时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后心跳时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastHeartbeatTime;

    /** sop任务id */
    @Excel(name = "sop任务id")
    private String sopId;

    /** 完课时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "完课时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishTime;

    /** 是否发送完课消息 */
    @Excel(name = "是否发送完课消息")
    private Long sendFinishMsg;

    /** sop任务中的营期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "sop任务中的营期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date campPeriodTime;

    /** 天数 */
    @Excel(name = "天数")
    private Long day;

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

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


}
