package com.artfess.rescue.base.model;

import com.artfess.base.entity.BizDelModel;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;

/**
 * 巡查点位信息
 *
 * @company 阿特菲斯信息技术有限公司
 * @author 系统管理员
 * @since 2024-07-24
 */
@ApiModel(value="BizBasePatrol对象", description="巡查点位信息")
@Data
@TableName("biz_base_patrol")
public class BizBasePatrol extends BizDelModel<BizBasePatrol> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键_ID")
    @TableId(value = "ID_", type = IdType.ASSIGN_ID)
    private String id;

    @NotNull(message = "点位名称不能为空")
    @ApiModelProperty(value = "点位名称")
    @TableField("NAME_")
    private String name;

    @NotNull(message = "所在路段编码不能为空")
    @ApiModelProperty(value = "所在路段编码(关联路段表编码)")
    @TableField("ROAD_CODE_")
    private String roadCode;

    @ApiModelProperty(value = "所在路段id(关联路段表ID)")
    @TableField("ROAD_ID_")
    private String roadId;

    @ApiModelProperty(value = "所在路段名称")
    @TableField("ROAD_NAME_")
    private String roadName;

    @ApiModelProperty(value = "点位类别【字典】（1：固定点位，2：临时点位）")
    @TableField("CATEGORY_")
    private String category;

    @ApiModelProperty(value = "点位类型【字典】（1：路面，2：结构物，3：安全设施，4：施工现场，5：土地，6：违章建筑及路产侵占，7：广告牌，8：收费站，9：服务区，10：突发事件，11：环保设施）")
    @TableField("TYPE_")
    private String type;

    @ApiModelProperty(value = "点位级别【字典】（1：普通，2：重点）")
    @TableField("POINT_LEVEL")
    private Integer pointLevel;

    @ApiModelProperty(value = "巡检周期【字典】（1：每天巡检一次，2：每两天巡检一次），3：每三天巡检一次，4：每四天巡检一次，5：每五天巡检一次，6：每周巡检一次，7：每月巡检一次，8：每两月巡检一次，9：每三月巡检一次，10：每季度巡查一次，11：每半年巡检一次，12：每年巡检一次")
    @TableField("INSPECTION_CYCLE_")
    private Integer inspectionCycle;

    @ApiModelProperty(value = "具体内容【字典】（更具点位类别联动）")
    @TableField("CONTENT_")
    private String content;

    @ApiModelProperty(value = "点位桩号")
    @TableField("PEG_")
    private String peg;

    @ApiModelProperty(value = "点位桩号附加")
    @TableField("PEG_ADD_")
    private String pegAdd;

    @ApiModelProperty(value = "点位桩号全值（例如：K23+100）")
    @TableField("PEG_VAL_")
    private String pegVal;

    @ApiModelProperty(value = "方向")
    @TableField("DIRECTION_")
    private String direction;

    @ApiModelProperty(value = "方向值")
    @TableField("DIRECTION_VALUE_")
    private String directionValue;

    @ApiModelProperty(value = "经度")
    @TableField("LNG_")
    private Double lng;

    @ApiModelProperty(value = "纬度")
    @TableField("LAT_")
    private Double lat;

    @ApiModelProperty(value = "所属管理中心(关联组织机构表的管理中心ID)")
    @TableField("ORG_ID_")
    private String orgId;

    @ApiModelProperty(value = "所属管理中心full_ID（到管理中心ID）")
    @TableField("ORG_FULL_ID_")
    private String orgFullId;

}
