From c0de7ec23887c6d1281c12aa450b91c455ea7103 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 8 Apr 2025 14:45:14 +0200 Subject: [PATCH 1/8] Cambiadas rutas de maquinas, papel generico, papel impresion, perfil y paises --- ci4/app/Config/Routes.php | 134 ++++++++++-------- ci4/app/Config/Routing.php | 4 +- .../Controllers/Configuracion/Maquinas.php | 2 +- .../Configuracion/Papelesgenericos.php | 2 +- .../Configuracion/Papelesimpresion.php | 2 +- .../configuracion/paises/_paisFormItems.php | 120 ++++++++-------- .../configuracion/paises/viewPaisList.php | 2 +- .../form/presupuestos/admin/_previewItems.php | 66 ++++----- .../vuexy/form/profile/profileDetails.php | 7 +- .../themes/vuexy/main/menu_digitalizacion.php | 2 +- .../themes/vuexy/main/menu_maquetacion.php | 2 +- .../vuexy/main/menus/configuracion_menu.php | 6 +- .../js/safekat/pages/maquinas/duplicate.js | 2 +- .../js/safekat/pages/maquinas/maquinasList.js | 4 +- 14 files changed, 186 insertions(+), 169 deletions(-) diff --git a/ci4/app/Config/Routes.php b/ci4/app/Config/Routes.php index eb781603..701fd863 100644 --- a/ci4/app/Config/Routes.php +++ b/ci4/app/Config/Routes.php @@ -85,6 +85,73 @@ $routes->group('tarifas', ['namespace' => 'App\Controllers\Tarifas'], function ( /* Rutas para configuraciones */ $routes->group('configuracion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + /* Paises */ + $routes->group('paises', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Paises::index', ['as' => 'paisList']); + $routes->get('add', 'Paises::add', ['as' => 'newPais']); + $routes->post('add', 'Paises::add', ['as' => 'createPais']); + $routes->post('create', 'Paises::create', ['as' => 'ajaxCreatePais']); + $routes->put('update/(:num)', 'Paises::update/$1', ['as' => 'ajaxUpdatePais']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Paises::edit/$1', ['as' => 'updatePais']); + $routes->post('datatable', 'Paises::datatable', ['as' => 'dataTableOfPaises']); + $routes->post('allmenuitems', 'Paises::allItemsSelect', ['as' => 'select2ItemsOfPaises']); + $routes->post('menuitems', 'Paises::menuItems', ['as' => 'menuItemsOfPaises']); + $routes->get('menuitems2', 'Paises::menuItems2', ['as' => 'menuItemsOfPaises2']); + }); + + + /* Papeles genericos */ + $routes->group('papelesgenericos', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Papelesgenericos::index', ['as' => 'papelGenericoList']); + $routes->delete('', 'Papelesgenericos::index', ['as' => 'papelGenericoList2']); + $routes->get('add', 'Papelesgenericos::add', ['as' => 'newPapelGenerico']); + $routes->post('add', 'Papelesgenericos::add', ['as' => 'createPapelGenerico']); + $routes->post('create', 'Papelesgenericos::create', ['as' => 'ajaxCreatePapelGenerico']); + $routes->put('(:num)/update', 'Papelesgenericos::update/$1', ['as' => 'ajaxUpdatePapelGenerico']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Papelesgenericos::edit/$1', ['as' => 'updatePapelGenerico']); + $routes->post('datatable', 'Papelesgenericos::datatable', ['as' => 'dataTableOfPapelesGenericos']); + $routes->post('allmenuitems', 'Papelesgenericos::allItemsSelect', ['as' => 'select2ItemsOfPapelesGenericos']); + $routes->post('menuitems', 'Papelesgenericos::menuItems', ['as' => 'menuItemsOfPapelesGenericos']); + $routes->get('getpapelcliente', 'Papelesgenericos::getPapelCliente', ['as' => 'getPapelCliente']); + $routes->get('selectpapelespecial', 'Papelesgenericos::selectPapelEspecial', ['as' => 'selectPapelEspecial']); + }); + + /* Papeles impresion */ + $routes->group('papelesimpresion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Papelesimpresion::index', ['as' => 'papelImpresionList']); + $routes->get('add', 'Papelesimpresion::add', ['as' => 'newPapelImpresion']); + $routes->post('add', 'Papelesimpresion::add', ['as' => 'createPapelImpresion']); + $routes->post('create', 'Papelesimpresion::create', ['as' => 'ajaxCreatePapelImpresion']); + $routes->put('(:num)/update', 'Papelesimpresion::update/$1', ['as' => 'ajaxUpdatePapelImpresion']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Papelesimpresion::edit/$1', ['as' => 'updatePapelImpresion']); + $routes->post('datatable', 'Papelesimpresion::datatable', ['as' => 'dataTableOfPapelesImpresion']); + $routes->post('allmenuitems', 'Papelesimpresion::allItemsSelect', ['as' => 'select2ItemsOfPapelesImpresion']); + $routes->post('menuitems', 'Papelesimpresion::menuItems', ['as' => 'menuItemsOfPapelesImpresion']); + $routes->post('duplicate/(:num)', 'Papelesimpresion::duplicate/$1', ['as' => 'duplicatePapelImpresion']); + $routes->get('select', 'Papelesimpresion::papel_impresion_select', ['as' => 'papelImpresionSelect']); + $routes->get('show/(:num)', 'Papelesimpresion::papel_impresion_find/$1', ['as' => 'showPapelImpresion']); + + }); + + /* Maquinas */ + $routes->group('maquinas', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Maquinas::index', ['as' => 'maquinaList']); + $routes->get('add', 'Maquinas::add', ['as' => 'newMaquina']); + $routes->get('edit/(:num)', 'Maquinas::edit/$1'); + $routes->get('delete/(:num)', 'Maquinas::delete/$1'); + $routes->post('add', 'Maquinas::add', ['as' => 'createMaquina']); + $routes->post('create', 'Maquinas::create', ['as' => 'ajaxCreateMaquina']); + $routes->put('update/(:num)', 'Maquinas::update/$1', ['as' => 'ajaxUpdateMaquina']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Maquinas::edit/$1', ['as' => 'updateMaquina']); + $routes->post('datatable', 'Maquinas::datatable', ['as' => 'dataTableOfMaquinas']); + $routes->post('allmenuitems', 'Maquinas::allItemsSelect', ['as' => 'select2ItemsOfMaquinas']); + $routes->post('menuitems', 'Maquinas::menuItems', ['as' => 'menuItemsOfMaquinas']); + $routes->post('duplicate/(:num)', 'Maquinas::duplicate/$1', ['as' => 'duplicateMaquina']); + $routes->get('(:num)', 'Maquinas::find_maquina/$1', ['as' => 'findMaquina']); + $routes->get('select', 'Maquinas::select', ['as' => 'selectMaquinas']); + }); + + /* Ubicaciones */ $routes->group('ubicaciones', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { @@ -267,39 +334,9 @@ $routes->group('imposiciones', ['namespace' => 'App\Controllers\Configuracion'], }); $routes->resource('imposiciones', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Imposiciones', 'except' => 'show,new,create,update']); -$routes->group('papelesgenericos', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Papelesgenericos::index', ['as' => 'papelGenericoList']); - $routes->delete('', 'Papelesgenericos::index', ['as' => 'papelGenericoList2']); - $routes->get('add', 'Papelesgenericos::add', ['as' => 'newPapelGenerico']); - $routes->post('add', 'Papelesgenericos::add', ['as' => 'createPapelGenerico']); - $routes->post('create', 'Papelesgenericos::create', ['as' => 'ajaxCreatePapelGenerico']); - $routes->put('(:num)/update', 'Papelesgenericos::update/$1', ['as' => 'ajaxUpdatePapelGenerico']); - $routes->post('edit/(:num)', 'Papelesgenericos::edit/$1', ['as' => 'updatePapelGenerico']); - $routes->post('datatable', 'Papelesgenericos::datatable', ['as' => 'dataTableOfPapelesGenericos']); - $routes->post('allmenuitems', 'Papelesgenericos::allItemsSelect', ['as' => 'select2ItemsOfPapelesGenericos']); - $routes->post('menuitems', 'Papelesgenericos::menuItems', ['as' => 'menuItemsOfPapelesGenericos']); - $routes->get('getpapelcliente', 'Papelesgenericos::getPapelCliente', ['as' => 'getPapelCliente']); - $routes->get('selectpapelespecial', 'Papelesgenericos::selectPapelEspecial', ['as' => 'selectPapelEspecial']); -}); -$routes->resource('papelesgenericos', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Papelesgenericos', 'except' => 'show,new,create,update']); - -$routes->group('papelesimpresion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Papelesimpresion::index', ['as' => 'papelImpresionList']); - $routes->get('add', 'Papelesimpresion::add', ['as' => 'newPapelImpresion']); - $routes->post('add', 'Papelesimpresion::add', ['as' => 'createPapelImpresion']); - $routes->post('create', 'Papelesimpresion::create', ['as' => 'ajaxCreatePapelImpresion']); - $routes->put('(:num)/update', 'Papelesimpresion::update/$1', ['as' => 'ajaxUpdatePapelImpresion']); - $routes->post('edit/(:num)', 'Papelesimpresion::edit/$1', ['as' => 'updatePapelImpresion']); - $routes->post('datatable', 'Papelesimpresion::datatable', ['as' => 'dataTableOfPapelesImpresion']); - $routes->post('allmenuitems', 'Papelesimpresion::allItemsSelect', ['as' => 'select2ItemsOfPapelesImpresion']); - $routes->post('menuitems', 'Papelesimpresion::menuItems', ['as' => 'menuItemsOfPapelesImpresion']); - $routes->post('duplicate/(:num)', 'Papelesimpresion::duplicate/$1', ['as' => 'duplicatePapelImpresion']); - $routes->get('select', 'Papelesimpresion::papel_impresion_select', ['as' => 'papelImpresionSelect']); - $routes->get('show/(:num)', 'Papelesimpresion::papel_impresion_find/$1', ['as' => 'showPapelImpresion']); -}); -$routes->resource('papelesimpresion', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Papelesimpresion', 'except' => 'show,new,create,update']); +//$routes->resource('papelesimpresion', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Papelesimpresion', 'except' => 'show,new,create,update']); $routes->group('papelimpresiontipologias', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { $routes->get('add', 'Papelimpresiontipologias::add', ['as' => 'newPapelImpresionTipologia']); @@ -318,23 +355,7 @@ $routes->group('papelesimpresionmargenes', ['namespace' => 'App\Controllers\Conf }); $routes->resource('papelesimpresionmargenes', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Papelimpresionmargenes', 'except' => 'show,new,create,update']); -$routes->group('maquinas', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Maquinas::index', ['as' => 'maquinaList']); - $routes->get('add', 'Maquinas::add', ['as' => 'newMaquina']); - $routes->get('edit/(:num)', 'Maquinas::edit/$1'); - $routes->get('delete/(:num)', 'Maquinas::delete/$1'); - $routes->post('add', 'Maquinas::add', ['as' => 'createMaquina']); - $routes->post('create', 'Maquinas::create', ['as' => 'ajaxCreateMaquina']); - $routes->put('update/(:num)', 'Maquinas::update/$1', ['as' => 'ajaxUpdateMaquina']); - $routes->post('edit/(:num)', 'Maquinas::edit/$1', ['as' => 'updateMaquina']); - $routes->post('datatable', 'Maquinas::datatable', ['as' => 'dataTableOfMaquinas']); - $routes->post('allmenuitems', 'Maquinas::allItemsSelect', ['as' => 'select2ItemsOfMaquinas']); - $routes->post('menuitems', 'Maquinas::menuItems', ['as' => 'menuItemsOfMaquinas']); - $routes->post('duplicate/(:num)', 'Maquinas::duplicate/$1', ['as' => 'duplicateMaquina']); - $routes->get('(:num)', 'Maquinas::find_maquina/$1', ['as' => 'findMaquina']); - $routes->get('select', 'Maquinas::select', ['as' => 'selectMaquinas']); -}); -$routes->resource('maquinas', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Maquinas', 'except' => 'show,new,create,update']); +//$routes->resource('maquinas', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Maquinas', 'except' => 'show,new,create,update']); $routes->group('maquinastarifasimpresion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { @@ -388,6 +409,7 @@ $routes->group('profile', ['namespace' => 'App\Controllers'], function ($routes) $routes->get('', 'Profile::index', ['as' => 'profileList']); $routes->get('index', 'Profile::index', ['as' => 'profileIndex']); $routes->get('list', 'Profile::index', ['as' => 'profileList2']); + $routes->match(['get', 'post'], 'store', 'Profile::store', ['as' => 'profileStore']); }); @@ -417,19 +439,7 @@ $routes->group('formas-pago', ['namespace' => 'App\Controllers\Configuracion'], $routes->resource('formas-pago', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'FormasPago', 'except' => 'show,new,create,update']); -$routes->group('paises', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Paises::index', ['as' => 'paisList']); - $routes->get('add', 'Paises::add', ['as' => 'newPais']); - $routes->post('add', 'Paises::add', ['as' => 'createPais']); - $routes->post('create', 'Paises::create', ['as' => 'ajaxCreatePais']); - $routes->put('(:num)/update', 'Paises::update/$1', ['as' => 'ajaxUpdatePais']); - $routes->post('(:num)/edit', 'Paises::edit/$1', ['as' => 'updatePais']); - $routes->post('datatable', 'Paises::datatable', ['as' => 'dataTableOfPaises']); - $routes->post('allmenuitems', 'Paises::allItemsSelect', ['as' => 'select2ItemsOfPaises']); - $routes->post('menuitems', 'Paises::menuItems', ['as' => 'menuItemsOfPaises']); - $routes->get('menuitems2', 'Paises::menuItems2', ['as' => 'menuItemsOfPaises2']); -}); -$routes->resource('paises', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Paises', 'except' => 'show,new,create,update']); +//$routes->resource('paises', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Paises', 'except' => 'show,new,create,update']); $routes->group('provincias', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { @@ -592,7 +602,7 @@ $routes->group('tarifasenvioszonas', ['namespace' => 'App\Controllers\Tarifas'], }); $routes->resource('tarifasenvioszonas', ['namespace' => 'App\Controllers\Tarifas', 'controller' => 'Tarifasenvioszonas', 'except' => 'show,new,create,update']); -/* Compras */ +/* Compras */ $routes->group('compras', ['namespace' => 'App\Controllers\Compras'], function ($routes) { $routes->group('proveedores', ['namespace' => 'App\Controllers\Compras'], function ($routes) { $routes->get('', 'Proveedores::index', ['as' => 'proveedorList']); diff --git a/ci4/app/Config/Routing.php b/ci4/app/Config/Routing.php index 220d2074..ae93cab1 100644 --- a/ci4/app/Config/Routing.php +++ b/ci4/app/Config/Routing.php @@ -88,7 +88,7 @@ class Routing extends BaseRouting * * If FALSE, will stop searching and do NO automatic routing. */ - public bool $autoRoute = false; + public bool $autoRoute = false; /** * If TRUE, will enable the use of the 'prioritize' option @@ -96,7 +96,7 @@ class Routing extends BaseRouting * * Default: false */ - public bool $prioritize = false; + public bool $prioritize = true; /** * Map of URI segments and namespaces. For Auto Routing (Improved). diff --git a/ci4/app/Controllers/Configuracion/Maquinas.php b/ci4/app/Controllers/Configuracion/Maquinas.php index 99f88e96..384f0026 100755 --- a/ci4/app/Controllers/Configuracion/Maquinas.php +++ b/ci4/app/Controllers/Configuracion/Maquinas.php @@ -46,7 +46,7 @@ class Maquinas extends \App\Controllers\BaseResourceController // Breadcrumbs (IMN) $this->viewData['breadcrumb'] = [ ['title' => lang("App.menu_configuration"), 'route' => "javascript:void(0);", 'active' => false], - ['title' => lang("App.menu_maquina"), 'route' => site_url('configuracion/maquinas'), 'active' => true] + ['title' => lang("App.menu_maquina"), 'route' => route_to('maquinaList'), 'active' => true] ]; parent::initController($request, $response, $logger); diff --git a/ci4/app/Controllers/Configuracion/Papelesgenericos.php b/ci4/app/Controllers/Configuracion/Papelesgenericos.php index aad7fbb4..ca6b692e 100755 --- a/ci4/app/Controllers/Configuracion/Papelesgenericos.php +++ b/ci4/app/Controllers/Configuracion/Papelesgenericos.php @@ -43,7 +43,7 @@ class Papelesgenericos extends \App\Controllers\BaseResourceController // Breadcrumbs (IMN) $this->viewData['breadcrumb'] = [ ['title' => lang("App.menu_configuration"), 'route' => "javascript:void(0);", 'active' => false], - ['title' => lang("App.menu_papelgenerico"), 'route' => site_url('configuracion/papelesgenericos'), 'active' => true] + ['title' => lang("App.menu_papelgenerico"), 'route' => route_to('papelGenericoList'), 'active' => true] ]; parent::initController($request, $response, $logger); diff --git a/ci4/app/Controllers/Configuracion/Papelesimpresion.php b/ci4/app/Controllers/Configuracion/Papelesimpresion.php index ad24dfd2..c18c1e05 100755 --- a/ci4/app/Controllers/Configuracion/Papelesimpresion.php +++ b/ci4/app/Controllers/Configuracion/Papelesimpresion.php @@ -72,7 +72,7 @@ class Papelesimpresion extends \App\Controllers\BaseResourceController // Breadcrumbs $this->viewData['breadcrumb'] = [ ['title' => lang("App.menu_configuration"), 'route' => "javascript:void(0);", 'active' => false], - ['title' => lang("App.menu_papelimpresion"), 'route' => site_url('configuracion/papelesimpresion'), 'active' => true] + ['title' => lang("App.menu_papelimpresion"), 'route' => route_to('papelImpresionList'), 'active' => true] ]; parent::initController($request, $response, $logger); diff --git a/ci4/app/Views/themes/vuexy/form/configuracion/paises/_paisFormItems.php b/ci4/app/Views/themes/vuexy/form/configuracion/paises/_paisFormItems.php index 7213682f..85fd9a00 100644 --- a/ci4/app/Views/themes/vuexy/form/configuracion/paises/_paisFormItems.php +++ b/ci4/app/Views/themes/vuexy/form/configuracion/paises/_paisFormItems.php @@ -1,66 +1,74 @@ -
-
-
- - -
+
+
+
+ + +
-
- - -
+
+ + +
-
- - -
+
+ + +
-
- - -
+
+ + +
-
-
-
- - -
+
+
+
+ + +
-
- - -
+
+ + +
-
- - -
+
+ + +
-
-
+
+
- -
-
+ +
+
-
+
-
\ No newline at end of file +
\ No newline at end of file diff --git a/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php b/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php index 6bc17da1..2384ae6f 100644 --- a/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php +++ b/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php @@ -112,7 +112,7 @@ }); $(document).on('click', '.btn-edit', function(e) { - window.location.href = `/${$(this).attr('data-id')}/edit`; + window.location.href = `/edit/${$(this).attr('data-id')}`; }); $(document).on('click', '.btn-delete', function(e) { diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php index fdd307a9..9b056517 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php @@ -155,7 +155,7 @@
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- + + endSection() ?> diff --git a/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php b/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php index aa66d967..4835f68c 100644 --- a/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php +++ b/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php @@ -256,7 +256,7 @@ 0): ?> 0): ?> diff --git a/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php b/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php index b9fa7196..2d40c651 100644 --- a/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php +++ b/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php @@ -299,7 +299,7 @@ 0): ?> 0): ?> diff --git a/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php b/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php index bb7582a5..f42a1e52 100644 --- a/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php +++ b/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php @@ -37,21 +37,21 @@ if ( user()->can('papel-generico.menu')) { ?> user()->can('papel-impresion.menu')) { ?> user()->can('maquinas.menu')) { ?> diff --git a/httpdocs/assets/js/safekat/pages/maquinas/duplicate.js b/httpdocs/assets/js/safekat/pages/maquinas/duplicate.js index 4b3a0b65..97bb123f 100644 --- a/httpdocs/assets/js/safekat/pages/maquinas/duplicate.js +++ b/httpdocs/assets/js/safekat/pages/maquinas/duplicate.js @@ -17,7 +17,7 @@ $(() => { $("#btn-new-maquina-duplicate").off(); $("#duplicated_name").addClass("is-valid").removeClass('d-none'); $("#duplicated_name").val("") - window.open('/maquinas/edit/' + response.data.id) + window.open('/configuracion/maquinas/edit/' + response.data.id) }, (error) => { diff --git a/httpdocs/assets/js/safekat/pages/maquinas/maquinasList.js b/httpdocs/assets/js/safekat/pages/maquinas/maquinasList.js index 8dac7849..b63d8151 100644 --- a/httpdocs/assets/js/safekat/pages/maquinas/maquinasList.js +++ b/httpdocs/assets/js/safekat/pages/maquinas/maquinasList.js @@ -35,7 +35,7 @@ class MaquinasList { e.preventDefault(); // Previene cualquier comportamiento por defecto del enlace const dataId = $(this).closest('tr').find('[data-id]').data('id'); // Obtén el ID dinámico - const dynamicUrl = '/maquinas/edit/' + dataId; + const dynamicUrl = '/configuracion/maquinas/edit/' + dataId; if (!Number.isNaN(Number(dataId))) { if (e.ctrlKey || e.metaKey) { @@ -102,7 +102,7 @@ class MaquinasList { this.tableMaquinas = new Table( $('#tableOfMaquinas'), 'maquinasList', - '/maquinas/datatable', + '/configuracion/maquinas/datatable', columns, [] ); From 3cfdc584e57fb3c74259d50e6d1d9cf35d9e82f4 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 8 Apr 2025 15:04:14 +0200 Subject: [PATCH 2/8] =?UTF-8?q?A=C3=B1adida=20estructura=20de=20rutas=20en?= =?UTF-8?q?=20carpeta=20dedicada?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ci4/app/Config/Routes.php | 235 +----------------- ci4/app/Config/Routes/ApiRoutes.php | 27 ++ ci4/app/Config/Routes/ConfiguracionRoutes.php | 152 +++++++++++ ci4/app/Config/Routes/TarifasRoutes.php | 55 ++++ ci4/app/Models/API/ItemModel.php | 46 ---- .../vuexy/main/menus/configuracion_menu.php | 4 +- 6 files changed, 240 insertions(+), 279 deletions(-) create mode 100644 ci4/app/Config/Routes/ApiRoutes.php create mode 100644 ci4/app/Config/Routes/ConfiguracionRoutes.php create mode 100644 ci4/app/Config/Routes/TarifasRoutes.php delete mode 100644 ci4/app/Models/API/ItemModel.php diff --git a/ci4/app/Config/Routes.php b/ci4/app/Config/Routes.php index 701fd863..8e3c8258 100644 --- a/ci4/app/Config/Routes.php +++ b/ci4/app/Config/Routes.php @@ -32,188 +32,10 @@ $routes->group('activity', ['namespace' => 'App\Controllers\Sistema'], function * -------------------------------------------------------------------- */ -/* Rutas para tarifas */ -$routes->group('tarifas', ['namespace' => 'App\Controllers\Tarifas'], function ($routes) { - - /* Maquinas */ - $routes->group('maquinas', ['namespace' => 'App\Controllers\Tarifas\Maquinas'], function ($routes) { - - $routes->post('acabado', 'TarifaMaquinas::add_tarifa_acabado_maquina_with_tarea'); - $routes->post('manipulado', 'TarifaMaquinas::add_tarifa_manipulado_maquina_with_tarea'); - $routes->post('preimpresion', 'TarifaMaquinas::add_tarifa_preimpresion_maquina_with_tarea'); - $routes->post('encuadernacion', 'TarifaMaquinas::add_tarifa_encuadernacion_maquina_with_tarea'); - $routes->post('extra', 'TarifaMaquinas::add_tarifa_extra_maquina_with_tarea'); - - - $routes->delete('acabado/(:num)', 'TarifaMaquinas::delete_tarifa_acabado_maquina_with_tarea/$1'); - $routes->delete('manipulado/(:num)', 'TarifaMaquinas::delete_tarifa_manipulado_maquina_with_tarea/$1'); - $routes->delete('preimpresion/(:num)', 'TarifaMaquinas::delete_tarifa_preimpresion_maquina_with_tarea/$1'); - $routes->delete('encuadernacion/(:num)', 'TarifaMaquinas::delete_tarifa_encuadernacion_maquina_with_tarea/$1'); - $routes->delete('extra/(:num)', 'TarifaMaquinas::delete_tarifa_extra_maquina_with_tarea/$1'); - - $routes->get('acabado/select', 'TarifaMaquinas::get_select_maquina_acabado'); - $routes->get('manipulado/select', 'TarifaMaquinas::get_select_maquina_manipulado'); - $routes->get('impresion/select', 'TarifaMaquinas::get_select_maquina_impresion'); - $routes->get('encuadernacion/select', 'TarifaMaquinas::get_select_maquina_manipulado'); - $routes->get('tareas/select', 'TarifaMaquinas::get_select_maquina_tareas'); - - $routes->get('acabado/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_acabado_maquina/$1'); - $routes->get('manipulado/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_manipulado_maquina/$1'); - $routes->get('preimpresion/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_preimpresion_maquina/$1'); - $routes->get('encuadernacion/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_encuadernacion_maquina/$1'); - $routes->get('extra/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_extra_maquina/$1'); - }); - - /* Acabados */ - $routes->group('acabados', ['namespace' => 'App\Controllers\Tarifas\Acabados'], function ($routes) { - - $routes->get('', 'TarifaAcabados::index', ['as' => 'tarifaAcabadoList']); - $routes->get('gettarifas', 'TarifaAcabados::getSelect2'); - $routes->match(['get', 'post'], 'add', 'TarifaAcabados::add', ['as' => 'tarifaAcabadoAdd']); - $routes->match(['get', 'post'], 'edit/(:num)', 'TarifaAcabados::edit/$1', ['as' => 'tarifaAcabadoEdit']); - $routes->get('delete/(:num)', 'TarifaAcabados::delete/$1', ['as' => 'tarifaAcabadoDelete']); - $routes->post('datatable', 'TarifaAcabados::datatable', ['as' => 'tarifaAcabadoDT']); - $routes->get('select', 'TarifaAcabados::show_select', ["as" => "showSelectTarifaAcabado"]); - $routes->group('lineas', ['namespace' => 'App\Controllers\Tarifas\Acabados'], function ($routes) { - $routes->post('datatable', 'TarifaAcabadosLineas::datatable', ['as' => 'tarifaAcabadoLineasDT']); - $routes->post('datatable_editor', 'TarifaAcabadosLineas::datatable_editor', ['as' => 'tarifaAcabadoLineasDTE']); - $routes->get('delete/(:num)', 'TarifaAcabadosLineas::delete/$1', ['as' => 'tarifaAcabadoLineasDelete']); - }); - }); -}); - -/* Rutas para configuraciones */ -$routes->group('configuracion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - - /* Paises */ - $routes->group('paises', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Paises::index', ['as' => 'paisList']); - $routes->get('add', 'Paises::add', ['as' => 'newPais']); - $routes->post('add', 'Paises::add', ['as' => 'createPais']); - $routes->post('create', 'Paises::create', ['as' => 'ajaxCreatePais']); - $routes->put('update/(:num)', 'Paises::update/$1', ['as' => 'ajaxUpdatePais']); - $routes->match(['get', 'post'], 'edit/(:num)', 'Paises::edit/$1', ['as' => 'updatePais']); - $routes->post('datatable', 'Paises::datatable', ['as' => 'dataTableOfPaises']); - $routes->post('allmenuitems', 'Paises::allItemsSelect', ['as' => 'select2ItemsOfPaises']); - $routes->post('menuitems', 'Paises::menuItems', ['as' => 'menuItemsOfPaises']); - $routes->get('menuitems2', 'Paises::menuItems2', ['as' => 'menuItemsOfPaises2']); - }); - - - /* Papeles genericos */ - $routes->group('papelesgenericos', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Papelesgenericos::index', ['as' => 'papelGenericoList']); - $routes->delete('', 'Papelesgenericos::index', ['as' => 'papelGenericoList2']); - $routes->get('add', 'Papelesgenericos::add', ['as' => 'newPapelGenerico']); - $routes->post('add', 'Papelesgenericos::add', ['as' => 'createPapelGenerico']); - $routes->post('create', 'Papelesgenericos::create', ['as' => 'ajaxCreatePapelGenerico']); - $routes->put('(:num)/update', 'Papelesgenericos::update/$1', ['as' => 'ajaxUpdatePapelGenerico']); - $routes->match(['get', 'post'], 'edit/(:num)', 'Papelesgenericos::edit/$1', ['as' => 'updatePapelGenerico']); - $routes->post('datatable', 'Papelesgenericos::datatable', ['as' => 'dataTableOfPapelesGenericos']); - $routes->post('allmenuitems', 'Papelesgenericos::allItemsSelect', ['as' => 'select2ItemsOfPapelesGenericos']); - $routes->post('menuitems', 'Papelesgenericos::menuItems', ['as' => 'menuItemsOfPapelesGenericos']); - $routes->get('getpapelcliente', 'Papelesgenericos::getPapelCliente', ['as' => 'getPapelCliente']); - $routes->get('selectpapelespecial', 'Papelesgenericos::selectPapelEspecial', ['as' => 'selectPapelEspecial']); - }); - - /* Papeles impresion */ - $routes->group('papelesimpresion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Papelesimpresion::index', ['as' => 'papelImpresionList']); - $routes->get('add', 'Papelesimpresion::add', ['as' => 'newPapelImpresion']); - $routes->post('add', 'Papelesimpresion::add', ['as' => 'createPapelImpresion']); - $routes->post('create', 'Papelesimpresion::create', ['as' => 'ajaxCreatePapelImpresion']); - $routes->put('(:num)/update', 'Papelesimpresion::update/$1', ['as' => 'ajaxUpdatePapelImpresion']); - $routes->match(['get', 'post'], 'edit/(:num)', 'Papelesimpresion::edit/$1', ['as' => 'updatePapelImpresion']); - $routes->post('datatable', 'Papelesimpresion::datatable', ['as' => 'dataTableOfPapelesImpresion']); - $routes->post('allmenuitems', 'Papelesimpresion::allItemsSelect', ['as' => 'select2ItemsOfPapelesImpresion']); - $routes->post('menuitems', 'Papelesimpresion::menuItems', ['as' => 'menuItemsOfPapelesImpresion']); - $routes->post('duplicate/(:num)', 'Papelesimpresion::duplicate/$1', ['as' => 'duplicatePapelImpresion']); - $routes->get('select', 'Papelesimpresion::papel_impresion_select', ['as' => 'papelImpresionSelect']); - $routes->get('show/(:num)', 'Papelesimpresion::papel_impresion_find/$1', ['as' => 'showPapelImpresion']); - - }); - - /* Maquinas */ - $routes->group('maquinas', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Maquinas::index', ['as' => 'maquinaList']); - $routes->get('add', 'Maquinas::add', ['as' => 'newMaquina']); - $routes->get('edit/(:num)', 'Maquinas::edit/$1'); - $routes->get('delete/(:num)', 'Maquinas::delete/$1'); - $routes->post('add', 'Maquinas::add', ['as' => 'createMaquina']); - $routes->post('create', 'Maquinas::create', ['as' => 'ajaxCreateMaquina']); - $routes->put('update/(:num)', 'Maquinas::update/$1', ['as' => 'ajaxUpdateMaquina']); - $routes->match(['get', 'post'], 'edit/(:num)', 'Maquinas::edit/$1', ['as' => 'updateMaquina']); - $routes->post('datatable', 'Maquinas::datatable', ['as' => 'dataTableOfMaquinas']); - $routes->post('allmenuitems', 'Maquinas::allItemsSelect', ['as' => 'select2ItemsOfMaquinas']); - $routes->post('menuitems', 'Maquinas::menuItems', ['as' => 'menuItemsOfMaquinas']); - $routes->post('duplicate/(:num)', 'Maquinas::duplicate/$1', ['as' => 'duplicateMaquina']); - $routes->get('(:num)', 'Maquinas::find_maquina/$1', ['as' => 'findMaquina']); - $routes->get('select', 'Maquinas::select', ['as' => 'selectMaquinas']); - }); - - - /* Ubicaciones */ - $routes->group('ubicaciones', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - - $routes->get('', 'Ubicaciones::index', ['as' => 'ubicacionesList']); - $routes->match(['get', 'post'], 'add', 'Ubicaciones::add', ['as' => 'ubicacionesAdd']); - $routes->match(['get', 'post'], 'edit/(:num)', 'Ubicaciones::edit/$1', ['as' => 'ubicacionesEdit']); - $routes->get('delete/(:num)', 'Ubicaciones::delete/$1', ['as' => 'ubicacionesDelete']); - $routes->post('datatable', 'Ubicaciones::datatable', ['as' => 'ubicacionesDT']); - }); - - /* Permisos y roles */ - $routes->group('group', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Group::index', ['as' => 'userGroupList']); - $routes->get('index', 'Group::index', ['as' => 'groupIndex']); - $routes->post('edit/(:num)', 'Group::edit/$1', ['as' => 'updateGroup']); - $routes->get('edit/(:num)', 'Group::edit/$1', ['as' => 'editGroup']); - $routes->get('delete/(:num)', 'Group::delete/$1', ['as' => 'deleteGroup']); - $routes->get('add', 'Group::add', ['as' => 'newGroup']); - $routes->post('add', 'Group::add', ['as' => 'createGroup']); - }); - - /* Series Factura */ - $routes->group('series-facturas', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'SeriesFacturas::index', ['as' => 'seriesFacturasList']); - $routes->match(['get', 'post'], 'add', 'SeriesFacturas::add', ['as' => 'seriesFacturasAdd']); - $routes->match(['get', 'post'], 'edit/(:num)', 'SeriesFacturas::edit/$1', ['as' => 'seriesFacturasEdit']); - $routes->get('delete/(:num)', 'SeriesFacturas::delete/$1', ['as' => 'seriesFacturasDelete']); - $routes->post('datatable', 'SeriesFacturas::datatable', ['as' => 'seriesFacturasDT']); - $routes->post('menuitemsFacturas', 'SeriesFacturas::menuItemsFacturas', ['as' => 'menuItemsOfSeriesFacturas']); - }); - - /* Variables del sistema */ - $routes->group("variables", ["namespace" => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'ConfigVariables::index', ['as' => 'variablesIndex']); - $routes->get('find/(:num)', 'ConfigVariables::get/$1', ['as' => 'variablesFind']); - $routes->post('edit/(:num)', 'ConfigVariables::updateVariable/$1', ['as' => 'updateVariable']); - $routes->delete('delete/(:num)', 'ConfigVariables::delete/$1', ['as' => 'deleteVariable']); - $routes->get('datatable', 'ConfigVariables::datatable', ['as' => 'datatableVariables']); - }); - - /* Errores en presupuestos */ - $routes->group("errores-presupuesto", ["namespace" => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'ConfigErrores::index', ['as' => 'erroresPresupuestoIndex']); - $routes->get('edit/(:num)', 'ConfigErrores::viewForm/$1', ['as' => 'erroresPresupuestoViewForm']); - $routes->get('get/(:num)', 'ConfigErrores::get_error_presupuesto/$1', ['as' => 'erroresPresupuestoGetErrorPresupuesto']); - $routes->get('datatable', 'ConfigErrores::datatable', ['as' => 'erroresPresupuestoDatatable']); - $routes->post('edit/(:num)', 'ConfigErrores::update_error_presupuesto/$1', ['as' => 'erroresPresupuestoUpdate']); - }); - - $routes->group("maquina-tareas", ["namespace" => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'MaquinaTarea::index', ['as' => 'maquinaTareaList']); - $routes->get('(:num)', 'MaquinaTarea::show/$1', ['as' => 'maquinaTareaShow']); - $routes->delete('(:num)', 'MaquinaTarea::delete/$1', ['as' => 'maquinaTareaDelete']); - $routes->post('', 'MaquinaTarea::store/$1', ['as' => 'maquinaTareaStore']); - $routes->post('update/(:num)', 'MaquinaTarea::update_servicio_cliente/$1', ['as' => 'maquinaTareaUpdate']); - $routes->get('edit/(:num)', 'MaquinaTarea::viewForm/$1', ['as' => 'maquinaTareaViewForm']); - $routes->get('datatable', 'MaquinaTarea::datatable', ['as' => 'maquinaTareaDatatable']); - }); - $routes->group("messages", ["namespace" => 'App\Controllers\Chat'], function ($routes) { - $routes->get('', 'ChatController::config_view', ['as' => 'configMessagesIndex']); - }); -}); + // Carga archivos de rutas por dominio +foreach (glob(APPPATH . 'Config/Routes/*Routes.php') as $routeFile) { + require $routeFile; +} $routes->group('users', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { @@ -334,10 +156,6 @@ $routes->group('imposiciones', ['namespace' => 'App\Controllers\Configuracion'], }); $routes->resource('imposiciones', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Imposiciones', 'except' => 'show,new,create,update']); - - -//$routes->resource('papelesimpresion', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Papelesimpresion', 'except' => 'show,new,create,update']); - $routes->group('papelimpresiontipologias', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { $routes->get('add', 'Papelimpresiontipologias::add', ['as' => 'newPapelImpresionTipologia']); $routes->post('add', 'Papelimpresiontipologias::add', ['as' => 'createPapelImpresionTipologia']); @@ -355,9 +173,6 @@ $routes->group('papelesimpresionmargenes', ['namespace' => 'App\Controllers\Conf }); $routes->resource('papelesimpresionmargenes', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Papelimpresionmargenes', 'except' => 'show,new,create,update']); -//$routes->resource('maquinas', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Maquinas', 'except' => 'show,new,create,update']); - - $routes->group('maquinastarifasimpresion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { $routes->get('', 'Maquinastarifasimpresion::index', ['as' => 'maquinasTarifaImpresionList']); $routes->get('add', 'Maquinastarifasimpresion::add', ['as' => 'newMaquinasTarifaImpresion']); @@ -391,20 +206,6 @@ $routes->group('maquinaspapelesimpresion', ['namespace' => 'App\Controllers\Conf $routes->resource('maquinastarifasimpresion', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Maquinastarifasimpresion', 'except' => 'show,new,create,update']); -$routes->group('maquinasdefecto', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { - $routes->get('', 'Maquinasdefecto::index', ['as' => 'maquinaPorDefectoList']); - $routes->get('add', 'Maquinasdefecto::add', ['as' => 'newMaquinaPorDefecto']); - $routes->post('add', 'Maquinasdefecto::add', ['as' => 'createMaquinaPorDefecto']); - $routes->post('create', 'Maquinasdefecto::create', ['as' => 'ajaxCreateMaquinaPorDefecto']); - $routes->put('(:num)/update', 'Maquinasdefecto::update/$1', ['as' => 'ajaxUpdateMaquinaPorDefecto']); - $routes->post('edit/(:num)', 'Maquinasdefecto::edit/$1', ['as' => 'updateMaquinaPorDefecto']); - $routes->post('datatable', 'Maquinasdefecto::datatable', ['as' => 'dataTableOfMaquinasPorDefecto']); - $routes->post('allmenuitems', 'Maquinasdefecto::allItemsSelect', ['as' => 'select2ItemsOfMaquinasPorDefecto']); - $routes->post('menuitems', 'Maquinasdefecto::menuItems', ['as' => 'menuItemsOfMaquinasPorDefecto']); -}); -$routes->resource('maquinasdefecto', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Maquinasdefecto', 'except' => 'show,new,create,update']); - - $routes->group('profile', ['namespace' => 'App\Controllers'], function ($routes) { $routes->get('', 'Profile::index', ['as' => 'profileList']); $routes->get('index', 'Profile::index', ['as' => 'profileIndex']); @@ -439,9 +240,6 @@ $routes->group('formas-pago', ['namespace' => 'App\Controllers\Configuracion'], $routes->resource('formas-pago', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'FormasPago', 'except' => 'show,new,create,update']); -//$routes->resource('paises', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Paises', 'except' => 'show,new,create,update']); - - $routes->group('provincias', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { $routes->get('', 'Provincias::index', ['as' => 'provinciaList']); $routes->get('add', 'Provincias::add', ['as' => 'newProvincia']); @@ -1050,31 +848,6 @@ $routes->group('logistica', ['namespace' => 'App\Controllers\Logistica'], functi $routes->get('print/label/test', 'LogisticaController::print_test_label'); }); -/* - * -------------------------------------------------------------------- - * APIs Route Definitions - * -------------------------------------------------------------------- - */ -$routes->post('auth/jwt', '\App\Controllers\Sistema\AuthAPIController::jwtLogin'); - -$routes->group( - 'api', - [ - 'namespace' => 'App\Controllers\API', - 'filter' => 'jwt' - ], - static function ($routes) { - - $routes->resource('items', [ - 'controller' => 'ItemsController', - 'filter' => 'cors' - ]); - - $routes->post("calcular", 'ImprimelibrosApi::calcular'); - $routes->post("guardar", 'ImprimelibrosApi::guardar'); - // ... - } -); /* * -------------------------------------------------------------------- diff --git a/ci4/app/Config/Routes/ApiRoutes.php b/ci4/app/Config/Routes/ApiRoutes.php new file mode 100644 index 00000000..6d5487a4 --- /dev/null +++ b/ci4/app/Config/Routes/ApiRoutes.php @@ -0,0 +1,27 @@ +post('auth/jwt', '\App\Controllers\Sistema\AuthAPIController::jwtLogin'); + +$routes->group( + 'api', + [ + 'namespace' => 'App\Controllers\API', + 'filter' => 'jwt' + ], + static function ($routes) { + + $routes->post("calcular", 'ImprimelibrosApi::calcular'); + $routes->post("guardar", 'ImprimelibrosApi::guardar'); + // ... + } +); \ No newline at end of file diff --git a/ci4/app/Config/Routes/ConfiguracionRoutes.php b/ci4/app/Config/Routes/ConfiguracionRoutes.php new file mode 100644 index 00000000..947c4e8e --- /dev/null +++ b/ci4/app/Config/Routes/ConfiguracionRoutes.php @@ -0,0 +1,152 @@ +group('configuracion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + + /* Paises */ + $routes->group('paises', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Paises::index', ['as' => 'paisList']); + $routes->get('add', 'Paises::add', ['as' => 'newPais']); + $routes->post('add', 'Paises::add', ['as' => 'createPais']); + $routes->post('create', 'Paises::create', ['as' => 'ajaxCreatePais']); + $routes->put('update/(:num)', 'Paises::update/$1', ['as' => 'ajaxUpdatePais']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Paises::edit/$1', ['as' => 'updatePais']); + $routes->post('datatable', 'Paises::datatable', ['as' => 'dataTableOfPaises']); + $routes->post('allmenuitems', 'Paises::allItemsSelect', ['as' => 'select2ItemsOfPaises']); + $routes->post('menuitems', 'Paises::menuItems', ['as' => 'menuItemsOfPaises']); + $routes->get('menuitems2', 'Paises::menuItems2', ['as' => 'menuItemsOfPaises2']); + }); + + + /* Papeles genericos */ + $routes->group('papelesgenericos', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Papelesgenericos::index', ['as' => 'papelGenericoList']); + $routes->delete('', 'Papelesgenericos::index', ['as' => 'papelGenericoList2']); + $routes->get('add', 'Papelesgenericos::add', ['as' => 'newPapelGenerico']); + $routes->post('add', 'Papelesgenericos::add', ['as' => 'createPapelGenerico']); + $routes->post('create', 'Papelesgenericos::create', ['as' => 'ajaxCreatePapelGenerico']); + $routes->put('(:num)/update', 'Papelesgenericos::update/$1', ['as' => 'ajaxUpdatePapelGenerico']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Papelesgenericos::edit/$1', ['as' => 'updatePapelGenerico']); + $routes->post('datatable', 'Papelesgenericos::datatable', ['as' => 'dataTableOfPapelesGenericos']); + $routes->post('allmenuitems', 'Papelesgenericos::allItemsSelect', ['as' => 'select2ItemsOfPapelesGenericos']); + $routes->post('menuitems', 'Papelesgenericos::menuItems', ['as' => 'menuItemsOfPapelesGenericos']); + $routes->get('getpapelcliente', 'Papelesgenericos::getPapelCliente', ['as' => 'getPapelCliente']); + $routes->get('selectpapelespecial', 'Papelesgenericos::selectPapelEspecial', ['as' => 'selectPapelEspecial']); + }); + + /* Papeles impresion */ + $routes->group('papelesimpresion', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Papelesimpresion::index', ['as' => 'papelImpresionList']); + $routes->get('add', 'Papelesimpresion::add', ['as' => 'newPapelImpresion']); + $routes->post('add', 'Papelesimpresion::add', ['as' => 'createPapelImpresion']); + $routes->post('create', 'Papelesimpresion::create', ['as' => 'ajaxCreatePapelImpresion']); + $routes->put('(:num)/update', 'Papelesimpresion::update/$1', ['as' => 'ajaxUpdatePapelImpresion']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Papelesimpresion::edit/$1', ['as' => 'updatePapelImpresion']); + $routes->post('datatable', 'Papelesimpresion::datatable', ['as' => 'dataTableOfPapelesImpresion']); + $routes->post('allmenuitems', 'Papelesimpresion::allItemsSelect', ['as' => 'select2ItemsOfPapelesImpresion']); + $routes->post('menuitems', 'Papelesimpresion::menuItems', ['as' => 'menuItemsOfPapelesImpresion']); + $routes->post('duplicate/(:num)', 'Papelesimpresion::duplicate/$1', ['as' => 'duplicatePapelImpresion']); + $routes->get('select', 'Papelesimpresion::papel_impresion_select', ['as' => 'papelImpresionSelect']); + $routes->get('show/(:num)', 'Papelesimpresion::papel_impresion_find/$1', ['as' => 'showPapelImpresion']); + + }); + + /* Maquinas */ + $routes->group('maquinas', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Maquinas::index', ['as' => 'maquinaList']); + $routes->get('add', 'Maquinas::add', ['as' => 'newMaquina']); + $routes->get('edit/(:num)', 'Maquinas::edit/$1'); + $routes->get('delete/(:num)', 'Maquinas::delete/$1'); + $routes->post('add', 'Maquinas::add', ['as' => 'createMaquina']); + $routes->post('create', 'Maquinas::create', ['as' => 'ajaxCreateMaquina']); + $routes->put('update/(:num)', 'Maquinas::update/$1', ['as' => 'ajaxUpdateMaquina']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Maquinas::edit/$1', ['as' => 'updateMaquina']); + $routes->post('datatable', 'Maquinas::datatable', ['as' => 'dataTableOfMaquinas']); + $routes->post('allmenuitems', 'Maquinas::allItemsSelect', ['as' => 'select2ItemsOfMaquinas']); + $routes->post('menuitems', 'Maquinas::menuItems', ['as' => 'menuItemsOfMaquinas']); + $routes->post('duplicate/(:num)', 'Maquinas::duplicate/$1', ['as' => 'duplicateMaquina']); + $routes->get('(:num)', 'Maquinas::find_maquina/$1', ['as' => 'findMaquina']); + $routes->get('select', 'Maquinas::select', ['as' => 'selectMaquinas']); + }); + + /* Maquinas por defecto */ + $routes->group('maquinasdefecto', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Maquinasdefecto::index', ['as' => 'maquinaPorDefectoList']); + $routes->get('add', 'Maquinasdefecto::add', ['as' => 'newMaquinaPorDefecto']); + $routes->post('add', 'Maquinasdefecto::add', ['as' => 'createMaquinaPorDefecto']); + $routes->post('create', 'Maquinasdefecto::create', ['as' => 'ajaxCreateMaquinaPorDefecto']); + $routes->put('(:num)/update', 'Maquinasdefecto::update/$1', ['as' => 'ajaxUpdateMaquinaPorDefecto']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Maquinasdefecto::edit/$1', ['as' => 'updateMaquinaPorDefecto']); + $routes->post('datatable', 'Maquinasdefecto::datatable', ['as' => 'dataTableOfMaquinasPorDefecto']); + $routes->post('allmenuitems', 'Maquinasdefecto::allItemsSelect', ['as' => 'select2ItemsOfMaquinasPorDefecto']); + $routes->post('menuitems', 'Maquinasdefecto::menuItems', ['as' => 'menuItemsOfMaquinasPorDefecto']); + }); + + + /* Ubicaciones */ + $routes->group('ubicaciones', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + + $routes->get('', 'Ubicaciones::index', ['as' => 'ubicacionesList']); + $routes->match(['get', 'post'], 'add', 'Ubicaciones::add', ['as' => 'ubicacionesAdd']); + $routes->match(['get', 'post'], 'edit/(:num)', 'Ubicaciones::edit/$1', ['as' => 'ubicacionesEdit']); + $routes->get('delete/(:num)', 'Ubicaciones::delete/$1', ['as' => 'ubicacionesDelete']); + $routes->post('datatable', 'Ubicaciones::datatable', ['as' => 'ubicacionesDT']); + }); + + /* Permisos y roles */ + $routes->group('group', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'Group::index', ['as' => 'userGroupList']); + $routes->get('index', 'Group::index', ['as' => 'groupIndex']); + $routes->post('edit/(:num)', 'Group::edit/$1', ['as' => 'updateGroup']); + $routes->get('edit/(:num)', 'Group::edit/$1', ['as' => 'editGroup']); + $routes->get('delete/(:num)', 'Group::delete/$1', ['as' => 'deleteGroup']); + $routes->get('add', 'Group::add', ['as' => 'newGroup']); + $routes->post('add', 'Group::add', ['as' => 'createGroup']); + }); + + /* Series Factura */ + $routes->group('series-facturas', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'SeriesFacturas::index', ['as' => 'seriesFacturasList']); + $routes->match(['get', 'post'], 'add', 'SeriesFacturas::add', ['as' => 'seriesFacturasAdd']); + $routes->match(['get', 'post'], 'edit/(:num)', 'SeriesFacturas::edit/$1', ['as' => 'seriesFacturasEdit']); + $routes->get('delete/(:num)', 'SeriesFacturas::delete/$1', ['as' => 'seriesFacturasDelete']); + $routes->post('datatable', 'SeriesFacturas::datatable', ['as' => 'seriesFacturasDT']); + $routes->post('menuitemsFacturas', 'SeriesFacturas::menuItemsFacturas', ['as' => 'menuItemsOfSeriesFacturas']); + }); + + /* Variables del sistema */ + $routes->group("variables", ["namespace" => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'ConfigVariables::index', ['as' => 'variablesIndex']); + $routes->get('find/(:num)', 'ConfigVariables::get/$1', ['as' => 'variablesFind']); + $routes->post('edit/(:num)', 'ConfigVariables::updateVariable/$1', ['as' => 'updateVariable']); + $routes->delete('delete/(:num)', 'ConfigVariables::delete/$1', ['as' => 'deleteVariable']); + $routes->get('datatable', 'ConfigVariables::datatable', ['as' => 'datatableVariables']); + }); + + /* Errores en presupuestos */ + $routes->group("errores-presupuesto", ["namespace" => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'ConfigErrores::index', ['as' => 'erroresPresupuestoIndex']); + $routes->get('edit/(:num)', 'ConfigErrores::viewForm/$1', ['as' => 'erroresPresupuestoViewForm']); + $routes->get('get/(:num)', 'ConfigErrores::get_error_presupuesto/$1', ['as' => 'erroresPresupuestoGetErrorPresupuesto']); + $routes->get('datatable', 'ConfigErrores::datatable', ['as' => 'erroresPresupuestoDatatable']); + $routes->post('edit/(:num)', 'ConfigErrores::update_error_presupuesto/$1', ['as' => 'erroresPresupuestoUpdate']); + }); + + $routes->group("maquina-tareas", ["namespace" => 'App\Controllers\Configuracion'], function ($routes) { + $routes->get('', 'MaquinaTarea::index', ['as' => 'maquinaTareaList']); + $routes->get('(:num)', 'MaquinaTarea::show/$1', ['as' => 'maquinaTareaShow']); + $routes->delete('(:num)', 'MaquinaTarea::delete/$1', ['as' => 'maquinaTareaDelete']); + $routes->post('', 'MaquinaTarea::store/$1', ['as' => 'maquinaTareaStore']); + $routes->post('update/(:num)', 'MaquinaTarea::update_servicio_cliente/$1', ['as' => 'maquinaTareaUpdate']); + $routes->get('edit/(:num)', 'MaquinaTarea::viewForm/$1', ['as' => 'maquinaTareaViewForm']); + $routes->get('datatable', 'MaquinaTarea::datatable', ['as' => 'maquinaTareaDatatable']); + }); + $routes->group("messages", ["namespace" => 'App\Controllers\Chat'], function ($routes) { + $routes->get('', 'ChatController::config_view', ['as' => 'configMessagesIndex']); + }); +}); + diff --git a/ci4/app/Config/Routes/TarifasRoutes.php b/ci4/app/Config/Routes/TarifasRoutes.php new file mode 100644 index 00000000..e88ec3df --- /dev/null +++ b/ci4/app/Config/Routes/TarifasRoutes.php @@ -0,0 +1,55 @@ +group('tarifas', ['namespace' => 'App\Controllers\Tarifas'], function ($routes) { + + /* Maquinas */ + $routes->group('maquinas', ['namespace' => 'App\Controllers\Tarifas\Maquinas'], function ($routes) { + + $routes->post('acabado', 'TarifaMaquinas::add_tarifa_acabado_maquina_with_tarea'); + $routes->post('manipulado', 'TarifaMaquinas::add_tarifa_manipulado_maquina_with_tarea'); + $routes->post('preimpresion', 'TarifaMaquinas::add_tarifa_preimpresion_maquina_with_tarea'); + $routes->post('encuadernacion', 'TarifaMaquinas::add_tarifa_encuadernacion_maquina_with_tarea'); + $routes->post('extra', 'TarifaMaquinas::add_tarifa_extra_maquina_with_tarea'); + + + $routes->delete('acabado/(:num)', 'TarifaMaquinas::delete_tarifa_acabado_maquina_with_tarea/$1'); + $routes->delete('manipulado/(:num)', 'TarifaMaquinas::delete_tarifa_manipulado_maquina_with_tarea/$1'); + $routes->delete('preimpresion/(:num)', 'TarifaMaquinas::delete_tarifa_preimpresion_maquina_with_tarea/$1'); + $routes->delete('encuadernacion/(:num)', 'TarifaMaquinas::delete_tarifa_encuadernacion_maquina_with_tarea/$1'); + $routes->delete('extra/(:num)', 'TarifaMaquinas::delete_tarifa_extra_maquina_with_tarea/$1'); + + $routes->get('acabado/select', 'TarifaMaquinas::get_select_maquina_acabado'); + $routes->get('manipulado/select', 'TarifaMaquinas::get_select_maquina_manipulado'); + $routes->get('impresion/select', 'TarifaMaquinas::get_select_maquina_impresion'); + $routes->get('encuadernacion/select', 'TarifaMaquinas::get_select_maquina_manipulado'); + $routes->get('tareas/select', 'TarifaMaquinas::get_select_maquina_tareas'); + + $routes->get('acabado/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_acabado_maquina/$1'); + $routes->get('manipulado/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_manipulado_maquina/$1'); + $routes->get('preimpresion/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_preimpresion_maquina/$1'); + $routes->get('encuadernacion/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_encuadernacion_maquina/$1'); + $routes->get('extra/datatable/(:num)', 'TarifaMaquinas::get_datatable_tarifa_extra_maquina/$1'); + }); + + /* Acabados */ + $routes->group('acabados', ['namespace' => 'App\Controllers\Tarifas\Acabados'], function ($routes) { + + $routes->get('', 'TarifaAcabados::index', ['as' => 'tarifaAcabadoList']); + $routes->get('gettarifas', 'TarifaAcabados::getSelect2'); + $routes->match(['get', 'post'], 'add', 'TarifaAcabados::add', ['as' => 'tarifaAcabadoAdd']); + $routes->match(['get', 'post'], 'edit/(:num)', 'TarifaAcabados::edit/$1', ['as' => 'tarifaAcabadoEdit']); + $routes->get('delete/(:num)', 'TarifaAcabados::delete/$1', ['as' => 'tarifaAcabadoDelete']); + $routes->post('datatable', 'TarifaAcabados::datatable', ['as' => 'tarifaAcabadoDT']); + $routes->get('select', 'TarifaAcabados::show_select', ["as" => "showSelectTarifaAcabado"]); + $routes->group('lineas', ['namespace' => 'App\Controllers\Tarifas\Acabados'], function ($routes) { + $routes->post('datatable', 'TarifaAcabadosLineas::datatable', ['as' => 'tarifaAcabadoLineasDT']); + $routes->post('datatable_editor', 'TarifaAcabadosLineas::datatable_editor', ['as' => 'tarifaAcabadoLineasDTE']); + $routes->get('delete/(:num)', 'TarifaAcabadosLineas::delete/$1', ['as' => 'tarifaAcabadoLineasDelete']); + }); + }); +}); \ No newline at end of file diff --git a/ci4/app/Models/API/ItemModel.php b/ci4/app/Models/API/ItemModel.php deleted file mode 100644 index e61e4654..00000000 --- a/ci4/app/Models/API/ItemModel.php +++ /dev/null @@ -1,46 +0,0 @@ - user()->can('maquinas.menu')) { ?> user()->can('maquinas-defecto.menu')) { ?> From 03135fdac7709cd6f58857e16646f5c8ffcb0108 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 8 Apr 2025 15:22:39 +0200 Subject: [PATCH 3/8] =?UTF-8?q?A=C3=B1adidos=20archivos=20de=20rutas=20par?= =?UTF-8?q?a=20presupuestos=20y=20compras?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ci4/app/Config/Routes.php | 78 -------------------- ci4/app/Config/Routes/ComprasRoutes.php | 27 +++++++ ci4/app/Config/Routes/PresupuestosRoutes.php | 64 ++++++++++++++++ 3 files changed, 91 insertions(+), 78 deletions(-) create mode 100644 ci4/app/Config/Routes/ComprasRoutes.php create mode 100644 ci4/app/Config/Routes/PresupuestosRoutes.php diff --git a/ci4/app/Config/Routes.php b/ci4/app/Config/Routes.php index 8e3c8258..8b6335a4 100644 --- a/ci4/app/Config/Routes.php +++ b/ci4/app/Config/Routes.php @@ -400,28 +400,8 @@ $routes->group('tarifasenvioszonas', ['namespace' => 'App\Controllers\Tarifas'], }); $routes->resource('tarifasenvioszonas', ['namespace' => 'App\Controllers\Tarifas', 'controller' => 'Tarifasenvioszonas', 'except' => 'show,new,create,update']); -/* Compras */ -$routes->group('compras', ['namespace' => 'App\Controllers\Compras'], function ($routes) { - $routes->group('proveedores', ['namespace' => 'App\Controllers\Compras'], function ($routes) { - $routes->get('', 'Proveedores::index', ['as' => 'proveedorList']); - $routes->get('add', 'Proveedores::add', ['as' => 'newProveedor']); - $routes->post('add', 'Proveedores::add', ['as' => 'createProveedor']); - $routes->post('create', 'Proveedores::create', ['as' => 'ajaxCreateProveedor']); - $routes->put('(:num)/update', 'Proveedores::update/$1', ['as' => 'ajaxUpdateProveedor']); - $routes->get('edit/(:num)', 'Proveedores::edit/$1', ['as' => 'editProveedor']); - $routes->post('edit/(:num)', 'Proveedores::edit/$1', ['as' => 'updateProveedor']); - $routes->post('datatable', 'Proveedores::datatable', ['as' => 'dataTableOfProveedores']); - $routes->get('delete/(:num)', 'Proveedores::delete/$1', ['as' => 'deleteProveedores']); - $routes->post('allmenuitems', 'Proveedores::allItemsSelect', ['as' => 'select2ItemsOfProveedores']); - $routes->post('menuitems', 'Proveedores::menuItems', ['as' => 'menuItemsOfProveedores']); - }); -}); -$routes->resource('proveedores', ['namespace' => 'App\Controllers\Compras', 'controller' => 'Proveedores', 'except' => 'show,new,create,update']); -$routes->group('proveedorestipos', ['namespace' => 'App\Controllers\Compras'], function ($routes) { - $routes->post('menuitems', 'ProveedoresTipos::menuItems', ['as' => 'menuItemsOfProveedoresTipos']); -}); $routes->resource('proveedorestipos', ['namespace' => 'App\Controllers\Compras', 'controller' => 'ProveedoresTipos', 'except' => 'show,new,create,update']); @@ -450,64 +430,6 @@ $routes->group('clientedirecciones', ['namespace' => 'App\Controllers\Clientes'] $routes->resource('clientedirecciones', ['namespace' => 'App\Controllers\Clientes', 'controller' => 'Clientedirecciones', 'except' => 'show,new,create,update']); -$routes->group('presupuestoadmin', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { - $routes->get('list/(:num)', 'Presupuestoadmin::list/$1', ['as' => 'presupuestoAdminList']); // HOMOGENIZAR CON ARGS DINAMICOS!!! - $routes->get('add/(:num)', 'Presupuestoadmin::add/$1', ['as' => 'newPresupuestoAdmin']); - $routes->get('edit/(:any)', 'Presupuestoadmin::edit/$1', ['as' => 'editarPresupuestoAdmin']); - $routes->post('add/(:num)', 'Presupuestoadmin::add/$1', ['as' => 'createPresupuestoAdmin']); - $routes->post('create', 'Presupuestoadmin::create', ['as' => 'ajaxCreatePresupuestoAdmin']); - $routes->put('(:num)/update', 'Presupuestoadmin::update/$1', ['as' => 'ajaxUpdatePresupuestoAdmin']); - $routes->post('edit/(:num)', 'Presupuestoadmin::edit/$1', ['as' => 'updatePresupuestoAdmin']); - $routes->post('datatable', 'Presupuestoadmin::datatable', ['as' => 'dataTableOfPresupuestoAdmin']); - $routes->post('datatable_2', 'Presupuestoadmin::datatable_2', ['as' => 'updateDataOfPresupuestoAdmin']); - $routes->post('allmenuitems', 'Presupuestoadmin::allItemsSelect', ['as' => 'select2ItemsOfPresupuestoAdmin']); - $routes->post('menuitems', 'Presupuestoadmin::menuItems', ['as' => 'menuItemsOfPresupuestoAdmin']); - - $routes->get('cargar/(:any)', 'Presupuestoadmin::cargar/$1'); - $routes->post('comparadorinterior', 'Presupuestoadmin::obtenerComparadorInterior'); - $routes->post('comparadorexteriores', 'Presupuestoadmin::obtenerComparadorExteriores'); - $routes->post('comparadorguardas', 'Presupuestoadmin::obtenerComparadorGuardas'); - $routes->get('papelgenerico', 'Presupuestoadmin::getPapelGenerico'); - $routes->get('papelgramaje', 'Presupuestoadmin::getGramaje'); - $routes->get('papelimpresion', 'Presupuestoadmin::getPapelImpresion'); - $routes->get('maquinas', 'Presupuestoadmin::getMaquinas'); - $routes->post('getlinea', 'Presupuestoadmin::getLineaPresupuesto'); - $routes->post('clone', 'Presupuestoadmin::datatable_2'); - - $routes->get('presupuestosCliente', 'Presupuestoadmin::tablaClienteForm'); - $routes->get('getSumCliente/(:num)', 'Presupuestoadmin::obtenerTotalPresupuestosCliente/$1'); -}); -$routes->resource('presupuestoadmin', ['namespace' => 'App\Controllers\Presupuestos', 'controller' => 'Presupuestoadmin', 'except' => 'show,new,create,update']); - -$routes->group('presupuestocliente', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { - $routes->get('list', 'Presupuestocliente::list', ['as' => 'listaPresupuestos']); - $routes->post('datatable', 'Presupuestocliente::datatable', ['as' => 'datatableOfPresupuestos']); - $routes->get('add', 'Presupuestocliente::add', ['as' => 'nuevoPresupuestoCliente']); - $routes->post('add', 'Presupuestocliente::add', ['as' => 'crearPresupuestoCliente']); - $routes->post('edit/(:num)', 'Presupuestocliente::edit/$1', ['as' => 'editarPresupuestoCliente']); - $routes->get('edit/(:any)', 'Presupuestocliente::edit/$1', ['as' => 'editarPresupuestoCliente2']); - $routes->post('getgramaje', 'Presupuestocliente::getGramaje', ['as' => 'obtenerGramaje']); - $routes->post('presupuesto', 'Presupuestocliente::presupuesto', ['as' => 'presupuestoCliente']); - $routes->post('getDireccionesCliente', 'Presupuestocliente::getDireccionesCliente', ['as' => 'getDirecciones']); - $routes->post('getNuevaDireccion', 'Presupuestocliente::getNuevaDireccion', ['as' => 'nuevaDireccion']); - $routes->post('guardar', 'Presupuestocliente::guardar', ['as' => 'guardar']); - $routes->get('cargar/(:num)', 'Presupuestocliente::cargar/$1', ['as' => 'cargarPresupuesto']); - $routes->post('duplicarPresupuesto', 'Presupuestocliente::duplicarPresupuesto', ['as' => 'duplicarPresupuesto']); - $routes->post('calcular', 'Presupuestocliente::calcular', ['as' => 'calcularPresupuesto']); - $routes->post('calcularsolapas', 'Presupuestocliente::calcularMaxSolapas', ['as' => 'calcularSolapas']); - $routes->post('checklomo', 'Presupuestocliente::check_lomo_interior'); -}); -$routes->resource('presupuestocliente', ['namespace' => 'App\Controllers\Presupuestos', 'controller' => 'Presupuestocliente', 'except' => 'show,new,create,update']); - -$routes->group('importador', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { - $routes->get('', 'Importadorpresupuestos::index', ['as' => 'importadorPresupuestos']); - $routes->get('clientlist', 'Importadorpresupuestos::getClientList', ['as' => 'clientList']); - $routes->get('presupuestoslist', 'Importadorpresupuestos::getPresupuestosList', ['as' => 'presupuestosList']); - $routes->get('getencuadernacion', 'Importadorpresupuestos::getEncuadernacionList'); - $routes->get('getpresupuestodata', 'Importadorpresupuestos::getPresupuesto', ['as' => 'getPresupuesto']); - $routes->post('importar', 'Importadorpresupuestos::importarPresupuesto'); -}); -$routes->resource('presupuestocliente', ['namespace' => 'App\Controllers\Presupuestos', 'controller' => 'Presupuestocliente', 'except' => 'show,new,create,update']); $routes->group('serviciosacabados', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { $routes->get('getacabados', 'Presupuestoacabados::getAcabados'); diff --git a/ci4/app/Config/Routes/ComprasRoutes.php b/ci4/app/Config/Routes/ComprasRoutes.php new file mode 100644 index 00000000..eea2da0c --- /dev/null +++ b/ci4/app/Config/Routes/ComprasRoutes.php @@ -0,0 +1,27 @@ +group('compras', ['namespace' => 'App\Controllers\Compras'], function ($routes) { + $routes->group('proveedores', ['namespace' => 'App\Controllers\Compras'], function ($routes) { + $routes->get('', 'Proveedores::index', ['as' => 'proveedorList']); + $routes->get('add', 'Proveedores::add', ['as' => 'newProveedor']); + $routes->post('add', 'Proveedores::add', ['as' => 'createProveedor']); + $routes->post('create', 'Proveedores::create', ['as' => 'ajaxCreateProveedor']); + $routes->put('(:num)/update', 'Proveedores::update/$1', ['as' => 'ajaxUpdateProveedor']); + $routes->get('edit/(:num)', 'Proveedores::edit/$1', ['as' => 'editProveedor']); + $routes->post('edit/(:num)', 'Proveedores::edit/$1', ['as' => 'updateProveedor']); + $routes->post('datatable', 'Proveedores::datatable', ['as' => 'dataTableOfProveedores']); + $routes->get('delete/(:num)', 'Proveedores::delete/$1', ['as' => 'deleteProveedores']); + $routes->post('allmenuitems', 'Proveedores::allItemsSelect', ['as' => 'select2ItemsOfProveedores']); + $routes->post('menuitems', 'Proveedores::menuItems', ['as' => 'menuItemsOfProveedores']); + }); +}); + +$routes->group('proveedorestipos', ['namespace' => 'App\Controllers\Compras'], function ($routes) { + $routes->post('menuitems', 'ProveedoresTipos::menuItems', ['as' => 'menuItemsOfProveedoresTipos']); +}); \ No newline at end of file diff --git a/ci4/app/Config/Routes/PresupuestosRoutes.php b/ci4/app/Config/Routes/PresupuestosRoutes.php new file mode 100644 index 00000000..a4e9dd37 --- /dev/null +++ b/ci4/app/Config/Routes/PresupuestosRoutes.php @@ -0,0 +1,64 @@ +group('presupuestoadmin', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { + $routes->get('list/(:num)', 'Presupuestoadmin::list/$1', ['as' => 'presupuestoAdminList']); // HOMOGENIZAR CON ARGS DINAMICOS!!! + $routes->get('add/(:num)', 'Presupuestoadmin::add/$1', ['as' => 'newPresupuestoAdmin']); + $routes->get('edit/(:any)', 'Presupuestoadmin::edit/$1', ['as' => 'editarPresupuestoAdmin']); + $routes->post('add/(:num)', 'Presupuestoadmin::add/$1', ['as' => 'createPresupuestoAdmin']); + $routes->post('create', 'Presupuestoadmin::create', ['as' => 'ajaxCreatePresupuestoAdmin']); + $routes->put('(:num)/update', 'Presupuestoadmin::update/$1', ['as' => 'ajaxUpdatePresupuestoAdmin']); + $routes->post('edit/(:num)', 'Presupuestoadmin::edit/$1', ['as' => 'updatePresupuestoAdmin']); + $routes->post('datatable', 'Presupuestoadmin::datatable', ['as' => 'dataTableOfPresupuestoAdmin']); + $routes->post('datatable_2', 'Presupuestoadmin::datatable_2', ['as' => 'updateDataOfPresupuestoAdmin']); + $routes->post('allmenuitems', 'Presupuestoadmin::allItemsSelect', ['as' => 'select2ItemsOfPresupuestoAdmin']); + $routes->post('menuitems', 'Presupuestoadmin::menuItems', ['as' => 'menuItemsOfPresupuestoAdmin']); + + $routes->get('cargar/(:any)', 'Presupuestoadmin::cargar/$1'); + $routes->post('comparadorinterior', 'Presupuestoadmin::obtenerComparadorInterior'); + $routes->post('comparadorexteriores', 'Presupuestoadmin::obtenerComparadorExteriores'); + $routes->post('comparadorguardas', 'Presupuestoadmin::obtenerComparadorGuardas'); + $routes->get('papelgenerico', 'Presupuestoadmin::getPapelGenerico'); + $routes->get('papelgramaje', 'Presupuestoadmin::getGramaje'); + $routes->get('papelimpresion', 'Presupuestoadmin::getPapelImpresion'); + $routes->get('maquinas', 'Presupuestoadmin::getMaquinas'); + $routes->post('getlinea', 'Presupuestoadmin::getLineaPresupuesto'); + $routes->post('clone', 'Presupuestoadmin::datatable_2'); + + $routes->get('presupuestosCliente', 'Presupuestoadmin::tablaClienteForm'); + $routes->get('getSumCliente/(:num)', 'Presupuestoadmin::obtenerTotalPresupuestosCliente/$1'); +}); + +//$routes->resource('presupuestoadmin', ['namespace' => 'App\Controllers\Presupuestos', 'controller' => 'Presupuestoadmin', 'except' => 'show,new,create,update']); + +$routes->group('presupuestocliente', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { + $routes->get('list', 'Presupuestocliente::list', ['as' => 'listaPresupuestos']); + $routes->post('datatable', 'Presupuestocliente::datatable', ['as' => 'datatableOfPresupuestos']); + $routes->get('add', 'Presupuestocliente::add', ['as' => 'nuevoPresupuestoCliente']); + $routes->post('add', 'Presupuestocliente::add', ['as' => 'crearPresupuestoCliente']); + $routes->post('edit/(:num)', 'Presupuestocliente::edit/$1', ['as' => 'editarPresupuestoCliente']); + $routes->get('edit/(:any)', 'Presupuestocliente::edit/$1', ['as' => 'editarPresupuestoCliente2']); + $routes->post('getgramaje', 'Presupuestocliente::getGramaje', ['as' => 'obtenerGramaje']); + $routes->post('presupuesto', 'Presupuestocliente::presupuesto', ['as' => 'presupuestoCliente']); + $routes->post('getDireccionesCliente', 'Presupuestocliente::getDireccionesCliente', ['as' => 'getDirecciones']); + $routes->post('getNuevaDireccion', 'Presupuestocliente::getNuevaDireccion', ['as' => 'nuevaDireccion']); + $routes->post('guardar', 'Presupuestocliente::guardar', ['as' => 'guardar']); + $routes->get('cargar/(:num)', 'Presupuestocliente::cargar/$1', ['as' => 'cargarPresupuesto']); + $routes->post('duplicarPresupuesto', 'Presupuestocliente::duplicarPresupuesto', ['as' => 'duplicarPresupuesto']); + $routes->post('calcular', 'Presupuestocliente::calcular', ['as' => 'calcularPresupuesto']); + $routes->post('calcularsolapas', 'Presupuestocliente::calcularMaxSolapas', ['as' => 'calcularSolapas']); + $routes->post('checklomo', 'Presupuestocliente::check_lomo_interior'); +}); +//$routes->resource('presupuestocliente', ['namespace' => 'App\Controllers\Presupuestos', 'controller' => 'Presupuestocliente', 'except' => 'show,new,create,update']); + +$routes->group('importador', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { + $routes->get('', 'Importadorpresupuestos::index', ['as' => 'importadorPresupuestos']); + $routes->get('clientlist', 'Importadorpresupuestos::getClientList', ['as' => 'clientList']); + $routes->get('presupuestoslist', 'Importadorpresupuestos::getPresupuestosList', ['as' => 'presupuestosList']); + $routes->get('getencuadernacion', 'Importadorpresupuestos::getEncuadernacionList'); + $routes->get('getpresupuestodata', 'Importadorpresupuestos::getPresupuesto', ['as' => 'getPresupuesto']); + $routes->post('importar', 'Importadorpresupuestos::importarPresupuesto'); +}); \ No newline at end of file From 94a2a1dd2ec9f3d062be840e322968c65ef8ec6c Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 8 Apr 2025 22:41:25 +0200 Subject: [PATCH 4/8] Resolviendo conflictos --- ci4/app/Config/Routing.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci4/app/Config/Routing.php b/ci4/app/Config/Routing.php index ae93cab1..26bd3d2b 100644 --- a/ci4/app/Config/Routing.php +++ b/ci4/app/Config/Routing.php @@ -88,7 +88,7 @@ class Routing extends BaseRouting * * If FALSE, will stop searching and do NO automatic routing. */ - public bool $autoRoute = false; + public bool $autoRoute = true; /** * If TRUE, will enable the use of the 'prioritize' option From 5a2b2ee7cb1ba17325c4bb70202a070007fd4e75 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 8 Apr 2025 22:43:49 +0200 Subject: [PATCH 5/8] Resolviendo conflictos --- ci4/app/Config/Routing.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci4/app/Config/Routing.php b/ci4/app/Config/Routing.php index 26bd3d2b..ee51edc5 100644 --- a/ci4/app/Config/Routing.php +++ b/ci4/app/Config/Routing.php @@ -88,7 +88,7 @@ class Routing extends BaseRouting * * If FALSE, will stop searching and do NO automatic routing. */ - public bool $autoRoute = true; + public bool $autoRoute = true; /** * If TRUE, will enable the use of the 'prioritize' option From af57f7d5aebd67a260f3de9f1d97e558cebe6b7a Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 9 Apr 2025 00:37:30 +0200 Subject: [PATCH 6/8] Modificado Paises al metodo JS --- ci4/app/Config/Routes/ConfiguracionRoutes.php | 3 +- ci4/app/Config/Routing.php | 2 +- ci4/app/Controllers/Configuracion/Paises.php | 89 ++++++++------ ci4/app/Entities/Configuracion/PaisEntity.php | 2 +- ci4/app/Models/Configuracion/PaisModel.php | 47 ++----- .../configuracion/paises/viewPaisForm.php | 6 +- .../configuracion/paises/viewPaisList.php | 115 +----------------- .../assets/js/safekat/pages/paises/list.js | 97 +++++++++++++++ 8 files changed, 169 insertions(+), 192 deletions(-) create mode 100644 httpdocs/assets/js/safekat/pages/paises/list.js diff --git a/ci4/app/Config/Routes/ConfiguracionRoutes.php b/ci4/app/Config/Routes/ConfiguracionRoutes.php index 947c4e8e..1dd58f89 100644 --- a/ci4/app/Config/Routes/ConfiguracionRoutes.php +++ b/ci4/app/Config/Routes/ConfiguracionRoutes.php @@ -12,10 +12,11 @@ $routes->group('configuracion', ['namespace' => 'App\Controllers\Configuracion'] $routes->get('', 'Paises::index', ['as' => 'paisList']); $routes->get('add', 'Paises::add', ['as' => 'newPais']); $routes->post('add', 'Paises::add', ['as' => 'createPais']); + $routes->get('delete/(:num)', 'Paises::delete/$1'); $routes->post('create', 'Paises::create', ['as' => 'ajaxCreatePais']); $routes->put('update/(:num)', 'Paises::update/$1', ['as' => 'ajaxUpdatePais']); $routes->match(['get', 'post'], 'edit/(:num)', 'Paises::edit/$1', ['as' => 'updatePais']); - $routes->post('datatable', 'Paises::datatable', ['as' => 'dataTableOfPaises']); + $routes->get('datatable', 'Paises::datatable', ['as' => 'dataTableOfPaises']); $routes->post('allmenuitems', 'Paises::allItemsSelect', ['as' => 'select2ItemsOfPaises']); $routes->post('menuitems', 'Paises::menuItems', ['as' => 'menuItemsOfPaises']); $routes->get('menuitems2', 'Paises::menuItems2', ['as' => 'menuItemsOfPaises2']); diff --git a/ci4/app/Config/Routing.php b/ci4/app/Config/Routing.php index ee51edc5..3ffef3bb 100644 --- a/ci4/app/Config/Routing.php +++ b/ci4/app/Config/Routing.php @@ -88,7 +88,7 @@ class Routing extends BaseRouting * * If FALSE, will stop searching and do NO automatic routing. */ - public bool $autoRoute = true; + public bool $autoRoute = false; /** * If TRUE, will enable the use of the 'prioritize' option diff --git a/ci4/app/Controllers/Configuracion/Paises.php b/ci4/app/Controllers/Configuracion/Paises.php index a9d8b5d1..20668475 100755 --- a/ci4/app/Controllers/Configuracion/Paises.php +++ b/ci4/app/Controllers/Configuracion/Paises.php @@ -1,4 +1,5 @@ -request->getPost()) : + if ($this->request->getPost()): $postData = $this->request->getPost(); $sanitizedData = $this->sanitized($postData, true); $noException = true; - if ($successfulResult = $this->canValidate()) : + if ($successfulResult = $this->canValidate()): - if ($this->canValidate()) : + if ($this->canValidate()): try { $successfulResult = $this->model->skipValidation(true)->save($sanitizedData); } catch (\Exception $e) { @@ -86,14 +89,14 @@ class Paises extends \App\Controllers\BaseResourceController $thenRedirect = true; // Change this to false if you want your user to stay on the form after submission endif; - if ($noException && $successfulResult) : + if ($noException && $successfulResult): $id = $this->model->db->insertID(); $message = lang('Basic.global.saveSuccess', [lang('Basic.global.record')]) . '.'; - if ($thenRedirect) : - if (!empty($this->indexRoute)) : + if ($thenRedirect): + if (!empty($this->indexRoute)): return redirect()->to(route_to($this->indexRoute))->with('sweet-success', $message); else: return $this->redirect2listView('sweet-success', $message); @@ -117,20 +120,20 @@ class Paises extends \App\Controllers\BaseResourceController public function edit($requestedId = null) { - if ($requestedId == null) : + if ($requestedId == null): return $this->redirect2listView(); endif; $id = filter_var($requestedId, FILTER_SANITIZE_URL); $paisEntity = $this->model->find($id); - if ($paisEntity == false) : + if ($paisEntity == false): $message = lang('Basic.global.notFoundWithIdErr', [mb_strtolower(lang('Paises.pais')), $id]); return $this->redirect2listView('sweet-error', $message); endif; - - if ($this->request->getPost()) : + + if ($this->request->getPost()): $nullIfEmpty = true; // !(phpversion() >= '8.1'); @@ -143,10 +146,10 @@ class Paises extends \App\Controllers\BaseResourceController $noException = true; - if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) : + if ($successfulResult = $this->canValidate()): // if ($successfulResult = $this->validate($this->formValidationRules) ) : - if ($this->canValidate()) : + if ($this->canValidate()): try { $successfulResult = $this->model->skipValidation(true)->update($id, $sanitizedData); } catch (\Exception $e) { @@ -163,12 +166,12 @@ class Paises extends \App\Controllers\BaseResourceController $thenRedirect = false; endif; - if ($noException && $successfulResult) : + if ($noException && $successfulResult): $id = $paisEntity->id ?? $id; $message = lang('Basic.global.updateSuccess', [lang('Basic.global.record')]) . '.'; - if ($thenRedirect) : - if (!empty($this->indexRoute)) : + if ($thenRedirect): + if (!empty($this->indexRoute)): return redirect()->to(route_to($this->indexRoute))->with('sweet-success', $message); else: return $this->redirect2listView('sweet-success', $message); @@ -193,30 +196,38 @@ class Paises extends \App\Controllers\BaseResourceController public function datatable() { - if ($this->request->isAJAX()) { - $reqData = $this->request->getPost(); - if (!isset($reqData['draw']) || !isset($reqData['columns'])) { - $errstr = 'No data available in response to this specific request.'; - $response = $this->respond(Collection::datatable([], 0, 0, $errstr), 400, $errstr); - return $response; - } - $start = $reqData['start'] ?? 0; - $length = $reqData['length'] ?? 5; - $search = $reqData['search']['value']; - $requestedOrder = $reqData['order']['0']['column'] ?? 1; - $order = PaisModel::SORTABLE[$requestedOrder > 0 ? $requestedOrder : 1]; - $dir = $reqData['order']['0']['dir'] ?? 'asc'; + $q = $this->model->getDatatableQuery(); - $resourceData = $this->model->getResource($search)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject(); + $result = DataTable::of($q) + ->edit( + "show_erp", + function ($row, $meta) { + if($row->show_erp == 1) { + return ''; + }else{ + return ''; + } + } + ) + ->add("actionBtns", callback: function ($q) { + $actions = ''; + if (auth()->user()->can('paises.edit')) { + $actions .= ' +
+ +
'; + } + if (auth()->user()->can('paises.delete')) { + $actions .= ' +
+ +
'; + } + return $actions; + }); + + return $result->toJson(returnAsObject: true); - return $this->respond(Collection::datatable( - $resourceData, - $this->model->getResource()->countAllResults(), - $this->model->getResource($search)->countAllResults() - )); - } else { - return $this->failUnauthorized('Invalid request', 403); - } } public function allItemsSelect() @@ -277,7 +288,7 @@ class Paises extends \App\Controllers\BaseResourceController "id", "nombre as name" ] - )->orderBy("nombre", "asc"); + )->orderBy("nombre", "asc"); if ($this->request->getGet("q")) { $query->groupStart() ->orLike("lg_paises.nombre", $this->request->getGet("q")) diff --git a/ci4/app/Entities/Configuracion/PaisEntity.php b/ci4/app/Entities/Configuracion/PaisEntity.php index 9460f544..9fb8f33f 100755 --- a/ci4/app/Entities/Configuracion/PaisEntity.php +++ b/ci4/app/Entities/Configuracion/PaisEntity.php @@ -14,7 +14,7 @@ class PaisEntity extends \CodeIgniter\Entity\Entity "url_erp" => null, "user_erp" => null, "key_erp" => null, - "show_erp" => false, + "show_erp" => null, ]; protected $casts = [ "show_erp" => "boolean", diff --git a/ci4/app/Models/Configuracion/PaisModel.php b/ci4/app/Models/Configuracion/PaisModel.php index e94deab3..aaba9cbd 100755 --- a/ci4/app/Models/Configuracion/PaisModel.php +++ b/ci4/app/Models/Configuracion/PaisModel.php @@ -12,17 +12,6 @@ class PaisModel extends \App\Models\BaseModel */ protected $useAutoIncrement = true; - const SORTABLE = [ - 1 => "t1.id", - 2 => "t1.nombre", - 3 => "t1.code", - 4 => "t1.code3", - 5 => "t1.moneda", - 6 => "t1.url_erp", - 7 => "t1.user_erp", - 8 => "t1.key_erp", - 9 => "t1.show_erp", - ]; protected $allowedFields = ["nombre", "code", "code3", "moneda", "url_erp", "user_erp", "key_erp", "show_erp"]; protected $returnType = "App\Entities\Configuracion\PaisEntity"; @@ -91,38 +80,24 @@ class PaisModel extends \App\Models\BaseModel /** * Get resource data. * - * @param string $search - * * @return \CodeIgniter\Database\BaseBuilder */ - public function getResource(string $search = "") + public function getDatatableQuery() { $builder = $this->db ->table($this->table . " t1") ->select( - "t1.id AS id, t1.nombre AS nombre, t1.code AS code, t1.code3 AS code3, t1.moneda AS moneda, t1.url_erp AS url_erp, t1.user_erp AS user_erp, t1.key_erp AS key_erp, t1.show_erp AS show_erp" + "t1.id AS id, + t1.nombre AS nombre, + t1.code AS code, + t1.code3 AS code3, + t1.moneda AS moneda, + t1.url_erp AS url_erp, + t1.user_erp AS user_erp, + t1.key_erp AS key_erp, + t1.show_erp AS show_erp" ); - return empty($search) - ? $builder - : $builder - ->groupStart() - ->like("t1.id", $search) - ->orLike("t1.nombre", $search) - ->orLike("t1.code", $search) - ->orLike("t1.code3", $search) - ->orLike("t1.moneda", $search) - ->orLike("t1.url_erp", $search) - ->orLike("t1.user_erp", $search) - ->orLike("t1.key_erp", $search) - ->orLike("t1.id", $search) - ->orLike("t1.nombre", $search) - ->orLike("t1.code", $search) - ->orLike("t1.code3", $search) - ->orLike("t1.moneda", $search) - ->orLike("t1.url_erp", $search) - ->orLike("t1.user_erp", $search) - ->orLike("t1.key_erp", $search) - ->groupEnd(); + return $builder; } } diff --git a/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisForm.php b/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisForm.php index 0ad05ebc..00a34130 100644 --- a/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisForm.php +++ b/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisForm.php @@ -1,5 +1,5 @@ -include("themes_commonPartialsBs/select2bs5") ?> -include("themes_commonPartialsBs/sweetalert") ?> +include("themes/_commonPartialsBs/select2bs5") ?> +include("themes/_commonPartialsBs/sweetalert") ?> extend('themes/vuexy/main/defaultlayout') ?> section("content") ?>
@@ -11,7 +11,7 @@
- + getErrors()) ? $validation->listErrors("bootstrap_style") : "" ?>
diff --git a/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php b/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php index 2384ae6f..c11a6671 100644 --- a/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php +++ b/ci4/app/Views/themes/vuexy/form/configuracion/paises/viewPaisList.php @@ -25,7 +25,7 @@ - + @@ -43,119 +43,10 @@ endSection() ?> -section('additionalInlineJs') ?> - - const lastColNr = $('#tableOfPaises').find("tr:first th").length - 1; - const actionBtns = function(data) { - return ` -
- - -
- `; - }; - theTable = $('#tableOfPaises').DataTable({ - processing: true, - serverSide: true, - autoWidth: true, - responsive: true, - scrollX: true, - lengthMenu: [ 5, 10, 25, 50, 75, 100, 250, 500, 1000, 2500 ], - pageLength: 10, - lengthChange: true, - "dom": 'lfBrtip', - "buttons": [ - 'copy', 'csv', 'excel', 'print', { - extend: 'pdfHtml5', - orientation: 'landscape', - pageSize: 'A4' - } - ], - stateSave: true, - order: [[1, 'asc']], - language: { - url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" - }, - ajax : $.fn.dataTable.pipeline( { - url: '', - method: 'POST', - headers: {'X-Requested-With': 'XMLHttpRequest'}, - async: true, - }), - columnDefs: [ - { - orderable: false, - searchable: false, - targets: [lastColNr] - } - ], - columns : [ - { 'data': 'nombre' }, - { 'data': 'code' }, - { 'data': 'code3' }, - { 'data': 'moneda' }, - { 'data': 'url_erp' }, - { 'data': 'user_erp' }, - { 'data': 'key_erp' }, - { 'data': 'show_erp' }, - { 'data': actionBtns } - ] - }); - - theTable.on( 'draw.dt', function () { - const boolCols = [7]; - for (let coln of boolCols) { - theTable.column(coln, { page: 'current' }).nodes().each( function (cell, i) { - cell.innerHTML = cell.innerHTML == '1' ? '' : ''; - }); - } - }); - - $(document).on('click', '.btn-edit', function(e) { - window.location.href = `/edit/${$(this).attr('data-id')}`; - }); - - $(document).on('click', '.btn-delete', function(e) { - Swal.fire({ - title: '', - text: '', - icon: 'warning', - showCancelButton: true, - confirmButtonColor: '#3085d6', - confirmButtonText: '', - cancelButtonText: '', - cancelButtonColor: '#d33' - }) - .then((result) => { - const dataId = $(this).data('id'); - const row = $(this).closest('tr'); - if (result.value) { - $.ajax({ - url: `/${dataId}`, - method: 'DELETE', - }).done((data, textStatus, jqXHR) => { - Toast.fire({ - icon: 'success', - title: data.msg ?? jqXHR.statusText, - }); - - theTable.clearPipeline(); - theTable.row($(row)).invalidate().draw(); - }).fail((jqXHR, textStatus, errorThrown) => { - Toast.fire({ - icon: 'error', - title: jqXHR.responseJSON.messages.error, - }); - }) - } - }); - }); - -endSection() ?> - section('css') ?> "> + endSection() ?> @@ -167,5 +58,7 @@ + + endSection() ?> diff --git a/httpdocs/assets/js/safekat/pages/paises/list.js b/httpdocs/assets/js/safekat/pages/paises/list.js new file mode 100644 index 00000000..d154ef17 --- /dev/null +++ b/httpdocs/assets/js/safekat/pages/paises/list.js @@ -0,0 +1,97 @@ +import Ajax from '../../components/ajax.js'; + +document.addEventListener('DOMContentLoaded', function () { + + const lastColNr = $('#tableOfPaises').find("tr:first th").length - 1; + + const theTable = $('#tableOfPaises').DataTable({ + processing: true, + serverSide: true, + autoWidth: true, + responsive: true, + scrollX: true, + lengthMenu: [5, 10, 25, 50, 75, 100, 250, 500, 1000, 2500], + pageLength: 10, + lengthChange: true, + dom: 'lfBrtip', + buttons: [ + 'copy', 'csv', 'excel', 'print', { + extend: 'pdfHtml5', + orientation: 'landscape', + pageSize: 'A4' + } + ], + stateSave: true, + order: [[1, 'asc']], + language: { + url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" + }, + ajax: { + url: '/configuracion/paises/datatable', + method: 'GET' + }, + columnDefs: [ + { + orderable: false, + searchable: false, + targets: [lastColNr] + } + ], + columns: [ + { data: 'nombre' }, + { data: 'code' }, + { data: 'code3' }, + { data: 'moneda' }, + { data: 'url_erp' }, + { data: 'user_erp' }, + { data: 'key_erp' }, + { data: 'show_erp' }, + { data: 'actionBtns' } + ] + }); + + $(document).on('click', '.btn-edit', function (e) { + window.location.href = '/configuracion/paises/edit/' + $(this).attr('data-id'); + }); + + $(document).on('click', '.btn-delete', function (e) { + e.preventDefault(); + const row = $(this).closest('tr')[0]._DT_RowIndex; + const dataId = $(this).attr('data-id'); + + Swal.fire({ + title: '¿Estás seguro?', + text: 'Esta acción no se puede deshacer.', + icon: 'warning', + showCancelButton: true, + confirmButtonText: 'Sí', + cancelButtonText: 'No', + reverseButtons: false, + buttonsStyling: true, + customClass: { + confirmButton: 'btn btn-danger', // rojo para "Sí" + cancelButton: 'btn btn-secondary' // gris para "No" + } + }).then((result) => { + if (result.isConfirmed) { + new Ajax( + '/configuracion/paises/delete/' + dataId, + {}, + {}, + (data, textStatus, jqXHR) => { + theTable.clearPipeline(); + theTable.row($(row)).invalidate().draw(); + + popSuccessAlert(data.msg ?? jqXHR.statusText); + }, + (error) => { + console.error(error); + Swal.fire('Error', 'No se pudo eliminar el país.', 'error'); + } + ).get(); + } + }); + + }); + +}); From a31e0bddb65ad5a80c5c9c201e12d4bbcd909de1 Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 12 Apr 2025 22:14:57 +0200 Subject: [PATCH 7/8] =?UTF-8?q?A=C3=B1adido=20RBAC=20directory?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ci4/app/Config/RBAC/.gitkeep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 ci4/app/Config/RBAC/.gitkeep diff --git a/ci4/app/Config/RBAC/.gitkeep b/ci4/app/Config/RBAC/.gitkeep new file mode 100644 index 00000000..e69de29b From e8123c9fb814a86c9df00de4bc05ef9fe248005d Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 12 Apr 2025 22:19:48 +0200 Subject: [PATCH 8/8] Cambiado el flag de autorute a ON --- ci4/app/Config/Routing.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci4/app/Config/Routing.php b/ci4/app/Config/Routing.php index 3ffef3bb..ee51edc5 100644 --- a/ci4/app/Config/Routing.php +++ b/ci4/app/Config/Routing.php @@ -88,7 +88,7 @@ class Routing extends BaseRouting * * If FALSE, will stop searching and do NO automatic routing. */ - public bool $autoRoute = false; + public bool $autoRoute = true; /** * If TRUE, will enable the use of the 'prioritize' option