Files
yourpart3/backend/models/falukant/log/dayproduction.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

50 lines
1.1 KiB
JavaScript

import { Model, DataTypes } from 'sequelize';
import { sequelize } from '../../../utils/sequelize.js';
class DayProduction extends Model { }
DayProduction.init({
region_id: {
type: DataTypes.INTEGER,
allowNull: false,
},
product_id: {
type: DataTypes.INTEGER,
allowNull: false,
},
quantity: {
type: DataTypes.INTEGER,
allowNull: false,
},
producer_id: {
type: DataTypes.INTEGER,
allowNull: false,
},
production_timestamp: {
type: DataTypes.DATE,
allowNull: false,
defaultValue: sequelize.literal('CURRENT_TIMESTAMP'),
},
production_date: {
type: DataTypes.DATEONLY,
allowNull: false,
defaultValue: sequelize.literal('CURRENT_DATE'),
}
}, {
sequelize,
modelName: 'DayProduction',
tableName: 'production',
schema: 'falukant_log',
timestamps: false,
underscored: true,
indexes: [
{
unique: true,
fields: ['producer_id', 'product_id', 'region_id', 'production_date']
,
freezeTableName: true}
]
});
export default DayProduction;