package com.changhu.module.management.pojo.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.Fastjson2TypeHandler;
import com.changhu.common.db.enums.EnterprisesUnitType;
import com.changhu.module.management.pojo.model.ContactPersonInfo;
import com.changhu.support.mybatisplus.pojo.entity.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import org.locationtech.jts.geom.Point;

import java.io.Serial;
import java.io.Serializable;


/**
 * 企事业单位 实体类
 * author: luozhun
 * desc 由groovy脚本自动生成
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
@EqualsAndHashCode(callSuper = true)
@TableName(autoResultMap = true)
public class EnterprisesUnit extends BaseEntity implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 所属公安机关id
     */
    private Long policeUnitId;

    /**
     * 名称
     */
    private String name;


    /**
     * 企事业单位类型
     */
    private EnterprisesUnitType type;

    /**
     * 省
     */
    private String province;

    /**
     * 市
     */
    private String city;

    /**
     * 区/县
     */
    private String districts;

    /**
     * 街道
     */
    private String street;

    /**
     * 详细地址
     */
    private String address;

    /**
     * 坐标
     */
    private Point point;

    /**
     * 联系人
     */
    @TableField(typeHandler = Fastjson2TypeHandler.class)
    private ContactPersonInfo contactPersonInfo;

    /**
     * 备注
     */
    private String remark;


}
