feat: Einführung von Umgebungsvariablen und Startskripten für die Backend-Anwendung
- Hinzufügen eines zentralen Skripts zum Laden von Umgebungsvariablen aus einer .env-Datei. - Implementierung von Start- und Entwicklungs-Skripten in der package.json für eine vereinfachte Ausführung der Anwendung. - Bereinigung und Entfernung nicht mehr benötigter Minigame-Modelle und -Services zur Verbesserung der Codebasis. - Anpassungen an den Datenbankmodellen zur Unterstützung von neuen Assoziationen und zur Verbesserung der Lesbarkeit.
This commit is contained in:
20
backend/config/loadEnv.js
Normal file
20
backend/config/loadEnv.js
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
// Centralized environment loader
|
||||||
|
import path from 'path';
|
||||||
|
import { fileURLToPath } from 'url';
|
||||||
|
import dotenv from 'dotenv';
|
||||||
|
|
||||||
|
const __filename = fileURLToPath(import.meta.url);
|
||||||
|
const __dirname = path.dirname(__filename);
|
||||||
|
|
||||||
|
// Resolve backend/.env regardless of cwd
|
||||||
|
const envPath = path.resolve(__dirname, '../.env');
|
||||||
|
const result = dotenv.config({ path: envPath });
|
||||||
|
if (result.error) {
|
||||||
|
console.warn('[env] Konnte .env nicht laden:', result.error.message);
|
||||||
|
} else {
|
||||||
|
if (!process.env.SECRET_KEY) {
|
||||||
|
console.warn('[env] SECRET_KEY nicht gesetzt in .env');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export {};
|
||||||
@@ -1,32 +0,0 @@
|
|||||||
import MinigamesService from '../services/minigamesService.js';
|
|
||||||
|
|
||||||
function extractHashedUserId(req) {
|
|
||||||
return req.headers?.userid;
|
|
||||||
}
|
|
||||||
|
|
||||||
class MinigamesController {
|
|
||||||
constructor() {
|
|
||||||
this.service = MinigamesService;
|
|
||||||
|
|
||||||
this.listCampaigns = this._wrap((userId, req) => this.service.listCampaigns());
|
|
||||||
this.getCampaign = this._wrap((userId, req) => this.service.getCampaign(req.params.code));
|
|
||||||
this.getProgress = this._wrap((userId, req) => this.service.getProgress(userId, req.params.code));
|
|
||||||
this.saveProgress = this._wrap((userId, req) => this.service.saveProgress(userId, req.params.code, req.body));
|
|
||||||
}
|
|
||||||
|
|
||||||
_wrap(fn, { successStatus = 200 } = {}) {
|
|
||||||
return async (req, res) => {
|
|
||||||
try {
|
|
||||||
const userId = extractHashedUserId(req);
|
|
||||||
if (!userId) return res.status(400).json({ error: 'Missing user identifier' });
|
|
||||||
const result = await fn(userId, req, res);
|
|
||||||
res.status(successStatus).json(result);
|
|
||||||
} catch (error) {
|
|
||||||
console.error('Minigames controller error:', error);
|
|
||||||
res.status(500).json({ error: error.message || 'Internal error' });
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export default new MinigamesController();
|
|
||||||
|
|||||||
@@ -97,30 +97,15 @@ import Underground from './falukant/data/underground.js';
|
|||||||
import UndergroundType from './falukant/type/underground.js';
|
import UndergroundType from './falukant/type/underground.js';
|
||||||
import Blog from './community/blog.js';
|
import Blog from './community/blog.js';
|
||||||
import BlogPost from './community/blog_post.js';
|
import BlogPost from './community/blog_post.js';
|
||||||
import MinigameCampaign from './service/minigame_campaign.js';
|
import Campaign from './match3/campaign.js';
|
||||||
import MinigameCampaignLevel from './service/minigame_campaign_level.js';
|
|
||||||
import MinigameUserProgress from './service/minigame_user_progress.js';
|
|
||||||
|
|
||||||
// Match3 Models
|
|
||||||
import Match3Campaign from './match3/campaign.js';
|
|
||||||
import Match3Level from './match3/level.js';
|
import Match3Level from './match3/level.js';
|
||||||
import Match3Objective from './match3/objective.js';
|
import Objective from './match3/objective.js';
|
||||||
import Match3UserProgress from './match3/userProgress.js';
|
import UserProgress from './match3/userProgress.js';
|
||||||
import Match3UserLevelProgress from './match3/userLevelProgress.js';
|
import UserLevelProgress from './match3/userLevelProgress.js';
|
||||||
import Match3TileType from './match3/tileType.js';
|
|
||||||
import Match3LevelTileType from './match3/levelTileType.js';
|
|
||||||
|
|
||||||
export default function setupAssociations() {
|
export default function setupAssociations() {
|
||||||
// RoomType 1:n Room
|
// RoomType 1:n Room
|
||||||
RoomType.hasMany(Room, { foreignKey: 'roomTypeId', as: 'rooms' });
|
RoomType.hasMany(Room, { foreignKey: 'roomTypeId', as: 'rooms' });
|
||||||
// Minigames associations
|
|
||||||
MinigameCampaign.hasMany(MinigameCampaignLevel, { foreignKey: 'campaign_id', as: 'levels' });
|
|
||||||
MinigameCampaignLevel.belongsTo(MinigameCampaign, { foreignKey: 'campaign_id', as: 'campaign' });
|
|
||||||
|
|
||||||
User.hasMany(MinigameUserProgress, { foreignKey: 'user_id', as: 'minigameProgress' });
|
|
||||||
MinigameUserProgress.belongsTo(User, { foreignKey: 'user_id', as: 'user' });
|
|
||||||
MinigameCampaign.hasMany(MinigameUserProgress, { foreignKey: 'campaign_id', as: 'userProgress' });
|
|
||||||
MinigameUserProgress.belongsTo(MinigameCampaign, { foreignKey: 'campaign_id', as: 'campaign' });
|
|
||||||
Room.belongsTo(RoomType, { foreignKey: 'roomTypeId', as: 'roomType' });
|
Room.belongsTo(RoomType, { foreignKey: 'roomTypeId', as: 'roomType' });
|
||||||
// ChatUser <-> ChatRight n:m
|
// ChatUser <-> ChatRight n:m
|
||||||
ChatUser.belongsToMany(ChatRight, {
|
ChatUser.belongsToMany(ChatRight, {
|
||||||
@@ -789,77 +774,16 @@ export default function setupAssociations() {
|
|||||||
BlogPost.belongsTo(User, { foreignKey: 'user_id', as: 'author' });
|
BlogPost.belongsTo(User, { foreignKey: 'user_id', as: 'author' });
|
||||||
User.hasMany(BlogPost, { foreignKey: 'user_id', as: 'blogPosts' });
|
User.hasMany(BlogPost, { foreignKey: 'user_id', as: 'blogPosts' });
|
||||||
|
|
||||||
// Match3 associations
|
// Match3 Campaign & Levels
|
||||||
Match3Campaign.hasMany(Match3Level, {
|
Campaign.hasMany(Match3Level, { foreignKey: 'campaignId', as: 'levels' });
|
||||||
foreignKey: 'campaignId',
|
Match3Level.belongsTo(Campaign, { foreignKey: 'campaignId', as: 'campaign' });
|
||||||
as: 'levels'
|
Match3Level.hasMany(Objective, { foreignKey: 'levelId', as: 'objectives' });
|
||||||
});
|
Objective.belongsTo(Match3Level, { foreignKey: 'levelId', as: 'level' });
|
||||||
Match3Level.belongsTo(Match3Campaign, {
|
// User progress tracking
|
||||||
foreignKey: 'campaignId',
|
Campaign.hasMany(UserProgress, { foreignKey: 'campaignId', as: 'userProgressEntries' });
|
||||||
as: 'campaign'
|
UserProgress.belongsTo(Campaign, { foreignKey: 'campaignId', as: 'campaign' });
|
||||||
});
|
UserProgress.hasMany(UserLevelProgress, { foreignKey: 'userProgressId', as: 'levelProgress' });
|
||||||
|
UserLevelProgress.belongsTo(UserProgress, { foreignKey: 'userProgressId', as: 'userProgress' });
|
||||||
Match3Level.hasMany(Match3Objective, {
|
Match3Level.hasMany(UserLevelProgress, { foreignKey: 'levelId', as: 'userLevelProgress' });
|
||||||
foreignKey: 'levelId',
|
UserLevelProgress.belongsTo(Match3Level, { foreignKey: 'levelId', as: 'level' });
|
||||||
as: 'objectives'
|
|
||||||
});
|
|
||||||
Match3Objective.belongsTo(Match3Level, {
|
|
||||||
foreignKey: 'levelId',
|
|
||||||
as: 'level'
|
|
||||||
});
|
|
||||||
|
|
||||||
Match3Campaign.hasMany(Match3UserProgress, {
|
|
||||||
foreignKey: 'campaignId',
|
|
||||||
as: 'userProgress'
|
|
||||||
});
|
|
||||||
Match3UserProgress.belongsTo(Match3Campaign, {
|
|
||||||
foreignKey: 'campaignId',
|
|
||||||
as: 'campaign'
|
|
||||||
});
|
|
||||||
|
|
||||||
User.hasMany(Match3UserProgress, {
|
|
||||||
foreignKey: 'userId',
|
|
||||||
as: 'match3Progress'
|
|
||||||
});
|
|
||||||
Match3UserProgress.belongsTo(User, {
|
|
||||||
foreignKey: 'userId',
|
|
||||||
as: 'user'
|
|
||||||
});
|
|
||||||
|
|
||||||
Match3UserProgress.hasMany(Match3UserLevelProgress, {
|
|
||||||
foreignKey: 'userProgressId',
|
|
||||||
as: 'levelProgress'
|
|
||||||
});
|
|
||||||
Match3UserLevelProgress.belongsTo(Match3UserProgress, {
|
|
||||||
foreignKey: 'userProgressId',
|
|
||||||
as: 'userProgress'
|
|
||||||
});
|
|
||||||
|
|
||||||
Match3Level.hasMany(Match3UserLevelProgress, {
|
|
||||||
foreignKey: 'levelId',
|
|
||||||
as: 'userProgress'
|
|
||||||
});
|
|
||||||
Match3UserLevelProgress.belongsTo(Match3Level, {
|
|
||||||
foreignKey: 'levelId',
|
|
||||||
as: 'level'
|
|
||||||
});
|
|
||||||
|
|
||||||
// Match3 Tile Type associations
|
|
||||||
Match3Level.hasMany(Match3LevelTileType, {
|
|
||||||
foreignKey: 'levelId',
|
|
||||||
as: 'levelTileTypes'
|
|
||||||
});
|
|
||||||
Match3LevelTileType.belongsTo(Match3Level, {
|
|
||||||
foreignKey: 'levelId',
|
|
||||||
as: 'level'
|
|
||||||
});
|
|
||||||
|
|
||||||
Match3TileType.hasMany(Match3LevelTileType, {
|
|
||||||
foreignKey: 'tileTypeId',
|
|
||||||
as: 'levelTileTypes'
|
|
||||||
});
|
|
||||||
Match3LevelTileType.belongsTo(Match3TileType, {
|
|
||||||
foreignKey: 'tileTypeId',
|
|
||||||
as: 'tileType'
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,19 +5,14 @@ const ChatRight = sequelize.define('ChatRight', {
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING(32),
|
type: DataTypes.STRING(32),
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
unique: true,
|
unique: true}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
schema: 'chat',
|
schema: 'chat',
|
||||||
tableName: 'rights',
|
tableName: 'rights',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ChatRight;
|
export default ChatRight;
|
||||||
|
|||||||
@@ -5,55 +5,43 @@ const Room = sequelize.define('Room', {
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
|
||||||
title: {
|
title: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
ownerId: {
|
||||||
owner_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true, // kann null sein, wenn system-owned
|
allowNull: true, // kann null sein, wenn system-owned
|
||||||
},
|
},
|
||||||
room_type_id: {
|
roomTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
isPublic: {
|
||||||
is_public: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true,
|
defaultValue: true},
|
||||||
},
|
genderRestrictionId: {
|
||||||
gender_restriction_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
|
||||||
password: {
|
password: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
minAge: {
|
||||||
min_age: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
maxAge: {
|
||||||
max_age: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
passwordHash: {
|
||||||
password_hash: {
|
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
friendsOfOwnerOnly: {
|
||||||
friends_of_owner_only: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: false,
|
defaultValue: false},
|
||||||
},
|
requiredUserRightId: {
|
||||||
required_user_right_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
schema: 'chat',
|
schema: 'chat',
|
||||||
tableName: 'room',
|
tableName: 'room',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
@@ -61,10 +49,7 @@ const Room = sequelize.define('Room', {
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
name: 'idx_chat_room_owner',
|
name: 'idx_chat_room_owner',
|
||||||
fields: ['owner_id'],
|
fields: ['ownerId']},
|
||||||
,
|
]});
|
||||||
freezeTableName: true},
|
|
||||||
],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default Room;
|
export default Room;
|
||||||
|
|||||||
@@ -5,19 +5,14 @@ const RoomType = sequelize.define('RoomType', {
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING(32),
|
type: DataTypes.STRING(32),
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
unique: true,
|
unique: true}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
schema: 'chat',
|
schema: 'chat',
|
||||||
tableName: 'room_type',
|
tableName: 'room_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default RoomType;
|
export default RoomType;
|
||||||
|
|||||||
@@ -5,38 +5,29 @@ const ChatUser = sequelize.define('ChatUser', {
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
falukantUserId: {
|
||||||
falukant_user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
comment: 'Verknüpfung zu community.falukant_user',
|
comment: 'Verknüpfung zu community.falukant_user'},
|
||||||
},
|
displayName: {
|
||||||
display_name: {
|
|
||||||
type: DataTypes.STRING(64),
|
type: DataTypes.STRING(64),
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
color: {
|
color: {
|
||||||
type: DataTypes.STRING(16), // z.B. Hex-Code
|
type: DataTypes.STRING(16), // z.B. Hex-Code
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: '#000000',
|
defaultValue: '#000000'},
|
||||||
},
|
showGender: {
|
||||||
show_gender: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true,
|
defaultValue: true},
|
||||||
},
|
showAge: {
|
||||||
show_age: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true,
|
defaultValue: true}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
schema: 'chat',
|
schema: 'chat',
|
||||||
tableName: 'user',
|
tableName: 'user',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ChatUser;
|
export default ChatUser;
|
||||||
|
|||||||
@@ -4,24 +4,21 @@ import ChatUser from './user.js';
|
|||||||
import ChatRight from './rights.js';
|
import ChatRight from './rights.js';
|
||||||
|
|
||||||
const ChatUserRight = sequelize.define('ChatUserRight', {
|
const ChatUserRight = sequelize.define('ChatUserRight', {
|
||||||
chat_user_id: {
|
chatUserId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
references: null, // Assoziation wird separat gesetzt
|
references: null, // Assoziation wird separat gesetzt
|
||||||
},
|
},
|
||||||
chat_right_id: {
|
chatRightId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
references: null, // Assoziation wird separat gesetzt
|
references: null, // Assoziation wird separat gesetzt
|
||||||
},
|
}}, {
|
||||||
}, {
|
|
||||||
schema: 'chat',
|
schema: 'chat',
|
||||||
tableName: 'user_rights',
|
tableName: 'user_rights',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ChatUserRight;
|
export default ChatUserRight;
|
||||||
|
|||||||
@@ -4,31 +4,28 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
class Blog extends Model {}
|
class Blog extends Model {}
|
||||||
|
|
||||||
Blog.init({
|
Blog.init({
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'user_id'
|
field: 'user_id'
|
||||||
},
|
},
|
||||||
title: {
|
title: {
|
||||||
type: DataTypes.STRING(255),
|
type: DataTypes.STRING(255),
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
description: {
|
description: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
|
||||||
// 'public' or 'logged_in'
|
// 'public' or 'logged_in'
|
||||||
visibility: {
|
visibility: {
|
||||||
type: DataTypes.STRING(20),
|
type: DataTypes.STRING(20),
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 'public',
|
defaultValue: 'public'},
|
||||||
},
|
ageMin: {
|
||||||
age_min: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
field: 'age_min'
|
field: 'age_min'
|
||||||
},
|
},
|
||||||
age_max: {
|
ageMax: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
field: 'age_max'
|
field: 'age_max'
|
||||||
@@ -36,14 +33,13 @@ Blog.init({
|
|||||||
// 'm' | 'f' | null; comma-separated for future-proofing (e.g., 'm,f')
|
// 'm' | 'f' | null; comma-separated for future-proofing (e.g., 'm,f')
|
||||||
genders: {
|
genders: {
|
||||||
type: DataTypes.STRING(10),
|
type: DataTypes.STRING(10),
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
createdAt: {
|
||||||
created_at: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW,
|
||||||
field: 'created_at'
|
field: 'created_at'
|
||||||
},
|
},
|
||||||
updated_at: {
|
updatedAt: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW,
|
||||||
field: 'updated_at'
|
field: 'updated_at'
|
||||||
@@ -54,8 +50,6 @@ Blog.init({
|
|||||||
tableName: 'blog',
|
tableName: 'blog',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Blog;
|
export default Blog;
|
||||||
|
|||||||
@@ -4,30 +4,28 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
class BlogPost extends Model {}
|
class BlogPost extends Model {}
|
||||||
|
|
||||||
BlogPost.init({
|
BlogPost.init({
|
||||||
blog_id: {
|
blogId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'blog_id'
|
field: 'blog_id'
|
||||||
},
|
},
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'user_id'
|
field: 'user_id'
|
||||||
},
|
},
|
||||||
title: {
|
title: {
|
||||||
type: DataTypes.STRING(255),
|
type: DataTypes.STRING(255),
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
content: {
|
content: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
createdAt: {
|
||||||
created_at: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW,
|
||||||
field: 'created_at'
|
field: 'created_at'
|
||||||
},
|
},
|
||||||
updated_at: {
|
updatedAt: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW,
|
||||||
field: 'updated_at'
|
field: 'updated_at'
|
||||||
@@ -38,8 +36,6 @@ BlogPost.init({
|
|||||||
tableName: 'blog_post',
|
tableName: 'blog_post',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default BlogPost;
|
export default BlogPost;
|
||||||
|
|||||||
@@ -4,30 +4,24 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
class Diary extends Model { }
|
class Diary extends Model { }
|
||||||
|
|
||||||
Diary.init({
|
Diary.init({
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
text: {
|
text: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
createdAt: {
|
||||||
created_at: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW},
|
||||||
},
|
updatedAt: {
|
||||||
updated_at: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Diary',
|
modelName: 'Diary',
|
||||||
tableName: 'diary',
|
tableName: 'diary',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Diary;
|
export default Diary;
|
||||||
|
|||||||
@@ -4,34 +4,26 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
class DiaryHistory extends Model { }
|
class DiaryHistory extends Model { }
|
||||||
|
|
||||||
DiaryHistory.init({
|
DiaryHistory.init({
|
||||||
diary_id: {
|
diaryId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
userId: {
|
||||||
user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
oldText: {
|
||||||
old_text: {
|
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
oldCreatedAt: {
|
||||||
old_created_at: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
oldUpdatedAt: {
|
||||||
old_updated_at: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'DiaryHistory',
|
modelName: 'DiaryHistory',
|
||||||
tableName: 'diary_history',
|
tableName: 'diary_history',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default DiaryHistory;
|
export default DiaryHistory;
|
||||||
|
|||||||
@@ -5,30 +5,22 @@ import UserParamVisibilityType from '../type/user_param_visibility.js';
|
|||||||
const Folder = sequelize.define('folder', {
|
const Folder = sequelize.define('folder', {
|
||||||
name: {
|
name: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
parentId: {
|
||||||
parent_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
references: {
|
references: {
|
||||||
model: 'folder',
|
model: 'folder',
|
||||||
key: 'id',
|
key: 'id'}},
|
||||||
},
|
userId: {
|
||||||
},
|
|
||||||
user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
model: 'user',
|
model: 'user',
|
||||||
key: 'id',
|
key: 'id'}}}, {
|
||||||
},
|
|
||||||
},
|
|
||||||
}, {
|
|
||||||
tableName: 'folder',
|
tableName: 'folder',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: true,
|
timestamps: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Folder;
|
export default Folder;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ const FolderImageVisibility = sequelize.define('folder_image_visibility', {
|
|||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
folder_id: {
|
folderId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -16,7 +16,7 @@ const FolderImageVisibility = sequelize.define('folder_image_visibility', {
|
|||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
visibility_type_id: {
|
visibilityTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -31,8 +31,6 @@ const FolderImageVisibility = sequelize.define('folder_image_visibility', {
|
|||||||
tableName: 'folder_image_visibility',
|
tableName: 'folder_image_visibility',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default FolderImageVisibility;
|
export default FolderImageVisibility;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ const FolderVisibilityUser = sequelize.define('folder_visibility_user', {
|
|||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
folder_id: {
|
folderId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -16,7 +16,7 @@ const FolderVisibilityUser = sequelize.define('folder_visibility_user', {
|
|||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
visibility_user_id: {
|
visibilityUserId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -28,8 +28,6 @@ const FolderVisibilityUser = sequelize.define('folder_visibility_user', {
|
|||||||
tableName: 'folder_visibility_user',
|
tableName: 'folder_visibility_user',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default FolderVisibilityUser;
|
export default FolderVisibilityUser;
|
||||||
|
|||||||
@@ -31,8 +31,6 @@ const Friendship = sequelize.define('friendship', {
|
|||||||
tableName: 'friendship',
|
tableName: 'friendship',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: true,
|
timestamps: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Friendship;
|
export default Friendship;
|
||||||
|
|||||||
@@ -7,9 +7,8 @@ const GuestbookEntry = sequelize.define('guestbook_entry', {
|
|||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
autoIncrement: true,
|
autoIncrement: true,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
recipientId: {
|
||||||
recipient_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -17,7 +16,7 @@ const GuestbookEntry = sequelize.define('guestbook_entry', {
|
|||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
sender_id: {
|
senderId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
references: {
|
references: {
|
||||||
@@ -25,24 +24,18 @@ const GuestbookEntry = sequelize.define('guestbook_entry', {
|
|||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
sender_username: {
|
senderUsername: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
contentHtml: {
|
||||||
content_html: {
|
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
imageUrl: {
|
||||||
image_url: {
|
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true,
|
allowNull: true}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
tableName: 'guestbook_entry',
|
tableName: 'guestbook_entry',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default GuestbookEntry;
|
export default GuestbookEntry;
|
||||||
|
|||||||
@@ -5,43 +5,32 @@ import UserParamVisibilityType from '../type/user_param_visibility.js';
|
|||||||
const Image = sequelize.define('image', {
|
const Image = sequelize.define('image', {
|
||||||
title: {
|
title: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
description: {
|
description: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
originalFileName: {
|
||||||
original_file_name: {
|
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
hash: {
|
hash: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
unique: true,
|
unique: true},
|
||||||
},
|
folderId: {
|
||||||
folder_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
model: 'folder',
|
model: 'folder',
|
||||||
key: 'id',
|
key: 'id'}},
|
||||||
},
|
userId: {
|
||||||
},
|
|
||||||
user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
model: 'user',
|
model: 'user',
|
||||||
key: 'id',
|
key: 'id'}}}, {
|
||||||
},
|
|
||||||
},
|
|
||||||
}, {
|
|
||||||
tableName: 'image',
|
tableName: 'image',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: true,
|
timestamps: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Image;
|
export default Image;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ const ImageImageVisibility = sequelize.define('image_image_visibility', {
|
|||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
image_id: {
|
imageId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -16,7 +16,7 @@ const ImageImageVisibility = sequelize.define('image_image_visibility', {
|
|||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
visibility_type_id: {
|
visibilityTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -31,8 +31,6 @@ const ImageImageVisibility = sequelize.define('image_image_visibility', {
|
|||||||
tableName: 'image_image_visibility',
|
tableName: 'image_image_visibility',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ImageImageVisibility;
|
export default ImageImageVisibility;
|
||||||
|
|||||||
@@ -8,11 +8,11 @@ const ImageVisibilityUser = sequelize.define('image_visibility_user', {
|
|||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
image_id: {
|
imageId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
}
|
}
|
||||||
@@ -21,7 +21,6 @@ const ImageVisibilityUser = sequelize.define('image_visibility_user', {
|
|||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true,
|
||||||
schema: 'community'
|
schema: 'community'
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ImageVisibilityUser;
|
export default ImageVisibilityUser;
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ const interest = sequelize.define('interest_type', {
|
|||||||
tableName: 'interest',
|
tableName: 'interest',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
underscored: true
|
underscored: true
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default interest;
|
export default interest;
|
||||||
@@ -36,7 +36,7 @@ const User = sequelize.define('user', {
|
|||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
},
|
},
|
||||||
registration_date: {
|
registrationDate: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: DataTypes.NOW
|
defaultValue: DataTypes.NOW
|
||||||
@@ -45,11 +45,11 @@ const User = sequelize.define('user', {
|
|||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
defaultValue: false
|
defaultValue: false
|
||||||
},
|
},
|
||||||
reset_token: {
|
resetToken: {
|
||||||
type: DataTypes.UUID,
|
type: DataTypes.UUID,
|
||||||
allowNull: true
|
allowNull: true
|
||||||
},
|
},
|
||||||
hashed_id: {
|
hashedId: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true
|
allowNull: true
|
||||||
},
|
},
|
||||||
@@ -57,7 +57,7 @@ const User = sequelize.define('user', {
|
|||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
defaultValue: true
|
defaultValue: true
|
||||||
},
|
},
|
||||||
auth_code: {
|
authCode: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true
|
allowNull: true
|
||||||
}
|
}
|
||||||
@@ -70,8 +70,7 @@ const User = sequelize.define('user', {
|
|||||||
const hashedId = crypto.createHash('sha256').update(user.id.toString()).digest('hex');
|
const hashedId = crypto.createHash('sha256').update(user.id.toString()).digest('hex');
|
||||||
user.hashedId = hashedId;
|
user.hashedId = hashedId;
|
||||||
await user.save();
|
await user.save();
|
||||||
,
|
},
|
||||||
freezeTableName: true}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import UserParamType from '../type/user_param.js';
|
|||||||
import { encrypt, decrypt } from '../../utils/encryption.js';
|
import { encrypt, decrypt } from '../../utils/encryption.js';
|
||||||
|
|
||||||
const UserParam = sequelize.define('user_param', {
|
const UserParam = sequelize.define('user_param', {
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -13,7 +13,7 @@ const UserParam = sequelize.define('user_param', {
|
|||||||
key: 'id',
|
key: 'id',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
param_type_id: {
|
paramTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -54,9 +54,8 @@ const UserParam = sequelize.define('user_param', {
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['user_id', 'param_type_id'],
|
fields: ['userId', 'paramTypeId'],
|
||||||
,
|
}
|
||||||
freezeTableName: true},
|
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ const UserParamVisibility = sequelize.define('user_param_visibility', {
|
|||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
param_id: {
|
paramId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
@@ -21,7 +21,6 @@ const UserParamVisibility = sequelize.define('user_param_visibility', {
|
|||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true,
|
||||||
schema: 'community'
|
schema: 'community'
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default UserParamVisibility;
|
export default UserParamVisibility;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import User from './user.js';
|
|||||||
import UserRightType from '../type/user_right.js';
|
import UserRightType from '../type/user_right.js';
|
||||||
|
|
||||||
const UserRight = sequelize.define('user_right', {
|
const UserRight = sequelize.define('user_right', {
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -12,19 +12,16 @@ const UserRight = sequelize.define('user_right', {
|
|||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
right_type_id: {
|
rightTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
model: UserRightType,
|
model: UserRightType,
|
||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
}}, {
|
||||||
}, {
|
|
||||||
tableName: 'user_right',
|
tableName: 'user_right',
|
||||||
schema: 'community',
|
schema: 'community',
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default UserRight;
|
export default UserRight;
|
||||||
|
|||||||
@@ -4,19 +4,15 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Branch extends Model { }
|
class Branch extends Model { }
|
||||||
|
|
||||||
Branch.init({
|
Branch.init({
|
||||||
branch_type_id: {
|
branchTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
regionId: {
|
||||||
region_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
falukantUserId: {
|
||||||
falukant_user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Branch',
|
modelName: 'Branch',
|
||||||
tableName: 'branch',
|
tableName: 'branch',
|
||||||
@@ -26,10 +22,8 @@ Branch.init({
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['region_id', 'falukant_user_id']
|
fields: ['regionId', 'falukantUserId']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
]});
|
||||||
],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default Branch;
|
export default Branch;
|
||||||
|
|||||||
@@ -4,38 +4,35 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class BuyableHouse extends Model { }
|
class BuyableHouse extends Model { }
|
||||||
|
|
||||||
BuyableHouse.init({
|
BuyableHouse.init({
|
||||||
roof_condition: {
|
roofCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
floor_condition: {
|
floorCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
wall_condition: {
|
wallCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
window_condition: {
|
windowCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
house_type_id: {
|
houseTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'BuyableHouse',
|
modelName: 'BuyableHouse',
|
||||||
tableName: 'buyable_house',
|
tableName: 'buyable_house',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default BuyableHouse;
|
export default BuyableHouse;
|
||||||
|
|||||||
@@ -4,26 +4,20 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class BuyableStock extends Model { }
|
class BuyableStock extends Model { }
|
||||||
|
|
||||||
BuyableStock.init({
|
BuyableStock.init({
|
||||||
region_id: {
|
regionId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
stockTypeId: {
|
||||||
stock_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
quantity: {
|
quantity: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'BuyableStock',
|
modelName: 'BuyableStock',
|
||||||
tableName: 'buyable_stock',
|
tableName: 'buyable_stock',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default BuyableStock;
|
export default BuyableStock;
|
||||||
|
|||||||
@@ -8,24 +8,18 @@ Candidate.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
electionId: {
|
||||||
election_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
characterId: {
|
||||||
character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Candidate',
|
modelName: 'Candidate',
|
||||||
tableName: 'candidate',
|
tableName: 'candidate',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Candidate;
|
export default Candidate;
|
||||||
|
|||||||
@@ -5,44 +5,35 @@ class FalukantCharacter extends Model {}
|
|||||||
|
|
||||||
FalukantCharacter.init(
|
FalukantCharacter.init(
|
||||||
{
|
{
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
regionId: {
|
||||||
region_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
firstName: {
|
||||||
first_name: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
lastName: {
|
||||||
last_name: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
birthdate: {
|
birthdate: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW},
|
||||||
},
|
|
||||||
gender: {
|
gender: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING},
|
||||||
},
|
|
||||||
health: {
|
health: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100,
|
defaultValue: 100},
|
||||||
},
|
titleOfNobility: {
|
||||||
title_of_nobility: {
|
type: DataTypes.INTEGER,
|
||||||
|
allowNull: false},
|
||||||
|
moodId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
},
|
defaultValue: 1}
|
||||||
mood_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
|
||||||
allowNull: false,
|
|
||||||
defaultValue: 1,
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
@@ -50,9 +41,7 @@ FalukantCharacter.init(
|
|||||||
tableName: 'character',
|
tableName: 'character',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default FalukantCharacter;
|
export default FalukantCharacter;
|
||||||
|
|||||||
@@ -5,46 +5,38 @@ class ChildRelation extends Model {}
|
|||||||
|
|
||||||
ChildRelation.init(
|
ChildRelation.init(
|
||||||
{
|
{
|
||||||
father_character_id: {
|
fatherCharacterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
motherCharacterId: {
|
||||||
mother_character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
childCharacterId: {
|
||||||
child_character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
fatherName: {
|
||||||
father_name: {
|
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
motherName: {
|
||||||
mother_name: {
|
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
nameSet: {
|
||||||
name_set: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
default: false,
|
default: false},
|
||||||
},
|
isHeir: {
|
||||||
is_heir: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
default: false,
|
default: false}
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'ChildRelation',
|
modelName: 'ChildRelation',
|
||||||
tableName: 'child_relation', // exakter Tabellenname
|
tableName: 'child_relation', // exakter Tabellenname
|
||||||
schema: 'falukant_data', // exaktes Schema
|
schema: 'falukant_data', // exaktes Schema
|
||||||
freezeTableName: true, // keine Pluralisierung
|
// keine Pluralisierung
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default ChildRelation;
|
export default ChildRelation;
|
||||||
|
|||||||
@@ -8,31 +8,24 @@ Credit.init({
|
|||||||
// aufgenommener Kredit-Betrag
|
// aufgenommener Kredit-Betrag
|
||||||
amount: {
|
amount: {
|
||||||
type: DataTypes.DECIMAL(14,2),
|
type: DataTypes.DECIMAL(14,2),
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
// noch offener Kreditbetrag
|
// noch offener Kreditbetrag
|
||||||
remaining_amount: {
|
remainingAmount: {
|
||||||
type: DataTypes.DECIMAL(14,2),
|
type: DataTypes.DECIMAL(14,2),
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
// Zinssatz als Prozentsatz (z.B. 3.5 für 3.5%)
|
// Zinssatz als Prozentsatz (z.B. 3.5 für 3.5%)
|
||||||
interest_rate: {
|
interestRate: {
|
||||||
type: DataTypes.DECIMAL(5,2),
|
type: DataTypes.DECIMAL(5,2),
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
// Verknüpfung auf FalukantUser
|
// Verknüpfung auf FalukantUser
|
||||||
falukant_user_id: {
|
falukantUserId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Credit',
|
modelName: 'Credit',
|
||||||
tableName: 'credit',
|
tableName: 'credit',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Credit;
|
export default Credit;
|
||||||
|
|||||||
@@ -5,18 +5,14 @@ class DebtorsPrism extends Model {}
|
|||||||
|
|
||||||
DebtorsPrism.init({
|
DebtorsPrism.init({
|
||||||
// Verknüpfung auf FalukantCharacter
|
// Verknüpfung auf FalukantCharacter
|
||||||
character_id: {
|
characterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'DebtorsPrism',
|
modelName: 'DebtorsPrism',
|
||||||
tableName: 'debtors_prism',
|
tableName: 'debtors_prism',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default DebtorsPrism;
|
export default DebtorsPrism;
|
||||||
|
|||||||
@@ -4,39 +4,32 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Director extends Model { }
|
class Director extends Model { }
|
||||||
|
|
||||||
Director.init({
|
Director.init({
|
||||||
director_character_id: {
|
directorCharacterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
employerUserId: {
|
||||||
employer_user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
income: {
|
income: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
satisfaction: {
|
satisfaction: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100,
|
defaultValue: 100},
|
||||||
},
|
mayProduce: {
|
||||||
may_produce: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true,
|
defaultValue: true},
|
||||||
},
|
maySell: {
|
||||||
may_sell: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true,
|
defaultValue: true},
|
||||||
},
|
mayStartTransport: {
|
||||||
may_start_transport: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true,
|
defaultValue: true},
|
||||||
},
|
lastSalaryPayout: {
|
||||||
last_salary_payout: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: new Date(0)
|
defaultValue: new Date(0)
|
||||||
@@ -47,8 +40,6 @@ Director.init({
|
|||||||
tableName: 'director',
|
tableName: 'director',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Director;
|
export default Director;
|
||||||
|
|||||||
@@ -4,26 +4,20 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class DirectorProposal extends Model { }
|
class DirectorProposal extends Model { }
|
||||||
|
|
||||||
DirectorProposal.init({
|
DirectorProposal.init({
|
||||||
director_character_id: {
|
directorCharacterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
employerUserId: {
|
||||||
employer_user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
proposedIncome: {
|
||||||
proposed_income: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'DirectorProposal',
|
modelName: 'DirectorProposal',
|
||||||
tableName: 'director_proposal',
|
tableName: 'director_proposal',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default DirectorProposal;
|
export default DirectorProposal;
|
||||||
|
|||||||
@@ -8,32 +8,25 @@ Election.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
officeTypeId: {
|
||||||
office_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
regionId: {
|
||||||
region_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
date: {
|
date: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
postsToFill: {
|
||||||
posts_to_fill: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Election',
|
modelName: 'Election',
|
||||||
tableName: 'election',
|
tableName: 'election',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Election;
|
export default Election;
|
||||||
|
|||||||
@@ -8,28 +8,21 @@ ElectionResult.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
electionId: {
|
||||||
election_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
candidateId: {
|
||||||
candidate_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
votesReceived: {
|
||||||
votes_received: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'ElectionResult',
|
modelName: 'ElectionResult',
|
||||||
tableName: 'election_result',
|
tableName: 'election_result',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ElectionResult;
|
export default ElectionResult;
|
||||||
|
|||||||
@@ -5,24 +5,19 @@ class FalukantCharacterTrait extends Model {}
|
|||||||
|
|
||||||
FalukantCharacterTrait.init(
|
FalukantCharacterTrait.init(
|
||||||
{
|
{
|
||||||
character_id: {
|
characterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
traitId: {
|
||||||
trait_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'FalukantCharacterTrait',
|
modelName: 'FalukantCharacterTrait',
|
||||||
tableName: 'falukant_character_trait',
|
tableName: 'falukant_character_trait',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default FalukantCharacterTrait;
|
export default FalukantCharacterTrait;
|
||||||
|
|||||||
@@ -4,35 +4,28 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Inventory extends Model { }
|
class Inventory extends Model { }
|
||||||
|
|
||||||
Inventory.init({
|
Inventory.init({
|
||||||
stock_id: {
|
stockId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
productId: {
|
||||||
product_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
quantity: {
|
quantity: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
quality: {
|
quality: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
producedAt: {
|
||||||
produced_at: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Inventory',
|
modelName: 'Inventory',
|
||||||
tableName: 'inventory',
|
tableName: 'inventory',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Inventory;
|
export default Inventory;
|
||||||
|
|||||||
@@ -5,35 +5,29 @@ class Learning extends Model {}
|
|||||||
|
|
||||||
Learning.init(
|
Learning.init(
|
||||||
{
|
{
|
||||||
learning_recipient_id: {
|
learningRecipientId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
productId: {
|
||||||
product_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
defaultValue: null,
|
defaultValue: null},
|
||||||
},
|
learnAllProducts: {
|
||||||
learn_all_products: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: false,
|
defaultValue: false},
|
||||||
},
|
associatedFalukantUserId: {
|
||||||
associated_falukant_user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
defaultValue: null,
|
defaultValue: null},
|
||||||
},
|
associatedLearningCharacterId: {
|
||||||
associated_learning_character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
defaultValue: null,
|
defaultValue: null},
|
||||||
},
|
learningIsExecuted: {
|
||||||
learning_is_executed: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: false,
|
defaultValue: false}
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
@@ -41,9 +35,7 @@ Learning.init(
|
|||||||
tableName: 'learning',
|
tableName: 'learning',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default Learning;
|
export default Learning;
|
||||||
|
|||||||
@@ -5,31 +5,25 @@ class MarriageProposal extends Model {}
|
|||||||
|
|
||||||
MarriageProposal.init(
|
MarriageProposal.init(
|
||||||
{
|
{
|
||||||
requester_character_id: {
|
requesterCharacterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
onDelete: 'CASCADE',
|
onDelete: 'CASCADE'},
|
||||||
},
|
proposedCharacterId: {
|
||||||
proposed_character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
onDelete: 'CASCADE',
|
onDelete: 'CASCADE'},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.FLOAT,
|
type: DataTypes.FLOAT,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0,
|
defaultValue: 0}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'MarriageProposal',
|
modelName: 'MarriageProposal',
|
||||||
tableName: 'marriage_proposals',
|
tableName: 'marriage_proposals',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default MarriageProposal;
|
export default MarriageProposal;
|
||||||
|
|||||||
@@ -8,24 +8,18 @@ OccupiedPoliticalOffice.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
politicalOfficeId: {
|
||||||
political_office_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
characterId: {
|
||||||
character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'OccupiedPoliticalOffice',
|
modelName: 'OccupiedPoliticalOffice',
|
||||||
tableName: 'occupied_political_office',
|
tableName: 'occupied_political_office',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default OccupiedPoliticalOffice;
|
export default OccupiedPoliticalOffice;
|
||||||
|
|||||||
@@ -4,27 +4,27 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Party extends Model {}
|
class Party extends Model {}
|
||||||
|
|
||||||
Party.init({
|
Party.init({
|
||||||
party_type_id: {
|
partyTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'party_type_id'
|
field: 'party_type_id'
|
||||||
},
|
},
|
||||||
falukant_user_id: {
|
falukantUserId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'falukant_user_id'
|
field: 'falukant_user_id'
|
||||||
},
|
},
|
||||||
music_type_id: {
|
musicTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'music_type'
|
field: 'music_type'
|
||||||
},
|
},
|
||||||
banquette_type_id: {
|
banquetteTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'banquette_type'
|
field: 'banquette_type'
|
||||||
},
|
},
|
||||||
servant_ratio: {
|
servantRatio: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'servant_ratio'
|
field: 'servant_ratio'
|
||||||
@@ -33,15 +33,12 @@ Party.init({
|
|||||||
type: DataTypes.FLOAT,
|
type: DataTypes.FLOAT,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0
|
defaultValue: 0
|
||||||
},
|
}}, {
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Party',
|
modelName: 'Party',
|
||||||
tableName: 'party',
|
tableName: 'party',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Party;
|
export default Party;
|
||||||
@@ -4,12 +4,12 @@ import { sequelize } from '../../../utils/sequelize.js'
|
|||||||
class PartyInvitedNobility extends Model {}
|
class PartyInvitedNobility extends Model {}
|
||||||
|
|
||||||
PartyInvitedNobility.init({
|
PartyInvitedNobility.init({
|
||||||
party_id: {
|
partyId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'party_id'
|
field: 'party_id'
|
||||||
},
|
},
|
||||||
title_of_nobility_id: {
|
titleOfNobilityId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
field: 'title_of_nobility_id'
|
field: 'title_of_nobility_id'
|
||||||
@@ -21,7 +21,6 @@ PartyInvitedNobility.init({
|
|||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true
|
underscored: true
|
||||||
,
|
})
|
||||||
freezeTableName: true})
|
|
||||||
|
|
||||||
export default PartyInvitedNobility
|
export default PartyInvitedNobility
|
||||||
|
|||||||
@@ -8,28 +8,21 @@ PoliticalOffice.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
officeTypeId: {
|
||||||
office_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
characterId: {
|
||||||
character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
regionId: {
|
||||||
region_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PoliticalOffice',
|
modelName: 'PoliticalOffice',
|
||||||
tableName: 'political_office',
|
tableName: 'political_office',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default PoliticalOffice;
|
export default PoliticalOffice;
|
||||||
|
|||||||
@@ -4,19 +4,16 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Knowledge extends Model { }
|
class Knowledge extends Model { }
|
||||||
|
|
||||||
Knowledge.init({
|
Knowledge.init({
|
||||||
product_id: {
|
productId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
characterId: {
|
||||||
character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
knowledge: {
|
knowledge: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0,
|
defaultValue: 0}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Knowledge',
|
modelName: 'Knowledge',
|
||||||
@@ -27,8 +24,7 @@ Knowledge.init({
|
|||||||
hooks: {
|
hooks: {
|
||||||
beforeCreate: (knowledge) => {
|
beforeCreate: (knowledge) => {
|
||||||
knowledge.knowledge = Math.floor(Math.random() * 61) + 20;
|
knowledge.knowledge = Math.floor(Math.random() * 61) + 20;
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -4,31 +4,25 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Production extends Model { }
|
class Production extends Model { }
|
||||||
|
|
||||||
Production.init({
|
Production.init({
|
||||||
branch_id: {
|
branchId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
productId: {
|
||||||
product_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
quantity: {
|
quantity: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
startTimestamp: {
|
||||||
start_timestamp: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: sequelize.literal('CURRENT_TIMESTAMP'),
|
defaultValue: sequelize.literal('CURRENT_TIMESTAMP')}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Production',
|
modelName: 'Production',
|
||||||
tableName: 'production',
|
tableName: 'production',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Production;
|
export default Production;
|
||||||
|
|||||||
@@ -7,9 +7,8 @@ class RegionData extends Model { }
|
|||||||
RegionData.init({
|
RegionData.init({
|
||||||
name: {
|
name: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
regionTypeId: {
|
||||||
region_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -18,14 +17,13 @@ RegionData.init({
|
|||||||
schema: 'falukant_type'
|
schema: 'falukant_type'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
parent_id: {
|
parentId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
references: {
|
references: {
|
||||||
model: 'region',
|
model: 'region',
|
||||||
key: 'id',
|
key: 'id',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data'}
|
||||||
}
|
|
||||||
},
|
},
|
||||||
map: {
|
map: {
|
||||||
type: DataTypes.JSONB,
|
type: DataTypes.JSONB,
|
||||||
@@ -38,8 +36,6 @@ RegionData.init({
|
|||||||
tableName: 'region',
|
tableName: 'region',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default RegionData;
|
export default RegionData;
|
||||||
|
|||||||
@@ -11,47 +11,36 @@ Relationship.init(
|
|||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
model: FalukantCharacter,
|
model: FalukantCharacter,
|
||||||
key: 'id',
|
key: 'id'},
|
||||||
},
|
onDelete: 'CASCADE'},
|
||||||
onDelete: 'CASCADE',
|
|
||||||
},
|
|
||||||
character2Id: {
|
character2Id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
model: FalukantCharacter,
|
model: FalukantCharacter,
|
||||||
key: 'id',
|
key: 'id'},
|
||||||
},
|
onDelete: 'CASCADE'},
|
||||||
onDelete: 'CASCADE',
|
relationshipTypeId: {
|
||||||
},
|
|
||||||
relationship_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
onDelete: 'CASCADE',
|
onDelete: 'CASCADE'},
|
||||||
},
|
|
||||||
widowFirstName1: {
|
widowFirstName1: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
|
||||||
widowFirstName2: {
|
widowFirstName2: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
nextStepProgress: {
|
||||||
next_step_progress: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
defaultValue: 0,
|
defaultValue: 0}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Relationship',
|
modelName: 'Relationship',
|
||||||
tableName: 'relationship',
|
tableName: 'relationship',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default Relationship;
|
export default Relationship;
|
||||||
|
|||||||
@@ -4,27 +4,22 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class FalukantStock extends Model { }
|
class FalukantStock extends Model { }
|
||||||
|
|
||||||
FalukantStock.init({
|
FalukantStock.init({
|
||||||
branch_id: {
|
branchId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0
|
defaultValue: 0
|
||||||
},
|
},
|
||||||
stock_type_id: {
|
stockTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
quantity: {
|
quantity: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'StockData',
|
modelName: 'StockData',
|
||||||
tableName: 'stock',
|
tableName: 'stock',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default FalukantStock;
|
export default FalukantStock;
|
||||||
|
|||||||
@@ -4,19 +4,16 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class TownProductWorth extends Model { }
|
class TownProductWorth extends Model { }
|
||||||
|
|
||||||
TownProductWorth.init({
|
TownProductWorth.init({
|
||||||
product_id: {
|
productId: {
|
||||||
|
type: DataTypes.INTEGER,
|
||||||
|
allowNull: false},
|
||||||
|
regionId: {
|
||||||
|
type: DataTypes.INTEGER,
|
||||||
|
allowNull: false},
|
||||||
|
worthPercent: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
},
|
defaultValue: 0}
|
||||||
region_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
|
||||||
allowNull: false,
|
|
||||||
},
|
|
||||||
worth_percent: {
|
|
||||||
type: DataTypes.INTEGER,
|
|
||||||
allowNull: false,
|
|
||||||
defaultValue: 0,
|
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'TownProductWorth',
|
modelName: 'TownProductWorth',
|
||||||
@@ -27,8 +24,7 @@ TownProductWorth.init({
|
|||||||
hooks: {
|
hooks: {
|
||||||
beforeCreate: (worthPercent) => {
|
beforeCreate: (worthPercent) => {
|
||||||
worthPercent.worthPercent = Math.floor(Math.random() * 20) + 40;
|
worthPercent.worthPercent = Math.floor(Math.random() * 20) + 40;
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -4,34 +4,27 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Underground extends Model { }
|
class Underground extends Model { }
|
||||||
|
|
||||||
Underground.init({
|
Underground.init({
|
||||||
underground_type_id: {
|
undergroundTypeId: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
performerId: {
|
||||||
performer_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
victimId: {
|
||||||
victim_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
parameters: {
|
parameters: {
|
||||||
type: DataTypes.JSON,
|
type: DataTypes.JSON,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
|
||||||
result: {
|
result: {
|
||||||
type: DataTypes.JSON,
|
type: DataTypes.JSON,
|
||||||
allowNull: true,
|
allowNull: true}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Underground',
|
modelName: 'Underground',
|
||||||
tableName: 'underground',
|
tableName: 'underground',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Underground;
|
export default Underground;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import RegionData from './region.js';
|
|||||||
class FalukantUser extends Model { }
|
class FalukantUser extends Model { }
|
||||||
|
|
||||||
FalukantUser.init({
|
FalukantUser.init({
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -15,34 +15,28 @@ FalukantUser.init({
|
|||||||
},
|
},
|
||||||
key: 'id'
|
key: 'id'
|
||||||
},
|
},
|
||||||
unique: true,
|
unique: true},
|
||||||
},
|
|
||||||
money: {
|
money: {
|
||||||
type: DataTypes.DECIMAL(10, 2),
|
type: DataTypes.DECIMAL(10, 2),
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0.00,
|
defaultValue: 0.00},
|
||||||
},
|
creditAmount: {
|
||||||
credit_amount: {
|
|
||||||
type: DataTypes.DECIMAL(10, 2),
|
type: DataTypes.DECIMAL(10, 2),
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0.00,
|
defaultValue: 0.00},
|
||||||
},
|
todayCreditTaken: {
|
||||||
today_credit_taken: {
|
|
||||||
type: DataTypes.DECIMAL(10, 2),
|
type: DataTypes.DECIMAL(10, 2),
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0.00,
|
defaultValue: 0.00},
|
||||||
},
|
creditInterestRate: {
|
||||||
credit_interest_rate: {
|
|
||||||
type: DataTypes.DECIMAL(5, 2),
|
type: DataTypes.DECIMAL(5, 2),
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0.00,
|
defaultValue: 0.00},
|
||||||
},
|
|
||||||
certificate: {
|
certificate: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 1,
|
defaultValue: 1},
|
||||||
},
|
mainBranchRegionId: {
|
||||||
main_branch_region_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
references: {
|
references: {
|
||||||
@@ -57,8 +51,6 @@ FalukantUser.init({
|
|||||||
tableName: 'falukant_user',
|
tableName: 'falukant_user',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default FalukantUser;
|
export default FalukantUser;
|
||||||
|
|||||||
@@ -4,32 +4,32 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class UserHouse extends Model { }
|
class UserHouse extends Model { }
|
||||||
|
|
||||||
UserHouse.init({
|
UserHouse.init({
|
||||||
roof_condition: {
|
roofCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
floor_condition: {
|
floorCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
wall_condition: {
|
wallCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
window_condition: {
|
windowCondition: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 100
|
defaultValue: 100
|
||||||
},
|
},
|
||||||
house_type_id: {
|
houseTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 1
|
defaultValue: 1
|
||||||
},
|
},
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 1
|
defaultValue: 1
|
||||||
@@ -40,8 +40,6 @@ UserHouse.init({
|
|||||||
tableName: 'user_house',
|
tableName: 'user_house',
|
||||||
schema: 'falukant_data',
|
schema: 'falukant_data',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default UserHouse;
|
export default UserHouse;
|
||||||
|
|||||||
@@ -9,26 +9,20 @@ Vote.init(
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
electionId: {
|
||||||
election_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
candidateId: {
|
||||||
candidate_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
timestamp: {
|
timestamp: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: DataTypes.NOW,
|
defaultValue: DataTypes.NOW},
|
||||||
},
|
falukantUserId: {
|
||||||
falukant_user_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Vote',
|
modelName: 'Vote',
|
||||||
@@ -39,11 +33,8 @@ Vote.init(
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['election_id', 'candidate_id'],
|
fields: ['electionId', 'candidateId']},
|
||||||
,
|
]}
|
||||||
freezeTableName: true},
|
|
||||||
],
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default Vote;
|
export default Vote;
|
||||||
|
|||||||
@@ -4,32 +4,26 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class DayProduction extends Model { }
|
class DayProduction extends Model { }
|
||||||
|
|
||||||
DayProduction.init({
|
DayProduction.init({
|
||||||
region_id: {
|
regionId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
productId: {
|
||||||
product_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
quantity: {
|
quantity: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
producerId: {
|
||||||
producer_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
productionTimestamp: {
|
||||||
production_timestamp: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: sequelize.literal('CURRENT_TIMESTAMP'),
|
defaultValue: sequelize.literal('CURRENT_TIMESTAMP')},
|
||||||
},
|
productionDate: {
|
||||||
production_date: {
|
|
||||||
type: DataTypes.DATEONLY,
|
type: DataTypes.DATEONLY,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: sequelize.literal('CURRENT_DATE'),
|
defaultValue: sequelize.literal('CURRENT_DATE')}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'DayProduction',
|
modelName: 'DayProduction',
|
||||||
@@ -40,9 +34,8 @@ DayProduction.init({
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['producer_id', 'product_id', 'region_id', 'production_date']
|
fields: ['producerId', 'productId', 'regionId', 'productionDate']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -4,27 +4,22 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class DaySell extends Model { }
|
class DaySell extends Model { }
|
||||||
|
|
||||||
DaySell.init({
|
DaySell.init({
|
||||||
region_id: {
|
regionId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
productId: {
|
||||||
product_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
quantity: {
|
quantity: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
sellerId: {
|
||||||
seller_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
sellTimestamp: {
|
||||||
sell_timestamp: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: sequelize.literal('CURRENT_TIMESTAMP'),
|
defaultValue: sequelize.literal('CURRENT_TIMESTAMP')}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'DaySell',
|
modelName: 'DaySell',
|
||||||
@@ -35,9 +30,8 @@ DaySell.init({
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['seller_id', 'product_id', 'region_id']
|
fields: ['sellerId', 'productId', 'regionId']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -4,30 +4,24 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class ElectionHistory extends Model { }
|
class ElectionHistory extends Model { }
|
||||||
|
|
||||||
ElectionHistory.init({
|
ElectionHistory.init({
|
||||||
election_id: {
|
electionId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
politicalOfficeTypeId: {
|
||||||
political_office_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
electionDate: {
|
||||||
election_date: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
electionResult: {
|
||||||
election_result: {
|
|
||||||
type: DataTypes.JSON,
|
type: DataTypes.JSON,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'ElectionHistory',
|
modelName: 'ElectionHistory',
|
||||||
tableName: 'election_history',
|
tableName: 'election_history',
|
||||||
schema: 'falukant_log',
|
schema: 'falukant_log',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ElectionHistory;
|
export default ElectionHistory;
|
||||||
|
|||||||
@@ -7,21 +7,17 @@ HealthActivity.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
characterId: {
|
||||||
character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
activityTr: {
|
||||||
activity_tr: {
|
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.FLOAT,
|
type: DataTypes.FLOAT,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
successPercentage: {
|
||||||
success_percentage: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
}
|
}
|
||||||
@@ -31,8 +27,6 @@ HealthActivity.init({
|
|||||||
tableName: 'health_activity',
|
tableName: 'health_activity',
|
||||||
schema: 'falukant_log',
|
schema: 'falukant_log',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default HealthActivity;
|
export default HealthActivity;
|
||||||
|
|||||||
@@ -4,43 +4,34 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class MoneyFlow extends Model { }
|
class MoneyFlow extends Model { }
|
||||||
|
|
||||||
MoneyFlow.init({
|
MoneyFlow.init({
|
||||||
falukant_user_id: {
|
falukantUserId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
activity: {
|
activity: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
moneyBefore: {
|
||||||
money_before: {
|
|
||||||
type: DataTypes.DOUBLE,
|
type: DataTypes.DOUBLE,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
moneyAfter: {
|
||||||
money_after: {
|
|
||||||
type: DataTypes.DOUBLE,
|
type: DataTypes.DOUBLE,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
|
||||||
time: {
|
time: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: DataTypes.NOW
|
defaultValue: DataTypes.NOW
|
||||||
},
|
},
|
||||||
change_value: {
|
changeValue: {
|
||||||
type: DataTypes.DOUBLE,
|
type: DataTypes.DOUBLE,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
changedBy: {
|
||||||
changed_by: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'MoneyFlow',
|
modelName: 'MoneyFlow',
|
||||||
tableName: 'moneyflow',
|
tableName: 'moneyflow',
|
||||||
schema: 'falukant_log',
|
schema: 'falukant_log',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default MoneyFlow;
|
export default MoneyFlow;
|
||||||
|
|||||||
@@ -4,27 +4,21 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class Notification extends Model { }
|
class Notification extends Model { }
|
||||||
|
|
||||||
Notification.init({
|
Notification.init({
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
shown: {
|
shown: {
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: false,
|
defaultValue: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Notification',
|
modelName: 'Notification',
|
||||||
tableName: 'notification',
|
tableName: 'notification',
|
||||||
schema: 'falukant_log',
|
schema: 'falukant_log',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Notification;
|
export default Notification;
|
||||||
|
|||||||
@@ -5,22 +5,18 @@ class PoliticalOfficeHistory extends Model { }
|
|||||||
|
|
||||||
PoliticalOfficeHistory.init(
|
PoliticalOfficeHistory.init(
|
||||||
{
|
{
|
||||||
character_id: {
|
characterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
officeTypeId: {
|
||||||
office_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
startDate: {
|
||||||
start_date: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
endDate: {
|
||||||
end_date: {
|
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
@@ -28,9 +24,7 @@ PoliticalOfficeHistory.init(
|
|||||||
tableName: 'political_office_history',
|
tableName: 'political_office_history',
|
||||||
schema: 'falukant_log',
|
schema: 'falukant_log',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default PoliticalOfficeHistory;
|
export default PoliticalOfficeHistory;
|
||||||
|
|||||||
@@ -4,30 +4,23 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class PromotionalGiftLog extends Model { };
|
class PromotionalGiftLog extends Model { };
|
||||||
|
|
||||||
PromotionalGiftLog.init({
|
PromotionalGiftLog.init({
|
||||||
sender_character_id: {
|
senderCharacterId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
recipientCharacterId: {
|
||||||
recipient_character_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
giftId: {
|
||||||
gift_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
changeValue: {
|
||||||
change_value: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PromotionalGiftLog',
|
modelName: 'PromotionalGiftLog',
|
||||||
tableName: 'promotional_gift',
|
tableName: 'promotional_gift',
|
||||||
schema: 'falukant_log',
|
schema: 'falukant_log',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default PromotionalGiftLog;
|
export default PromotionalGiftLog;
|
||||||
@@ -19,9 +19,7 @@ const FalukantPredefineFirstname = sequelize.define('firstname', {
|
|||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['name', 'gender']
|
fields: ['name', 'gender']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
]});
|
||||||
],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default FalukantPredefineFirstname;
|
export default FalukantPredefineFirstname;
|
||||||
@@ -6,8 +6,7 @@ const FalukantPredefineLastname = sequelize.define('lastname', {
|
|||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
length: 1,
|
length: 1,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
}}, {
|
||||||
}, {
|
|
||||||
tableName: 'lastname',
|
tableName: 'lastname',
|
||||||
schema: 'falukant_predefine',
|
schema: 'falukant_predefine',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
@@ -16,9 +15,7 @@ const FalukantPredefineLastname = sequelize.define('lastname', {
|
|||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['name']
|
fields: ['name']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
]});
|
||||||
],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default FalukantPredefineLastname;
|
export default FalukantPredefineLastname;
|
||||||
@@ -9,29 +9,22 @@ PoliticalOfficeBenefit.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
politicalOfficeId: {
|
||||||
political_office_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
benefitTypeId: {
|
||||||
benefit_type_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
value: {
|
value: {
|
||||||
type: DataTypes.JSONB,
|
type: DataTypes.JSONB,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PoliticalOfficeBenefit',
|
modelName: 'PoliticalOfficeBenefit',
|
||||||
tableName: 'political_office_benefit',
|
tableName: 'political_office_benefit',
|
||||||
schema: 'falukant_predefine',
|
schema: 'falukant_predefine',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
// Association
|
// Association
|
||||||
PoliticalOfficeBenefit.belongsTo(PoliticalOfficeBenefitType, {
|
PoliticalOfficeBenefit.belongsTo(PoliticalOfficeBenefitType, {
|
||||||
|
|||||||
@@ -9,27 +9,22 @@ PoliticalOfficePrerequisite.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
|
||||||
|
|
||||||
// Neu: Feld heißt jetzt eindeutig "office_type_id"
|
// Neu: Feld heißt jetzt eindeutig "office_type_id"
|
||||||
office_type_id: {
|
officeTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
field: 'office_type_id',
|
||||||
},
|
allowNull: false},
|
||||||
|
|
||||||
prerequisite: {
|
prerequisite: {
|
||||||
type: DataTypes.JSONB,
|
type: DataTypes.JSONB,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PoliticalOfficePrerequisite',
|
modelName: 'PoliticalOfficePrerequisite',
|
||||||
tableName: 'political_office_prerequisite',
|
tableName: 'political_office_prerequisite',
|
||||||
schema: 'falukant_predefine',
|
schema: 'falukant_predefine',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default PoliticalOfficePrerequisite;
|
export default PoliticalOfficePrerequisite;
|
||||||
|
|||||||
@@ -7,31 +7,24 @@ class PromotionalGiftCharacterTrait extends Model {}
|
|||||||
|
|
||||||
PromotionalGiftCharacterTrait.init(
|
PromotionalGiftCharacterTrait.init(
|
||||||
{
|
{
|
||||||
gift_id: {
|
giftId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
references: {
|
field: 'gift_id',
|
||||||
model: PromotionalGift,
|
references: { model: PromotionalGift, key: 'id' },
|
||||||
key: 'id',
|
allowNull: false
|
||||||
},
|
|
||||||
allowNull: false,
|
|
||||||
},
|
},
|
||||||
trait_id: {
|
traitId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
references: {
|
field: 'trait_id',
|
||||||
model: CharacterTrait,
|
references: { model: CharacterTrait, key: 'id' },
|
||||||
key: 'id',
|
allowNull: false
|
||||||
},
|
|
||||||
allowNull: false,
|
|
||||||
},
|
},
|
||||||
suitability: {
|
suitability: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
validate: {
|
validate: {
|
||||||
min: 1,
|
min: 1,
|
||||||
max: 5,
|
max: 5}}},
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PromotionalGiftCharacterTrait',
|
modelName: 'PromotionalGiftCharacterTrait',
|
||||||
@@ -39,8 +32,9 @@ PromotionalGiftCharacterTrait.init(
|
|||||||
schema: 'falukant_predefine',
|
schema: 'falukant_predefine',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true,
|
||||||
,
|
indexes: [
|
||||||
freezeTableName: true}
|
{ unique: true, fields: ['gift_id','trait_id'] }
|
||||||
|
]}
|
||||||
);
|
);
|
||||||
|
|
||||||
export default PromotionalGiftCharacterTrait;
|
export default PromotionalGiftCharacterTrait;
|
||||||
|
|||||||
@@ -7,31 +7,30 @@ class PromotionalGiftMood extends Model {}
|
|||||||
|
|
||||||
PromotionalGiftMood.init(
|
PromotionalGiftMood.init(
|
||||||
{
|
{
|
||||||
gift_id: {
|
giftId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
|
field: 'gift_id',
|
||||||
references: {
|
references: {
|
||||||
model: PromotionalGift,
|
model: PromotionalGift,
|
||||||
key: 'id',
|
key: 'id'
|
||||||
},
|
},
|
||||||
allowNull: false,
|
allowNull: false
|
||||||
},
|
},
|
||||||
mood_id: {
|
moodId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
|
field: 'mood_id',
|
||||||
references: {
|
references: {
|
||||||
model: Mood,
|
model: Mood,
|
||||||
key: 'id',
|
key: 'id'
|
||||||
},
|
},
|
||||||
allowNull: false,
|
allowNull: false
|
||||||
},
|
},
|
||||||
suitability: {
|
suitability: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
validate: {
|
validate: {
|
||||||
min: 1,
|
min: 1,
|
||||||
max: 5,
|
max: 5}}},
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PromotionalGiftMood',
|
modelName: 'PromotionalGiftMood',
|
||||||
@@ -39,8 +38,13 @@ PromotionalGiftMood.init(
|
|||||||
schema: 'falukant_predefine',
|
schema: 'falukant_predefine',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true,
|
||||||
,
|
indexes: [
|
||||||
freezeTableName: true}
|
{
|
||||||
|
unique: true,
|
||||||
|
fields: ['gift_id', 'mood_id']
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
export default PromotionalGiftMood;
|
export default PromotionalGiftMood;
|
||||||
|
|||||||
@@ -7,26 +7,20 @@ BanquetteType.init(
|
|||||||
{
|
{
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
reputationGrowth: {
|
||||||
reputation_growth: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'BanquetteType',
|
modelName: 'BanquetteType',
|
||||||
tableName: 'banquette',
|
tableName: 'banquette',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default BanquetteType;
|
export default BanquetteType;
|
||||||
|
|||||||
@@ -4,14 +4,12 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class BranchType extends Model { }
|
class BranchType extends Model { }
|
||||||
|
|
||||||
BranchType.init({
|
BranchType.init({
|
||||||
label_tr: {
|
labelTr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
baseCost: {
|
||||||
base_cost: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'BranchType',
|
modelName: 'BranchType',
|
||||||
@@ -22,10 +20,8 @@ BranchType.init({
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['label_tr']
|
fields: ['labelTr']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
]});
|
||||||
],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default BranchType;
|
export default BranchType;
|
||||||
|
|||||||
@@ -7,18 +7,14 @@ CharacterTrait.init(
|
|||||||
{
|
{
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'CharacterTrait',
|
modelName: 'CharacterTrait',
|
||||||
tableName: 'character_trait',
|
tableName: 'character_trait',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default CharacterTrait;
|
export default CharacterTrait;
|
||||||
|
|||||||
@@ -4,23 +4,18 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class HouseType extends Model { }
|
class HouseType extends Model { }
|
||||||
|
|
||||||
HouseType.init({
|
HouseType.init({
|
||||||
label_tr: {
|
labelTr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
position: {
|
position: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
minimumNobleTitle: {
|
||||||
minimum_noble_title: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'HouseType',
|
modelName: 'HouseType',
|
||||||
tableName: 'house',
|
tableName: 'house',
|
||||||
@@ -30,10 +25,8 @@ HouseType.init({
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['label_tr']
|
fields: ['labelTr']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
]});
|
||||||
],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default HouseType;
|
export default HouseType;
|
||||||
|
|||||||
@@ -7,18 +7,14 @@ LearnRecipient.init(
|
|||||||
{
|
{
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'LearnRecipient',
|
modelName: 'LearnRecipient',
|
||||||
tableName: 'learn_recipient',
|
tableName: 'learn_recipient',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default LearnRecipient;
|
export default LearnRecipient;
|
||||||
|
|||||||
@@ -5,20 +5,20 @@ class Mood extends Model {}
|
|||||||
|
|
||||||
Mood.init(
|
Mood.init(
|
||||||
{
|
{
|
||||||
|
id: {
|
||||||
|
type: DataTypes.INTEGER,
|
||||||
|
primaryKey: true,
|
||||||
|
autoIncrement: true},
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Mood',
|
modelName: 'Mood',
|
||||||
tableName: 'mood',
|
tableName: 'mood',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default Mood;
|
export default Mood;
|
||||||
|
|||||||
@@ -7,26 +7,20 @@ MusicType.init(
|
|||||||
{
|
{
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
reputationGrowth: {
|
||||||
reputation_growth: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'MusicType',
|
modelName: 'MusicType',
|
||||||
tableName: 'music',
|
tableName: 'music',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default MusicType;
|
export default MusicType;
|
||||||
|
|||||||
@@ -7,21 +7,17 @@ PartyType.init(
|
|||||||
{
|
{
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
forMarriage: {
|
||||||
for_marriage: {
|
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: false,
|
defaultValue: false},
|
||||||
},
|
reputationGrowth: {
|
||||||
reputation_growth: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
@@ -29,9 +25,7 @@ PartyType.init(
|
|||||||
tableName: 'party',
|
tableName: 'party',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default PartyType;
|
export default PartyType;
|
||||||
|
|||||||
@@ -8,20 +8,15 @@ PoliticalOfficeBenefitType.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PoliticalOfficeBenefitType',
|
modelName: 'PoliticalOfficeBenefitType',
|
||||||
tableName: 'political_office_benefit_type',
|
tableName: 'political_office_benefit_type',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default PoliticalOfficeBenefitType;
|
export default PoliticalOfficeBenefitType;
|
||||||
|
|||||||
@@ -7,33 +7,25 @@ PoliticalOfficeType.init({
|
|||||||
id: {
|
id: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
|
||||||
name: {
|
name: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
seatsPerRegion: {
|
||||||
seats_per_region: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
regionType: {
|
||||||
region_type: {
|
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
termLength: {
|
||||||
term_length: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0,
|
defaultValue: 0}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PoliticalOfficeType',
|
modelName: 'PoliticalOfficeType',
|
||||||
tableName: 'political_office_type',
|
tableName: 'political_office_type',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default PoliticalOfficeType;
|
export default PoliticalOfficeType;
|
||||||
|
|||||||
@@ -4,22 +4,18 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class ProductType extends Model { }
|
class ProductType extends Model { }
|
||||||
|
|
||||||
ProductType.init({
|
ProductType.init({
|
||||||
label_tr: {
|
labelTr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
category: {
|
category: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
productionTime: {
|
||||||
production_time: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
sellCost: {
|
||||||
sell_cost: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'ProductType',
|
modelName: 'ProductType',
|
||||||
@@ -30,10 +26,8 @@ ProductType.init({
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['label_tr']
|
fields: ['labelTr']
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
]});
|
||||||
],
|
|
||||||
});
|
|
||||||
|
|
||||||
export default ProductType;
|
export default ProductType;
|
||||||
|
|||||||
@@ -5,29 +5,27 @@ class PromotionalGift extends Model {}
|
|||||||
|
|
||||||
PromotionalGift.init(
|
PromotionalGift.init(
|
||||||
{
|
{
|
||||||
|
id: {
|
||||||
|
type: DataTypes.INTEGER,
|
||||||
|
primaryKey: true,
|
||||||
|
autoIncrement: true},
|
||||||
name: {
|
name: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
description: {
|
description: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: true,
|
allowNull: true},
|
||||||
},
|
|
||||||
value: {
|
value: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0,
|
defaultValue: 0}},
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'PromotionalGift',
|
modelName: 'PromotionalGift',
|
||||||
tableName: 'promotional_gift',
|
tableName: 'promotional_gift',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default PromotionalGift;
|
export default PromotionalGift;
|
||||||
|
|||||||
@@ -4,18 +4,16 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class RegionType extends Model { }
|
class RegionType extends Model { }
|
||||||
|
|
||||||
RegionType.init({
|
RegionType.init({
|
||||||
label_tr: {
|
labelTr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
parentId: {
|
||||||
parent_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
references: {
|
references: {
|
||||||
model: 'region',
|
model: 'region',
|
||||||
key: 'id',
|
key: 'id',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type'}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
@@ -23,8 +21,6 @@ RegionType.init({
|
|||||||
tableName: 'region',
|
tableName: 'region',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default RegionType;
|
export default RegionType;
|
||||||
|
|||||||
@@ -7,8 +7,7 @@ RelationshipType.init(
|
|||||||
{
|
{
|
||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
sequelize,
|
sequelize,
|
||||||
@@ -16,9 +15,7 @@ RelationshipType.init(
|
|||||||
tableName: 'relationship',
|
tableName: 'relationship',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true}
|
||||||
,
|
|
||||||
freezeTableName: true}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
export default RelationshipType;
|
export default RelationshipType;
|
||||||
|
|||||||
@@ -4,23 +4,19 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class FalukantStockType extends Model { }
|
class FalukantStockType extends Model { }
|
||||||
|
|
||||||
FalukantStockType.init({
|
FalukantStockType.init({
|
||||||
label_tr: {
|
labelTr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
unique: true,
|
unique: true},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'StockType',
|
modelName: 'StockType',
|
||||||
tableName: 'stock',
|
tableName: 'stock',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default FalukantStockType;
|
export default FalukantStockType;
|
||||||
|
|||||||
@@ -4,23 +4,18 @@ import { sequelize } from '../../../utils/sequelize.js';
|
|||||||
class TitleOfNobility extends Model { }
|
class TitleOfNobility extends Model { }
|
||||||
|
|
||||||
TitleOfNobility.init({
|
TitleOfNobility.init({
|
||||||
label_tr: {
|
labelTr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
level: {
|
level: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 0,
|
defaultValue: 0}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'Title',
|
modelName: 'Title',
|
||||||
tableName: 'title',
|
tableName: 'title',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default TitleOfNobility;
|
export default TitleOfNobility;
|
||||||
|
|||||||
@@ -8,21 +8,16 @@ TitleRequirement.init({
|
|||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true,
|
autoIncrement: true},
|
||||||
},
|
titleId: {
|
||||||
title_id: {
|
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
requirementType: {
|
||||||
requirement_type: {
|
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
requirementValue: {
|
||||||
requirement_value: {
|
|
||||||
type: DataTypes.DECIMAL(14, 2),
|
type: DataTypes.DECIMAL(14, 2),
|
||||||
allowNull: false,
|
allowNull: false}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'TitleRequirement',
|
modelName: 'TitleRequirement',
|
||||||
tableName: 'title_requirement',
|
tableName: 'title_requirement',
|
||||||
@@ -32,10 +27,9 @@ TitleRequirement.init({
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['title_id', 'requirement_type'],
|
fields: ['titleId', 'requirementType'],
|
||||||
name: 'title_requirement_titleid_reqtype_unique'
|
name: 'title_requirement_titleid_reqtype_unique'
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -7,20 +7,16 @@ UndergroundType.init({
|
|||||||
tr: {
|
tr: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
unique: true,
|
unique: true},
|
||||||
},
|
|
||||||
cost: {
|
cost: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false}
|
||||||
}
|
|
||||||
}, {
|
}, {
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'UndergroundType',
|
modelName: 'UndergroundType',
|
||||||
tableName: 'underground',
|
tableName: 'underground',
|
||||||
schema: 'falukant_type',
|
schema: 'falukant_type',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true,
|
underscored: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default UndergroundType;
|
export default UndergroundType;
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ const Forum = sequelize.define('forum', {
|
|||||||
tableName: 'forum',
|
tableName: 'forum',
|
||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true
|
underscored: true
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Forum;
|
export default Forum;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
import { DataTypes } from 'sequelize';
|
import { DataTypes } from 'sequelize';
|
||||||
|
|
||||||
const ForumForumPermission = sequelize.define('forum_forum_permission', {
|
const ForumForumPermission = sequelize.define('forum_forum_permission', {
|
||||||
forum_id: {
|
forumId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -10,7 +10,7 @@ const ForumForumPermission = sequelize.define('forum_forum_permission', {
|
|||||||
key: 'id'
|
key: 'id'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
permission_id: {
|
permissionId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -22,7 +22,6 @@ const ForumForumPermission = sequelize.define('forum_forum_permission', {
|
|||||||
tableName: 'forum_forum_permission',
|
tableName: 'forum_forum_permission',
|
||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true
|
underscored: true
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ForumForumPermission;
|
export default ForumForumPermission;
|
||||||
|
|||||||
@@ -4,20 +4,16 @@ import { DataTypes } from 'sequelize';
|
|||||||
const ForumPermission = sequelize.define('forum_permission', {
|
const ForumPermission = sequelize.define('forum_permission', {
|
||||||
name: {
|
name: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false,
|
allowNull: false},
|
||||||
},
|
|
||||||
value: {
|
value: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: true,
|
allowNull: true}}, {
|
||||||
},
|
|
||||||
}, {
|
|
||||||
sequelize,
|
sequelize,
|
||||||
modelName: 'ForumPermission',
|
modelName: 'ForumPermission',
|
||||||
tableName: 'forum_permission',
|
tableName: 'forum_permission',
|
||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
timestamps: false,
|
timestamps: false,
|
||||||
underscored: true
|
underscored: true
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ForumPermission;
|
export default ForumPermission;
|
||||||
|
|||||||
@@ -2,23 +2,21 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
import { DataTypes } from 'sequelize';
|
import { DataTypes } from 'sequelize';
|
||||||
|
|
||||||
const ForumUserPermission = sequelize.define('forum_user_permission', {
|
const ForumUserPermission = sequelize.define('forum_user_permission', {
|
||||||
user_id: {
|
userId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true
|
allowNull: true
|
||||||
},
|
},
|
||||||
permission_id: {
|
permissionId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
forum_id: {
|
forumId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
}}, {
|
||||||
}, {
|
|
||||||
tableName: 'forum_user_permission',
|
tableName: 'forum_user_permission',
|
||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true
|
underscored: true
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default ForumUserPermission;
|
export default ForumUserPermission;
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ const Message = sequelize.define('message', {
|
|||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
created_by: {
|
createdBy: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
title_id: {
|
titleId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
}
|
}
|
||||||
@@ -19,7 +19,6 @@ const Message = sequelize.define('message', {
|
|||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: true
|
timestamps: true
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Message;
|
export default Message;
|
||||||
|
|||||||
@@ -2,19 +2,19 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
import { DataTypes } from 'sequelize';
|
import { DataTypes } from 'sequelize';
|
||||||
|
|
||||||
const MessageHistory = sequelize.define('message_history', {
|
const MessageHistory = sequelize.define('message_history', {
|
||||||
message_id: {
|
messageId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
old_text: {
|
oldText: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
changed_by: {
|
changedBy: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
old_updated_at: {
|
oldUpdatedAt: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
}
|
}
|
||||||
@@ -23,7 +23,6 @@ const MessageHistory = sequelize.define('message_history', {
|
|||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: false
|
timestamps: false
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default MessageHistory;
|
export default MessageHistory;
|
||||||
|
|||||||
@@ -2,11 +2,11 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
import { DataTypes } from 'sequelize';
|
import { DataTypes } from 'sequelize';
|
||||||
|
|
||||||
const MessageImage = sequelize.define('message_image', {
|
const MessageImage = sequelize.define('message_image', {
|
||||||
message_id: {
|
messageId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
file_name: {
|
fileName: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
}
|
}
|
||||||
@@ -15,7 +15,6 @@ const MessageImage = sequelize.define('message_image', {
|
|||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: false
|
timestamps: false
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default MessageImage;
|
export default MessageImage;
|
||||||
|
|||||||
@@ -11,11 +11,11 @@ const Title = sequelize.define('title', {
|
|||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
created_by: {
|
createdBy: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
forum_id: {
|
forumId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
}
|
}
|
||||||
@@ -23,8 +23,6 @@ const Title = sequelize.define('title', {
|
|||||||
tableName: 'title',
|
tableName: 'title',
|
||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: true,
|
timestamps: true});
|
||||||
,
|
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Title;
|
export default Title;
|
||||||
|
|||||||
@@ -2,19 +2,19 @@ import { sequelize } from '../../utils/sequelize.js';
|
|||||||
import { DataTypes } from 'sequelize';
|
import { DataTypes } from 'sequelize';
|
||||||
|
|
||||||
const TitleHistory = sequelize.define('title_history', {
|
const TitleHistory = sequelize.define('title_history', {
|
||||||
title_id: {
|
titleId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
old_title: {
|
oldTitle: {
|
||||||
type: DataTypes.STRING,
|
type: DataTypes.STRING,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
changed_by: {
|
changedBy: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
old_updated_at: {
|
oldUpdatedAt: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
}
|
}
|
||||||
@@ -23,7 +23,6 @@ const TitleHistory = sequelize.define('title_history', {
|
|||||||
schema: 'forum',
|
schema: 'forum',
|
||||||
underscored: true,
|
underscored: true,
|
||||||
timestamps: false
|
timestamps: false
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default TitleHistory;
|
export default TitleHistory;
|
||||||
|
|||||||
@@ -86,20 +86,6 @@ import Credit from './falukant/data/credit.js';
|
|||||||
import DebtorsPrism from './falukant/data/debtors_prism.js';
|
import DebtorsPrism from './falukant/data/debtors_prism.js';
|
||||||
import HealthActivity from './falukant/log/health_activity.js';
|
import HealthActivity from './falukant/log/health_activity.js';
|
||||||
|
|
||||||
// Minigames (service)
|
|
||||||
import MinigameCampaign from './service/minigame_campaign.js';
|
|
||||||
import MinigameCampaignLevel from './service/minigame_campaign_level.js';
|
|
||||||
import MinigameUserProgress from './service/minigame_user_progress.js';
|
|
||||||
|
|
||||||
// Match3 Models
|
|
||||||
import Match3Campaign from './match3/campaign.js';
|
|
||||||
import Match3Level from './match3/level.js';
|
|
||||||
import Match3Objective from './match3/objective.js';
|
|
||||||
import Match3UserProgress from './match3/userProgress.js';
|
|
||||||
import Match3UserLevelProgress from './match3/userLevelProgress.js';
|
|
||||||
import Match3TileType from './match3/tileType.js';
|
|
||||||
import Match3LevelTileType from './match3/levelTileType.js';
|
|
||||||
|
|
||||||
// — Politische Ämter (Politics) —
|
// — Politische Ämter (Politics) —
|
||||||
import PoliticalOfficeType from './falukant/type/political_office_type.js';
|
import PoliticalOfficeType from './falukant/type/political_office_type.js';
|
||||||
import PoliticalOfficeRequirement from './falukant/predefine/political_office_prerequisite.js';
|
import PoliticalOfficeRequirement from './falukant/predefine/political_office_prerequisite.js';
|
||||||
@@ -208,16 +194,6 @@ const models = {
|
|||||||
Credit,
|
Credit,
|
||||||
DebtorsPrism,
|
DebtorsPrism,
|
||||||
HealthActivity,
|
HealthActivity,
|
||||||
MinigameCampaign,
|
|
||||||
MinigameCampaignLevel,
|
|
||||||
MinigameUserProgress,
|
|
||||||
Match3Campaign,
|
|
||||||
Match3Level,
|
|
||||||
Match3Objective,
|
|
||||||
Match3UserProgress,
|
|
||||||
Match3UserLevelProgress,
|
|
||||||
Match3TileType,
|
|
||||||
Match3LevelTileType,
|
|
||||||
PoliticalOfficeType,
|
PoliticalOfficeType,
|
||||||
PoliticalOfficeRequirement,
|
PoliticalOfficeRequirement,
|
||||||
PoliticalOfficeBenefitType,
|
PoliticalOfficeBenefitType,
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ const Campaign = sequelize.define('Campaign', {
|
|||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: true
|
allowNull: true
|
||||||
},
|
},
|
||||||
is_active: {
|
isActive: {
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
defaultValue: true
|
defaultValue: true
|
||||||
},
|
},
|
||||||
@@ -23,11 +23,11 @@ const Campaign = sequelize.define('Campaign', {
|
|||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
defaultValue: 1
|
defaultValue: 1
|
||||||
},
|
},
|
||||||
created_at: {
|
createdAt: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW
|
defaultValue: DataTypes.NOW
|
||||||
},
|
},
|
||||||
updated_at: {
|
updatedAt: {
|
||||||
type: DataTypes.DATE,
|
type: DataTypes.DATE,
|
||||||
defaultValue: DataTypes.NOW
|
defaultValue: DataTypes.NOW
|
||||||
}
|
}
|
||||||
@@ -36,7 +36,6 @@ const Campaign = sequelize.define('Campaign', {
|
|||||||
schema: 'match3',
|
schema: 'match3',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true // WICHTIG: Alle Datenbankfelder im snake_case Format
|
underscored: true // WICHTIG: Alle Datenbankfelder im snake_case Format
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Campaign;
|
export default Campaign;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ const Match3Level = sequelize.define('Match3Level', {
|
|||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true
|
autoIncrement: true
|
||||||
},
|
},
|
||||||
campaign_id: {
|
campaignId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -27,40 +27,40 @@ const Match3Level = sequelize.define('Match3Level', {
|
|||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false
|
allowNull: false
|
||||||
},
|
},
|
||||||
board_layout: {
|
boardLayout: {
|
||||||
type: DataTypes.TEXT,
|
type: DataTypes.TEXT,
|
||||||
allowNull: true, // Ändern zu true, da bereits existierende Datensätze vorhanden sind
|
allowNull: true, // Ändern zu true, da bereits existierende Datensätze vorhanden sind
|
||||||
defaultValue: 'xxxxxx\nxxxxxx\nxxxxxx\nxxxxxx\nxxxxxx\nxxxxxx', // Standard-Layout für neue Level
|
defaultValue: 'xxxxxx\nxxxxxx\nxxxxxx\nxxxxxx\nxxxxxx\nxxxxxx', // Standard-Layout für neue Level
|
||||||
comment: 'Level-Form als String (o = kein Feld, x = Feld, Zeilen durch \n getrennt)'
|
comment: 'Level-Form als String (o = kein Feld, x = Feld, Zeilen durch \n getrennt)'
|
||||||
},
|
},
|
||||||
board_width: {
|
boardWidth: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true, // Ändern zu true, da bereits existierende Datensätze vorhanden sind
|
allowNull: true, // Ändern zu true, da bereits existierende Datensätze vorhanden sind
|
||||||
defaultValue: 6, // Standardwert für neue Level
|
defaultValue: 6, // Standardwert für neue Level
|
||||||
comment: 'Breite des Level-Boards'
|
comment: 'Breite des Level-Boards'
|
||||||
},
|
},
|
||||||
board_height: {
|
boardHeight: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true, // Ändern zu true, da bereits existierende Datensätze vorhanden sind
|
allowNull: true, // Ändern zu true, da bereits existierende Datensätze vorhanden sind
|
||||||
defaultValue: 6, // Standardwert für neue Level
|
defaultValue: 6, // Standardwert für neue Level
|
||||||
comment: 'Höhe des Level-Boards'
|
comment: 'Höhe des Level-Boards'
|
||||||
},
|
},
|
||||||
tile_types: {
|
tileTypes: {
|
||||||
type: DataTypes.JSON,
|
type: DataTypes.JSON,
|
||||||
allowNull: true, // Ändern zu true, da wir jetzt eine Verknüpfungstabelle haben
|
allowNull: true, // Ändern zu true, da wir jetzt eine Verknüpfungstabelle haben
|
||||||
comment: 'Legacy: Array der verfügbaren Tile-Typen (wird durch levelTileTypes ersetzt)'
|
comment: 'Legacy: Array der verfügbaren Tile-Typen (wird durch levelTileTypes ersetzt)'
|
||||||
},
|
},
|
||||||
move_limit: {
|
moveLimit: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: 20
|
defaultValue: 20
|
||||||
},
|
},
|
||||||
time_limit: {
|
timeLimit: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: true,
|
allowNull: true,
|
||||||
comment: 'Zeitlimit in Sekunden (null = kein Limit)'
|
comment: 'Zeitlimit in Sekunden (null = kein Limit)'
|
||||||
},
|
},
|
||||||
is_active: {
|
isActive: {
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true
|
defaultValue: true
|
||||||
@@ -70,7 +70,6 @@ const Match3Level = sequelize.define('Match3Level', {
|
|||||||
schema: 'match3',
|
schema: 'match3',
|
||||||
timestamps: true,
|
timestamps: true,
|
||||||
underscored: true // WICHTIG: Alle Datenbankfelder im snake_case Format
|
underscored: true // WICHTIG: Alle Datenbankfelder im snake_case Format
|
||||||
,
|
});
|
||||||
freezeTableName: true});
|
|
||||||
|
|
||||||
export default Match3Level;
|
export default Match3Level;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ const Match3LevelTileType = sequelize.define('Match3LevelTileType', {
|
|||||||
primaryKey: true,
|
primaryKey: true,
|
||||||
autoIncrement: true
|
autoIncrement: true
|
||||||
},
|
},
|
||||||
level_id: {
|
levelId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -16,7 +16,7 @@ const Match3LevelTileType = sequelize.define('Match3LevelTileType', {
|
|||||||
},
|
},
|
||||||
comment: 'Referenz auf den Level'
|
comment: 'Referenz auf den Level'
|
||||||
},
|
},
|
||||||
tile_type_id: {
|
tileTypeId: {
|
||||||
type: DataTypes.INTEGER,
|
type: DataTypes.INTEGER,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
references: {
|
references: {
|
||||||
@@ -31,7 +31,7 @@ const Match3LevelTileType = sequelize.define('Match3LevelTileType', {
|
|||||||
defaultValue: 1,
|
defaultValue: 1,
|
||||||
comment: 'Gewichtung für die Wahrscheinlichkeit, dass dieser Tile-Typ erscheint'
|
comment: 'Gewichtung für die Wahrscheinlichkeit, dass dieser Tile-Typ erscheint'
|
||||||
},
|
},
|
||||||
is_active: {
|
isActive: {
|
||||||
type: DataTypes.BOOLEAN,
|
type: DataTypes.BOOLEAN,
|
||||||
allowNull: false,
|
allowNull: false,
|
||||||
defaultValue: true,
|
defaultValue: true,
|
||||||
@@ -45,9 +45,8 @@ const Match3LevelTileType = sequelize.define('Match3LevelTileType', {
|
|||||||
indexes: [
|
indexes: [
|
||||||
{
|
{
|
||||||
unique: true,
|
unique: true,
|
||||||
fields: ['level_id', 'tile_type_id'] // WICHTIG: Bei underscored: true müssen snake_case Namen verwendet werden
|
fields: ['levelId', 'tileTypeId'] // WICHTIG: Bei underscored: true müssen snake_case Namen verwendet werden
|
||||||
,
|
}
|
||||||
freezeTableName: true}
|
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user