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

/**
 * 回收物品预约信息
 */
@Entity("t_recycle_appointment")
export class RecycleAppointmentEntity extends BaseEntity {
    @Index({ unique: true })
    @Column({ comment: "预约编号" })
    appointmentNo: string;

    @Index()
    @Column({ comment: '学校ID', nullable: true })   // 使用归属部门，这里建议选顶层学校
    departmentId: number;

    departmentName: string;

    @Index()
    @Column({ comment: "用户ID" })
    campusUserId: string;

    campusUserName: string;

    @Column({ comment: "联系人" })
    contactName: string;

    @Column({ comment: "联系电话" })
    contactPhone: string;

    @Column({ comment: "详细地址" })
    address: string;


    @Column({ comment: "经度", nullable: true })
    longitude: number;


    @Column({ comment: "纬度",nullable: true })
    latitude: number;

    @Column({ comment:"预约日期"})
    appointmentDate:string;

     @Column({comment:"预约时间段", default:"傍晚 18:00-20:00"})
    appointmentSlot:string;


    @Column({ comment:"预计重量",default: 0 })
    expectedWeight:number;

    @Column({ comment: "状态", dict: ['新增', '待审核', '待接单', '已确认', '已接单', '上门中', '已完成', '已取消', '未知'], default: '新增' })
    status: string;
    
    @Index()
    @Column({ comment: "分拣员ID", nullable: true, default: 0 })
    sorterId: string;

    sorterName: string;

    @Column({ comment:"回收订单ID", nullable:true})
    recycleOrderId:string;


}