package com.fastbee.xunjian.domain;

import com.fastbee.common.annotation.Excel;
import com.fastbee.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.List;

/**
 * 巡检路线对象 klxj_inspection_routes
 *
 * @author kenlixunjian
 * @date 2023-08-04
 */
@Data
public class XjInspectionRoutes extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    private Long id;
    private String abnormalType;

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

    /**
     * 点线类型(1点2线）
     */
    @Excel(name = "点线类型(1点2线）")
    private String dotLineType;

    /**
     * 工程对象类型
     */
    @Excel(name = "工程对象类型")
    private String engineeringObjectType;

    /**
     * 工程对象id
     */
    @Excel(name = "工程对象Id")
    private Long engineeringObjectId;


    /**
     * 注意事项ids
     */
    private String inspectionNoteIds;

    private List<XjInspectionNote> inspectionNote;

    /**
     * 项目id
     */
    @Excel(name = "项目id")
    private Long projectId;

    /**
     * 经纬度
     */
    @Excel(name = "经纬度", prompt = "以,隔开")
    private String latAndLong;

    /**
     * 位置
     */
    @Excel(name = "位置")
    private String position;

    /**
     * 范围（单位m）
     */
    @Excel(name = "巡检距离")
    private String range;
    /**
     * 编码
     */
    @Excel(name = "绑定二维码编码")
    private String qrCodeSn;

    /**
     * 范围线
     */
//    @Excel(name = "范围线")
    private String rangeArea;

    /**
     * 二维码
     */
//    @Excel(name = "二维码")
    private Long qrCodeId;

    /**
     * 行政区域码
     */
//    @Excel(name = "行政区域码")
    private String quyuma;

    private String recordStatus = "0";
    private Long recordId;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getDotLineType() {
        return dotLineType;
    }

    public void setDotLineType(String dotLineType) {
        this.dotLineType = dotLineType;
    }

    public String getEngineeringObjectType() {
        return engineeringObjectType;
    }

    public void setEngineeringObjectType(String engineeringObjectType) {
        this.engineeringObjectType = engineeringObjectType;
    }

    public Long getEngineeringObjectId() {
        return engineeringObjectId;
    }

    public void setEngineeringObjectId(Long engineeringObjectId) {
        this.engineeringObjectId = engineeringObjectId;
    }

    public Long getProjectId() {
        return projectId;
    }

    public void setProjectId(Long projectId) {
        this.projectId = projectId;
    }

    public String getLatAndLong() {
        return latAndLong;
    }

    public void setLatAndLong(String latAndLong) {
        this.latAndLong = latAndLong;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    public String getRange() {
        return range;
    }

    public void setRange(String range) {
        this.range = range;
    }

    public String getRangeArea() {
        return rangeArea;
    }

    public void setRangeArea(String rangeArea) {
        this.rangeArea = rangeArea;
    }

    public Long getQrCodeId() {
        return qrCodeId;
    }

    public void setQrCodeId(Long qrCodeId) {
        this.qrCodeId = qrCodeId;
    }

    public String getQuyuma() {
        return quyuma;
    }

    public void setQuyuma(String quyuma) {
        this.quyuma = quyuma;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("name", getName())
                .append("dotLineType", getDotLineType())
                .append("engineeringObjectType", getEngineeringObjectType())
                .append("engineeringObjectId", getEngineeringObjectId())
                .append("projectId", getProjectId())
                .append("latAndLong", getLatAndLong())
                .append("position", getPosition())
                .append("range", getRange())
                .append("rangeArea", getRangeArea())
                .append("qrCodeId", getQrCodeId())
                .append("quyuma", getQuyuma())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .toString();
    }
}
