package com.usky.vpp.service.vo;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;

/**
 * 客户管理 请求VO（用于更新客户信息）
 *
 * @author fyc
 * @email yuchuan.fu@chinausky.com
 * @date 2026/7/6
 */
@Data
public class CustomerRequestVO {

    /**
     * 主键ID
     */
    private Long id;

    /**
     * 电力户号（新增时必填）
     */
    private String accountNo;

    /**
     * 客户名称
     */
    private String customerName;

    /**
     * 客户类型：1中高压 2低压商用 3居民充电桩 4自有资产
     */
    private Integer customerType;

    /**
     * 供电公司
     */
    private String powerCompany;

    /**
     * 签约容量
     */
    private BigDecimal contractCapacity;

    /**
     * 信用状态：1正常 2关注 3不良
     */
    private Integer creditStatus;

    /**
     * 签约状态：1待签约 2已签约 3履约中 4待续约 5已续约 6已解约
     */
    private Integer lifecycleStatus;

    /**
     * 需求响应提前通知分钟数，默认30
     */
    private Integer drNotifyMinutes;

    /**
     * 需求响应上调能力 kW
     */
    private BigDecimal drUpCapacityKw;

    /**
     * 需求响应下调能力 kW
     */
    private BigDecimal drDownCapacityKw;

    /**
     * 省
     */
    private String province;

    /**
     * 是否集团内用户 0否 1是
     */
    private Integer isGroupUser;

    /**
     * 是否绿电 0否 1是
     */
    private Integer isGreenPower;

    /**
     * 是否合作开发用户 0否 1是
     */
    private Integer isCoopDevUser;

    /**
     * 合作开发单位名称
     */
    private String coopPartnerName;

    /**
     * 市
     */
    private String city;

    /**
     * 区/县
     */
    private String district;

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

    /**
     * 营业执照URL
     */
    private String businessLicenseUrl;

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

    /**
     * 是否虚拟电厂资源：0否 1是
     */
    private Integer isVppResource;

    /**
     * 虚拟电厂分类：1充换电 2分布式三联供 3楼宇空调 5用户侧储能 6数据中心 7工业负荷 8其他
     */
    private String vppCategory;

    /**
     * 需求响应资源分类：1工业负荷 2商业负荷 3储能 4电动汽车 5居民负荷 6其他
     */
    private String drResourceType;

    /**
     * 聚合代理用户虚拟电厂编码
     */
    private String vppProxyCode;

    /**
     * 所属行业：1制造业 2建筑业 3批发和零售业 ... 21其他
     */
    private String industry;

    /**
     * 所属产业：1第一产业 2第二产业 3第三产业
     */
    private String industrySector;

    /**
     * 运行容量（kW）
     */
    private BigDecimal runningCapacity;

    /**
     * 生产经营开始时间
     */
    private LocalTime productionStartDate;

    /**
     * 生产经营结束时间
     */
    private LocalTime productionEndDate;

    /**
     * 用电地址
     */
    private String powerAddress;

    /**
     * 签约日期
     */
    private LocalDateTime signingDate;

    /**
     * 联系人姓名
     */
    private String contactName;

    /**
     * 联系电话
     */
    private String contactPhone;

    /**
     * 联系邮箱
     */
    private String contactEmail;
}
