Fix: Correcciones panel admin y API frontend
## Panel de Administración ### FormBuilder personalizado (Laravel 11) - Creado app/Support/FormBuilder.php como reemplazo de laravelcollective/html - Creado app/Support/Facades/Form.php para el facade - Registrado en AppServiceProvider y config/app.php - Soporta: text, email, password, file, textarea, select, checkbox, radio, etc. - Manejo de valores null en todos los parámetros ### Configuración de sesión - Cambiado same_site de "none" a "lax" para compatibilidad HTTP - Corrige error 419 Page Expired en login ### Status CRUD - Agregado campo en_name al formulario (español/inglés) - Actualizado StatusController create/update para manejar en_name ### Dependencias - Instalado spatie/laravel-google-cloud-storage para driver GCS ## API Frontend ### Validaciones de perfil de proveedor Agregadas validaciones en endpoints que requieren perfil de proveedor: - SupplierController::getpostulation - Retorna error 400 si no hay perfil - SupplierController::getcontractedpostulation - Retorna error 400 si no hay perfil - PostulationController::postulate - Retorna error 400 si no hay perfil - PostulationController::getfinishedpostulations - Retorna error 400 si no hay perfil - ContractController::startcontract - Retorna error 400 si no hay perfil ### Null safety en contratos - ContractController::getcurrentcontracts - Manejo seguro de supplier/category null - ContractController::getfinishedcontracts - Manejo seguro de supplier/category/status null Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
123
composer.lock
generated
123
composer.lock
generated
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "bff602eb6c826efc24c4833d959d4c90",
|
||||
"content-hash": "5e417628f1993b1a32e8bdd7a16566de",
|
||||
"packages": [
|
||||
{
|
||||
"name": "berkayk/onesignal-laravel",
|
||||
@@ -3014,6 +3014,54 @@
|
||||
},
|
||||
"time": "2025-11-10T17:13:11+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/flysystem-google-cloud-storage",
|
||||
"version": "3.30.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/thephpleague/flysystem-google-cloud-storage.git",
|
||||
"reference": "2d36f1a050fe70bf21d8aa75275963f9ca2e16ea"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/thephpleague/flysystem-google-cloud-storage/zipball/2d36f1a050fe70bf21d8aa75275963f9ca2e16ea",
|
||||
"reference": "2d36f1a050fe70bf21d8aa75275963f9ca2e16ea",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"google/cloud-storage": "^1.23",
|
||||
"league/flysystem": "^3.10.0",
|
||||
"league/mime-type-detection": "^1.0.0",
|
||||
"php": "^8.0.2"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"League\\Flysystem\\GoogleCloudStorage\\": ""
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Frank de Jonge",
|
||||
"email": "info@frankdejonge.nl"
|
||||
}
|
||||
],
|
||||
"description": "Google Cloud Storage adapter for Flysystem.",
|
||||
"keywords": [
|
||||
"Flysystem",
|
||||
"filesystem",
|
||||
"gcs",
|
||||
"google cloud storage"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/thephpleague/flysystem-google-cloud-storage/tree/3.30.1"
|
||||
},
|
||||
"time": "2025-10-20T15:27:33+00:00"
|
||||
},
|
||||
{
|
||||
"name": "league/flysystem-local",
|
||||
"version": "3.30.2",
|
||||
@@ -5430,6 +5478,79 @@
|
||||
],
|
||||
"time": "2025-12-02T15:19:04+00:00"
|
||||
},
|
||||
{
|
||||
"name": "spatie/laravel-google-cloud-storage",
|
||||
"version": "2.3.4",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/spatie/laravel-google-cloud-storage.git",
|
||||
"reference": "10c91e6dcaebf83eba9f21b8107267595bb40d2a"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/spatie/laravel-google-cloud-storage/zipball/10c91e6dcaebf83eba9f21b8107267595bb40d2a",
|
||||
"reference": "10c91e6dcaebf83eba9f21b8107267595bb40d2a",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
"illuminate/contracts": "^10.0|^11.0|^12.0",
|
||||
"illuminate/filesystem": "^10.0|^11.0|^12.0",
|
||||
"illuminate/support": "^10.0|^11.0|^12.0",
|
||||
"league/flysystem-google-cloud-storage": "^3.0.15",
|
||||
"php": "^8.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"nunomaduro/collision": "^7.0|^8.0",
|
||||
"orchestra/testbench": "^8.0|^9.0|^10.0",
|
||||
"phpunit/phpunit": "^10.0|^11.0|^12.0",
|
||||
"spatie/laravel-ray": "^1.29"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"laravel": {
|
||||
"aliases": {
|
||||
"GoogleCloudStorage": "Spatie\\GoogleCloudStorage\\GoogleCloudStorageFacade"
|
||||
},
|
||||
"providers": [
|
||||
"Spatie\\GoogleCloudStorage\\GoogleCloudStorageServiceProvider"
|
||||
]
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Spatie\\GoogleCloudStorage\\": "src"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "Alex Vanderbist",
|
||||
"email": "alex@spatie.be",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"description": "Google Cloud Storage filesystem driver for Laravel",
|
||||
"homepage": "https://github.com/spatie/laravel-google-cloud-storage",
|
||||
"keywords": [
|
||||
"laravel",
|
||||
"laravel-google-cloud-storage",
|
||||
"spatie"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/spatie/laravel-google-cloud-storage/issues",
|
||||
"source": "https://github.com/spatie/laravel-google-cloud-storage/tree/2.3.4"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/spatie",
|
||||
"type": "github"
|
||||
}
|
||||
],
|
||||
"time": "2025-03-13T09:56:26+00:00"
|
||||
},
|
||||
{
|
||||
"name": "spatie/laravel-html",
|
||||
"version": "3.12.3",
|
||||
|
||||
Reference in New Issue
Block a user