aboutsummaryrefslogtreecommitdiff
path: root/src/models.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/models.js')
-rw-r--r--src/models.js85
1 files changed, 85 insertions, 0 deletions
diff --git a/src/models.js b/src/models.js
new file mode 100644
index 0000000..23d2032
--- /dev/null
+++ b/src/models.js
@@ -0,0 +1,85 @@
+const Sequelize = require('sequelize');
+function setUpModels(database) {
+ const models = {
+ "transaction": database.define('transaction', {
+ when: {
+ type: Sequelize.DATE,
+ allowNull: false,
+ },
+ amount: {
+ type: Sequelize.DECIMAL,
+ allowNull: false,
+ },
+ where: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ category: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ subcategory: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ username: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ }),
+ "goals": database.define('goal', {
+ username: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ name: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ total: {
+ type: Sequelize.DECIMAL,
+ allowNull: false,
+ },
+ amount: {
+ type: Sequelize.DECIMAL,
+ allowNull: false,
+ }
+ }),
+ "expected": database.define('expected', {
+ username: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ name: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ total: {
+ type: Sequelize.DECIMAL,
+ allowNull: false,
+ },
+ days: {
+ type: Sequelize.INTEGER,
+ allowNull: false,
+ }
+ }),
+ "users": database.define('user', {
+ username: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ password: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ salt: {
+ type: Sequelize.STRING,
+ allowNull: false,
+ },
+ }),
+ }
+ return models;
+}
+module.exports = {
+ setUpModels
+} \ No newline at end of file