From 833d859b5a3251bf6ce4271985cc0a430c085968 Mon Sep 17 00:00:00 2001 From: lesion Date: Fri, 20 May 2022 12:34:36 +0200 Subject: [PATCH] add cohort and filter models --- server/api/models/cohort.js | 27 +++++++++++++++++++++++++++ server/api/models/filter.js | 31 +++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 server/api/models/cohort.js create mode 100644 server/api/models/filter.js diff --git a/server/api/models/cohort.js b/server/api/models/cohort.js new file mode 100644 index 00000000..93f7ecb2 --- /dev/null +++ b/server/api/models/cohort.js @@ -0,0 +1,27 @@ +const { Model, DataTypes } = require('sequelize') +const sequelize = require('./index').sequelize + +class Cohort extends Model {} + +Cohort.init({ + id: { + type: DataTypes.INTEGER, + autoIncrement: true, + primaryKey: true, + }, + name: { + type: DataTypes.STRING, + unique: true, + index: true, + allowNull: false + }, + isActor: { + type: DataTypes.BOOLEAN + }, + isTop: { + type: DataTypes.BOOLEAN + } +}, { sequelize, modelName: 'cohort', timestamps: false }) + + +module.exports = Cohort diff --git a/server/api/models/filter.js b/server/api/models/filter.js new file mode 100644 index 00000000..df230f42 --- /dev/null +++ b/server/api/models/filter.js @@ -0,0 +1,31 @@ +const { Model, DataTypes } = require('sequelize') +const sequelize = require('./index').sequelize + +class Filter extends Model {} + +Filter.init({ + id: { + type: DataTypes.INTEGER, + primaryKey: true, + autoIncrement: true, + }, + cohortId: { + type: DataTypes.INTEGER, + allowNull: true, + references: { + model: 'cohorts', + key: 'id' + }, + onUpdate: 'CASCADE', + onDelete: 'SET NULL' + }, + tags: { + type: DataTypes.JSON, + }, + places: { + type: DataTypes.JSON, + } +}, { sequelize, modelName: 'filter', timestamps: false }) + + +module.exports = Filter