64 lines
1.2 KiB
TypeScript
64 lines
1.2 KiB
TypeScript
import { sequelize } from '@/modules/sequelize.ts';
|
|
import { DataTypes, Model } from 'sequelize';
|
|
|
|
export class User extends Model {
|
|
declare id: number;
|
|
username: string;
|
|
password: string;
|
|
salt: string;
|
|
remark: string;
|
|
}
|
|
User.init(
|
|
{
|
|
id: {
|
|
type: DataTypes.INTEGER,
|
|
autoIncrement: true,
|
|
primaryKey: true,
|
|
},
|
|
|
|
username: {
|
|
type: DataTypes.STRING,
|
|
allowNull: false,
|
|
},
|
|
password: {
|
|
type: DataTypes.STRING,
|
|
allowNull: false,
|
|
},
|
|
salt: {
|
|
type: DataTypes.STRING,
|
|
allowNull: false,
|
|
},
|
|
remark: {
|
|
type: DataTypes.STRING,
|
|
},
|
|
},
|
|
{
|
|
sequelize,
|
|
tableName: 'cf_user',
|
|
},
|
|
);
|
|
// User.sync({ alter: true });
|
|
|
|
export const initializeUser = async () => {
|
|
const w = await User.findOne();
|
|
const password = '2e8a305521bba54f49638ed25e46adf3';
|
|
const salt = '123';
|
|
const users = [
|
|
{ username: 'admin' },
|
|
{ username: 'user' },
|
|
{ username: 'root' },
|
|
];
|
|
if (!w) {
|
|
const newUsers = await User.bulkCreate(
|
|
users.map((user) => {
|
|
return {
|
|
...user,
|
|
password,
|
|
salt,
|
|
};
|
|
}),
|
|
);
|
|
console.info('[create new Users]', newUsers);
|
|
}
|
|
};
|