/**
 * 部门表
 */

import { mySqlTableClass } from "../../db/mysqlClass";


const Sequelize =require('sequelize')
const MySequesize = require('../../db/mysqlInit');  //导入创建的sequelize对象
//创建StudentModel模型，该模型对应的表名是student

let departmentModel;
export async function initModel() {
    var model = MySequesize.mysqlDB.define('department',{
        id:{//项目号
            type:Sequelize.INTEGER, 
            primaryKey:true,  //表示主键
            allowNull:false,   //表示当前列是否允许为空，false表示该列不能为空
            unique:true    //表示该列的值必须唯一
        },
        name:{ type:Sequelize.STRING(100), allowNull:false }, 
    },{
        freezeTableName:true, //true表示使用给定的表名，false表示模型名后加s作为表名
        timestamps:false  //true表示给模型加上时间戳属性(createAt、updateAt),false表示不带时间戳属性
    });
    // //同步数据库，force的值为false，表若存在则先删除后创建，force的值为true表示表若存在则不创建
    departmentModel = await model.sync({});

}



export async function findDepartmentMap() {
    let dataList = await departmentModel.findAll({ });

    let map = {};
    dataList.forEach(info => {
        map[info.id] = info.name;
    });
    
    return map;
}
