package cn.com.tenlion.systembase.pojo.dtos.bigdta;

import com.google.gson.Gson;
import ink.wgink.exceptions.ParamsException;
import org.apache.commons.lang3.StringUtils;

/**
 * 编号:C0013
 * 表名:key_area
 * 名称:重点区域
 */
public class KeyArea {

    // 治安重点地区
    private String security_area;
    // 治安突出问题
    private String security_question_name;
    // 涉及区域类型
    private String involve_area_type_name;
    // 涉及区域范围
    private String involve_area_range;
    // 区域全名称(/隔开)
    private String location_all;
    // 区域编码
    private String location_code;
    // 区域旗县区名称
    private String location_area;
    // 经度
    private String longitude;
    // 纬度
    private String latitude;
    // 网格名称
    private String grid_name;
    // 网格编码
    private String grid_code;

    public String getsecurity_area() {
        return security_area;
    }
    
    public void setsecurity_area(String security_area) {
        this.security_area = security_area;
    }
    
    public String getsecurity_question_name() {
        return security_question_name;
    }
    
    public void setsecurity_question_name(String security_question_name) {
        this.security_question_name = security_question_name;
    }
    
    public String getinvolve_area_type_name() {
        return involve_area_type_name;
    }
    
    public void setinvolve_area_type_name(String involve_area_type_name) {
        this.involve_area_type_name = involve_area_type_name;
    }
    
    public String getinvolve_area_range() {
        return involve_area_range;
    }
    
    public void setinvolve_area_range(String involve_area_range) {
        this.involve_area_range = involve_area_range;
    }
    
    public String getlocation_all() {
        return location_all;
    }
    
    public void setlocation_all(String location_all) {
        this.location_all = location_all;
    }
    
    public String getlocation_code() {
        return location_code;
    }
    
    public void setlocation_code(String location_code) {
        this.location_code = location_code;
    }
    
    public String getlocation_area() {
        return location_area;
    }
    
    public void setlocation_area(String location_area) {
        this.location_area = location_area;
    }
    
    public String getlongitude() {
        return longitude;
    }
    
    public void setlongitude(String longitude) {
        this.longitude = longitude;
    }
    
    public String getlatitude() {
        return latitude;
    }
    
    public void setlatitude(String latitude) {
        this.latitude = latitude;
    }
    
    public String getgrid_name() {
        return grid_name;
    }
    
    public void setgrid_name(String grid_name) {
        this.grid_name = grid_name;
    }
    
    public String getgrid_code() {
        return grid_code;
    }
    
    public void setgrid_code(String grid_code) {
        this.grid_code = grid_code;
    }
    

    // 保存校验并转Json
    public String saveCheckToJson() {
        if(StringUtils.isEmpty(security_area)) {
            throw new ParamsException("治安重点地区名不能为空");
        }
        if(security_area != null && security_area.length() > 255 ) {
            throw new ParamsException("治安重点地区超出长度");
        }
        if(StringUtils.isEmpty(security_question_name)) {
            throw new ParamsException("治安突出问题名不能为空");
        }
        if(security_question_name != null && security_question_name.length() > 100 ) {
            throw new ParamsException("治安突出问题超出长度");
        }
        if(StringUtils.isEmpty(involve_area_type_name)) {
            throw new ParamsException("涉及区域类型名不能为空");
        }
        if(involve_area_type_name != null && involve_area_type_name.length() > 100 ) {
            throw new ParamsException("涉及区域类型超出长度");
        }
        if(StringUtils.isEmpty(involve_area_range)) {
            throw new ParamsException("涉及区域范围名不能为空");
        }
        if(involve_area_range != null && involve_area_range.length() > 255 ) {
            throw new ParamsException("涉及区域范围超出长度");
        }
        if(StringUtils.isEmpty(location_all)) {
            throw new ParamsException("区域全名称(/隔开)名不能为空");
        }
        if(location_all != null && location_all.length() > 255 ) {
            throw new ParamsException("区域全名称(/隔开)超出长度");
        }
        if(StringUtils.isEmpty(location_code)) {
            throw new ParamsException("区域编码名不能为空");
        }
        if(location_code != null && location_code.length() > 100 ) {
            throw new ParamsException("区域编码超出长度");
        }
        if(StringUtils.isEmpty(location_area)) {
            throw new ParamsException("区域旗县区名称名不能为空");
        }
        if(location_area != null && location_area.length() > 100 ) {
            throw new ParamsException("区域旗县区名称超出长度");
        }
        if(StringUtils.isEmpty(longitude)) {
            throw new ParamsException("经度名不能为空");
        }
        if(longitude != null && longitude.length() > 50 ) {
            throw new ParamsException("经度超出长度");
        }
        if(StringUtils.isEmpty(latitude)) {
            throw new ParamsException("纬度名不能为空");
        }
        if(latitude != null && latitude.length() > 50 ) {
            throw new ParamsException("纬度超出长度");
        }
        if(StringUtils.isEmpty(grid_name)) {
            throw new ParamsException("网格名称名不能为空");
        }
        if(grid_name != null && grid_name.length() > 100 ) {
            throw new ParamsException("网格名称超出长度");
        }
        if(StringUtils.isEmpty(grid_code)) {
            throw new ParamsException("网格编码名不能为空");
        }
        if(grid_code != null && grid_code.length() > 100 ) {
            throw new ParamsException("网格编码超出长度");
        }
        return new Gson().toJson(this);
    }

    // 修改转Json
    public String updateToJson() {
        return new Gson().toJson(this);
    }
    
}
