import { BaseEntity } from '../../base/entity/base';
import { Column, Entity, Index } from 'typeorm';

/**
 * 分拣员签到，签退信息
 */
@Entity('t_push_sorter_attendance')
export class PushSorterAttendanceEntity extends BaseEntity {
    @Index()
    @Column({ comment: '身份证号', length: 18 })
    idCard: string;

    @Column({ comment: '所属单位' })
    departmentId: number;

    departmentName: string;

    @Index()
    @Column({ comment: '数据时间' })
    uploadTime: Date;

    @Index()
    @Column({ comment: '工作日期', type: 'date' })
    workDate: Date;

    @Column({ comment: '签到时间', nullable: true })
    checkInTime: Date;

    @Column({ comment: '签退时间', nullable: true })
    checkOutTime: Date;

    @Column({ comment: '签到地点', nullable: true })  // lon,lat
    checkInLocation: string;

    @Column({ comment: '签退地点', nullable: true }) // lon,lat
    checkOutLocation: string;

    @Column({ comment: '工作时长', type: 'decimal', precision: 4, scale: 2, default: 0.00 })
    workHours: number;

    @Column({ comment: '考勤状态', dict: ['正常', '迟到', '早退', '缺卡', '旷工'], default: '缺卡' })
    status: string;


}