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

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

/**
 * 编号:C0011
 * 表名:key_place
 * 名称:重点场所
 */
public class KeyPlace {

    // 场所名称
    private String place_name;
    // 场所类型
    private String place_type_name;
    // 详细类型
    private String detail_type_name;
    // 详细地址
    private String address;
    // 区域全名称(/隔开)
    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 getplace_name() {
        return place_name;
    }
    
    public void setplace_name(String place_name) {
        this.place_name = place_name;
    }
    
    public String getplace_type_name() {
        return place_type_name;
    }
    
    public void setplace_type_name(String place_type_name) {
        this.place_type_name = place_type_name;
    }
    
    public String getdetail_type_name() {
        return detail_type_name;
    }
    
    public void setdetail_type_name(String detail_type_name) {
        this.detail_type_name = detail_type_name;
    }
    
    public String getaddress() {
        return address;
    }
    
    public void setaddress(String address) {
        this.address = address;
    }
    
    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(place_name)) {
            throw new ParamsException("场所名称名不能为空");
        }
        if(place_name != null && place_name.length() > 255 ) {
            throw new ParamsException("场所名称超出长度");
        }
        if(StringUtils.isEmpty(place_type_name)) {
            throw new ParamsException("场所类型名不能为空");
        }
        if(place_type_name != null && place_type_name.length() > 100 ) {
            throw new ParamsException("场所类型超出长度");
        }
        if(StringUtils.isEmpty(detail_type_name)) {
            throw new ParamsException("详细类型名不能为空");
        }
        if(detail_type_name != null && detail_type_name.length() > 100 ) {
            throw new ParamsException("详细类型超出长度");
        }
        if(StringUtils.isEmpty(address)) {
            throw new ParamsException("详细地址名不能为空");
        }
        if(address != null && address.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);
    }
    
}
