-
DevPilot authored
QuoteController@recordResponse rendered Procurement.Views.quotes.response_form, which was never created — so /procurement/quotes/{id}/response returned a 500 and vendor prices could not be recorded at all. Without it the whole tender cycle is blocked: no quote totals, so no technical gate, no financial comparison, and no award. Fields match what storeResponse() reads: quote_item_ids[], quantities[], unit_prices[], delivery_days[], plus delivery/payment terms and expiry date.55d6ac8e
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Core | ||
| Middleware | ||
| Modules | ||
| Shared |