package com.xjrsoft.xjrsoftboot;

import cn.hutool.db.ds.simple.SimpleDataSource;
import com.xjrsoft.common.constant.GlobalConstant;
import com.xjrsoft.module.generator.dto.ApiGenerateCodesDto;
import com.xjrsoft.module.generator.entity.TableConfig;
import com.xjrsoft.module.generator.service.IApiGeneratorService;
import com.xjrsoft.module.generator.service.impl.ApiGeneratorServiceImpl;
import org.junit.jupiter.api.Test;

import javax.sql.DataSource;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class FreeMarkerGeneratorTest {

    private static final DataSource ds = new SimpleDataSource("jdbc:mysql://10.150.10.139:3306/tl?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true",
            "root" , "Zwr~-f6H,u6QE^]C-AD_" );

    @Test
    public void generateCodesTest() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("xjr_oa_news");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        TableConfig childTable1 = new TableConfig();
        childTable1.setTableName("xjr_oa_news_relation");
        childTable1.setIsMain(false);
        childTable1.setPkField(GlobalConstant.DEFAULT_PK);
        childTable1.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable1.setRelationField("news_id");
        childTable1.setRelationTableField(GlobalConstant.DEFAULT_PK);


        TableConfig childTable2 = new TableConfig();
        childTable2.setTableName("xjr_oa_news_relation_config");
        childTable2.setIsMain(false);
        childTable2.setPkField(GlobalConstant.DEFAULT_PK);
        childTable2.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable2.setRelationField("news_id");
        childTable2.setRelationTableField(GlobalConstant.DEFAULT_PK);

        tableConfigs.add(mainTable);
        tableConfigs.add(childTable1);
//        tableConfigs.add(childTable2);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");
        params.setPackageName("test");
        params.setTableConfigs(tableConfigs);
        params.setPage(true);
        params.setImport(true);
        params.setExport(true);
        params.setOutMainDir(true);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }
    @Test
    public void generateCodesTest1() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("xjr_oa_news");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        TableConfig childTable1 = new TableConfig();
        childTable1.setTableName("xjr_oa_news_relation");
        childTable1.setIsMain(false);
        childTable1.setPkField(GlobalConstant.DEFAULT_PK);
        childTable1.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable1.setRelationField("news_id");
        childTable1.setRelationTableField(GlobalConstant.DEFAULT_PK);


        TableConfig childTable2 = new TableConfig();
        childTable2.setTableName("xjr_oa_news_relation_config");
        childTable2.setIsMain(false);
        childTable2.setPkField(GlobalConstant.DEFAULT_PK);
        childTable2.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable2.setRelationField("news_id");
        childTable2.setRelationTableField(GlobalConstant.DEFAULT_PK);

        tableConfigs.add(mainTable);
        tableConfigs.add(childTable1);
//        tableConfigs.add(childTable2);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");
        params.setPackageName("test");
        params.setTableConfigs(tableConfigs);
        params.setPage(true);
        params.setImport(true);
        params.setExport(true);
        params.setOutMainDir(false);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcMaterialType() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("material_type");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        TableConfig childTable1 = new TableConfig();
        childTable1.setTableName("material_type_assign");
        childTable1.setIsMain(false);
        childTable1.setPkField(GlobalConstant.DEFAULT_PK);
        childTable1.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable1.setRelationField("material_type_id");
        childTable1.setRelationTableField(GlobalConstant.DEFAULT_PK);

        tableConfigs.add(mainTable);
        tableConfigs.add(childTable1);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("baicai");
        params.setPackageName("material");
        params.setTableConfigs(tableConfigs);
        params.setPage(true);
        params.setImport(true);
        params.setExport(true);
        params.setOutMainDir(false);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    @Test
    public void gcMaterialTask() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("material_task");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        TableConfig childTable1 = new TableConfig();
        childTable1.setTableName("material_task_assign");
        childTable1.setIsMain(false);
        childTable1.setPkField(GlobalConstant.DEFAULT_PK);
        childTable1.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable1.setRelationField("material_task_id");
        childTable1.setRelationTableField(GlobalConstant.DEFAULT_PK);


        TableConfig childTable2 = new TableConfig();
        childTable2.setTableName("material_task_appendix");
        childTable2.setIsMain(false);
        childTable2.setPkField(GlobalConstant.DEFAULT_PK);
        childTable2.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable2.setRelationField("material_task_id");
        childTable2.setRelationTableField(GlobalConstant.DEFAULT_PK);

        tableConfigs.add(mainTable);
        tableConfigs.add(childTable1);
        tableConfigs.add(childTable2);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("baicai");
        params.setPackageName("material");
        params.setTableConfigs(tableConfigs);
        params.setPage(true);
        params.setImport(true);
        params.setExport(true);
        params.setOutMainDir(false);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcLiteFlowTest() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("xjr_liteflow_chain");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");
        params.setPackageName("liteflow");
        params.setTableConfigs(tableConfigs);
        params.setPage(false);
        params.setImport(false);
        params.setExport(false);
        params.setOutMainDir(false);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcWFPushTest() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_oa_push");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");
        params.setPackageName("oa");
        params.setTableConfigs(tableConfigs);
        params.setPage(false);
        params.setImport(false);
        params.setExport(false);
        params.setOutMainDir(false);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcWFPullest() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_oa_pull");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");
        params.setPackageName("oa");
        params.setTableConfigs(tableConfigs);
        params.setPage(false);
        params.setImport(false);
        params.setExport(false);
        params.setOutMainDir(false);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcfileReceiveTest() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("file_receive");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");
        params.setPackageName("oa");
        params.setTableConfigs(tableConfigs);
        params.setPage(true);
        params.setImport(false);
        params.setExport(false);
        params.setOutMainDir(true);
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    @Test
    public void gcAppWorkflowConfig() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_app_function");
        mainTable.setIsMain(true);
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);

        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");
        params.setPackageName("app");
        params.setTableConfigs(tableConfigs);
        params.setPage(false);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcBasePersonnelLabourCapital() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_personnel_labour_capital");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("base_personnel_labour_capital_data");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("labour_capital_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键

        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("base_personnel_labour_capital_title");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("labour_capital_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键

        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("personnel");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    /**
     * 学生干部管理
     */
    @Test
    public void gcBaseStudentCadre() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_cadre");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 快捷菜单
     */
    @Test
    public void gcXjrMenuQuick() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("xjr_menu_quick");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");//作者名称
        params.setPackageName("system");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(false);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    /**
     * 学生职务设置
     */
    @Test
    public void gcBaseStudentPost() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_post");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(false);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(false);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    /**
     * 学生考核类别
     */
    @Test
    public void gcBaseStudentAssessmentCategoryPost() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_assessment_category");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(false);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生考核项目
     */
    @Test
    public void gcBaseStudentAssessmentProject() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_assessment_project");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(false);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生操行分考核类别
     */
    @Test
    public void gcBaseStudentBehaviorCategory() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_behavior_category");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(false);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(false);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生操行分考核项目
     */
    @Test
    public void gcBaseStudentBehaviorProject() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_behavior_project");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型

        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生考核项目
     */
    @Test
    public void gcBaseStudentPunishmentInfo() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_punishment_info");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("base_punishment_student_relation");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("punishment_info_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生班级巡查考核-关联班级
     */
    @Test
    public void gcBaseStudentAssessmentClassRelation() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_assessment_class_relation");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("fanxp");//作者名称
        params.setPackageName("test");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生考核项目
     */
    @Test
    public void gcBaseStudentBehaviorManage() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_behavior_manage");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("base_student_behavior_student_relation");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("base_student_behavior_manage_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("base_student_behavior_class_relation");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("base_student_behavior_manage_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 奖学金类型维护
     */
    @Test
    public void gcBaseStudentScholarshipCategory() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_bursaries_applicant");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcBasestudentScholarshipApplicant() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_scholarship_applicant");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("base_student_scholarship_category_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 助学金项目
     */
    @Test
    public void gcBaseStudentBursariesProject() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_bursaries_project");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("devil");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 助学金申请学生信息
     */
    @Test
    public void gcBaseStudentBursariesStudent() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_bursaries_student");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("devil");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学籍异动类别
     * @throws IOException
     */
    @Test
    public void gcSchoolRollCategory() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("school_roll_category");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("phoenix");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学籍异动类别
     *
     * @throws IOException
     */
    @Test
    public void gcSchoolRollReason() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("school_roll_reason");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    /**
     * 升学管理
     *
     */
    @Test
    public void gcSchoolRollFurtherEducation() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("school_roll_further_education");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 班级荣誉
     *
     */
    @Test
    public void gcClassHonors() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("class_honors");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);


        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 考勤配置
     *
     */
    @Test
    public void gcAttendanceConfig() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("attendance_config");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("teacher");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 考勤记录
     *
     */
    @Test
    public void gcAttendanceRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("attendance_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("teacher");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 需要考勤的人员管理
     *
     */
    @Test
    public void gcAttendancePersonneld() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("attendance_personnel");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("teacher");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 班主任事项请假
     *
     */
    @Test
    public void gcHeadTeacherLeave() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_head_teacher_leave");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("teacher");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 干部部门管理
     *
     */
    @Test
    public void gcCadreDept() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("cadre_dept");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 干部候选人
     *
     */
    @Test
    public void gcWfCadreCandidate() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_cadre_candidate");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 教师请假
     *
     */
    @Test
    public void gcWfTeacherleave() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_teacherleave");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("teacher");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学科组管理
     *
     */
    @Test
    public void gcSubjectGroup() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("subject_group");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学科组课程管理
     *
     */
    @Test
    public void gcSubjectGroupCourse() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("subject_group_course");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学科组课程管理
     *
     */
    @Test
    public void gcTextBookManage() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("textbook");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("textbook_class_relation");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("textbook_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("textbook_subscription_record");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("wf_textbook_subscription_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 教材教辅征订
     *
     */
    @Test
    public void gcWfTextbookSubscription() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_textbook_subscription");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("wf_textbook_subscription_item");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("wf_textbook_subscription_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学科组课程管理
     *
     */
    @Test
    public void gcTextbookClassWarehouse() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("textbook_class_warehouse");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 教材申领
     *
     */
    @Test
    public void gcWfStudentTextbookClaim() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_textbook_claim");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("wf_textbook_claim_item");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("wf_textbook_claim_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生教材认领记录
     *
     */
    @Test
    public void gcTextbookStudentClaim() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("textbook_student_claim");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 教材出库记录
     *
     */
    @Test
    public void gcTextbookIssueRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("textbook_issue_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 作业本征订
     *
     */
    @Test
    public void gcWfExerciseBook() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_exercise_book");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("wf_exercise_book_item");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("wf_exercise_book_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 寝室维护
     * @throws IOException
     */
    @Test
    public void gcRoom() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 寝室维护
     * @throws IOException
     */
    @Test
    public void gcRoomBed() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room_bed");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 学生班级详细信息维护
     * @throws IOException
     */
    @Test
    public void gcBaseClassMajorSet() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_class_major_set");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }
    /**
     * 寝室维护
     * @throws IOException
     */
    @Test
    public void gcRoomBedRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room_bed_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 教材领取人员
     * @throws IOException
     */
    @Test
    public void gcTextbookClaimUser() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("textbook_claim_user");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 宿管员管理
     * @throws IOException
     */
    @Test
    public void gcRoomTeacherAppoint() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room_teacher_appoint");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }
    /**
     * 宿管员管理
     * @throws IOException
     */
    @Test
    public void gcWeeklyDutySchedule() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("weekly_duty_schedule");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("weekly");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    /**
     * 寝室干部任命（任命学生）
     * @throws IOException
     */
    @Test
    public void gcRoomStudentAppoint() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room_student_appoint");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 寝室申请
     * @throws IOException
     */
    @Test
    public void gcWfRoomApplicant() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_room_applicant");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 留校住宿申请
     * @throws IOException
     */
    @Test
    public void gcWfRoomStayOvernight() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_room_stay_overnight");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcRoomRule() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room_rule");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        TableConfig childTable1 = new TableConfig();
        childTable1.setTableName("room_rule_item");
        childTable1.setIsMain(false);
        childTable1.setPkField(GlobalConstant.DEFAULT_PK);
        childTable1.setPkType(GlobalConstant.DEFAULT_PK_TYPE);
        childTable1.setRelationField("room_rule_id");
        childTable1.setRelationTableField(GlobalConstant.DEFAULT_PK);
        tableConfigs.add(childTable1);


        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 查寝记录
     * @throws IOException
     */
    @Test
    public void gcRoomBedCheckRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room_bed_check_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("room_bed_check_record_relation");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("room_bed_check_record_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 退书申请
     * @throws IOException
     */
    @Test
    public void gcWfTextbookRecede() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_textbook_recede");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("wf_textbook_recede_item");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("wf_textbook_recede_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 寝室情况汇报
     * @throws IOException
     */
    @Test
    public void gcWfRoomReport() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_room_report");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

}
    /**
     * 查寝记录
     * @throws IOException
     */
    @Test
    public void gcRoomValueWeek() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("room_value_week");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("room_value_week_item");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("room_value_week_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("room");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 评价项
     * @throws IOException
     */
    @Test
    public void gcEvaluateItem() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("evaluate_item");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("evaluate");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 评价项
     * @throws IOException
     */
    @Test
    public void gcEvaluateManage() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("evaluate_manage");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("evaluate_object");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("evaluate_manage_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("evaluate_executer");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("evaluate_manage_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("evaluate");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 评价结果
     * @throws IOException
     */
    @Test
    public void gcEvaluateResult() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("evaluate_result");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("evaluate");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    @Test
    public void gcLaborManagement() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_teacher");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("brealinxx");//作者名称
        params.setPackageName("personnel");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    @Test
    public void gcBaseStudentGraduate() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_graduate");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 指标公式规则管理
     * @throws IOException
     */
    @Test
    public void gcQuotaFormulaRule() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("quota_formula_rule");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 考核表单属性
     * @throws IOException
     */
    @Test
    public void gcQuotaFormulaRuleAttribute() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("quota_formula_rule_attribute");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 考核基数
     * @throws IOException
     */
    @Test
    public void gcQuotaFormulaRuleConstante() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("quota_formula_rule_constant");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 评价提交记录
     * @throws IOException
     */
    @Test
    public void gcEvaluateSubmitRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("evaluate_submit_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("evaluate");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    /**
     * 评价项
     * @throws IOException
     */
    @Test
    public void gcWfSubscription() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_subscription");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("wf_subscription_list");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("parent_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("ledger");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 评价项
     * @throws IOException
     */
    @Test
    public void gcWorkflowOperateRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("xjr_workflow_operate_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("workflow");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 考核项目表
     *
     * @throws IOException
     */
    @Test
    public void gcStudentAssessmentItem() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_student_assessment_item");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 考核项目表
     *
     * @throws IOException
     */
    @Test
    public void gcLedgerConfigRelease() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("ledger_config_release");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("ledger");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    @Test
    public void gcPbVXssfdetail() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("pb_v_xsxxsfytb");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    @Test
    public void gcOfficialDocumentReceived() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("official_document_received");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("oa");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 攀宝学期对应配置表
     *
     * @throws IOException
     */
    @Test
    public void gcpbSemesterConfig() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("pb_semester_config");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("zsz");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 攀宝学期对应配置表
     *
     * @throws IOException
     */
    @Test
    public void gcWfAssetManage() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_asset_manage");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("asset");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 攀宝学生档案信息表
     *
     * @throws IOException
     */
    @Test
    public void gcPbCseFeeobjupdate() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("pb_cse_feeobjupdate");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 考核
     *
     * @throws IOException
     */
    @Test
    public void gcAssessment() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("assessment_template");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("assessment_question");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("assessment_template_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("assessment_question_options");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("assessment_question_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("assessment");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 专业大类
     *
     * @throws IOException
     */
    @Test
    public void gcBaseMajorCategor() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("base_major_categor");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 考核
     *
     * @throws IOException
     */
    @Test
    public void gcAssessmentPlan() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("assessment_template_plan");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("assessment_plan_question");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("assessment_template_plan_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("assessment_plan_answer_class");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("assessment_template_plan_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("assessment_plan_answer_student");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("assessment_template_plan_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("assessment");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 专业大类
     *
     * @throws IOException
     */
    @Test
    public void gcPbCseFeeitem() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("pb_cse_feeitem2");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }

    /**
     * 专业大类
     *
     * @throws IOException
     */
    @Test
    public void gcPbCseSpecplan() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("pb_cse_specplan");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("student");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);

    }
    /**
     * 资产管理盘点
     *
     * @throws IOException
     */
    @Test
    public void gcWfAssetManageInventory() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("wf_asset_manage_inventory");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("asset");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }
    /**
     * 教材核心信息管理
     *
     * @throws IOException
     */
    @Test
    public void gcTextbookCoreAttribute() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("textbook_core_attribute");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("szs");//作者名称
        params.setPackageName("textbook");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(true);//是否生成导入接口
        params.setExport(true);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcXjrMenuDeptRelation() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("xjr_menu_dept_relation");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("brealinxx");//作者名称
        params.setPackageName("system");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcSystemUpdateMessage() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("system_update_message");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("brealinxx");//作者名称
        params.setPackageName("system");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcSystemUpdateMessageNotice() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("system_update_message_notice");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("brealinxx");//作者名称
        params.setPackageName("system");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcSystemMenuCommonlyUsed() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("system_menu_commonly_used");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("brealinxx");//作者名称
        params.setPackageName("system");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcDataExpertSource() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("data_expert_source");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("dataexpert");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcDataExpertTemplate() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("data_expert_template");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("dataexpert");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcAttendanceRuleCategory() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("attendance_rule_category");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("attendance_rule_details");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("attendance_rule_category_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("attendance_user_relation");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("attendance_rule_category_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("attendance");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcFaceTeacherManage() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("teacher_face_process");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("personnel");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcFaceStudentManage() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("stundent_face_process");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("personnel");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcReservationSchool() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("reservation_school");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("reservation_school_people");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("reservation_school_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("personnel");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    @Test
    public void gcCarMessageApply() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("car_message_apply");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("personnel");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    @Test
    public void gcStudentOutInRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("car_out_in_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("outint");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcTeacherAttendanceRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("teacher_attendance_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("attendance");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }


    @Test
    public void gcStudentAttendanceRecord() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("student_attendance_record");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("attendance");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }

    @Test
    public void gcAttendanceMessageSet() throws IOException {
        List<TableConfig> tableConfigs = new ArrayList<>();
        TableConfig mainTable = new TableConfig();
        mainTable.setTableName("attendance_message_set");//init_sql中的表名
        mainTable.setIsMain(true);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        tableConfigs.add(mainTable);

        mainTable = new TableConfig();
        mainTable.setTableName("attendance_message_user_relation");//init_sql中的表名
        mainTable.setIsMain(false);//是否是主表，一般默认为true
        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
        mainTable.setRelationField("attendance_message_set_id");//设置外键
        mainTable.setRelationTableField(GlobalConstant.DEFAULT_PK);//设置外键
        tableConfigs.add(mainTable);

        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
        params.setAuthor("dzx");//作者名称
        params.setPackageName("attendance");//包名
        params.setTableConfigs(tableConfigs);
        params.setPage(true);//是否生成分页接口
        params.setImport(false);//是否生成导入接口
        params.setExport(false);//是否生成导出接口
        params.setOutMainDir(true);//是否生成在主目录，前期测试可设置成false
        params.setDs(ds);

        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();

        apiGeneratorService.generateCodes(params);
    }
}
