package com.zsElectric.boot.charging.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.zsElectric.boot.common.base.BaseEntity;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;

/**
 * 第三方充电接口信息实体
 *
 * @author system
 * @since 2025-12-11
 */
@TableName("third_party_connector_info")
@Getter
@Setter
public class ThirdPartyConnectorInfo extends BaseEntity {

    /**
     * 接口编码
     */
    private String connectorId;

    /**
     * 所属设备编码
     */
    private String equipmentId;

    /**
     * 所属充电站ID
     */
    private String stationId;

    /**
     * 接口名称
     */
    private String connectorName;

    /**
     * 接口类型 1-家用插座(模式2),2-交流接口插座(模式3,连接方式B),3-交流接口插头(带枪线,模式3,连接方式C),4-直流接口枪头(带枪线,模式4),5-无线充电座,6-其他
     */
    private Integer connectorType;

    /**
     * 额定电压上限(V)
     */
    private Integer voltageUpperLimits;

    /**
     * 额定电压下限(V)
     */
    private Integer voltageLowerLimits;

    /**
     * 额定电流(A)
     */
    private Integer current;

    /**
     * 额定功率(kW)
     */
    private BigDecimal power;

    /**
     * 车位号
     */
    private String parkNo;

    /**
     * 国家标准
     */
    private Integer nationalStandard;

    /**
     * 充电提示语(用户充电时显示)
     * 该字段不会被第三方数据同步覆盖
     */
    private String connectorTips;

    /**
     * 充电设备接口状态
     * 0-离网,1-空闲,2-占用(未充电),3-占用(充电中),4-占用(预约锁定),255-故障
     */
    @TableField("status")
    private Integer status;

    /**
     * 创建人ID
     */
    @TableField(fill = FieldFill.INSERT)
    private Long createBy;

    /**
     * 更新人ID
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long updateBy;

    /**
     * 逻辑删除标识
     */
    @TableLogic
    private Integer isDeleted;
}
