package cn.cecep.talroad.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @author changyw
 * @date 2022/6/25
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class SysBasRegion implements Serializable {

    private static final long serialVersionUID = 1L;

    /** 字典名称 */
    private String regionCode;

    /** 字典类型 */
    private String regionName;

    /** 字典类型 */
    private String mergerName;

    /** 字典层级 */
    private String parentCode;

    /** 墨迹天气经纬度 */
    private BigDecimal longitude;

    /** 墨迹天气经纬度 */
    private BigDecimal latitude;

    /** 使用状态 1在用，0停用 */
    private Integer isUsed;

    /** 当前层级 */
    private Integer level;

    /** 拼音首字母 */
    private String first;

    /** 子节点 */
    private List<SysBasRegion> children;

    public SysBasRegion() {
    }

    public SysBasRegion setRegionCode(String regionCode) {
        this.regionCode = regionCode;
        return this;
    }

    public SysBasRegion setRegionName(String regionName) {
        this.regionName = regionName;
        return this;
    }

    public SysBasRegion setMergerName(String mergerName) {
        this.mergerName = mergerName;
        return this;
    }

    public SysBasRegion setParentCode(String parentCode) {
        this.parentCode = parentCode;
        return this;
    }

    public SysBasRegion setLongitude(BigDecimal longitude) {
        this.longitude = longitude;
        return this;
    }

    public SysBasRegion setLatitude(BigDecimal latitude) {
        this.latitude = latitude;
        return this;
    }

    public SysBasRegion setIsUsed(Integer isUsed) {
        this.isUsed = isUsed;
        return this;
    }

    public SysBasRegion setLevel(Integer level) {
        this.level = level;
        return this;
    }

    public SysBasRegion setFirst(String first) {
        this.first = first;
        return this;
    }

    public SysBasRegion setChildren(List<SysBasRegion> children) {
        this.children = children;
        return this;
    }
}
