package cn.iocoder.yudao.module.museum.dal.database.museumflow;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import java.time.LocalDateTime;

/**
 * 博物馆的出/回库-数据库
 *
 * @author 芋道源码
 */
@TableName(value = "museum_outbound", autoResultMap = true) // 由于 SQL Server 的 system_user 是关键字，所以使用 system_users
@Data
@Builder
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
@AllArgsConstructor
public class MuseumFlowDO extends BaseDO {

    @TableId
    @Schema(description = "样品ID")
    private Integer id;

    @Schema(description = "样品编号")
    private String number;

    @Schema(description = "尺寸")
    private String sampleName;

    @Schema(description = "样品名称")
    private String outboundPerson;

    @Schema(description = "出库时间")
    private LocalDateTime outboundTime;

    @Schema(description = "目的")
    private String purpose;

    @Schema(description = "出库附件")
    private String annexOut;

    @Schema(description = "申请人")
    private String applyPerson;

    @Schema(description = "申请单位")
    private String applyUnit;

    @Schema(description = "申请时间")
    private LocalDateTime applyTime;

    @Schema(description = "预计退还时间")
    private String returnExpect;

    @Schema(description = "审批人")
    private String reviewPerson;

    @Schema(description = "状态")
    private Integer state;

    @Schema(description = "审批时间")
    private LocalDateTime reviewTime;

    @Schema(description = "拒绝原因")
    private String rejectSeason;

    @Schema(description = "退还员")
    private String returnPerson;

    @Schema(description = "退还时间")
    private LocalDateTime returnTime;

    @Schema(description = "点收人")
    private String receviePerson;

    @Schema(description = "回库附件")
    private String annexReturn;

    @Schema(description = "备注")
    private String nots;

}
