package com.yunzhupaas.mdm.model.suppinfo;

import com.yunzhupaas.mdm.model.companyBank.CompanyBankModel;
import lombok.Data;
import java.util.*;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.v3.oas.annotations.media.Schema;

/**
 * 供应商信息
 * @版本： V5.2.7
 * @版权： Copyright @ 2025  深圳市乐程软件有限公司版权所有
 * @作者： 深圳市乐程软件有限公司
 * @日期： 2026-04-24
 */
@Data
@Schema(description = "表单参数")
public class SuppinfoForm  {
    /** 主键 */
    @Schema(description = "主键")
    @JSONField(name = "company_id")
    private String companyId;


    /** 企业编码 **/
    @Schema(description = "企业编码")
    @JsonProperty("company_code")
    @JSONField(name = "company_code")
    private String companyCode;
    /** 企业名称 **/
    @Schema(description = "企业名称")
    @JsonProperty("company_name")
    @JSONField(name = "company_name")
    private String companyName;
    /** 简称/昵称 **/
    @Schema(description = "简称/昵称")
    @JsonProperty("short_name")
    @JSONField(name = "short_name")
    private String shortName;
    /** 类型 **/
    @Schema(description = "类型")
    @JsonProperty("entity_type")
    @JSONField(name = "entity_type")
    private String entityType;
    /** 社会信用代码 **/
    @Schema(description = "社会信用代码")
    @JsonProperty("credit_code")
    @JSONField(name = "credit_code")
    private String creditCode;
    /** 归属组织 **/
    @Schema(description = "归属组织")
    @JsonProperty("org_id")
    @JSONField(name = "org_id")
    private Object orgId;
    /** 所属地区 **/
    @Schema(description = "所属地区")
    @JsonProperty("province_id")
    @JSONField(name = "province_id")
    private Object provinceId;
    /** 纳税人类别 **/
    @Schema(description = "纳税人类别")
    @JsonProperty("tax_type")
    @JSONField(name = "tax_type")
    private Object taxType;
    /** 企业规模 **/
    @Schema(description = "企业规模")
    @JsonProperty("enterprise_scale")
    @JSONField(name = "enterprise_scale")
    private Object enterpriseScale;
    /** 企业类型 **/
    @Schema(description = "企业类型")
    @JsonProperty("enterprise_nature")
    @JSONField(name = "enterprise_nature")
    private Object enterpriseNature;
    /** 行业代码 **/
    @Schema(description = "行业代码")
    @JsonProperty("industry_code")
    @JSONField(name = "industry_code")
    private Object industryCode;
    /** 成立日期 **/
    @Schema(description = "成立日期")
    @JsonProperty("registration_date")
    @JSONField(name = "registration_date")
    private String registrationDate;
    /** 注册资本 **/
    @Schema(description = "注册资本")
    @JsonProperty("registered_capital")
    @JSONField(name = "registered_capital")
    private BigDecimal registeredCapital;
    /** 法定代表人 **/
    @Schema(description = "法定代表人")
    @JsonProperty("legal_representative")
    @JSONField(name = "legal_representative")
    private String legalRepresentative;
    /** 联系电话 **/
    @Schema(description = "联系电话")
    @JsonProperty("phone")
    @JSONField(name = "phone")
    private String phone;
    /** 邮箱 **/
    @Schema(description = "邮箱")
    @JsonProperty("email")
    @JSONField(name = "email")
    private String email;
    /** 网站 **/
    @Schema(description = "网站")
    @JsonProperty("website")
    @JSONField(name = "website")
    private String website;
    /** 地址 **/
    @Schema(description = "地址")
    @JsonProperty("address")
    @JSONField(name = "address")
    private String address;
    /** 经营范围 **/
    @Schema(description = "经营范围")
    @JsonProperty("business_scope")
    @JSONField(name = "business_scope")
    private String businessScope;
    /** 责任人 **/
    @Schema(description = "责任人")
    @JsonProperty("yunzhupaas_mdm_supplier_yunzhupaas_major_person_id")
    @JSONField(name = "yunzhupaas_mdm_supplier_yunzhupaas_major_person_id")
    private Object yunzhupaas_supplier_yunzhupaas_majorPersonId;
    /** 供应商级别 **/
    @Schema(description = "供应商级别")
    @JsonProperty("yunzhupaas_mdm_supplier_yunzhupaas_supplier_level")
    @JSONField(name = "yunzhupaas_mdm_supplier_yunzhupaas_supplier_level")
    private Object yunzhupaas_supplier_yunzhupaas_supplierLevel;
    /** 供应商类型 **/
    @Schema(description = "供应商类型")
    @JsonProperty("yunzhupaas_mdm_supplier_yunzhupaas_supplier_type")
    @JSONField(name = "yunzhupaas_mdm_supplier_yunzhupaas_supplier_type")
    private Object yunzhupaas_supplier_yunzhupaas_supplierType;
    /** 供应商分类 **/
    @Schema(description = "供应商分类")
    @JsonProperty("yunzhupaas_mdm_supplier_yunzhupaas_supplier_category")
    @JSONField(name = "yunzhupaas_mdm_supplier_yunzhupaas_supplier_category")
    private Object yunzhupaas_supplier_yunzhupaas_supplierCategory;
    /** 荣誉、资质 **/
    @Schema(description = "荣誉、资质")
    @JsonProperty("yunzhupaas_mdm_supplier_yunzhupaas_honor")
    @JSONField(name = "yunzhupaas_mdm_supplier_yunzhupaas_honor")
    private String yunzhupaas_supplier_yunzhupaas_honor;
    /** 供应商业绩 **/
    @Schema(description = "供应商业绩")
    @JsonProperty("yunzhupaas_mdm_supplier_yunzhupaas_achievement")
    @JSONField(name = "yunzhupaas_mdm_supplier_yunzhupaas_achievement")
    private String yunzhupaas_supplier_yunzhupaas_achievement;
    /** 完工项目 **/
    @Schema(description = "完工项目")
    @JsonProperty("yunzhupaas_mdm_supplier_yunzhupaas_finish_project")
    @JSONField(name = "yunzhupaas_mdm_supplier_yunzhupaas_finish_project")
    private String yunzhupaas_supplier_yunzhupaas_finishProject;
    /** 备注 **/
    @Schema(description = "备注")
    @JsonProperty("remark")
    @JSONField(name = "remark")
    private String remark;

    /** 子表数据 **/
    @Schema(description = "panyInvoice子表数据")
    @JsonProperty("panyInvoiceList")
    private List<PanyInvoiceModel> panyInvoiceList;
    /** 子表数据 **/
    @Schema(description = "companyBank子表数据")
    @JsonProperty("companyBankList")
    private List<CompanyBankModel> companyBankList;
}
