Så fungerar systemet
En teknisk översikt av LaserQuote-plattformen
Byggd för prestanda och skalbarhet
LaserQuote är ett komplett WordPress-plugin för konfiguration, prisberäkning och beställning av laserskurna plåtdetaljer. Systemet är byggt med moderna designprinciper och optimerat för snabb respons.
Systemarkitektur
Frontend
Backend (PHP)
Databas
Databasstruktur
Pluginet använder egna databastabeller för optimal prestanda och flexibilitet.
wp_sb_materials
Grundmaterial som S235, Rostfritt, Aluminium med egenskaper som densitet och pris per kg.
id, name, density, price_per_kg, cutting_speed_factor, active
wp_sb_material_variants
Tjockleksvarianter per material med specifik skärhastighet och bockbarhet.
id, material_id, thickness, cutting_speed, bendable, price_modifier
wp_sb_coefficients
Konfigurerbara priskoefficienter för alla beräkningar.
id, coefficient_key, value, description
wp_sb_discount_tiers
Mängdrabattnivåer baserat på antal eller ordervärde.
id, min_quantity, discount_percent, active
wp_sb_orders
Kompletta ordrar med all data lagrad som JSON för flexibilitet.
id, order_number, status, customer_data, items, totals, tracking_token
wp_sb_order_status_history
Statushistorik för varje order med tidsstämplar.
id, order_id, status, changed_by, created_at
REST API
Alla endpoints är tillgängliga via /wp-json/sb-laser/v2/
Material & Priser
/materials
Hämta alla material med varianter
/materials/{id}
Hämta specifikt material
/coefficients
Hämta priskoefficienter
Prisberäkning
/calculate-price
Beräkna pris för mall
/calculate-price-dxf
Beräkna pris för DXF-fil
Ordrar
/orders
Skapa ny order
/orders/lookup
Sök order (publik)
/orders/track/{token}
Spåra order via token
Webhooks
/fluentcart-webhook
FluentCart betalningsnotis
Orderflöde
Konfiguration
Kund väljer mall/DXF, material, tjocklek och tillval
Frontend JSPrisberäkning
Realtidsberäkning vid varje ändring
JS + API verifyKundvagn
Artiklar sparas i localStorage
localStorageCheckout
Kundinfo, leverans, betalningsmetod
3-stegs wizardOrder skapas
POST /orders → Databas + FluentCart
REST APINotifieringar
Email till kund + admin
wp_mailBetalning
FluentCart → Stripe/Klarna
Webhook callbackPrisberäkningslogik
Totalprisformel
Totalpris = (Material + Skärning + Bockning + Svetsning + Avgradning + Hantering + Start) × (1 - Rabatt)
Materialkostnad
Vikt × 1.15 (spill) × kr/kg
Vikt beräknas från geometri × densitet
Skärningskostnad
(Skärlängd ÷ Hastighet + Genomborr.) × 1200 kr/h
Hastighet varierar per material/tjocklek
Bockningskostnad
150 kr (setup) + Antal × 25 kr
Endast för bockkurvor mallar
Hantering
15 kr per artikel
Packning och kvalitetskontroll
Startavgift
250 kr ÷ antal
Fördelas på antal artiklar
Viktiga filer
Huvudfiler
-
laserquote.phpPlugin huvudfil, laddar alla klasser -
includes/calculations/class-price-calculator.phpAll prisberäkningslogik -
includes/calculations/class-geometry-calculator.phpGeometriberäkning för mallar
API
-
includes/api/class-api-orders.phpOrder endpoints -
includes/api/class-api-calculate.phpPrisberäkning endpoint -
includes/api/class-api-materials.phpMaterial endpoints
Frontend
-
assets/js/configurator.jsHuvudlogik (~2500 rader) -
assets/js/dxf-analyzer.jsDXF-parser och analys -
assets/css/configurator.cssAll styling
Integrationer
-
includes/integrations/class-fluentcart.phpFluentCart-integration -
includes/integrations/class-email-handler.phpE-postutskick -
templates/emails/E-postmallar
Shortcodes
[sb_laser_configurator]
Komplett konfigurator med kundvagn och checkout
[sb_laser_hero]
Endast hero-sektionen
[sb_laser_calculator]
Prisberäkning utan kundvagn
[sb_laser_order_status]
Orderspårning för kunder
Teknisk stack
WordPress 6.x
Plugin-arkitektur
Vanilla JavaScript
Ingen ramverksberoende
REST API
WordPress REST endpoints
MySQL/MariaDB
Egna tabeller
FluentCart
Betalningshantering
DXF Parser
Klient-side filanalys