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