# Permanent Catalog Architecture

## Permanent Catalogs

These catalogs should not disappear or be replaced by price updates.

- Main Catalog = regular list
- Clearance Catalog = clearance list
- Salesman Van Catalogs = one permanent catalog per salesman / van

## Temporary Catalogs

These are created per event.

- Shipment Catalog = created for each shipment
- Future campaign catalogs
- Future special customer catalogs

## Price List Rule

Price List does not create a new catalog.

Price List updates product prices.

All permanent catalogs read updated product/catalog item prices.

## Salesman View

When a salesman opens the main catalog, the system shows:

- Whether this product exists in his van
- How much quantity he has

Example:

IN MY VAN: 30

or

NOT IN VAN

## Commands

Repair permanent catalogs:

php artisan catalogs:repair-permanent
# Import Center activation rule

Main and Clearance membership changes are activated only by `ImportCenterWorkflowService`. A full import creates a new staging catalog, writes its complete membership, archives the previous active version, and activates the new version in one transaction. Catalog Center reads the currently active `regular` or `clearance` catalog and no longer owns an uploader. Price Update changes included prices only and does not replace membership.
