Driver.java 4.27 KB
package com.ruoyi.driver.domain;

import com.alibaba.fastjson2.JSON;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Getter;
import lombok.Setter;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * 驾驶员信息对象 driver
 *
 * @author 古自健
 * @date 2023-07-04
 */
@Setter
@Getter
@ApiModel("驾驶员信息对象")
public class Driver extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 工号
     */
    @Excel(name = "工号")
    private String jobCode;

    /**
     * 公司编码
     */
    @Excel(name = "公司编码")
    private String companyCode;

    /**
     * 分公司编码
     */
    @Excel(name = "分公司编码")
    private String brancheCompanyCode;

    /**
     * 姓名
     */
    @Excel(name = "姓名")
    private String personnelName;

    /**
     * 运营服务证书号
     */
    @Excel(name = "运营服务证书号")
    private String papersCode;

    /**
     * 一卡通工作卡号
     */
    @Excel(name = "一卡通工作卡号")
    private String icCardCode;

    /**
     * 性别
     */
    @Excel(name = "性别")
    private String personnelType;

    /**
     * 所属岗位/工种
     */
    @Excel(name = "所属岗位/工种")
    private String posts;

    /**
     * 身份证
     */
    @Excel(name = "身份证")
    private String card;

    /**
     * 联系电话
     */
    @Excel(name = "联系电话")
    @JsonIgnoreProperties(ignoreUnknown = true)
    private String telphone;

    /**
     * RFID 人卡IC号
     */
    @Excel(name = "RFID 人卡IC号")
    private String icRfid;

    /**
     * RFID 人卡ID号(10进制)
     */
    @Excel(name = "RFID 人卡ID号", readConverterExp = "1=0进制")
    private String idRfid;
    /**
     * RFID 标签号
     */
    @Excel(name = "RFID 标签号")
    private String tagRfid;
    /**
     * 线路名称
     */
    @Excel(name = "线路名称")
    private String lineName;
    /**
     * 线路编码
     */
    @Excel(name = "线路编码")
    private String lineCode;
    /**
     * 是否人脸注册
     */
    @Excel(name = "是否人脸注册")
    @ApiModelProperty("是否人脸注册 0 注册 1 未注册 2 注册过期更新")
    private Integer faceSignIn;
    /**
     * 大头像
     */
    @ApiModelProperty("头像")
    private String image;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("更新时间")
    private Date updateTime;

    @ApiModelProperty("注册设备列表")
    private String signInEquipment;

    @ApiModelProperty("车队名称")
    @Excel( name ="车队名称")
    private String fleetName;


    @Override
    public boolean equals(Object o) {
        if (this == o) return true;

        if (o == null || getClass() != o.getClass()) return false;

        Driver driver = (Driver) o;

        return new EqualsBuilder()
                .append(getJobCode(), driver.getJobCode())
                .append(getPersonnelName(), driver.getPersonnelName())
                .append(getPosts(), driver.getPosts())
                .append(getLineName(), driver.getLineName())
                .append(getFleetName(), driver.getFleetName()).isEquals();
    }

    @Override
    public String toString() {
        return JSON.toJSONString(this);
    }

    @Override
    public int hashCode() {
        return new HashCodeBuilder(17, 37).append(getId()).append(getJobCode()).append(getCompanyCode()).append(getBrancheCompanyCode()).append(getPersonnelName()).append(getPapersCode()).append(getIcCardCode()).append(getPersonnelType()).append(getPosts()).append(getCard()).append(getTelphone()).append(getIcRfid()).append(getIdRfid()).append(getTagRfid()).append(getLineName()).append(getLineCode()).append(getFaceSignIn()).append(getImage()).append(getUpdateTime()).append(getSignInEquipment()).append(getFleetName()).toHashCode();
    }
}