package com.xinelu.manage.vo.trainingitemdirectory;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinelu.manage.domain.trainingitemdirectory.TrainingItemDirectory;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalTime;

/**
 * 学习培训项目章节对象 training_item_directory
 *
 * @author xinyilu
 * @date 2023-04-20
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class TrainingItemDirectoryVO extends TrainingItemDirectory implements Serializable {
    private static final long serialVersionUID = 1329246346741098330L;

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

    /**
     * 是否购买学习培训项目章节 BUY：已购买，NOT_BUY：未购买
     */
    private String trainingOrderItemDirectoryBuy;

    /**
     * 未观看：NOT_WATCHED，已观看：WATCHED，已看完：FINISHED_READING
     **/
    private String itemDirectoryWatchStatus;

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

    /**
     * 订单主表id
     */
    private Long trainingOrderId;

    /**
     * 护理站id
     */
    private Long nurseStationId;

    /**
     * 护理站人员id
     */
    private Long nurseStationPersonId;

    /**
     * 护理站人员名称
     */
    private String nursePersonName;

    /**
     * 订单状态，待付款：WAIT_PAY，已付款：PAY，退款中：WAIT_REFUND，已退款：REFUNDED，已取消：CANCEL
     */
    private String trainingOrderStatus;

    /**
     * 观看日期，格式：yyyy-MM-dd
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate watchDate;

    /**
     * 培训项目观看时间点，格式：HH:mm:ss，视频学习类型使用
     */
    @JsonFormat(pattern = "HH:mm:ss")
    private LocalTime watchTime;
}