package com.fs.course.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fs.common.annotation.Excel;
import com.fs.common.core.domain.BaseEntity;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * 短链课程看课记录对象 fs_course_watch_log
 *
 * @author fs
 * @date 2024-10-24
 */
@Data
public class FsCourseWatchLog extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 日志Id */
    @TableId(type = IdType.AUTO)
    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 Integer 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;

    private Integer sendType; //归属发送方式：1 个微  2 企微

    private Integer rewardType;//发放奖励类型


    private LocalDateTime lastHeartbeatTime;//心跳时间


    private String sopId; //sop任务id


    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date finishTime; //完课时间

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date campPeriodTime; //sop任务中营期

    private Integer sendFinishMsg;//是否发送完课消息

    private Long project;
    private Long day;


}
