-- ============================================= -- Enums: mlm -- Module: SAAS-021 MLM (Multi-Level Marketing) -- ============================================= -- Structure type CREATE TYPE mlm.structure_type AS ENUM ( 'unilevel', -- Unlimited width, limited depth 'binary', -- Max 2 children per node 'matrix', -- Fixed width x depth 'hybrid' -- Custom configuration ); COMMENT ON TYPE mlm.structure_type IS 'Types of MLM network structures'; -- Node status CREATE TYPE mlm.node_status AS ENUM ( 'pending', -- Awaiting activation 'active', -- Active in network 'inactive', -- Temporarily inactive 'suspended' -- Administratively suspended ); COMMENT ON TYPE mlm.node_status IS 'Status of a node in the network'; -- Commission type CREATE TYPE mlm.commission_type AS ENUM ( 'level', -- Direct level commission (1st gen, 2nd gen, etc.) 'matching', -- Matching bonus from downline earnings 'infinity', -- Infinity bonus (unlimited depth after rank) 'leadership', -- Leadership bonus for qualified ranks 'pool' -- Pool share bonus ); COMMENT ON TYPE mlm.commission_type IS 'Types of MLM commissions'; -- Commission status CREATE TYPE mlm.commission_status AS ENUM ( 'pending', -- Awaiting approval 'approved', -- Approved for payment 'paid', -- Paid out 'cancelled' -- Cancelled ); COMMENT ON TYPE mlm.commission_status IS 'Status of a commission entry'; -- Bonus type CREATE TYPE mlm.bonus_type AS ENUM ( 'rank_achievement', -- One-time bonus for reaching rank 'rank_maintenance', -- Monthly bonus for maintaining rank 'fast_start', -- Fast start bonus for quick enrollments 'pool_share' -- Share of global pool ); COMMENT ON TYPE mlm.bonus_type IS 'Types of bonuses in MLM';