feat: add TTR simulator and calculation engine, enhance member model with TTR adjustment constant
All checks were successful
Deploy tt-tagebuch / deploy (push) Successful in 59s
All checks were successful
Deploy tt-tagebuch / deploy (push) Successful in 59s
This commit is contained in:
@@ -12,7 +12,9 @@ const TEST_USERS = [
|
||||
email: 'admin@test.de',
|
||||
password: 'test123',
|
||||
role: 'admin',
|
||||
isOwner: false
|
||||
isOwner: false,
|
||||
isHidden: true,
|
||||
suppressEmails: true
|
||||
},
|
||||
{
|
||||
email: 'trainer@test.de',
|
||||
@@ -75,11 +77,21 @@ async function createTestUsers() {
|
||||
user = await User.create({
|
||||
email: userData.email,
|
||||
password: userData.password,
|
||||
isActive: true
|
||||
isActive: true,
|
||||
isHidden: Boolean(userData.isHidden),
|
||||
suppressEmails: Boolean(userData.suppressEmails),
|
||||
});
|
||||
report.push(' ✓ User created');
|
||||
}
|
||||
|
||||
if (user.isHidden !== Boolean(userData.isHidden) || user.suppressEmails !== Boolean(userData.suppressEmails)) {
|
||||
await user.update({
|
||||
isHidden: Boolean(userData.isHidden),
|
||||
suppressEmails: Boolean(userData.suppressEmails),
|
||||
});
|
||||
report.push(' ✓ Updated test account visibility and email settings');
|
||||
}
|
||||
|
||||
// Check if user is already in club
|
||||
let userClub = await UserClub.findOne({
|
||||
where: {
|
||||
@@ -145,4 +157,3 @@ createTestUsers().catch(err => {
|
||||
process.exit(1);
|
||||
});
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,29 @@
|
||||
import sequelize from '../database.js';
|
||||
|
||||
const migrations = [
|
||||
{
|
||||
id: '20261005_add_hidden_test_user_flags',
|
||||
async up() {
|
||||
const [hiddenColumns] = await sequelize.query("SHOW COLUMNS FROM `user` LIKE 'is_hidden'");
|
||||
if (hiddenColumns.length === 0) {
|
||||
await sequelize.query('ALTER TABLE `user` ADD COLUMN `is_hidden` TINYINT(1) NOT NULL DEFAULT 0');
|
||||
}
|
||||
|
||||
const [emailSuppressionColumns] = await sequelize.query("SHOW COLUMNS FROM `user` LIKE 'suppress_emails'");
|
||||
if (emailSuppressionColumns.length === 0) {
|
||||
await sequelize.query('ALTER TABLE `user` ADD COLUMN `suppress_emails` TINYINT(1) NOT NULL DEFAULT 0');
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
id: '20261005_add_member_ttr_adjustment_constant',
|
||||
async up() {
|
||||
const [columns] = await sequelize.query("SHOW COLUMNS FROM `member` LIKE 'ttr_adjustment_constant'");
|
||||
if (columns.length === 0) {
|
||||
await sequelize.query('ALTER TABLE `member` ADD COLUMN `ttr_adjustment_constant` DECIMAL(6,2) NOT NULL DEFAULT 16');
|
||||
}
|
||||
},
|
||||
},
|
||||
{
|
||||
id: '20260922_add_match_player_cancellations',
|
||||
async up() {
|
||||
|
||||
Reference in New Issue
Block a user