package cn.iocoder.yudao.module.system.controller.admin.tenant.vo.enterprise;

import cn.iocoder.yudao.module.system.dal.dataobject.tenant.EnterpriseBankInfoDO;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 企业信息新增/修改 Request VO")
@Data
public class EnterpriseInfoSaveReqVO {

    @Schema(description = "主键ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "11773")
    private Long id;

    @Schema(description = "企业名称", example = "李四")
    private String enterpriseName;

    @Schema(description = "企业简称")
    private String enterpriseAbbreviation;

    @Schema(description = "地区")
    private Integer area;

    @Schema(description = "省份")
    private String province;

    private Long provinceId;

    @Schema(description = "城市")
    private String city;

    private Long cityId;

    @Schema(description = "区域")
    private String district;

    private String districtId;

    @Schema(description = "企业logo")
    private String logo;

    @Schema(description = "简介")
    private String introduction;

    @Schema(description = "经营范围")
    private String businessScope;

    @Schema(description = "企业规模")
    private String scale;

    @Schema(description = "企业类型", example = "2")
    private Integer type;

    @Schema(description = "成立日期")
    private LocalDateTime establishmentDate;

    @Schema(description = "公司法人")
    private String corporateJuridicalPerson;

    @Schema(description = "法人身份证号")
    private String corporateIdCard;

    @Schema(description = "法人联系方式")
    private String corporatePhone;

    @Schema(description = "营业执照")
    private String businessLicense;

    @Schema(description = "社会统一信用代码")
    private String unifiedSocialCreditCode;

    @Schema(description = "详细地址")
    private String detailedAddress;

    @Schema(description = "租户ID")
    private Long tenantId;

    @Schema(description = "图片")
    @ExcelProperty("图片")
    private String picture;

    @Schema(description = "开户信息列表")
    private List<EnterpriseBankInfoDO> openAccountList;
}