More changes for db migration

This commit is contained in:
Jonathan Cremin 2016-08-07 14:38:05 +01:00
parent de0284e48a
commit 889dc02945
33 changed files with 740 additions and 100 deletions

View file

@ -1,7 +1,7 @@
export default function (sequelize, DataTypes) {
const Activation = sequelize.define('activation', {
id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true },
activated: { type: DataTypes.BOOLEAN, defaultValue: false, primaryKey: true },
activatedAt: { type: DataTypes.DATE },
email: DataTypes.STRING,
}, {
classMethods: {

View file

@ -6,7 +6,8 @@ export default function (sequelize, DataTypes) {
size: DataTypes.BIGINT,
downloads: DataTypes.BIGINT,
accessedAt: DataTypes.DATE,
status: DataTypes.ENUM('active', 'uploading', 'deleted'), // eslint-disable-line new-cap
deletedAt: DataTypes.DATE,
processed: DataTypes.BOOLEAN,
type: DataTypes.ENUM( // eslint-disable-line new-cap
'image',
'audio',
@ -21,6 +22,7 @@ export default function (sequelize, DataTypes) {
md5: DataTypes.STRING(32), // eslint-disable-line new-cap
malwarePositives: DataTypes.INTEGER,
}, {
paranoid: true,
indexes: [
{
fields: ['userId'],
@ -37,6 +39,7 @@ export default function (sequelize, DataTypes) {
}),
associate: (models) => {
File.belongsTo(models.user);
File.hasOne(models.malware);
},
},
});

View file

@ -5,6 +5,7 @@ export default function (sequelize, DataTypes) {
description: DataTypes.STRING,
type: DataTypes.ENUM('direct', 'paypal'), // eslint-disable-line new-cap
ip: 'inet',
data: DataTypes.JSON,
}, {
indexes: [
{

View file

@ -3,12 +3,14 @@ export default function (sequelize, DataTypes) {
id: { type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true },
email: DataTypes.STRING,
password: DataTypes.STRING,
name: DataTypes.STRING,
plan: DataTypes.ENUM('Free', 'Pro'), // eslint-disable-line new-cap
ip: 'inet',
activated: DataTypes.BOOLEAN,
banned: DataTypes.BOOLEAN,
deleted: DataTypes.BOOLEAN,
deletedAt: DataTypes.DATE,
oldId: DataTypes.STRING,
}, {
paranoid: true,
indexes: [
{
fields: ['email'],
@ -17,6 +19,7 @@ export default function (sequelize, DataTypes) {
classMethods: {
associate: (models) => {
User.hasMany(models.file);
User.hasMany(models.transaction);
User.hasOne(models.activation);
},
},