Major changes to the database structure: Delete and recreate the whole database (would require too many migrations otherwise). Removed a market, updated some images, added to the AP page, and merged bios.

This commit is contained in:
Wynne Crisman
2016-06-26 11:16:00 -07:00
parent abee7df2eb
commit a57900c065
16 changed files with 163 additions and 247 deletions

View File

@@ -15,6 +15,14 @@ module.exports = {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
}, {
charset: 'utf8'

View File

@@ -27,6 +27,14 @@ module.exports = {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
}, {
charset: 'utf8'

View File

@@ -19,6 +19,14 @@ module.exports = {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
}, {
charset: 'utf8'

View File

@@ -19,6 +19,14 @@ module.exports = {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
}, {
charset: 'utf8'

View File

@@ -30,6 +30,14 @@ module.exports = {
},
onUpdate: 'cascade',
onDelete: 'cascade'
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
}, {
charset: 'utf8'

View File

@@ -15,10 +15,14 @@ module.exports = {
type: DataTypes.STRING,
allowNull: false
},
counts: {
measures: {
type: DataTypes.JSON,
allowNull: false
},
defaultPrice: {
type: DataTypes.DECIMAL(9,2),
allowNull: false
},
visible: {
type: DataTypes.BOOLEAN,
allowNull: false,
@@ -32,6 +36,14 @@ module.exports = {
},
onUpdate: 'cascade',
onDelete: 'cascade'
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
}, {
charset: 'utf8'

View File

@@ -12,11 +12,25 @@ module.exports = {
autoIncrement: true
},
date: {
type: DataTypes.DATE,
type: DataTypes.DATEONLY,
allowNull: false
},
quantity: {
type: DataTypes.DECIMAL(13,2),
allowNull: false
},
price: {
type: DataTypes.DECIMAL(13,4),
allowNull: false
},
measure: {
type: DataTypes.JSONB,
type: Sequelize.INTEGER,
references: {
model: 'Measure',
key: 'id'
},
onUpdate: 'cascade',
onDelete: 'cascade',
allowNull: false
},
itemId: {
@@ -36,6 +50,14 @@ module.exports = {
},
onUpdate: 'cascade',
onDelete: 'cascade'
},
createdAt: {
type: DataTypes.DATE,
allowNull: false
},
updatedAt: {
type: DataTypes.DATE,
allowNull: false
}
}, {
charset: 'utf8'

View File

@@ -1,203 +0,0 @@
'use strict';
module.exports = {
up: function (query, Sequelize) {
var DataTypes = Sequelize; //Allow for more cut and paste :)
return query.createTable('User', {
login: {
type: DataTypes.STRING
},
password: {
type: DataTypes.STRING
},
admin: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
}
}, {
charset: 'utf8'
});
query.addIndex('User', ['login'], {indicesType: 'UNIQUE', indexName: 'LOGIN_INDEX'});
query.createTable('Measure', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
allowNull: false
},
image: {
type: DataTypes.STRING,
allowNull: true
},
postfix: {
type: DataTypes.STRING,
allowNull: false
},
visible: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
}
}, {
charset: 'utf8'
});
query.createTable('Venue', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
allowNull: false
},
visible: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
}
}, {
charset: 'utf8'
});
query.createTable('Category', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
allowNull: false
},
visible: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
}
}, {
charset: 'utf8'
});
query.createTable('Subcategory', {
id: {
type: DataTypes.INTEGER,
field: 'id',
primaryKey: true,
allowNull: false,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
field: 'name',
allowNull: false
},
visible: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
},
categoryId: {
type: Sequelize.INTEGER,
references: {
model: 'Category',
key: 'id'
},
onUpdate: 'cascade',
onDelete: 'cascade'
}
}, {
charset: 'utf8'
});
query.createTable('Item', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
allowNull: false
},
counts: {
type: DataTypes.JSON,
allowNull: false
},
visible: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: true
},
subcategoryId: {
type: Sequelize.INTEGER,
references: {
model: 'Subcategory',
key: 'id'
},
onUpdate: 'cascade',
onDelete: 'cascade'
}
}, {
charset: 'utf8'
});
query.createTable('Sale', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
allowNull: false,
autoIncrement: true
},
date: {
type: DataTypes.DATE,
allowNull: false
},
measure: {
type: DataTypes.JSONB,
allowNull: false
},
itemId: {
type: Sequelize.INTEGER,
references: {
model: 'Item',
key: 'id'
},
onUpdate: 'cascade',
onDelete: 'cascade'
},
venueId: {
type: Sequelize.INTEGER,
references: {
model: 'Venue',
key: 'id'
},
onUpdate: 'cascade',
onDelete: 'cascade'
}
}, {
charset: 'utf8'
});
},
down: function (query, Sequelize) {
query.dropTable('Sale');
query.dropTable('Item');
query.dropTable('Subcategory');
query.dropTable('Category');
query.dropTable('User');
query.dropTable('Measure');
query.dropTable('Venue');
}
};