aboutsummaryrefslogtreecommitdiffstats
path: root/db/migrations/20210612181508_init_referrals.js
diff options
context:
space:
mode:
authorRan Guin <[email protected]>2021-07-19 12:19:18 -0700
committerRan Guin <[email protected]>2021-07-19 12:19:18 -0700
commite238eab45f1f5b6f3dbf40ddff59b9db804ffb4f (patch)
tree9bcfd0547a97a49aad19f8db240364bc8b53f235 /db/migrations/20210612181508_init_referrals.js
parent1b00cc812f7a9fdbefd9e05553d694fbca918ed0 (diff)
downloadcoinos-server-e238eab45f1f5b6f3dbf40ddff59b9db804ffb4f.tar.gz
coinos-server-e238eab45f1f5b6f3dbf40ddff59b9db804ffb4f.zip
update migrations
Diffstat (limited to 'db/migrations/20210612181508_init_referrals.js')
-rw-r--r--db/migrations/20210612181508_init_referrals.js21
1 files changed, 21 insertions, 0 deletions
diff --git a/db/migrations/20210612181508_init_referrals.js b/db/migrations/20210612181508_init_referrals.js
new file mode 100644
index 00000000..875d167f
--- /dev/null
+++ b/db/migrations/20210612181508_init_referrals.js
@@ -0,0 +1,21 @@
+exports.up = function(knex) {
+ return knex.schema.createTable('referrals', function(t) {
+ t.increments('id').unsigned().primary();
+ t.integer('user_id').nullable();
+ t.foreign('user_id').references('users.id');
+
+ t.integer('sponsor_id').notNull();
+ t.foreign('sponsor_id').references('users.id');
+
+ t.string('token').notNull();
+ t.string('expiry').nullable();
+ t.enum('status', ['available', 'used', 'expired', 'cancelled']).notNull().defaultTo('available');
+
+ t.timestamps();
+ })
+ };
+
+ exports.down = function(knex) {
+ return knex.schema.dropTable('referrals');
+ };
+ \ No newline at end of file