Files
starr-philproperties/models/tiers/tier_plans.mdl.js
T
kennethobsequio 439bb33f77 ready to test
Testing

Signed-off-by: Kenneth Obsequio <k80308392@gmail.com>
2026-06-22 10:06:58 +08:00

26 lines
1.5 KiB
JavaScript

/***********************************************************************************************************************************************************************
* File Name: tier_plans.mdl.js
* Type of Program: Model
* Description: Sequelize model for the `tier_plans` table.
* Catalog of fixed plans (premium/exclusive) with duration and price.
* Author: Kenneth Obsequio (@lash0000)
* Date Created: Jun. 6, 2026
***********************************************************************************************************************************************************************/
const { DataTypes } = require('sequelize');
const sequelize = require('../../config/db.config');
const mdl_TierPlans = sequelize.define('TierPlan', {
plan_id: { type: DataTypes.BIGINT, primaryKey: true, autoIncrement: true, label: 'Plan ID' },
tier: { type: DataTypes.ENUM('premium', 'exclusive'), allowNull: false, label: 'Tier' },
label: { type: DataTypes.STRING(100), allowNull: false, label: 'Plan Label' },
duration_days: { type: DataTypes.INTEGER, allowNull: false, label: 'Duration (Days)' },
price: { type: DataTypes.DECIMAL(10, 2), allowNull: false, label: 'Price' },
currency: { type: DataTypes.CHAR(3), allowNull: false, defaultValue: 'USD', label: 'Currency' },
is_active: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: true, label: 'Active' },
}, {
tableName: 'tier_plans',
timestamps: true,
paranoid: true,
});
module.exports = mdl_TierPlans;