Products have their own relational structure separate from the main contract fields. A contract can have multiple products, each with yearly fees and user allocations.
Schema Overview
Products are organized across three related tables:vendor_products (Product Catalog)
The main product catalog table that stores products offered by each vendor.
Relationships:
- Belongs to:
vendors(viavendor_id) - Belongs to:
data_delivery_types(viadelivery_method_id) - Has many:
vendor_products_details - Has many:
vendor_products_users
vendor_products_details (Annual Fees)
Stores the actual fees charged per product, per year, per contract. This is where pricing information lives.
Relationships:
- Belongs to:
contracts(viacontract_id) - Belongs to:
vendor_products(viaproduct_id)
vendor_products_users (User Allocations)
Tracks user count information for products within contracts.
Relationships:
- Belongs to:
contracts(viacontract_id) - Belongs to:
vendor_products(viaproduct_id)