const express = require('express'); const router = express.Router(); const ctrl = require('../../controllers/admin/tiers.controller'); const priceCtrl = require('../../controllers/admin/plan_prices.controller'); router.get ('/', ctrl.getPlans); router.post ('/', ctrl.createPlan); router.get ('/field-values', ctrl.getPlanFieldValues); router.post ('/bulk/archive', ctrl.bulkArchivePlans); router.post ('/bulk/restore', ctrl.bulkRestorePlans); router.get ('/payments/field-values', ctrl.getPaymentFieldValues); router.get ('/payments', ctrl.getPayments); router.get ('/payments/:id', ctrl.getPayment); router.get ('/users/:id/tiers', ctrl.getUserTiers); router.post ('/users/tiers/grant', ctrl.grantTier); router.patch ('/users/tiers/:tid/revoke', ctrl.revokeTier); // ← course + impact + prices routes before /:id router.get ('/:id/impact', ctrl.getPlanImpact); router.get ('/:id/courses', ctrl.getPlanCourses); router.post ('/:id/courses', ctrl.syncPlanCourses); router.get ('/:id/prices', priceCtrl.getPrices); router.post ('/:id/prices', priceCtrl.addPrice); router.put ('/:id/prices/:currency', priceCtrl.updatePrice); router.delete('/:id/prices/:currency', priceCtrl.removePrice); router.get ('/:id', ctrl.getPlan); router.put ('/:id', ctrl.updatePlan); router.delete('/:id', ctrl.archivePlan); router.post ('/:id/restore', ctrl.restorePlan); module.exports = router;