package com.zd.laboratory.domain.vo;

import com.zd.common.core.annotation.Excel;
import com.zd.laboratory.domain.LabPhotoInspection;
import com.zd.laboratory.domain.LabSubjectAccessRecord;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.ArrayList;
import java.util.List;

/**
 * 实验室进出记录对象 lab_subject_access_record
 *
 * @author zd
 * @date 2021-08-30
 */
@ApiModel("实验室进出记录表")
public class LabSubjectAccessRecordVo extends LabSubjectAccessRecord {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "时间字符串")
    private String timeStr;

    public String getTimeStr() {
        return timeStr;
    }

    public void setTimeStr(String timeStr) {
        this.timeStr = timeStr;
    }

    @ApiModelProperty(value = "用户姓名")
    private String userName;

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    @ApiModelProperty(value = "统计")
    private String countStr;

    public String getCountStr() {
        return countStr;
    }

    public void setCountStr(String countStr) {
        this.countStr = countStr;
    }

    //真实姓名
    @Excel(name = "姓名",sort = 1)
    @ApiModelProperty(value = "真实姓名")
    private String nickName;

    //电话号码
    @ApiModelProperty(value = "电话号码")
    private String phonenumber;

    //停留时长
    @ApiModelProperty(value = "停留时长")
    @Excel(name = "停留时间",sort = 6)
    private String intervalTime;

    private String oneConfirm;

    //实验室名称
    @Excel(name = "实验室",sort = 3)
    @ApiModelProperty(value = "实验室名称")
    private String subjectName;

    //实验室进出时间类型，1是进时间区间，2是出时间区间
    @ApiModelProperty(value = "实验室进出时间类型，1是进时间区间，2是出时间区间")
    private Integer inOutType;

    @ApiModelProperty(value = "进出记录的ids")
    private Long[] accessIds;

    private List<LabPhotoInspection> photoList = new ArrayList<>();

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getPhonenumber() {
        return phonenumber;
    }

    public void setPhonenumber(String phonenumber) {
        this.phonenumber = phonenumber;
    }


    public String getIntervalTime() {
        return intervalTime;
    }

    public void setIntervalTime(String intervalTime) {
        this.intervalTime = intervalTime;
    }

    public List<LabPhotoInspection> getPhotoList() {
        return photoList;
    }

    public void setPhotoList(List<LabPhotoInspection> photoList) {
        this.photoList = photoList;
    }

    public String getOneConfirm() {
        return oneConfirm;
    }

    public void setOneConfirm(String oneConfirm) {
        this.oneConfirm = oneConfirm;
    }

    public String getSubjectName() {
        return subjectName;
    }

    public void setSubjectName(String subjectName) {
        this.subjectName = subjectName;
    }

    public Integer getInOutType() {
        return inOutType;
    }

    public void setInOutType(Integer inOutType) {
        this.inOutType = inOutType;
    }

    public Long[] getAccessIds() {
        return accessIds;
    }

    public void setAccessIds(Long[] accessIds) {
        this.accessIds = accessIds;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("timeStr", getTimeStr())
                .append("userName", getUserName())
                .append("countStr", getCountStr())
                .toString();
    }
}
