Αναφορά: ItemController¶
Διαδρομή: app/Controllers/ItemController.php
Ρόλος¶
CRUD ειδών (κατάλογος προϊόντων ανά εταιρεία).
Δημόσια API¶
| HTTP | Διαδρομή | Σκοπός |
|---|---|---|
| GET | /api/items |
Λίστα ειδών· κάθε στοιχείο περιλαμβάνει item_services (ίδια πεδία με GET /api/item-services?iditem=…, γενική τιμή καταλόγου) και item_categories (ενεργές κατηγορίες του είδους) |
| GET | /api/items/{id} |
Λεπτομέρειες είδους με item_services και item_categories |
| POST | /api/items |
Δημιουργία· η απάντηση περιλαμβάνει item_services και item_categories (μπορεί να μην είναι κενό αν τρέχει provisioning υπηρεσιών) |
| PUT | /api/items/{id} |
Ενημέρωση· η απάντηση περιλαμβάνει item_services και item_categories· αν μετά την ενημέρωση το είδος έχει idmunit = 1 (τεμ.), κάθε διακριτή υπηρεσία στις συνδέσεις του είδους παίρνει services.rate_type = 'flat' (όσες δεν ήταν ήδη flat) |
| DELETE | /api/items/{id} |
Διαγραφή |
Εξαρτήσεις¶
ItemModel,ItemCategoryModel,ItemServiceModel,ServiceModel,PlisisimoProvisioner,ActionLogModel
Σημειώσεις¶
- Οι
per_documentσυνδέσεις (item_servicesχωρίςiditem) δεν εμφανίζονται μέσα στα είδη· χρησιμοποιήστεGET /api/item-services?scope=per_document. - Στο UI
/items/edit/{id}, όταν το είδος έχει μονάδα τεμ., η στήλη τύπου χρέωσης στις διασυνδέσεις εμφανίζει «Σταθερή» για όλες τις γραμμές (ανεξάρτητα από τοrate_typeμέχρι την αποθήκευση του είδους)· δείτεitems.js(rateTypeLabelForItemEdit).