update,
This commit is contained in:
47
jamespong14205/task1/project/003_src/client/db_seed/auth.js
Normal file
47
jamespong14205/task1/project/003_src/client/db_seed/auth.js
Normal file
@@ -0,0 +1,47 @@
|
||||
const { DataTypes } = require('sequelize');
|
||||
const bcrypt = require('bcrypt');
|
||||
const { sequelize } = require('./model');
|
||||
|
||||
const Auth = sequelize.define(
|
||||
'Auths',
|
||||
{
|
||||
uid: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true, unique: true },
|
||||
username: { type: DataTypes.STRING, allowNull: false },
|
||||
password: { type: DataTypes.STRING, allowNull: false },
|
||||
session: { type: DataTypes.STRING, allowNull: false, defaultValue: '' },
|
||||
role: { type: DataTypes.STRING, allowNull: false, defaultValue: 'customer' },
|
||||
},
|
||||
{ timestamps: false },
|
||||
);
|
||||
|
||||
async function hashPassword(plainTextPassword) {
|
||||
const saltRounds = 10;
|
||||
return await bcrypt.hash(plainTextPassword, saltRounds);
|
||||
}
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
await sequelize.authenticate();
|
||||
console.log('Connection has been established successfully.');
|
||||
|
||||
// create table
|
||||
await Auth.drop();
|
||||
await sequelize.sync();
|
||||
|
||||
let user_row;
|
||||
let password;
|
||||
user_row = await Auth.create({
|
||||
username: 'admin',
|
||||
password: 'nimda',
|
||||
role: 'admin',
|
||||
});
|
||||
|
||||
user_row = await Auth.create({ username: 'pat1', password: await hashPassword('1tap') });
|
||||
user_row = await Auth.create({ username: 'pat2', password: await hashPassword('2tap') });
|
||||
user_row = await Auth.create({ username: 'pat3', password: await hashPassword('3tap') });
|
||||
|
||||
await sequelize.close();
|
||||
} catch (error) {
|
||||
console.error('Unable to connect to the database:', error);
|
||||
}
|
||||
})();
|
15
jamespong14205/task1/project/003_src/client/db_seed/model.js
Normal file
15
jamespong14205/task1/project/003_src/client/db_seed/model.js
Normal file
@@ -0,0 +1,15 @@
|
||||
const { Sequelize } = require('sequelize');
|
||||
|
||||
const sequelize = new Sequelize('app_db', 'db_user', 'db_user_pass', {
|
||||
host: 'mysql',
|
||||
port: 3306,
|
||||
dialect: 'mysql',
|
||||
});
|
||||
|
||||
const sequelize_config = new Sequelize('app_db', 'db_user', 'db_user_pass', {
|
||||
host: 'mysql',
|
||||
port: 3306,
|
||||
dialect: 'mysql',
|
||||
});
|
||||
|
||||
module.exports = { sequelize, sequelize_config };
|
@@ -0,0 +1,48 @@
|
||||
const { Sequelize, DataTypes } = require('sequelize');
|
||||
// const { sequelize } = require('./model'); // abonded
|
||||
const sequelize_config = require('../utils/sequelize_config');
|
||||
|
||||
const Item = sequelize_config.define(
|
||||
'NonUrgentQueue',
|
||||
{
|
||||
id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true, unique: true },
|
||||
name: { type: DataTypes.STRING, allowNull: false },
|
||||
hkid: { type: DataTypes.STRING, allowNull: false },
|
||||
mobile: { type: DataTypes.STRING, allowNull: false },
|
||||
age: { type: DataTypes.INTEGER, allowNull: false },
|
||||
description: { type: DataTypes.STRING, allowNull: false },
|
||||
//
|
||||
bruisesScratchesMinorBurns: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
chestPain: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
headache: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
myMuiCheck: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
nauseaAndVomiting: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
runnyOrStuffyNose: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
soreThroat: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
},
|
||||
{ timestamps: false },
|
||||
);
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
await sequelize_config.authenticate();
|
||||
console.log('Connection has been established successfully.');
|
||||
|
||||
await Item.drop();
|
||||
|
||||
await sequelize_config.sync();
|
||||
for (let i = 0; i < 3; i++) {
|
||||
await Item.create({
|
||||
name: `non-urgent-patient ${i}`,
|
||||
hkid: `A123456(${i})`,
|
||||
mobile: `9123456${i}`,
|
||||
age: i + 10,
|
||||
description: `non-urgent queue ${i}`,
|
||||
});
|
||||
}
|
||||
|
||||
await sequelize_config.close();
|
||||
} catch (error) {
|
||||
console.error('Unable to connect to the database:', error);
|
||||
}
|
||||
})();
|
@@ -0,0 +1,33 @@
|
||||
const { Sequelize, DataTypes } = require('sequelize');
|
||||
const { sequelize } = require('./model');
|
||||
|
||||
const Item = sequelize.define(
|
||||
'PatientQueue',
|
||||
{
|
||||
id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true, unique: true },
|
||||
description: { type: DataTypes.STRING, allowNull: false },
|
||||
},
|
||||
{ timestamps: false },
|
||||
);
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
await sequelize.authenticate();
|
||||
console.log('Connection has been established successfully.');
|
||||
|
||||
await Item.drop();
|
||||
|
||||
await sequelize.sync();
|
||||
for (let i = 0; i < 10; i++) {
|
||||
await Item.create({
|
||||
// get remainder of i divided by 3
|
||||
// pid: (i % 25) + 1,
|
||||
description: `test item ${i}`,
|
||||
});
|
||||
}
|
||||
|
||||
await sequelize.close();
|
||||
} catch (error) {
|
||||
console.error('Unable to connect to the database:', error);
|
||||
}
|
||||
})();
|
@@ -0,0 +1,48 @@
|
||||
const { Sequelize, DataTypes } = require('sequelize');
|
||||
// const { sequelize } = require('./model'); //abonded
|
||||
const sequelize_config = require('../utils/sequelize_config');
|
||||
|
||||
const Item = sequelize_config.define(
|
||||
'SemiUrgentQueue',
|
||||
{
|
||||
id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true, unique: true },
|
||||
name: { type: DataTypes.STRING, allowNull: false },
|
||||
hkid: { type: DataTypes.STRING, allowNull: false },
|
||||
mobile: { type: DataTypes.STRING, allowNull: false },
|
||||
age: { type: DataTypes.INTEGER, allowNull: false },
|
||||
description: { type: DataTypes.STRING, allowNull: false },
|
||||
//
|
||||
bruisesScratchesMinorBurns: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
chestPain: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
headache: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
myMuiCheck: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
nauseaAndVomiting: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
runnyOrStuffyNose: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
soreThroat: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false },
|
||||
},
|
||||
{ timestamps: false },
|
||||
);
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
await sequelize_config.authenticate();
|
||||
console.log('Connection has been established successfully.');
|
||||
|
||||
await Item.drop();
|
||||
|
||||
await sequelize_config.sync();
|
||||
for (let i = 5; i < 8; i++) {
|
||||
await Item.create({
|
||||
name: `semi-urgent-patient ${i}`,
|
||||
hkid: `A123456(${i})`,
|
||||
mobile: `9123456${i}`,
|
||||
age: i + 20,
|
||||
description: `semi-urgent queue ${i}`,
|
||||
});
|
||||
}
|
||||
|
||||
await sequelize_config.close();
|
||||
} catch (error) {
|
||||
console.error('Unable to connect to the database:', error);
|
||||
}
|
||||
})();
|
Reference in New Issue
Block a user