package org.example.mybatisplus.module;

import lombok.Data;
import org.example.mybatisplus.module.vo.BasicInfoScore;
import org.example.mybatisplus.module.vo.Attachment;
import org.example.mybatisplus.module.vo.BasicInfoCheck;
import org.example.mybatisplus.module.vo.SuperiorAuthority;

import java.util.List;
/**
 * 基本信息
 */
@Data
public class BasicInfo {
    // 基础信息
    private String institutionName;              // ${基本信息:注册信息:机构名称}
    private String establishmentDate;        // 成立登记日期
    private String evaluationLevel;             // 评估等级（如1A-5A）
    private String registrationExpiryDate;   // 登记有效期
    private String officialWebsite;             // 官方网站
    private String foundationCategory;          // 基金会类别（公募/非公募）
    private String institutionPurpose;          // 机构宗旨

    // 业务与财务
    private String publicActivityScope;         // 公益活动业务范围
    private String lastYearSponsorshipDonationRatio; // 上一年度XXX赞助和捐赠额占比（%）
    private String initialFund;             // 原始基金（单位：元）
    private String netAsset;                // 净资产（单位：元）
    private String lastYearDonationIncome;  // 最近一年捐赠收入（单位：元）

    // 联系与地址
    private String officeAddress;               // 办公地址
    private String contactPhone;                // 联系电话

    // 管理层信息
    private String legalRepresentative;         // 法定代表人
    private String secretaryGeneral;            // 秘书长
    private String chairman;                    // 理事长
    private Long numberOfDirectors;          // 理事人数

    // 审查内容
    private List<BasicInfoCheck> basicInfoChecks;

    // 机构详情
    private String foundationLocation;          // 基金会所在地
    private Integer fullTimeStaffCount;         // 全职员工数量
    private String needOutsourcingService;     // 是否通常需要外包服务
    private String projectServiceVendors; // 项目服务执行方名单

    private List<SuperiorAuthority> superiorAuthority; // 直属上级机关（2.2）
    private Attachment relatedEntitiesImage;            // ${image:实体关联情况}（2.3）

    // 经营情况子类
    private String foundationCertReceived;    // ${经营情况:《基金会法人登记证书》:相关资料是否收到}
    private String renzcode;               // ${认证代码}
    private String validate;               // ${有效期}
    private String bankLicense;               // ${经营情况:银行开户许可证}
    private String annualInspectionResult;    // ${经营情况:年检结果}
    private BasicInfoScore basicInfoScore;          // 基本信息评分及建议（2.5）


}


