making needed changes to make the table names strict

This commit is contained in:
Arjun Patel
2019-04-13 18:06:18 -07:00
parent 7fd0128864
commit 9faff9e6e8
12 changed files with 428 additions and 329 deletions
+16 -7
View File
@@ -1,11 +1,20 @@
module.exports = (sequelize, DataTypes) => {
const Cause = sequelize.define('Cause', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
const Cause = sequelize.define(
'Cause',
{
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
name: { type: DataTypes.STRING, allowNull: false, unique: true }
},
name: { type: DataTypes.STRING, allowNull: false, unique: true }
});
{
freezeTableName: true,
// define the table's name
tableName: 'causes'
}
);
return Cause;
};
+20 -11
View File
@@ -2,20 +2,29 @@
const PaymentStatus = require('./PaymentStatus');
module.exports = (sequelize, DataTypes) => {
const Charge = sequelize.define('Charge', {
id: { type: DataTypes.UUID, primaryKey: true, allowNull: false },
description: DataTypes.STRING,
amount: DataTypes.INTEGER,
const Charge = sequelize.define(
'Charge',
{
id: { type: DataTypes.UUID, primaryKey: true, allowNull: false },
description: DataTypes.STRING,
amount: DataTypes.INTEGER,
payment_status: {
type: DataTypes.STRING,
allowNull: false,
references: {
model: PaymentStatus(sequelize, DataTypes),
key: 'name'
payment_status: {
type: DataTypes.STRING,
allowNull: false,
references: {
model: PaymentStatus(sequelize, DataTypes),
key: 'name'
}
}
},
{
freezeTableName: true,
// define the table's name
tableName: 'charges'
}
});
);
return Charge;
};
+52 -43
View File
@@ -1,49 +1,58 @@
module.exports = (sequelize, DataTypes) => {
const Donor = sequelize.define('Donor', {
id: {
type: DataTypes.UUID,
allowNull: false,
primaryKey: true
},
stripe_id: {
type: DataTypes.UUID,
defaultValue: null,
unique: true
},
subscription_id: {
type: DataTypes.UUID,
defaultValue: null,
unique: true
},
first_name: {
type: DataTypes.STRING,
allowNull: false
},
last_name: {
type: DataTypes.STRING,
allowNull: false
},
email: {
type: DataTypes.STRING,
validate: {
isEmail: true
const Donor = sequelize.define(
'Donor',
{
id: {
type: DataTypes.UUID,
allowNull: false,
primaryKey: true
},
allowNull: false,
unique: true
},
password: {
type: DataTypes.STRING,
allowNull: false
},
age: DataTypes.INTEGER,
phone: DataTypes.STRING(20),
stripe_id: {
type: DataTypes.UUID,
defaultValue: null,
unique: true
},
subscription_id: {
type: DataTypes.UUID,
defaultValue: null,
unique: true
},
first_name: {
type: DataTypes.STRING,
allowNull: false
},
last_name: {
type: DataTypes.STRING,
allowNull: false
},
email: {
type: DataTypes.STRING,
validate: {
isEmail: true
},
allowNull: false,
unique: true
},
password: {
type: DataTypes.STRING,
allowNull: false
},
age: DataTypes.INTEGER,
phone: DataTypes.STRING(20),
address: DataTypes.STRING,
city: DataTypes.STRING,
state: DataTypes.STRING,
zip: DataTypes.STRING(10),
country: DataTypes.STRING
});
address: DataTypes.STRING,
city: DataTypes.STRING,
state: DataTypes.STRING,
zip: DataTypes.STRING(10),
country: DataTypes.STRING
},
{
freezeTableName: true,
// define the table's name
tableName: 'donors'
}
);
return Donor;
};
+43 -34
View File
@@ -1,43 +1,52 @@
const Donor = require('./Donor');
module.exports = (sequelize, DataTypes) => {
const Grant = sequelize.define('Grant', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
allowNull: false
},
amount: {
type: DataTypes.INTEGER,
allowNull: false
},
monthly: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
num_causes: {
type: DataTypes.INTEGER,
allowNull: false
},
num_regions: {
type: DataTypes.INTEGER,
allowNull: false
},
const Grant = sequelize.define(
'Grant',
{
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
name: {
type: DataTypes.STRING,
allowNull: false
},
amount: {
type: DataTypes.INTEGER,
allowNull: false
},
monthly: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
num_causes: {
type: DataTypes.INTEGER,
allowNull: false
},
num_regions: {
type: DataTypes.INTEGER,
allowNull: false
},
donor_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Donor(sequelize, DataTypes),
key: 'id'
donor_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Donor(sequelize, DataTypes),
key: 'id'
}
}
},
{
freezeTableName: true,
// define the table's name
tableName: 'grants'
}
});
);
Grant.associate = models => {
Grant.hasMany(models.Charge, { foreignKey: 'grant_id' });
+33 -24
View File
@@ -2,32 +2,41 @@ const Organization = require('./Organization'),
Grant = require('./Grant');
module.exports = (sequelize, DataTypes) => {
const GrantOrganization = sequelize.define('GrantOrganization', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
grant_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
model: Grant(sequelize, DataTypes),
key: 'id'
const GrantOrganization = sequelize.define(
'GrantOrganization',
{
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
grant_id: {
type: DataTypes.INTEGER,
allowNull: false,
references: {
model: Grant(sequelize, DataTypes),
key: 'id'
}
},
organization_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Organization(sequelize, DataTypes),
key: 'id'
}
},
amount: {
type: DataTypes.INTEGER,
allowNull: false
}
},
organization_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Organization(sequelize, DataTypes),
key: 'id'
}
},
amount: {
type: DataTypes.INTEGER,
allowNull: false
{
freezeTableName: true,
// define the table's name
tableName: 'grants_organizations'
}
});
);
return GrantOrganization;
};
+118 -109
View File
@@ -2,121 +2,130 @@ const Cause = require('./Cause'),
Region = require('./Region');
module.exports = (sequelize, DataTypes) => {
const Organization = sequelize.define('Organization', {
id: {
type: DataTypes.UUID,
allowNull: false,
primaryKey: true
},
name: { type: DataTypes.STRING, allowNull: false },
profile_pic_url: {
type: DataTypes.STRING,
allowNull: true
},
short_description: { type: DataTypes.STRING, allowNull: false },
total_received: {
type: DataTypes.INTEGER,
defaultValue: 0
},
total_donors: {
type: DataTypes.INTEGER,
defaultValue: 0
},
stripe_account_id: {
type: DataTypes.UUID,
defaultValue: null
},
primary_contact_email: {
type: DataTypes.STRING,
validate: {
isEmail: true
const Organization = sequelize.define(
'Organization',
{
id: {
type: DataTypes.UUID,
allowNull: false,
primaryKey: true
},
name: { type: DataTypes.STRING, allowNull: false },
profile_pic_url: {
type: DataTypes.STRING,
allowNull: true
},
short_description: { type: DataTypes.STRING, allowNull: false },
total_received: {
type: DataTypes.INTEGER,
defaultValue: 0
},
total_donors: {
type: DataTypes.INTEGER,
defaultValue: 0
},
stripe_account_id: {
type: DataTypes.UUID,
defaultValue: null
},
allowNull: false,
unique: true
},
password: {
type: DataTypes.STRING,
allowNull: false
},
address: {
type: DataTypes.STRING,
allowNull: false
},
city: {
type: DataTypes.STRING,
allowNull: false
},
state: {
type: DataTypes.STRING(5),
allowNull: false
},
country: {
type: DataTypes.STRING,
defaultValue: 'USA',
allowNull: false
},
zip: {
type: DataTypes.STRING(10),
allowNull: false
},
primary_contact_email: {
type: DataTypes.STRING,
validate: {
isEmail: true
},
allowNull: false,
unique: true
},
password: {
type: DataTypes.STRING,
allowNull: false
},
primary_cause: {
type: DataTypes.STRING,
allowNull: false,
references: {
model: Cause(sequelize, DataTypes),
key: 'name'
}
},
primary_region: {
type: DataTypes.STRING,
allowNull: false,
references: {
model: Region(sequelize, DataTypes),
key: 'name'
address: {
type: DataTypes.STRING,
allowNull: false
},
city: {
type: DataTypes.STRING,
allowNull: false
},
state: {
type: DataTypes.STRING(5),
allowNull: false
},
country: {
type: DataTypes.STRING,
defaultValue: 'USA',
allowNull: false
},
zip: {
type: DataTypes.STRING(10),
allowNull: false
},
primary_cause: {
type: DataTypes.STRING,
allowNull: false,
references: {
model: Cause(sequelize, DataTypes),
key: 'name'
}
},
primary_region: {
type: DataTypes.STRING,
allowNull: false,
references: {
model: Region(sequelize, DataTypes),
key: 'name'
}
},
total_rating: { type: DataTypes.INTEGER, defaultValue: 0 },
ein: {
type: DataTypes.STRING(10),
allowNull: false
},
estimate_asset_value: {
type: DataTypes.BIGINT,
defaultValue: 0
},
estimate_yearly_operating_cost: {
type: DataTypes.BIGINT,
defaultValue: 0
},
is_nonprofit: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
is_verified: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
primary_contact_phone: {
type: DataTypes.STRING(20),
allowNull: false
},
primary_contact_first_name: {
type: DataTypes.STRING,
allowNull: false
},
primary_contact_last_name: {
type: DataTypes.STRING,
allowNull: false
}
},
{
freezeTableName: true,
total_rating: { type: DataTypes.INTEGER, defaultValue: 0 },
ein: {
type: DataTypes.STRING(10),
allowNull: false
},
estimate_asset_value: {
type: DataTypes.BIGINT,
defaultValue: 0
},
estimate_yearly_operating_cost: {
type: DataTypes.BIGINT,
defaultValue: 0
},
is_nonprofit: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
is_verified: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
primary_contact_phone: {
type: DataTypes.STRING(20),
allowNull: false
},
primary_contact_first_name: {
type: DataTypes.STRING,
allowNull: false
},
primary_contact_last_name: {
type: DataTypes.STRING,
allowNull: false
// define the table's name
tableName: 'organizations'
}
});
);
return Organization;
};
+18 -9
View File
@@ -1,12 +1,21 @@
"use strict";
'use strict';
module.exports = (sequelize, DataTypes) => {
const PaymentStatus = sequelize.define("PaymentStatus", {
name: {
type: DataTypes.STRING,
primaryKey: true,
allowNull: false
}
});
const PaymentStatus = sequelize.define(
'PaymentStatus',
{
name: {
type: DataTypes.STRING,
primaryKey: true,
allowNull: false
}
},
{
freezeTableName: true,
return PaymentStatus;
// define the table's name
tableName: 'paymentstatuses'
}
);
return PaymentStatus;
};
+29 -20
View File
@@ -1,28 +1,37 @@
const Organization = require('./Organization');
module.exports = (sequelize, DataTypes) => {
const Post = sequelize.define('Post', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
text: {
type: DataTypes.STRING(350),
allowNull: false
},
organization_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Organization(sequelize, DataTypes),
key: 'id'
const Post = sequelize.define(
'Post',
{
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
text: {
type: DataTypes.STRING(350),
allowNull: false
},
organization_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Organization(sequelize, DataTypes),
key: 'id'
}
},
num_ribbons: {
type: DataTypes.INTEGER,
defaultValue: 0
}
},
num_ribbons: {
type: DataTypes.INTEGER,
defaultValue: 0
{
freezeTableName: true,
// define the table's name
tableName: 'posts'
}
});
);
return Post;
};
+58 -49
View File
@@ -5,60 +5,69 @@ const Organization = require('./Organization'),
Region = require('./Region');
module.exports = (sequelize, DataTypes) => {
const Project = sequelize.define('Project', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
total_received: {
type: DataTypes.INTEGER,
defaultValue: 0
},
total_donors: {
type: DataTypes.INTEGER,
defaultValue: 0
},
const Project = sequelize.define(
'Project',
{
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
total_received: {
type: DataTypes.INTEGER,
defaultValue: 0
},
total_donors: {
type: DataTypes.INTEGER,
defaultValue: 0
},
title: {
type: DataTypes.STRING(1000),
allowNull: false
},
description: DataTypes.STRING,
isComplete: {
type: DataTypes.BOOLEAN,
defaultValue: false
},
title: {
type: DataTypes.STRING(1000),
allowNull: false
},
description: DataTypes.STRING,
isComplete: {
type: DataTypes.BOOLEAN,
defaultValue: false
},
// cause: {
// type: DataTypes.STRING,
// allowNull: false,
// references: {
// model: Cause(sequelize, DataTypes),
// key: 'name'
// }
// },
// region: {
// type: DataTypes.STRING,
// allowNull: false,
// references: {
// model: Region(sequelize, DataTypes),
// key: 'name'
// }
// },
organization_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Organization(sequelize, DataTypes),
key: 'id'
// cause: {
// type: DataTypes.STRING,
// allowNull: false,
// references: {
// model: Cause(sequelize, DataTypes),
// key: 'name'
// }
// },
// region: {
// type: DataTypes.STRING,
// allowNull: false,
// references: {
// model: Region(sequelize, DataTypes),
// key: 'name'
// }
// },
organization_id: {
type: DataTypes.UUID,
allowNull: false,
references: {
model: Organization(sequelize, DataTypes),
key: 'id'
}
},
number_people_impacted: {
type: DataTypes.INTEGER,
defaultValue: 0
}
},
number_people_impacted: {
type: DataTypes.INTEGER,
defaultValue: 0
{
freezeTableName: true,
// define the table's name
tableName: 'projects'
}
});
);
return Project;
};
+16 -7
View File
@@ -1,11 +1,20 @@
module.exports = (sequelize, DataTypes) => {
const Region = sequelize.define('Region', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
const Region = sequelize.define(
'Region',
{
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true
},
name: { type: DataTypes.STRING, allowNull: false, unique: true }
},
name: { type: DataTypes.STRING, allowNull: false, unique: true }
});
{
freezeTableName: true,
// define the table's name
tableName: 'regions'
}
);
return Region;
};
+24 -15
View File
@@ -1,21 +1,30 @@
'use strict';
module.exports = (sequelize, DataTypes) => {
const User = sequelize.define('User', {
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true,
allowNull: false
},
first_name: DataTypes.STRING,
last_name: DataTypes.STRING,
email: {
type: DataTypes.STRING,
validate: {
isEmail: true
const User = sequelize.define(
'User',
{
id: {
type: DataTypes.INTEGER,
primaryKey: true,
autoIncrement: true,
allowNull: false
},
allowNull: false
first_name: DataTypes.STRING,
last_name: DataTypes.STRING,
email: {
type: DataTypes.STRING,
validate: {
isEmail: true
},
allowNull: false
}
},
{
freezeTableName: true,
// define the table's name
tableName: 'users'
}
});
);
return User;
};