Files
yourpart3/backend/models/service/minigame_user_progress.js
Torsten Schulz (local) 66818cc728 feat: Anpassung der Datenbankmodelle zur Unterstützung von snake_case und Einführung von freezeTableName
- Aktualisierung der Modelle in verschiedenen Bereichen, um die Feldnamen im snake_case-Format zu verwenden.
- Hinzufügen der Option freezeTableName zu den Modellen, um die Tabellennamen in der Datenbank unverändert zu lassen.
- Verbesserung der Konsistenz und Lesbarkeit des Codes durch einheitliche Namenskonventionen.
2025-08-23 06:04:23 +02:00

43 lines
919 B
JavaScript

import { sequelize } from '../../utils/sequelize.js';
import { DataTypes } from 'sequelize';
const MinigameUserProgress = sequelize.define('minigame_user_progress', {
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
field: 'user_id'
},
campaign_id: {
type: DataTypes.INTEGER,
allowNull: false,
field: 'campaign_id'
},
level_index: {
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 1,
field: 'level_index'
},
stars: { // 0..3
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 0
},
best_score: {
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 0,
field: 'best_score'
}
}, {
tableName: 'minigame_user_progress',
schema: 'service',
underscored: true,
indexes: [
{ unique: true, fields: ['user_id', 'campaign_id'] ,
freezeTableName: true}
]
});
export default MinigameUserProgress;