Configuration & Settings
Environment variables, system settings, and configuration requirements for the EvaDocs system
Configuration & Settings
This section consolidates all configuration requirements for the LPO system.
General Settings (config/settings.php)
Core Business Settings
allow_duplicate_eva_lpo_uploads
- Type: String ('yes'/'no')
- Default: 'no'
- Purpose: Controls whether system allows uploading same LPO multiple times
- Behavior:
- 'yes': Skip duplicate checks, allow multiple uploads
- 'no': Mark duplicates as FAILED with appropriate message
prefer_lpo_prices
- Type: String ('yes'/'no')
- Default: 'no'
- Purpose: Determines if prices extracted from LPO should be preferred
- Hierarchy: LPO prices override system/outlet price lists when true
- Override: Users can still manually adjust prices
set_empties_module
- Type: String ('yes'/'no')
- Default: 'no'
- Purpose: Enables/disables empties module for bottle/container returns
- Integration: Affects product matching and item storage logic
- Business Logic: Tracks returnable containers when enabled
select_warehouse_before_converting_lpo_to_order
- Type: String ('yes'/'no')
- Default: 'no'
- Purpose: Requires warehouse selection before LPO conversion
- Benefits: Ensures correct inventory allocation and order fulfillment
- UI Impact: Adds warehouse selection step in conversion workflow
OCR Service Settings
OCR Service Endpoint
'ocr_service_url' => 'http://reader.data.solutechlabs.com/v1/upload_document/'System Configuration Tables
UOM Configuration
Table: eva_uom_configurations
The table manages how units of measure are assigned to every LPO product line item.
CREATE TABLE eva_uom_configurations (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
outlet_id BIGINT NOT NULL,
uom_size VARCHAR NOT NULL, // largest, smallest
global_default JSON NULL,
status VARCHAR NOT NULL, // active, inactive
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (outlet_id) REFERENCES outlets(id)
);If there are no configurations set, we default to searching for a global setting in the GeneralSettings model
eva_lpo_unit_of_measure
- Type: String ('yes'/'no')
- Default: 'no'
- Purpose: global setting for the default UOM for all LPO product line items
If nothing is configured, we default to the largest UOM configured against a product