package cn.iocoder.yudao.module.train.entity;

import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;

import lombok.*;
import lombok.experimental.Accessors;

/**
 * 教练打卡表
 *
 * @author author
 * @since 2025-07-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("drive_school_coach_clock")
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DriveSchoolCoachClock extends TenantBaseDO {

    /**
     * id
     */
    @TableId(type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 科目（1-科目一；2-科目二；3科目三；4科目四）
     */
    private Integer subject;

    /**
     * 教练ID
     */
    private Long userId;

    /**
     * 教练姓名
     */
    private String userName;

    /**
     * 手机号
     */
    private String userMobile;

    /**
     * 车辆id
     */
    private String carId;

    /**
     * 车牌号
     */
    private String carNo;

    /**
     * 训练地址id
     */
    private String addrId;

    /**
     * 训练地址
     */
    private String addr;

    /**
     * 训练日期（yyyy-MM-dd）
     */
    private String trainDay;

    /**
     * 到场时间
     */
    private LocalDateTime startTime;

    /**
     * 到场备注
     */
    private String startRemark;

    /**
     * 到场图片
     */
    private String startImages;

    /**
     * 离场时间
     */
    private LocalDateTime endTime;

    /**
     * 离场备注
     */
    private String endRemark;

    /**
     * 离场图片
     */
    private String endImages;

    /**
     * 本次有效训练时长（分钟）
     */
    private Double trainTime;

    /**
     * 累计有效训练时长（分钟）到场打卡存的是本次训练前的累计时长，离场打卡后，存的是本次训练完后累计时长
     */
    private Double allTrainTime;




}
