chore: remove PaymentPlan model
This commit is contained in:
@@ -0,0 +1,25 @@
|
|||||||
|
import { Knex } from 'knex';
|
||||||
|
import appConfig from '../../config/app';
|
||||||
|
|
||||||
|
export async function up(knex: Knex): Promise<void> {
|
||||||
|
if (!appConfig.isCloud) return;
|
||||||
|
|
||||||
|
return knex.schema.dropTable('payment_plans');
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function down(knex: Knex): Promise<void> {
|
||||||
|
if (!appConfig.isCloud) return;
|
||||||
|
|
||||||
|
return knex.schema.createTable('payment_plans', (table) => {
|
||||||
|
table.uuid('id').primary().defaultTo(knex.raw('gen_random_uuid()'));
|
||||||
|
table.string('name').notNullable();
|
||||||
|
table.integer('task_count').notNullable();
|
||||||
|
table.uuid('user_id').references('id').inTable('users');
|
||||||
|
table.string('stripe_customer_id');
|
||||||
|
table.string('stripe_subscription_id');
|
||||||
|
table.timestamp('current_period_started_at').nullable();
|
||||||
|
table.timestamp('current_period_ends_at').nullable();
|
||||||
|
table.timestamp('deleted_at').nullable();
|
||||||
|
table.timestamps(true, true);
|
||||||
|
});
|
||||||
|
}
|
@@ -1,53 +0,0 @@
|
|||||||
import Base from './base';
|
|
||||||
import User from './user';
|
|
||||||
|
|
||||||
class PaymentPlan extends Base {
|
|
||||||
id!: string;
|
|
||||||
name!: string;
|
|
||||||
taskCount: number;
|
|
||||||
userId!: string;
|
|
||||||
stripeCustomerId!: string;
|
|
||||||
stripeSubscriptionId!: string;
|
|
||||||
currentPeriodStartedAt!: string;
|
|
||||||
currentPeriodEndsAt!: string;
|
|
||||||
user?: User;
|
|
||||||
|
|
||||||
static tableName = 'payment_plans';
|
|
||||||
|
|
||||||
static jsonSchema = {
|
|
||||||
type: 'object',
|
|
||||||
required: [
|
|
||||||
'name',
|
|
||||||
'taskCount',
|
|
||||||
'userId',
|
|
||||||
'stripeCustomerId',
|
|
||||||
'stripeSubscriptionId',
|
|
||||||
'currentPeriodStartedAt',
|
|
||||||
'currentPeriodEndsAt',
|
|
||||||
],
|
|
||||||
|
|
||||||
properties: {
|
|
||||||
id: { type: 'string', format: 'uuid' },
|
|
||||||
name: { type: 'string' },
|
|
||||||
taskCount: { type: 'integer' },
|
|
||||||
userId: { type: 'string', format: 'uuid' },
|
|
||||||
stripeCustomerId: { type: 'string' },
|
|
||||||
stripeSubscriptionId: { type: 'string' },
|
|
||||||
currentPeriodStartedAt: { type: 'string' },
|
|
||||||
currentPeriodEndsAt: { type: 'string' },
|
|
||||||
},
|
|
||||||
};
|
|
||||||
|
|
||||||
static relationMappings = () => ({
|
|
||||||
user: {
|
|
||||||
relation: Base.BelongsToOneRelation,
|
|
||||||
modelClass: User,
|
|
||||||
join: {
|
|
||||||
from: 'payment_plans.user_id',
|
|
||||||
to: 'users.id',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export default PaymentPlan;
|
|
Reference in New Issue
Block a user