package digital.laboratory.platform.inspetion.api.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import digital.laboratory.platform.common.mybatis.base.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;

/*
 *@title EntrustInfo
 *@description
 *@author xy
 *@version 1.0
 *@create 2023/12/7 14:58
 */
@Data
@TableName(value = "b_entrustInfo", autoResultMap = true)
@ApiModel(value = "委托信息", description = "委托信息")
public class EntrustInfo extends BaseEntity {
    private String id;
    private String businessType;//业务类型
    private String caseName;//案件名称
    private String caseBrief;//案情简要
    private String entrustNo;//委托编号
    private String entrustDepartment;//委托单位
    private String identityDepartment;//鉴定单位
    private String acceptNo;//受理编号
    private LocalDateTime acceptDate;//受理日期
    private String deliver1Name;//送检人姓名
    private String deliver1Phone;//送检人电话
    private String deliver1Position;//送检人职务
    private String deliver1Cert;//证件类型
    private String deliver1No;//证件号码
    private String deliver2Name;//送检人姓名
    private String deliver2Phone;//送检人电话

    private String deliver2Position;//送检人职务

    private String deliver2Cert;//证件类型

    private String deliver2No;//证件号码

    private Integer source;//数据来源

    private String materialType;//检材类别（缴获物和生物样本）

    private String entrustRequirement;//鉴定要求，从检材中的鉴定要求提取组合而成 eg:对检材中四氢大麻酚进行定性定量分析，对合成大麻素类物质进行定性分析。

    private Integer status;//0：未分配 1：已分配 2：实验中 3：鉴定完毕

    private String reportReceiveMode; // 文书领取方式

    private String postAddress; // 邮寄地址

    private String synEntrustId;//送检受理系统中的委托ID

    @ApiModelProperty("是否推送数据到LabsCare的标识，[EntrustLetter:true 代表推送委托书成功 | ItemConfirmLetter:true 代表推送鉴定事项确认书成功 | BiologyQualitativeRecord:true 代表推送生物定性检验记录成功]" +
            "如果这个字段为空则表示失败，如果两个推送都成功，以英文逗号分隔")
    private String pushFlag;


    @TableField(exist = false)
    private String businessTypeName;
    @TableField(exist = false)
    private Boolean isDistribution;//是否被分配

    @ApiModelProperty(value="检材数量")
    @TableField(exist = false)
    private Integer materialNum;

}
