Newer
Older
import { DataTypes, Model, Optional, Sequelize } from "sequelize";
interface EmployeeAttributes {
id: string;
email: string;
first_name: string;
last_name: string;
password: string;
role: string;
}
export interface EmployeeInput extends Optional<EmployeeAttributes, "id"> {}
class Employee
extends Model<EmployeeAttributes, EmployeeInput>
implements EmployeeAttributes
{
declare id: string;
declare email: string;
declare first_name: string;
declare last_name: string;
declare password: string;
declare role: string;
declare readonly createdAt: Date;
declare readonly updatedAt: Date;
}
fu1106jv
committed
export const initEmployee = (sequelizeConnection: Sequelize) => {
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
Employee.init(
{
id: {
type: DataTypes.UUID,
defaultValue: DataTypes.UUIDV4,
primaryKey: true,
allowNull: false,
},
email: {
type: new DataTypes.STRING(),
allowNull: false,
unique: true,
},
first_name: {
type: new DataTypes.STRING(),
allowNull: false,
},
last_name: {
type: new DataTypes.STRING(),
allowNull: false,
},
password: {
type: new DataTypes.STRING(),
allowNull: false,
},
role: {
type: new DataTypes.STRING(),
allowNull: false,
},
},
{
tableName: "employee",
sequelize: sequelizeConnection,
}
);
};
export default Employee;