diff --git a/ci4/app/Config/Routes.php b/ci4/app/Config/Routes.php
index 94512c85..52415fbe 100644
--- a/ci4/app/Config/Routes.php
+++ b/ci4/app/Config/Routes.php
@@ -378,23 +378,32 @@ $routes->group('tarifaencuadernacionlineas', ['namespace' => 'App\Controllers\Ta
});
$routes->resource('tarifaencuadernacionlineas', ['namespace' => 'App\Controllers\Tarifas', 'controller' => 'Tarifaencuadernacionlineas', 'except' => 'show,new,create,update']);
-$routes->group('clientecontactos', ['namespace' => 'App\Controllers\Clientes'], function ($routes) {
- $routes->get('', 'Clientecontactos::index', ['as' => 'ClienteContactosList']);
- $routes->get('add', 'Clientecontactos::add', ['as' => 'newClienteContactos']);
- $routes->post('add', 'Clientecontactos::add', ['as' => 'createClienteContactos']);
- $routes->post('create', 'Clientecontactos::create', ['as' => 'ajaxCreateClienteContactos']);
- $routes->put('(:num)/update', 'Clientecontactos::update/$1', ['as' => 'ajaxUpdateClienteContactos']);
- $routes->post('(:num)/edit', 'Clientecontactos::edit/$1', ['as' => 'updateClienteContactos']);
- $routes->post('datatable', 'Clientecontactos::datatable', ['as' => 'dataTableOfClienteContactos']);
- $routes->post('datatable_editor', 'Clientecontactos::datatable_editor', ['as' => 'editorOfClienteContactos']);
- $routes->post('allmenuitems', 'Clientecontactos::allItemsSelect', ['as' => 'select2ItemsOfClienteContactos']);
- $routes->post('menuitems', 'Clientecontactos::menuItems', ['as' => 'menuItemsOfClienteContactos']);
+
+$routes->group('tarifaencuadernaciontiradas', ['namespace' => 'App\Controllers\Tarifas'], function ($routes) {
+ $routes->post('datatable', 'Tarifaencuadernaciontiradas::datatable', ['as' => 'dataTableOfTarifaEncuadernacionTiradas']);
+ $routes->post('datatable_editor', 'Tarifaencuadernaciontiradas::datatable_editor', ['as' => 'editorOfTarifaEncuadernacionTiradas']);
+ $routes->post('menuitems', 'Tarifaencuadernaciontiradas::menuItems', ['as' => 'menuItemsOfTarifaencuadernaciontiradas']);
+});
+$routes->resource('tarifaencuadernaciontiradas', ['namespace' => 'App\Controllers\Tarifas', 'controller' => 'Tarifaencuadernaciontiradas', 'except' => 'show,new,create,update']);
+
+
+$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->post('edit/(:num)', 'Proveedores::edit/$1', ['as' => 'updateProveedor']);
+ $routes->post('datatable', 'Proveedores::datatable', ['as' => 'dataTableOfProveedores']);
+ $routes->post('allmenuitems', 'Proveedores::allItemsSelect', ['as' => 'select2ItemsOfProveedores']);
+ $routes->post('menuitems', 'Proveedores::menuItems', ['as' => 'menuItemsOfProveedores']);
});
-$routes->resource('ClienteContactos', ['namespace' => 'App\Controllers\Tarifas', 'controller' => 'ClienteContactos', 'except' => 'show,new,create,update']);
-
-
-
+$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']);
/*
* --------------------------------------------------------------------
diff --git a/ci4/app/Controllers/Compras/Proveedores.php b/ci4/app/Controllers/Compras/Proveedores.php
new file mode 100644
index 00000000..6c524d49
--- /dev/null
+++ b/ci4/app/Controllers/Compras/Proveedores.php
@@ -0,0 +1,329 @@
+viewData['pageTitle'] = lang('Proveedores.moduleTitle');
+ $this->viewData['usingSweetAlert'] = true;
+
+ // Se indica que este controlador trabaja con soft_delete
+ $this->soft_delete = true;
+ // Se indica el flag para los ficheros borrados
+ $this->delete_flag = 1;
+
+ $this->viewData = ['usingServerSideDataTable' => true];
+
+
+ // Breadcrumbs (IMN)
+ $this->viewData['breadcrumb'] = [
+ ['title' => lang("App.menu_configuration"), 'route' => "javascript:void(0);", 'active' => false],
+ ['title' => lang("App.menu_proveedores"), 'route' => site_url('compras/proveedores'), 'active' => true]
+ ];
+
+ parent::initController($request, $response, $logger);
+ }
+
+
+ public function index() {
+
+ $viewData = [
+ 'currentModule' => static::$controllerSlug,
+ 'pageSubTitle' => lang('Basic.global.ManageAllRecords', [lang('Proveedores.proveedor')]),
+ 'proveedorEntity' => new ProveedorEntity(),
+ 'usingServerSideDataTable' => true,
+
+ ];
+
+ $viewData = array_merge($this->viewData, $viewData); // merge any possible values from the parent controller class
+
+ return view(static::$viewPath.'viewProveedorList', $viewData);
+ }
+
+
+ public function add() {
+
+
+
+ $requestMethod = $this->request->getMethod();
+
+ if ($requestMethod === 'post') :
+
+ $nullIfEmpty = true; // !(phpversion() >= '8.1');
+
+ $postData = $this->request->getPost();
+
+ $sanitizedData = $this->sanitized($postData, $nullIfEmpty);
+
+
+ $noException = true;
+ if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
+
+
+ if ($this->canValidate()) :
+ try {
+ $successfulResult = $this->model->skipValidation(true)->save($sanitizedData);
+ } catch (\Exception $e) {
+ $noException = false;
+ $this->dealWithException($e);
+ }
+ else:
+ $this->viewData['errorMessage'] = lang('Basic.global.formErr1', [mb_strtolower(lang('Proveedores.proveedor'))]);
+ $this->session->setFlashdata('formErrors', $this->model->errors());
+ endif;
+
+ $thenRedirect = true; // Change this to false if you want your user to stay on the form after submission
+ endif;
+ if ($noException && $successfulResult) :
+
+ $id = $this->model->db->insertID();
+
+ $message = lang('Basic.global.saveSuccess', [mb_strtolower(lang('Proveedores.proveedor'))]).'.';
+ $message .= anchor( "admin/proveedores/{$id}/edit" , lang('Basic.global.continueEditing').'?');
+ $message = ucfirst(str_replace("'", "\'", $message));
+
+ if ($thenRedirect) :
+ if (!empty($this->indexRoute)) :
+ return redirect()->to(route_to( $this->indexRoute ) )->with('sweet-success', $message);
+ else:
+ return $this->redirect2listView('sweet-success', $message);
+ endif;
+ else:
+ $this->session->setFlashData('sweet-success', $message);
+ endif;
+
+ endif; // $noException && $successfulResult
+
+ endif; // ($requestMethod === 'post')
+
+ $this->viewData['proveedorEntity'] = isset($sanitizedData) ? new ProveedorEntity($sanitizedData) : new ProveedorEntity();
+ $this->viewData['proveedorTipoList'] = $this->getProveedorTipoListItems($proveedorEntity->tipo_id ?? null);
+ $this->viewData['provinciaList'] = $this->getProvinciaListItems($proveedorEntity->provincia_id ?? null);
+ $this->viewData['paisList'] = $this->getPaisListItems();
+
+ $this->viewData['formAction'] = route_to('createProveedor');
+
+ $this->viewData['boxTitle'] = lang('Basic.global.addNew').' '.lang('Proveedores.moduleTitle').' '.lang('Basic.global.addNewSuffix');
+
+
+ return $this->displayForm(__METHOD__);
+ } // end function add()
+
+ public function edit($requestedId = null) {
+
+ if ($requestedId == null) :
+ return $this->redirect2listView();
+ endif;
+ $id = filter_var($requestedId, FILTER_SANITIZE_URL);
+ $proveedorEntity = $this->model->find($id);
+
+ if ($proveedorEntity == false) :
+ $message = lang('Basic.global.notFoundWithIdErr', [mb_strtolower(lang('Proveedores.proveedor')), $id]);
+ return $this->redirect2listView('sweet-error', $message);
+ endif;
+
+ $requestMethod = $this->request->getMethod();
+
+ if ($requestMethod === 'post') :
+
+ $nullIfEmpty = true; // !(phpversion() >= '8.1');
+
+ $postData = $this->request->getPost();
+
+ $sanitizedData = $this->sanitized($postData, $nullIfEmpty);
+
+
+
+ $noException = true;
+ if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
+
+
+
+ if ($this->canValidate()) :
+ try {
+ $successfulResult = $this->model->skipValidation(true)->update($id, $sanitizedData);
+ } catch (\Exception $e) {
+ $noException = false;
+ $this->dealWithException($e);
+ }
+ else:
+ $this->viewData['warningMessage'] = lang('Basic.global.formErr1', [mb_strtolower(lang('Proveedores.proveedor'))]);
+ $this->session->setFlashdata('formErrors', $this->model->errors());
+
+ endif;
+
+ $proveedorEntity->fill($sanitizedData);
+
+ $thenRedirect = false;
+ endif;
+ if ($noException && $successfulResult) :
+ $id = $proveedorEntity->id ?? $id;
+ $message = lang('Basic.global.updateSuccess', [lang('Basic.global.record')]).'.';
+ //$message = lang('Basic.global.updateSuccess', [mb_strtolower(lang('Proveedores.proveedor'))]).'.';
+ //$message .= anchor( "admin/proveedores/{$id}/edit" , lang('Basic.global.continueEditing').'?');
+ //$message = ucfirst(str_replace("'", "\'", $message));
+
+ if ($thenRedirect) :
+ if (!empty($this->indexRoute)) :
+ return redirect()->to(route_to( $this->indexRoute ) )->with('sweet-success', $message);
+ else:
+ return $this->redirect2listView('sweet-success', $message);
+ endif;
+ else:
+ $this->session->setFlashData('sweet-success', $message);
+ endif;
+
+ endif; // $noException && $successfulResult
+ endif; // ($requestMethod === 'post')
+
+ $this->viewData['proveedorEntity'] = $proveedorEntity;
+ $this->viewData['proveedorTipoList'] = $this->getProveedorTipoListItems($proveedorEntity->tipo_id ?? null);
+ $this->viewData['provinciaList'] = $this->getProvinciaListItems($proveedorEntity->provincia_id ?? null);
+ $this->viewData['paisList'] = $this->getPaisListItems();
+
+ $this->viewData['formAction'] = route_to('updateProveedor', $id);
+
+ $this->viewData['boxTitle'] = lang('Basic.global.edit2').' '.lang('Proveedores.moduleTitle').' '.lang('Basic.global.edit3');
+
+
+ return $this->displayForm(__METHOD__, $id);
+ } // end function edit(...)
+
+
+
+ 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 = ProveedorModel::SORTABLE[$requestedOrder >= 0 ? $requestedOrder : 0];
+ $dir = $reqData['order']['0']['dir'] ?? 'asc';
+
+ $resourceData = $this->model->getResource($search)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject();
+
+ 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() {
+ if ($this->request->isAJAX()) {
+ $onlyActiveOnes = true;
+ $reqVal = $this->request->getPost('val') ?? 'id';
+ $menu = $this->model->getAllForMenu($reqVal.', nombre', 'nombre', $onlyActiveOnes, false);
+ $nonItem = new \stdClass;
+ $nonItem->id = '';
+ $nonItem->nombre = '- '.lang('Basic.global.None').' -';
+ array_unshift($menu , $nonItem);
+
+ $newTokenHash = csrf_hash();
+ $csrfTokenName = csrf_token();
+ $data = [
+ 'menu' => $menu,
+ $csrfTokenName => $newTokenHash
+ ];
+ return $this->respond($data);
+ } else {
+ return $this->failUnauthorized('Invalid request', 403);
+ }
+ }
+
+ public function menuItems() {
+ if ($this->request->isAJAX()) {
+ $searchStr = goSanitize($this->request->getPost('searchTerm'))[0];
+ $reqId = goSanitize($this->request->getPost('id'))[0];
+ $reqText = goSanitize($this->request->getPost('text'))[0];
+ $onlyActiveOnes = false;
+ $columns2select = [$reqId ?? 'id', $reqText ?? 'nombre'];
+ $onlyActiveOnes = false;
+ $menu = $this->model->getSelect2MenuItems($columns2select, $columns2select[1], $onlyActiveOnes, $searchStr);
+ $nonItem = new \stdClass;
+ $nonItem->id = '';
+ $nonItem->text = '- '.lang('Basic.global.None').' -';
+ array_unshift($menu , $nonItem);
+
+ $newTokenHash = csrf_hash();
+ $csrfTokenName = csrf_token();
+ $data = [
+ 'menu' => $menu,
+ $csrfTokenName => $newTokenHash
+ ];
+ return $this->respond($data);
+ } else {
+ return $this->failUnauthorized('Invalid request', 403);
+ }
+ }
+
+
+ protected function getProveedorTipoListItems($selId = null) {
+ $data = [''=>lang('Basic.global.pleaseSelectA', [mb_strtolower(lang('Proveedores.tipoId'))])];
+ if (!empty($selId)) :
+ $proveedorTipoModel = model('App\Models\Compras\ProveedorTipoModel');
+
+ $selOption = $proveedorTipoModel->where('id', $selId)->findColumn('nombre');
+ if (!empty($selOption)) :
+ $data[$selId] = $selOption[0];
+ endif;
+ endif;
+ return $data;
+ }
+
+
+ protected function getPaisListItems() {
+ $paisModel = model('App\Models\Configuracion\PaisModel');
+ $onlyActiveOnes = true;
+ $data = $paisModel->getAllForMenu('id, nombre','nombre', $onlyActiveOnes );
+
+ return $data;
+ }
+
+
+ protected function getProvinciaListItems($selId = null) {
+ $data = [''=>lang('Basic.global.pleaseSelectA', [mb_strtolower(lang('Provincias.provincia'))])];
+ if (!empty($selId)) :
+ $provinciaModel = model('App\Models\Configuracion\ProvinciaModel');
+
+ $selOption = $provinciaModel->where('id', $selId)->findColumn('nombre');
+ if (!empty($selOption)) :
+ $data[$selId] = $selOption[0];
+ endif;
+ endif;
+ return $data;
+ }
+
+}
diff --git a/ci4/app/Controllers/Compras/ProveedoresTipos.php b/ci4/app/Controllers/Compras/ProveedoresTipos.php
new file mode 100644
index 00000000..45b0cc1b
--- /dev/null
+++ b/ci4/app/Controllers/Compras/ProveedoresTipos.php
@@ -0,0 +1,271 @@
+viewData['pageTitle'] = lang('LgProveedoresTipos.moduleTitle');
+ $this->viewData['usingSweetAlert'] = true;
+ parent::initController($request, $response, $logger);
+ }
+
+
+ public function index() {
+
+ $viewData = [
+ 'currentModule' => static::$controllerSlug,
+ 'pageSubTitle' => lang('Basic.global.ManageAllRecords', [lang('LgProveedoresTipos.proveedorTipo')]),
+ 'proveedorTipoEntity' => new ProveedorTipoEntity(),
+ 'usingServerSideDataTable' => true,
+
+ ];
+
+ $viewData = array_merge($this->viewData, $viewData); // merge any possible values from the parent controller class
+
+ return view(static::$viewPath.'viewProveedorTipoList', $viewData);
+ }
+
+
+ public function add() {
+
+
+
+ $requestMethod = $this->request->getMethod();
+
+ if ($requestMethod === 'post') :
+
+ $nullIfEmpty = true; // !(phpversion() >= '8.1');
+
+ $postData = $this->request->getPost();
+
+ $sanitizedData = $this->sanitized($postData, $nullIfEmpty);
+
+
+ $noException = true;
+ if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
+
+
+ if ($this->canValidate()) :
+ try {
+ $successfulResult = $this->model->skipValidation(true)->save($sanitizedData);
+ } catch (\Exception $e) {
+ $noException = false;
+ $this->dealWithException($e);
+ }
+ else:
+ $this->viewData['errorMessage'] = lang('Basic.global.formErr1', [mb_strtolower(lang('LgProveedoresTipos.proveedorTipo'))]);
+ $this->session->setFlashdata('formErrors', $this->model->errors());
+ endif;
+
+ $thenRedirect = true; // Change this to false if you want your user to stay on the form after submission
+ endif;
+ if ($noException && $successfulResult) :
+
+ $id = $this->model->db->insertID();
+
+ $message = lang('Basic.global.saveSuccess', [mb_strtolower(lang('LgProveedoresTipos.proveedorTipo'))]).'.';
+ $message .= anchor( "admin/proveedorestipos/{$id}/edit" , lang('Basic.global.continueEditing').'?');
+ $message = ucfirst(str_replace("'", "\'", $message));
+
+ if ($thenRedirect) :
+ if (!empty($this->indexRoute)) :
+ return redirect()->to(route_to( $this->indexRoute ) )->with('sweet-success', $message);
+ else:
+ return $this->redirect2listView('sweet-success', $message);
+ endif;
+ else:
+ $this->session->setFlashData('sweet-success', $message);
+ endif;
+
+ endif; // $noException && $successfulResult
+
+ endif; // ($requestMethod === 'post')
+
+ $this->viewData['proveedorTipoEntity'] = isset($sanitizedData) ? new ProveedorTipoEntity($sanitizedData) : new ProveedorTipoEntity();
+
+ $this->viewData['formAction'] = route_to('createProveedorTipo');
+
+ $this->viewData['boxTitle'] = lang('Basic.global.addNew').' '.lang('LgProveedoresTipos.moduleTitle').' '.lang('Basic.global.addNewSuffix');
+
+
+ return $this->displayForm(__METHOD__);
+ } // end function add()
+
+ public function edit($requestedId = null) {
+
+ if ($requestedId == null) :
+ return $this->redirect2listView();
+ endif;
+ $id = filter_var($requestedId, FILTER_SANITIZE_URL);
+ $proveedorTipoEntity = $this->model->find($id);
+
+ if ($proveedorTipoEntity == false) :
+ $message = lang('Basic.global.notFoundWithIdErr', [mb_strtolower(lang('LgProveedoresTipos.proveedorTipo')), $id]);
+ return $this->redirect2listView('sweet-error', $message);
+ endif;
+
+ $requestMethod = $this->request->getMethod();
+
+ if ($requestMethod === 'post') :
+
+ $nullIfEmpty = true; // !(phpversion() >= '8.1');
+
+ $postData = $this->request->getPost();
+
+ $sanitizedData = $this->sanitized($postData, $nullIfEmpty);
+
+
+
+ $noException = true;
+ if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
+
+
+
+ if ($this->canValidate()) :
+ try {
+ $successfulResult = $this->model->skipValidation(true)->update($id, $sanitizedData);
+ } catch (\Exception $e) {
+ $noException = false;
+ $this->dealWithException($e);
+ }
+ else:
+ $this->viewData['warningMessage'] = lang('Basic.global.formErr1', [mb_strtolower(lang('LgProveedoresTipos.proveedorTipo'))]);
+ $this->session->setFlashdata('formErrors', $this->model->errors());
+
+ endif;
+
+ $proveedorTipoEntity->fill($sanitizedData);
+
+ $thenRedirect = true;
+ endif;
+ if ($noException && $successfulResult) :
+ $id = $proveedorTipoEntity->id ?? $id;
+ $message = lang('Basic.global.updateSuccess', [mb_strtolower(lang('LgProveedoresTipos.proveedorTipo'))]).'.';
+ $message .= anchor( "admin/proveedorestipos/{$id}/edit" , lang('Basic.global.continueEditing').'?');
+ $message = ucfirst(str_replace("'", "\'", $message));
+
+ if ($thenRedirect) :
+ if (!empty($this->indexRoute)) :
+ return redirect()->to(route_to( $this->indexRoute ) )->with('sweet-success', $message);
+ else:
+ return $this->redirect2listView('sweet-success', $message);
+ endif;
+ else:
+ $this->session->setFlashData('sweet-success', $message);
+ endif;
+
+ endif; // $noException && $successfulResult
+ endif; // ($requestMethod === 'post')
+
+ $this->viewData['proveedorTipoEntity'] = $proveedorTipoEntity;
+
+ $this->viewData['formAction'] = route_to('updateProveedorTipo', $id);
+
+ $this->viewData['boxTitle'] = lang('Basic.global.edit2').' '.lang('LgProveedoresTipos.moduleTitle').' '.lang('Basic.global.edit3');
+
+
+ return $this->displayForm(__METHOD__, $id);
+ } // end function edit(...)
+
+
+
+ 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 = ProveedorTipoModel::SORTABLE[$requestedOrder > 0 ? $requestedOrder : 1];
+ $dir = $reqData['order']['0']['dir'] ?? 'asc';
+
+ $resourceData = $this->model->getResource($search)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject();
+
+ 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() {
+ if ($this->request->isAJAX()) {
+ $onlyActiveOnes = true;
+ $reqVal = $this->request->getPost('val') ?? 'id';
+ $menu = $this->model->getAllForMenu($reqVal.', nombre', 'nombre', $onlyActiveOnes, false);
+ $nonItem = new \stdClass;
+ $nonItem->id = '';
+ $nonItem->nombre = '- '.lang('Basic.global.None').' -';
+ array_unshift($menu , $nonItem);
+
+ $newTokenHash = csrf_hash();
+ $csrfTokenName = csrf_token();
+ $data = [
+ 'menu' => $menu,
+ $csrfTokenName => $newTokenHash
+ ];
+ return $this->respond($data);
+ } else {
+ return $this->failUnauthorized('Invalid request', 403);
+ }
+ }
+
+ public function menuItems() {
+ if ($this->request->isAJAX()) {
+ $searchStr = goSanitize($this->request->getPost('searchTerm'))[0];
+ $reqId = goSanitize($this->request->getPost('id'))[0];
+ $reqText = goSanitize($this->request->getPost('text'))[0];
+ $onlyActiveOnes = false;
+ $columns2select = [$reqId ?? 'id', $reqText ?? 'nombre'];
+ $onlyActiveOnes = false;
+ $menu = $this->model->getSelect2MenuItems($columns2select, $columns2select[1], $onlyActiveOnes, $searchStr);
+ $nonItem = new \stdClass;
+ $nonItem->id = '';
+ $nonItem->text = '- '.lang('Basic.global.None').' -';
+ array_unshift($menu , $nonItem);
+
+ $newTokenHash = csrf_hash();
+ $csrfTokenName = csrf_token();
+ $data = [
+ 'menu' => $menu,
+ $csrfTokenName => $newTokenHash
+ ];
+ return $this->respond($data);
+ } else {
+ return $this->failUnauthorized('Invalid request', 403);
+ }
+ }
+
+}
diff --git a/ci4/app/Controllers/Configuracion/Maquinastarifasimpresion.php b/ci4/app/Controllers/Configuracion/Maquinastarifasimpresion.php
index 9515a89c..35923914 100644
--- a/ci4/app/Controllers/Configuracion/Maquinastarifasimpresion.php
+++ b/ci4/app/Controllers/Configuracion/Maquinastarifasimpresion.php
@@ -419,6 +419,7 @@ class Maquinastarifasimpresion extends \App\Controllers\GoBaseResourceController
'color' => 'color',
'negrohq' => 'negrohq',
'bicolor' => 'bicolor',
+ 'colorhq' => 'colorhq',
];
return $tipoOptions;
}
diff --git a/ci4/app/Controllers/Tarifas/Tarifaacabado.php b/ci4/app/Controllers/Tarifas/Tarifaacabado.php
index cc80c24d..1fa8ff55 100644
--- a/ci4/app/Controllers/Tarifas/Tarifaacabado.php
+++ b/ci4/app/Controllers/Tarifas/Tarifaacabado.php
@@ -84,7 +84,9 @@ class Tarifaacabado extends \App\Controllers\GoBaseResourceController
// JJO
$sanitizedData['user_created_id'] = $session->id_user;
-
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
$noException = true;
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
@@ -164,6 +166,9 @@ class Tarifaacabado extends \App\Controllers\GoBaseResourceController
// JJO
$sanitizedData['user_updated_id'] = $session->id_user;
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
$noException = true;
diff --git a/ci4/app/Controllers/Tarifas/Tarifaacabadolineas.php b/ci4/app/Controllers/Tarifas/Tarifaacabadolineas.php
index 70a9bbc9..457a0616 100644
--- a/ci4/app/Controllers/Tarifas/Tarifaacabadolineas.php
+++ b/ci4/app/Controllers/Tarifas/Tarifaacabadolineas.php
@@ -47,6 +47,11 @@ class Tarifaacabadolineas extends \App\Controllers\GoBaseResourceController
$this->viewData['pageTitle'] = lang('TarifaAcabadoLineas.moduleTitle');
$this->viewData['usingSweetAlert'] = true;
parent::initController($request, $response, $logger);
+
+ // Se indica que este controlador trabaja con soft_delete
+ $this->soft_delete = true;
+ // Se indica el flag para los ficheros borrados
+ $this->delete_flag = 1;
}
@@ -248,19 +253,19 @@ class Tarifaacabadolineas extends \App\Controllers\GoBaseResourceController
// Build our Editor instance and process the data coming from _POST
$response = Editor::inst($db, 'tarifa_acabado_lineas')
->fields(
- Field::inst('paginas_min')
+ Field::inst('tirada_min')
->validator('Validate::numeric', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_min.decimal'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_min.decimal'))
)
->validator('Validate::notEmpty', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_min.required'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_min.required'))
),
- Field::inst('paginas_max')
+ Field::inst('tirada_max')
->validator('Validate::numeric', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_max.decimal'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_max.decimal'))
)
->validator('Validate::notEmpty', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_max.required'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_max.required'))
),
Field::inst('precio_min')
->validator('Validate::numeric', array(
@@ -298,8 +303,8 @@ class Tarifaacabadolineas extends \App\Controllers\GoBaseResourceController
// Si no se quiere borrar...
if ($data['data'][$pkey]['is_deleted'] != 1) {
- $process_data['paginas_min'] = $data['data'][$pkey]['paginas_min'];
- $process_data['paginas_max'] = $data['data'][$pkey]['paginas_max'];
+ $process_data['tirada_min'] = $data['data'][$pkey]['tirada_min'];
+ $process_data['tirada_max'] = $data['data'][$pkey]['tirada_max'];
$response = $this->model->checkIntervals($process_data, $pkey, $data['data'][$pkey]['tarifa_acabado_id']);
// No se pueden duplicar valores al crear o al editar
if (!empty($response)) {
diff --git a/ci4/app/Controllers/Tarifas/Tarifaencuadernacionlineas.php b/ci4/app/Controllers/Tarifas/Tarifaencuadernacionlineas.php
index f978bfe6..33e35632 100644
--- a/ci4/app/Controllers/Tarifas/Tarifaencuadernacionlineas.php
+++ b/ci4/app/Controllers/Tarifas/Tarifaencuadernacionlineas.php
@@ -44,6 +44,11 @@ class Tarifaencuadernacionlineas extends \App\Controllers\GoBaseResourceControll
$this->viewData['pageTitle'] = lang('TarifaEncuadernacionLineas.moduleTitle');
$this->viewData['usingSweetAlert'] = true;
parent::initController($request, $response, $logger);
+
+ // Se indica que este controlador trabaja con soft_delete
+ $this->soft_delete = true;
+ // Se indica el flag para los ficheros borrados
+ $this->delete_flag = 1;
}
@@ -245,7 +250,7 @@ class Tarifaencuadernacionlineas extends \App\Controllers\GoBaseResourceControll
->validator('Validate::notEmpty', array(
'message' => lang('TarifaAcabadoLineas.validation.margen.required'))
),
- Field::inst('tarifa_encuadernacion_id'),
+ Field::inst('tirada_encuadernacion_id'),
Field::inst('user_created_id'),
Field::inst('created_at'),
Field::inst('user_updated_id'),
@@ -261,7 +266,7 @@ class Tarifaencuadernacionlineas extends \App\Controllers\GoBaseResourceControll
if ($data['data'][$pkey]['is_deleted'] != 1) {
$process_data['paginas_min'] = $data['data'][$pkey]['paginas_min'];
$process_data['paginas_max'] = $data['data'][$pkey]['paginas_max'];
- $response = $this->model->checkIntervals($process_data, $pkey, $data['data'][$pkey]['tarifa_encuadernacion_id']);
+ $response = $this->model->checkIntervals($process_data, $pkey, $data['data'][$pkey]['tirada_encuadernacion_id']);
// No se pueden duplicar valores al crear o al editar
if (!empty($response)) {
return $response;
@@ -322,14 +327,14 @@ class Tarifaencuadernacionlineas extends \App\Controllers\GoBaseResourceControll
$order = TarifaEncuadernacionLineaModel::SORTABLE[$requestedOrder >= 0 ? $requestedOrder : 0];
$dir = $reqData['order']['0']['dir'] ?? 'asc';
- $id_TM = $reqData['id_tarifaencuadernacion'] ?? -1;
+ $id_TE = $reqData['tirada_id'] ?? -1;
- $resourceData = $this->model->getResource("", $id_TM)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject();
+ $resourceData = $this->model->getResource("", $id_TE)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject();
return $this->respond(Collection::datatable(
$resourceData,
$this->model->getResource()->countAllResults(),
- $this->model->getResource($search, $id_TM)->countAllResults()
+ $this->model->getResource("", $id_TE)->countAllResults()
));
} else {
return $this->failUnauthorized('Invalid request', 403);
@@ -341,10 +346,10 @@ class Tarifaencuadernacionlineas extends \App\Controllers\GoBaseResourceControll
if ($this->request->isAJAX()) {
$onlyActiveOnes = true;
$reqVal = $this->request->getPost('val') ?? 'id';
- $menu = $this->model->getAllForMenu($reqVal . ', tarifa_encuadernacion_id', 'tarifa_encuadernacion_id', $onlyActiveOnes, false);
+ $menu = $this->model->getAllForMenu($reqVal . ', tirada_encuadernacion_id', 'tirada_encuadernacion_id', $onlyActiveOnes, false);
$nonItem = new \stdClass;
$nonItem->id = '';
- $nonItem->tarifa_encuadernacion_id = '- ' . lang('Basic.global.None') . ' -';
+ $nonItem->tirada_encuadernacion_id = '- ' . lang('Basic.global.None') . ' -';
array_unshift($menu, $nonItem);
$newTokenHash = csrf_hash();
@@ -366,7 +371,7 @@ class Tarifaencuadernacionlineas extends \App\Controllers\GoBaseResourceControll
$reqId = goSanitize($this->request->getPost('id'))[0];
$reqText = goSanitize($this->request->getPost('text'))[0];
$onlyActiveOnes = false;
- $columns2select = [$reqId ?? 'id', $reqText ?? 'tarifa_encuadernacion_id'];
+ $columns2select = [$reqId ?? 'id', $reqText ?? 'tirada_encuadernacion_id'];
$onlyActiveOnes = false;
$menu = $this->model->getSelect2MenuItems($columns2select, $columns2select[1], $onlyActiveOnes, $searchStr);
$nonItem = new \stdClass;
diff --git a/ci4/app/Controllers/Tarifas/Tarifaencuadernaciontiradas.php b/ci4/app/Controllers/Tarifas/Tarifaencuadernaciontiradas.php
new file mode 100644
index 00000000..ca32f89d
--- /dev/null
+++ b/ci4/app/Controllers/Tarifas/Tarifaencuadernaciontiradas.php
@@ -0,0 +1,237 @@
+soft_delete = true;
+ // Se indica el flag para los ficheros borrados
+ $this->delete_flag = 1;
+
+ $this->viewData = ['usingServerSideDataTable' => true]; // JJO
+
+ parent::initController($request, $response, $logger);
+ }
+
+
+ public function delete($id = null)
+ {
+ if (!empty(static::$pluralObjectNameCc) && !empty(static::$singularObjectNameCc)) {
+ $objName = mb_strtolower(lang(ucfirst(static::$pluralObjectNameCc).'.'.static::$singularObjectNameCc));
+ } else {
+ $objName = lang('Basic.global.record');
+ }
+
+ if (!$this->soft_delete){
+
+ if (!$this->model->delete($id)) {
+ return $this->failNotFound(lang('Basic.global.deleteError', [$objName]));
+ }
+ }
+ else{
+ $datetime = (new \CodeIgniter\I18n\Time("now"));
+
+ $lineaModel = new TarifaEncuadernacionLineaModel();
+ $lineaResult = $lineaModel->removeAllEncuadernacionLineas($id, $datetime, $this->delete_flag);
+
+ $rawResult = $this->model->where('id',$id)
+ ->set(['deleted_at' => $datetime->format('Y-m-d H:i:s'),
+ 'is_deleted' => $this->delete_flag])
+ ->update();
+
+ if (!$rawResult && !$lineaResult) {
+ return $this->failNotFound(lang('Basic.global.deleteError', [$objName]));
+ }
+
+ }
+
+ // $message = lang('Basic.global.deleteSuccess', [$objName]); IMN commented
+ $message = lang('Basic.global.deleteSuccess', [lang('Basic.global.record')]);
+ $response = $this->respondDeleted(['id' => $id, 'msg' => $message]);
+ return $response;
+ }
+
+
+ public function datatable_editor()
+ {
+ if ($this->request->isAJAX()) {
+
+ include(APPPATH . "ThirdParty/DatatablesEditor/DataTables.php");
+
+ // Build our Editor instance and process the data coming from _POST
+ $response = Editor::inst($db, 'tarifa_encuadernacion_tiradas')
+ ->fields(
+ Field::inst('tirada_min')
+ ->validator('Validate::numeric', array(
+ 'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_min.decimal'))
+ )
+ ->validator('Validate::notEmpty', array(
+ 'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_min.required'))
+ ),
+ Field::inst('tirada_max')
+ ->validator('Validate::numeric', array(
+ 'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_max.decimal'))
+ )
+ ->validator('Validate::notEmpty', array(
+ 'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_max.required'))
+ ),
+ Field::inst('proveedor_id')
+ ->validator('Validate::notEmpty', array(
+ 'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_max.required'))
+ ),
+ Field::inst('tarifa_encuadernacion_id'),
+ Field::inst('user_created_id'),
+ Field::inst('created_at'),
+ Field::inst('user_updated_id'),
+ Field::inst('updated_at'),
+ Field::inst('is_deleted'),
+ Field::inst('deleted_at'),
+
+ )
+ ->validator(function ($editor, $action, $data) {
+ if ($action === Editor::ACTION_CREATE || $action === Editor::ACTION_EDIT) {
+ foreach ($data['data'] as $pkey => $values) {
+ // Si no se quiere borrar...
+ if ($data['data'][$pkey]['is_deleted'] != 1) {
+ $process_data['tirada_min'] = $data['data'][$pkey]['tirada_min'];
+ $process_data['tirada_max'] = $data['data'][$pkey]['tirada_max'];
+ $process_data['proveedor_id'] = $data['data'][$pkey]['proveedor_id'];
+ $response = $this->model->checkIntervals($process_data, $pkey, $data['data'][$pkey]['tarifa_encuadernacion_id']);
+ // No se pueden duplicar valores al crear o al editar
+ if (!empty($response)) {
+ return $response;
+ }
+ }
+ }
+ }
+ })
+ ->on('preCreate', function ($editor, &$values) {
+ $session = session();
+ $datetime = (new \CodeIgniter\I18n\Time("now"));
+ $editor
+ ->field('user_created_id')
+ ->setValue($session->id_user);
+ $editor
+ ->field('created_at')
+ ->setValue($datetime->format('Y-m-d H:i:s'));
+ })
+ ->on('preEdit', function ($editor, &$values) {
+ $session = session();
+ $datetime = (new \CodeIgniter\I18n\Time("now"));
+ $editor
+ ->field('user_updated_id')
+ ->setValue($session->id_user);
+ $editor
+ ->field('updated_at')
+ ->setValue($datetime->format('Y-m-d H:i:s'));
+ })
+ ->debug(true)
+ ->process($_POST)
+ ->data();
+
+ $newTokenHash = csrf_hash();
+ $csrfTokenName = csrf_token();
+
+ $response[$csrfTokenName] = $newTokenHash;
+
+ echo json_encode($response);
+
+ } else {
+ return $this->failUnauthorized('Invalid request', 403);
+ }
+ }
+
+ 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'] ?? 0;
+ $order = TarifaEncuadernacionTiradaModel::SORTABLE[$requestedOrder > 0 ? $requestedOrder : 1];
+ $dir = $reqData['order']['0']['dir'] ?? 'asc';
+
+ $id_TM = $reqData['id_tarifaencuadernacion'] ?? -1;
+
+ $model = new TarifaEncuadernacionTiradaModel();
+
+ $resourceData = $model->getResource("", $id_TM)->orderBy($order, $dir)->limit($length, $start)->get()->getResultObject();
+
+ return $this->respond(Collection::datatable(
+ $resourceData,
+ $model->getResource()->countAllResults(),
+ $model->getResource($search, $id_TM)->countAllResults()
+ ));
+ } else {
+ return $this->failUnauthorized('Invalid request', 403);
+ }
+ }
+
+
+ public function menuItems()
+ {
+ if ($this->request->isAJAX()) {
+
+ $provTipoModel = new ProveedorTipoModel();
+ $provModel = new ProveedorModel();
+
+ $tipoId = $provTipoModel->getTipoId("Encuadernacion");
+ $provList = $provModel->getProvList($tipoId);
+
+ $newTokenHash = csrf_hash();
+ $csrfTokenName = csrf_token();
+
+ $data = [
+ 'data' => $provList,
+ $csrfTokenName => $newTokenHash
+ ];
+ return $this->respond($data);
+ } else {
+ return $this->failUnauthorized('Invalid request', 403);
+ }
+ }
+
+}
+
diff --git a/ci4/app/Controllers/Tarifas/Tarifamanipuladolineas.php b/ci4/app/Controllers/Tarifas/Tarifamanipuladolineas.php
index a4372d4f..efc375a1 100644
--- a/ci4/app/Controllers/Tarifas/Tarifamanipuladolineas.php
+++ b/ci4/app/Controllers/Tarifas/Tarifamanipuladolineas.php
@@ -43,6 +43,12 @@ class Tarifamanipuladolineas extends \App\Controllers\GoBaseResourceController
{
$this->viewData['pageTitle'] = lang('TarifaManipuladoLineas.moduleTitle');
$this->viewData['usingSweetAlert'] = true;
+
+ // Se indica que este controlador trabaja con soft_delete
+ $this->soft_delete = true;
+ // Se indica el flag para los ficheros borrados
+ $this->delete_flag = 1;
+
parent::initController($request, $response, $logger);
}
@@ -210,19 +216,19 @@ class Tarifamanipuladolineas extends \App\Controllers\GoBaseResourceController
// Build our Editor instance and process the data coming from _POST
$response = Editor::inst($db, 'tarifa_manipulado_lineas')
->fields(
- Field::inst('paginas_min')
+ Field::inst('tirada_min')
->validator('Validate::numeric', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_min.decimal'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_min.decimal'))
)
->validator('Validate::notEmpty', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_min.required'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_min.required'))
),
- Field::inst('paginas_max')
+ Field::inst('tirada_max')
->validator('Validate::numeric', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_max.decimal'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_max.decimal'))
)
->validator('Validate::notEmpty', array(
- 'message' => lang('TarifaAcabadoLineas.validation.paginas_max.required'))
+ 'message' => lang('TarifaAcabadoLineas.validation.tirada_max.required'))
),
Field::inst('precio_min')
->validator('Validate::numeric', array(
@@ -259,8 +265,8 @@ class Tarifamanipuladolineas extends \App\Controllers\GoBaseResourceController
foreach ($data['data'] as $pkey => $values) {
// Si no se quiere borrar...
if ($data['data'][$pkey]['is_deleted'] != 1) {
- $process_data['paginas_min'] = $data['data'][$pkey]['paginas_min'];
- $process_data['paginas_max'] = $data['data'][$pkey]['paginas_max'];
+ $process_data['tirada_min'] = $data['data'][$pkey]['tirada_min'];
+ $process_data['tirada_max'] = $data['data'][$pkey]['tirada_max'];
$response = $this->model->checkIntervals($process_data, $pkey, $data['data'][$pkey]['tarifa_manipulado_id']);
// No se pueden duplicar valores al crear o al editar
if (!empty($response)) {
diff --git a/ci4/app/Controllers/Tarifas/Tarifapreimpresion.php b/ci4/app/Controllers/Tarifas/Tarifapreimpresion.php
index b7f74a3c..06de776c 100644
--- a/ci4/app/Controllers/Tarifas/Tarifapreimpresion.php
+++ b/ci4/app/Controllers/Tarifas/Tarifapreimpresion.php
@@ -62,6 +62,10 @@ class Tarifapreimpresion extends \App\Controllers\GoBaseController
$sanitizedData = $this->sanitized($postData, $nullIfEmpty);
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
+
$noException = true;
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
@@ -140,6 +144,9 @@ class Tarifapreimpresion extends \App\Controllers\GoBaseController
if (isset($this->model->user_updated_id)) {
$sanitizedData['user_updated_id'] = $session->id_user;
}
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
$noException = true;
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
diff --git a/ci4/app/Controllers/Tarifas/Tarifasencuadernacion.php b/ci4/app/Controllers/Tarifas/Tarifasencuadernacion.php
index 12c6c168..96665d10 100644
--- a/ci4/app/Controllers/Tarifas/Tarifasencuadernacion.php
+++ b/ci4/app/Controllers/Tarifas/Tarifasencuadernacion.php
@@ -8,6 +8,9 @@ use App\Models\Collection;
use App\Entities\Tarifas\TarifaEncuadernacionEntity;
use App\Models\Tarifas\TarifaEncuadernacionModel;
+use App\Models\Compras\ProveedorModel;
+use App\Models\Compras\ProveedorTipoModel;
+
class Tarifasencuadernacion extends \App\Controllers\GoBaseResourceController
{
@@ -86,6 +89,9 @@ class Tarifasencuadernacion extends \App\Controllers\GoBaseResourceController
if (isset($this->model->user_updated_id)) {
$sanitizedData['user_created_id'] = $session->id_user;
}
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
$noException = true;
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
@@ -167,6 +173,9 @@ class Tarifasencuadernacion extends \App\Controllers\GoBaseResourceController
if (isset($this->model->user_updated_id)) {
$sanitizedData['user_updated_id'] = $session->id_user;
}
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
$noException = true;
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
@@ -210,6 +219,8 @@ class Tarifasencuadernacion extends \App\Controllers\GoBaseResourceController
$this->viewData['boxTitle'] = lang('Basic.global.edit2') . ' ' . lang('Tarifaencuadernacion.moduleTitle') . ' ' . lang('Basic.global.edit3');
+ //JJO
+ $this->viewData['proveedores'] = $this->getProveedores();
return $this->displayForm(__METHOD__, $id);
} // end function edit(...)
@@ -293,4 +304,11 @@ class Tarifasencuadernacion extends \App\Controllers\GoBaseResourceController
}
}
+ private function getProveedores(){
+ $provTipoModel = new ProveedorTipoModel();
+ $provModel = new ProveedorModel();
+
+ $tipoId = $provTipoModel->getTipoId("Encuadernacion");
+ return $provModel->getProvList($tipoId);
+ }
}
diff --git a/ci4/app/Controllers/Tarifas/Tarifasmanipulado.php b/ci4/app/Controllers/Tarifas/Tarifasmanipulado.php
index c045ac23..b245f1dd 100644
--- a/ci4/app/Controllers/Tarifas/Tarifasmanipulado.php
+++ b/ci4/app/Controllers/Tarifas/Tarifasmanipulado.php
@@ -86,6 +86,9 @@ class Tarifasmanipulado extends \App\Controllers\GoBaseResourceController
if (isset($this->model->user_updated_id)) {
$sanitizedData['user_created_id'] = $session->id_user;
}
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
$noException = true;
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
@@ -167,6 +170,9 @@ class Tarifasmanipulado extends \App\Controllers\GoBaseResourceController
if (isset($this->model->user_updated_id)) {
$sanitizedData['user_updated_id'] = $session->id_user;
}
+ if ($this->request->getPost('mostrar_en_presupuesto') == null) {
+ $sanitizedData['mostrar_en_presupuesto'] = false;
+ }
$noException = true;
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
diff --git a/ci4/app/Entities/Compras/ProveedorEntity.php b/ci4/app/Entities/Compras/ProveedorEntity.php
new file mode 100644
index 00000000..c909ed1c
--- /dev/null
+++ b/ci4/app/Entities/Compras/ProveedorEntity.php
@@ -0,0 +1,32 @@
+ null,
+ "nombre" => null,
+ "tipo_id" => null,
+ "razon_social" => null,
+ "cif" => null,
+ "direccion" => null,
+ "cp" => null,
+ "ciudad" => null,
+ "provincia_id" => null,
+ "pais_id" => 1,
+ "persona_contacto" => null,
+ "email" => null,
+ "telefono" => null,
+ "is_deleted" => 0,
+ "created_at" => null,
+ "updated_at" => null,
+ ];
+ protected $casts = [
+ "tipo_id" => "?int",
+ "provincia_id" => "int",
+ "pais_id" => "int",
+ "is_deleted" => "int",
+ ];
+}
diff --git a/ci4/app/Entities/Compras/ProveedorTipoEntity.php b/ci4/app/Entities/Compras/ProveedorTipoEntity.php
new file mode 100644
index 00000000..ed54ed90
--- /dev/null
+++ b/ci4/app/Entities/Compras/ProveedorTipoEntity.php
@@ -0,0 +1,18 @@
+ null,
+ "nombre" => null,
+ "is_deleted" => 0,
+ "created_at" => null,
+ "updated_at" => null,
+ ];
+ protected $casts = [
+ "is_deleted" => "int",
+ ];
+}
diff --git a/ci4/app/Entities/Tarifas/TarifaAcabadoLinea.php b/ci4/app/Entities/Tarifas/TarifaAcabadoLinea.php
index 832fa317..0fcf0556 100644
--- a/ci4/app/Entities/Tarifas/TarifaAcabadoLinea.php
+++ b/ci4/app/Entities/Tarifas/TarifaAcabadoLinea.php
@@ -8,8 +8,8 @@ class TarifaAcabadoLinea extends \CodeIgniter\Entity\Entity
protected $attributes = [
"id" => null,
"tarifa_acabado_id" => 0,
- "paginas_min" => 0,
- "paginas_max" => 0,
+ "tirada_min" => 0,
+ "tirada_max" => 0,
"precio_min" => 0,
"precio_max" => 0,
"margen" => 0,
diff --git a/ci4/app/Entities/Tarifas/TarifaEncuadernacionEntity.php b/ci4/app/Entities/Tarifas/TarifaEncuadernacionEntity.php
index bdc01d4b..9fa7fb51 100644
--- a/ci4/app/Entities/Tarifas/TarifaEncuadernacionEntity.php
+++ b/ci4/app/Entities/Tarifas/TarifaEncuadernacionEntity.php
@@ -11,6 +11,7 @@ class TarifaEncuadernacionEntity extends \CodeIgniter\Entity\Entity
"nombre" => null,
"precio_min" => 0,
"importe_fijo" => 0,
+ "mostrar_en_presupuesto" => 1,
"user_created_id" => 0,
"user_updated_id" => 0,
"is_deleted" => 0,
@@ -21,6 +22,7 @@ class TarifaEncuadernacionEntity extends \CodeIgniter\Entity\Entity
protected $casts = [
"precio_min" => "float",
"importe_fijo" => "float",
+ "mostrar_en_presupuesto" => "int",
"user_created_id" => "int",
"user_updated_id" => "int",
"is_deleted" => "int",
diff --git a/ci4/app/Entities/Tarifas/TarifaEncuadernacionLinea.php b/ci4/app/Entities/Tarifas/TarifaEncuadernacionLinea.php
index 58041841..cef07060 100644
--- a/ci4/app/Entities/Tarifas/TarifaEncuadernacionLinea.php
+++ b/ci4/app/Entities/Tarifas/TarifaEncuadernacionLinea.php
@@ -7,7 +7,7 @@ class TarifaEncuadernacionLinea extends \CodeIgniter\Entity\Entity
{
protected $attributes = [
"id" => null,
- "tarifa_encuadernacion_id" => 0,
+ "tirada_encuadernacion_id" => 0,
"paginas_min" => 0,
"paginas_max" => 0,
"precio_min" => 0,
@@ -20,7 +20,7 @@ class TarifaEncuadernacionLinea extends \CodeIgniter\Entity\Entity
"updated_at" => null,
];
protected $casts = [
- "tarifa_encuadernacion_id" => "int",
+ "tirada_encuadernacion_id" => "int",
"paginas_min" => "float",
"paginas_max" => "float",
"precio_min" => "float",
diff --git a/ci4/app/Entities/Tarifas/TarifaEncuadernacionTirada.php b/ci4/app/Entities/Tarifas/TarifaEncuadernacionTirada.php
new file mode 100644
index 00000000..b432686f
--- /dev/null
+++ b/ci4/app/Entities/Tarifas/TarifaEncuadernacionTirada.php
@@ -0,0 +1,29 @@
+ null,
+ "tarifa_encuadernacion_id" => 0,
+ "tirada_min" => 0,
+ "tirada_max" => 0,
+ "proveedor_id" => 0,
+ "user_created_id" => 0,
+ "user_updated_id" => 0,
+ "is_deleted" => 0,
+ "created_at" => null,
+ "updated_at" => null,
+ ];
+ protected $casts = [
+ "tarifa_encuadernacion_id" => "int",
+ "tirada_min" => "float",
+ "tirada_max" => "float",
+ "proveedor_id" => "int",
+ "user_created_id" => "int",
+ "user_updated_id" => "int",
+ "is_deleted" => "int",
+ ];
+}
diff --git a/ci4/app/Entities/Tarifas/TarifaManipuladoEntity.php b/ci4/app/Entities/Tarifas/TarifaManipuladoEntity.php
index 33394422..aac261a4 100644
--- a/ci4/app/Entities/Tarifas/TarifaManipuladoEntity.php
+++ b/ci4/app/Entities/Tarifas/TarifaManipuladoEntity.php
@@ -11,6 +11,7 @@ class TarifaManipuladoEntity extends \CodeIgniter\Entity\Entity
"nombre" => null,
"precio_min" => 0,
"importe_fijo" => 0,
+ "mostrar_en_presupuesto" => 1,
"user_created_id" => 0,
"user_updated_id" => 0,
"is_deleted" => 0,
@@ -21,6 +22,7 @@ class TarifaManipuladoEntity extends \CodeIgniter\Entity\Entity
protected $casts = [
"precio_min" => "float",
"importe_fijo" => "float",
+ "mostrar_en_presupuesto" => "int",
"user_created_id" => "int",
"user_updated_id" => "int",
"is_deleted" => "int",
diff --git a/ci4/app/Entities/Tarifas/TarifaManipuladoLinea.php b/ci4/app/Entities/Tarifas/TarifaManipuladoLinea.php
index 63b503c2..f358343d 100644
--- a/ci4/app/Entities/Tarifas/TarifaManipuladoLinea.php
+++ b/ci4/app/Entities/Tarifas/TarifaManipuladoLinea.php
@@ -8,8 +8,8 @@ class TarifaManipuladoLinea extends \CodeIgniter\Entity\Entity
protected $attributes = [
"id" => null,
"tarifa_manipulado_id" => 0,
- "paginas_min" => 0,
- "paginas_max" => 0,
+ "tirada_min" => 0,
+ "tirada_max" => 0,
"precio_min" => 0,
"precio_max" => 0,
"margen" => 0,
@@ -21,8 +21,8 @@ class TarifaManipuladoLinea extends \CodeIgniter\Entity\Entity
];
protected $casts = [
"tarifa_manipulado_id" => "int",
- "paginas_min" => "float",
- "paginas_max" => "float",
+ "tirada_min" => "float",
+ "tirada_max" => "float",
"precio_min" => "float",
"precio_max" => "float",
"margen" => "float",
diff --git a/ci4/app/Entities/Tarifas/TarifaacabadoEntity.php b/ci4/app/Entities/Tarifas/TarifaacabadoEntity.php
index 8c0e69c7..0d2d9b91 100644
--- a/ci4/app/Entities/Tarifas/TarifaacabadoEntity.php
+++ b/ci4/app/Entities/Tarifas/TarifaacabadoEntity.php
@@ -10,6 +10,7 @@ class TarifaacabadoEntity extends \CodeIgniter\Entity\Entity
"nombre" => null,
"precio_min" => 0,
"importe_fijo" => 0,
+ "mostrar_en_presupuesto" => 1,
"user_created_id" => 0,
"user_updated_id" => 0,
"is_deleted" => 0,
@@ -20,6 +21,7 @@ class TarifaacabadoEntity extends \CodeIgniter\Entity\Entity
protected $casts = [
"precio_min" => "float",
"importe_fijo" => "float",
+ "mostrar_en_presupuesto" => "int",
"user_created_id" => "int",
"user_updated_id" => "int",
"is_deleted" => "int",
diff --git a/ci4/app/Entities/Tarifas/TarifapreimpresionEntity.php b/ci4/app/Entities/Tarifas/TarifapreimpresionEntity.php
index 599bc822..7c3f9d0a 100644
--- a/ci4/app/Entities/Tarifas/TarifapreimpresionEntity.php
+++ b/ci4/app/Entities/Tarifas/TarifapreimpresionEntity.php
@@ -12,6 +12,7 @@ class TarifapreimpresionEntity extends \CodeIgniter\Entity\Entity
"precio_min" => 0,
"importe_fijo" => 0,
"margen" => 0,
+ "mostrar_en_presupuesto" => 1,
"user_created_id" => 1,
"user_update_id" => 1,
"is_deleted" => 0,
@@ -24,6 +25,7 @@ class TarifapreimpresionEntity extends \CodeIgniter\Entity\Entity
"precio_min" => "float",
"importe_fijo" => "float",
"margen" => "float",
+ "mostrar_en_presupuesto" => "int",
"user_created_id" => "int",
"user_update_id" => "int",
"is_deleted" => "int",
diff --git a/ci4/app/Language/en/MaquinasTarifasImpresions.php b/ci4/app/Language/en/MaquinasTarifasImpresions.php
index 0cff47a2..31f29370 100644
--- a/ci4/app/Language/en/MaquinasTarifasImpresions.php
+++ b/ci4/app/Language/en/MaquinasTarifasImpresions.php
@@ -26,6 +26,7 @@ return [
'negro' => 'Black',
'color' => 'Color',
'negrohq' => 'Black HQ',
+ 'colorhq' => 'Color HQ',
'bicolor' => 'Bicolor',
'validation' => [
'duplicated_uso_tipo' => "Duplicate line (the combination 'use' and 'type' already exists)",
diff --git a/ci4/app/Language/en/Proveedores.php b/ci4/app/Language/en/Proveedores.php
new file mode 100644
index 00000000..16ff6992
--- /dev/null
+++ b/ci4/app/Language/en/Proveedores.php
@@ -0,0 +1,85 @@
+ 'CIF',
+ 'ciudad' => 'City',
+ 'cp' => 'Postal code',
+ 'createdAt' => 'Created At',
+ 'deletedAt' => 'Deleted At',
+ 'direccion' => 'Address',
+ 'email' => 'Email',
+ 'id' => 'ID',
+ 'isDeleted' => 'Is Deleted',
+ 'moduleTitle' => 'Suppliers',
+ 'nombre' => 'Name',
+ 'paisId' => 'Country',
+ 'personaContacto' => 'Contact Person',
+ 'propiedades' => 'Properties',
+ 'proveedor' => 'Supplier',
+ 'proveedorList' => 'Suppliers List',
+ 'proveedores' => 'Suppliers',
+ 'provinciaId' => 'Region',
+ 'razonSocial' => 'Business Name',
+ 'telefono' => 'Phone',
+ 'tipoId' => 'Type',
+ 'updatedAt' => 'Updated At',
+ 'validation' => [
+ 'cif' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+
+ ],
+
+ 'ciudad' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+
+ ],
+
+ 'cp' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+
+ ],
+
+ 'direccion' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+
+ ],
+
+ 'persona_contacto' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+
+ ],
+
+ 'razon_social' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+
+ ],
+
+ 'telefono' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+
+ ],
+
+ 'email' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+ 'valid_email' => 'The {field} field must contain a valid email address.',
+
+ ],
+
+ 'nombre' => [
+ 'max_length' => 'The {field} field cannot exceed {param} characters in length.',
+ 'required' => 'The {field} field is required.',
+
+ ],
+
+ 'tipo' => [
+ 'required' => 'The {field} field is required.',
+
+ ],
+
+
+ ],
+
+
+];
\ No newline at end of file
diff --git a/ci4/app/Language/en/TarifaAcabadoLineas.php b/ci4/app/Language/en/TarifaAcabadoLineas.php
index db580bec..35361c39 100644
--- a/ci4/app/Language/en/TarifaAcabadoLineas.php
+++ b/ci4/app/Language/en/TarifaAcabadoLineas.php
@@ -9,12 +9,12 @@ return [
'precioMax' => 'Max Price',
'precioMin' => 'Min Price',
'precioUnidad' => 'Price Unit',
- 'paginasMax' => 'Max Pages',
- 'paginasMin' => 'Min Pages',
+ 'tiradaMax' => 'Max Printing',
+ 'tiradaMin' => 'Min Printing',
'margen' => 'Margin',
'validation' => [
- 'error_paginas_overlap' => 'The range [Min Pages, Max Pages] is overlapped with another one for the selected type.',
- 'error_paginas_range' => 'The field Min Pages must be lower than the field Max Pages',
+ 'error_tirada_overlap' => 'The range [Min Printing, Max Printing] is overlapped with another one for the selected type.',
+ 'error_tirada_range' => 'The field Min Printing must be lower than the field Max Printing',
'precio_max' => [
'decimal' => 'The field must contain a decimal number.',
'required' => 'The field is required.',
@@ -27,13 +27,13 @@ return [
],
- 'paginas_max' => [
+ 'tirada_max' => [
'integer' => 'The field must contain an integer.',
'required' => 'The field is required.',
],
- 'paginas_min' => [
+ 'tirada_min' => [
'integer' => 'The field must contain an integer.',
'required' => 'The field is required.',
diff --git a/ci4/app/Language/en/TarifaEncuadernacionLineas.php b/ci4/app/Language/en/TarifaEncuadernacionLineas.php
index d3528a85..9194f806 100644
--- a/ci4/app/Language/en/TarifaEncuadernacionLineas.php
+++ b/ci4/app/Language/en/TarifaEncuadernacionLineas.php
@@ -11,8 +11,10 @@ return [
'precioUnidad' => 'Price Unit',
'paginasMax' => 'Max Pages',
'paginasMin' => 'Min Pages',
+ 'moduleExplanation' => 'The number of pages indicated in this section refers per copy, not to the total of the order.',
'margen' => 'Margin',
'validation' => [
+ 'error_seleccion_tiradas' => 'A line from the Printings table must be selected before creating a new record.',
'error_paginas_overlap' => 'The range [Min Pages, Max Pages] is overlapped with another one for the selected type.',
'error_paginas_range' => 'The field Min Pages must be lower than the field Max Pages',
'precio_max' => [
diff --git a/ci4/app/Language/en/TarifaEncuadernacionTiradas.php b/ci4/app/Language/en/TarifaEncuadernacionTiradas.php
new file mode 100644
index 00000000..b244b4da
--- /dev/null
+++ b/ci4/app/Language/en/TarifaEncuadernacionTiradas.php
@@ -0,0 +1,26 @@
+ 'ID',
+ 'moduleTitle' => 'Printings Binding rates',
+ 'deleteLine' => 'the selected register',
+ 'proveedor' => 'Supplier',
+ 'seleccion' => 'Selection',
+ 'tiradaMax' => 'Max Printing',
+ 'tiradaMin' => 'Min Printing',
+ 'validation' => [
+ 'error_tirada_overlap' => 'El rango [Tirada Min, Tirada Max] se solapa con otro existente para el tipo seleccionado.',
+ 'error_tirada_range' => 'El campo Tirada Min debe ser menor que el campo Tirada Max',
+ 'tirada_max' => [
+ 'integer' => 'The field must contain an integer.',
+ 'required' => 'The field is required.',
+ ],
+
+ 'tirada_min' => [
+ 'integer' => 'The field must contain an integer.',
+ 'required' => 'The field is required.',
+ ],
+ ],
+];
\ No newline at end of file
diff --git a/ci4/app/Language/en/TarifaManipuladoLineas.php b/ci4/app/Language/en/TarifaManipuladoLineas.php
index 5da798c9..732add80 100644
--- a/ci4/app/Language/en/TarifaManipuladoLineas.php
+++ b/ci4/app/Language/en/TarifaManipuladoLineas.php
@@ -9,12 +9,12 @@ return [
'precioMax' => 'Max Price',
'precioMin' => 'Min Price',
'precioUnidad' => 'Price Unit',
- 'paginasMax' => 'Max Pages',
- 'paginasMin' => 'Min Pages',
+ 'tiradaMax' => 'Max Printing',
+ 'tiradaMin' => 'Min Printing',
'margen' => 'Margin',
'validation' => [
- 'error_paginas_overlap' => 'The range [Min Pages, Max Pages] is overlapped with another one for the selected type.',
- 'error_paginas_range' => 'The field Min Pages must be lower than the field Max Pages',
+ 'error_tirada_overlap' => 'The range [Min Printing, Max Printing] is overlapped with another one for the selected type.',
+ 'error_tirada_range' => 'The field Min Printing must be lower than the field Max Printing',
'precio_max' => [
'decimal' => 'The {field} field must contain a decimal number.',
'required' => 'The {field} field is required.',
@@ -27,13 +27,13 @@ return [
],
- 'paginas_max' => [
+ 'tirada_max' => [
'decimal' => 'The {field} field must contain a decimal number.',
'required' => 'The {field} field is required.',
],
- 'paginas_min' => [
+ 'tirada_min' => [
'decimal' => 'The {field} field must contain a decimal number.',
'required' => 'The {field} field is required.',
diff --git a/ci4/app/Language/en/Tarifaacabado.php b/ci4/app/Language/en/Tarifaacabado.php
index 64532898..e9413fab 100644
--- a/ci4/app/Language/en/Tarifaacabado.php
+++ b/ci4/app/Language/en/Tarifaacabado.php
@@ -15,6 +15,7 @@ return [
'precioMin' => 'Min Price',
'importeFijo' => 'Fixed amount',
'margen' => 'Margin',
+ 'mostrar_en_presupuesto' => 'Show in budget',
'tarifaacabado' => 'Finishing Rates',
'tarifaacabadoList' => 'Finishing Rates List',
'tarifasacabado' => 'Finishing Rates',
diff --git a/ci4/app/Language/en/Tarifaencuadernacion.php b/ci4/app/Language/en/Tarifaencuadernacion.php
index 99936ab0..60412c11 100644
--- a/ci4/app/Language/en/Tarifaencuadernacion.php
+++ b/ci4/app/Language/en/Tarifaencuadernacion.php
@@ -21,6 +21,7 @@ return [
'tarifasencuadernacion' => 'Binding rates',
'tiradaMax' => 'Print Max',
'tiradaMin' => 'Print Min',
+ 'mostrar_en_presupuesto' => 'Show in budget',
'updatedAt' => 'Updated At',
'userCreatedId' => 'User Created ID',
'userUpdateId' => 'User Update ID',
diff --git a/ci4/app/Language/en/Tarifamanipulado.php b/ci4/app/Language/en/Tarifamanipulado.php
index a29c2097..da383fea 100644
--- a/ci4/app/Language/en/Tarifamanipulado.php
+++ b/ci4/app/Language/en/Tarifamanipulado.php
@@ -15,6 +15,7 @@ return [
'precioMin' => 'Price Min',
'precioMin' => 'Min Price',
'importeFijo' => 'Fixed amount',
+ 'mostrar_en_presupuesto' => 'Show in budget',
'margen' => 'Margin',
'tarifamanipulado' => 'Handling rate',
'tarifamanipuladoList' => 'Handling rates List',
diff --git a/ci4/app/Language/en/Tarifapreimpresion.php b/ci4/app/Language/en/Tarifapreimpresion.php
index a391b388..5d3070bc 100644
--- a/ci4/app/Language/en/Tarifapreimpresion.php
+++ b/ci4/app/Language/en/Tarifapreimpresion.php
@@ -15,6 +15,7 @@ return [
'tarifapreimpresion' => 'Preprinting rate',
'tarifapreimpresionList' => 'Preprinting rates List',
'tarifaspreimpresion' => 'Preprinting rates',
+ 'mostrar_en_presupuesto' => 'Show in budget',
'updatedAt' => 'Updated At',
'userCreatedId' => 'User Created ID',
'userUpdateId' => 'User Update ID',
diff --git a/ci4/app/Language/es/MaquinasTarifasImpresions.php b/ci4/app/Language/es/MaquinasTarifasImpresions.php
index e7deb3eb..1fda1bb8 100644
--- a/ci4/app/Language/es/MaquinasTarifasImpresions.php
+++ b/ci4/app/Language/es/MaquinasTarifasImpresions.php
@@ -26,6 +26,7 @@ return [
'negro' => 'Negro',
'color' => 'Color',
'negrohq' => 'Negro HQ',
+ 'colorhq' => 'Color HQ',
'bicolor' => 'Bicolor',
'validation' => [
'duplicated_uso_tipo' => "Línea duplicada (la combinación 'uso' y 'tipo' ya existe)",
diff --git a/ci4/app/Language/es/Proveedores.php b/ci4/app/Language/es/Proveedores.php
new file mode 100644
index 00000000..d6928648
--- /dev/null
+++ b/ci4/app/Language/es/Proveedores.php
@@ -0,0 +1,84 @@
+ 'CIF',
+ 'ciudad' => 'Ciudad',
+ 'cp' => 'Código Postal',
+ 'createdAt' => 'Created At',
+ 'deletedAt' => 'Deleted At',
+ 'direccion' => 'Direccion',
+ 'email' => 'Email',
+ 'id' => 'ID',
+ 'isDeleted' => 'Is Deleted',
+ 'moduleTitle' => 'Proveedores',
+ 'nombre' => 'Nombre',
+ 'paisId' => 'País',
+ 'personaContacto' => 'Persona Contacto',
+ 'propiedades' => 'Propiedades',
+ 'proveedor' => 'Proveedor',
+ 'proveedorList' => 'Lista de Proveedores',
+ 'proveedores' => 'Proveedores',
+ 'provinciaId' => 'Provincia',
+ 'razonSocial' => 'Razón Social',
+ 'telefono' => 'Teléfono',
+ 'tipoId' => 'Tipo',
+ 'updatedAt' => 'Updated At',
+ 'validation' => [
+ 'cif' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+
+ ],
+
+ 'ciudad' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+
+ ],
+
+ 'cp' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+
+ ],
+
+ 'direccion' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+
+ ],
+
+ 'persona_contacto' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+
+ ],
+
+ 'razon_social' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+
+ ],
+
+ 'telefono' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+
+ ],
+
+ 'email' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+ 'valid_email' => 'El campo {field} debe contener una dirección de correo válida.',
+
+ ],
+
+ 'nombre' => [
+ 'max_length' => 'El campo {field} no puede exceder de {param} caracteres en longitud.',
+ 'required' => 'El campo {field} es obligatorio.',
+
+ ],
+ 'tipo' => [
+ 'required' => 'El campo {field} es obligatorio.',
+
+ ],
+
+
+ ],
+
+
+];
\ No newline at end of file
diff --git a/ci4/app/Language/es/TarifaAcabadoLineas.php b/ci4/app/Language/es/TarifaAcabadoLineas.php
index 00f4c41a..6a671ac7 100644
--- a/ci4/app/Language/es/TarifaAcabadoLineas.php
+++ b/ci4/app/Language/es/TarifaAcabadoLineas.php
@@ -9,12 +9,12 @@ return [
'precioMax' => 'Precio Max',
'precioMin' => 'Precio Min',
'precioUnidad' => 'Precio Unidad',
- 'paginasMax' => 'Páginas Max',
- 'paginasMin' => 'Páginas Min',
+ 'tiradaMax' => 'Tirada Max',
+ 'tiradaMin' => 'Tirada Min',
'margen' => 'Margen',
'validation' => [
- 'error_paginas_overlap' => 'El rango [Páginas Min, Páginas Max] se solapa con otro existente para el tipo seleccionado.',
- 'error_paginas_range' => 'El campo Páginas Min debe ser menor que el campo Páginas Max',
+ 'error_tirada_overlap' => 'El rango [Tirada Min, Tirada Max] se solapa con otro existente para el tipo seleccionado.',
+ 'error_tirada_range' => 'El campo Tirada Min debe ser menor que el campo Tirada Max',
'precio_max' => [
'decimal' => 'El campo debe contener un número decimal.',
'required' => 'El campo es obligatorio.',
@@ -27,13 +27,13 @@ return [
],
- 'paginas_max' => [
+ 'tirada_max' => [
'integer' => 'El campo debe contener un número entero.',
'required' => 'El campo es obligatorio.',
],
- 'paginas_min' => [
+ 'tirada_min' => [
'integer' => 'El campo debe contener un número entero.',
'required' => 'El campo es obligatorio.',
diff --git a/ci4/app/Language/es/TarifaEncuadernacionLineas.php b/ci4/app/Language/es/TarifaEncuadernacionLineas.php
index eb7f5f84..d941975d 100644
--- a/ci4/app/Language/es/TarifaEncuadernacionLineas.php
+++ b/ci4/app/Language/es/TarifaEncuadernacionLineas.php
@@ -11,8 +11,10 @@ return [
'precioUnidad' => 'Precio Unidad',
'paginasMax' => 'Páginas Max',
'paginasMin' => 'Páginas Min',
+ 'moduleExplanation' => 'El número de páginas reflejado en este apartado se refiere por ejemplar, no al total del pedido',
'margen' => 'Margen',
'validation' => [
+ 'error_seleccion_tiradas' => 'Debe seleccionar una línea de la tabla tiradas antes de crear un registro nuevo.',
'error_paginas_overlap' => 'El rango [Páginas Min, Páginas Max] se solapa con otro existente para el tipo seleccionado.',
'error_paginas_range' => 'El campo Páginas Min debe ser menor que el campo Páginas Max',
'precio_max' => [
diff --git a/ci4/app/Language/es/TarifaEncuadernacionTiradas.php b/ci4/app/Language/es/TarifaEncuadernacionTiradas.php
new file mode 100644
index 00000000..4edbc363
--- /dev/null
+++ b/ci4/app/Language/es/TarifaEncuadernacionTiradas.php
@@ -0,0 +1,26 @@
+ 'ID',
+ 'moduleTitle' => 'Tiradas Tarifa Encuadernación',
+ 'deleteLine' => 'el registro seleccionado',
+ 'proveedor' => 'Proveedor',
+ 'seleccion' => 'Selección',
+ 'tiradaMax' => 'Tirada Max',
+ 'tiradaMin' => 'Tirada Min',
+ 'validation' => [
+ 'error_tirada_overlap' => 'El rango [Tirada Min, Tirada Max] se solapa con otro existente para el tipo seleccionado.',
+ 'error_tirada_range' => 'El campo Tirada Min debe ser menor que el campo Tirada Max',
+ 'tirada_max' => [
+ 'integer' => 'El campo debe contener un número entero.',
+ 'required' => 'El campo es obligatorio.',
+ ],
+
+ 'tirada_min' => [
+ 'integer' => 'El campo debe contener un número entero.',
+ 'required' => 'El campo es obligatorio.',
+ ],
+ ],
+];
\ No newline at end of file
diff --git a/ci4/app/Language/es/TarifaManipuladoLineas.php b/ci4/app/Language/es/TarifaManipuladoLineas.php
index 4d8ce4c6..93ac435b 100644
--- a/ci4/app/Language/es/TarifaManipuladoLineas.php
+++ b/ci4/app/Language/es/TarifaManipuladoLineas.php
@@ -9,12 +9,12 @@ return [
'precioMax' => 'Precio Max',
'precioMin' => 'Precio Min',
'precioUnidad' => 'Precio Unidad',
- 'paginasMax' => 'Páginas Max',
- 'paginasMin' => 'Páginas Min',
+ 'tiradaMax' => 'Tirada Max',
+ 'tiradaMin' => 'Tirada Min',
'margen' => 'Margen',
'validation' => [
- 'error_paginas_overlap' => 'El rango [Páginas Min, Páginas Max] se solapa con otro existente para el tipo seleccionado.',
- 'error_paginas_range' => 'El campo Páginas Min debe ser menor que el campo Páginas Max',
+ 'error_tirada_overlap' => 'El rango [Tirada Min, Tirada Max] se solapa con otro existente para el tipo seleccionado.',
+ 'error_tirada_range' => 'El campo Tirada Min debe ser menor que el campo Tirada Max',
'precio_max' => [
'decimal' => 'El campo {field} debe contener un número decimal.',
'required' => 'The {field} field is required.',
@@ -27,13 +27,13 @@ return [
],
- 'paginas_max' => [
+ 'tirada_max' => [
'decimal' => 'El campo {field} debe contener un número decimal.',
'required' => 'The {field} field is required.',
],
- 'paginas_min' => [
+ 'tirada_min' => [
'decimal' => 'El campo {field} debe contener un número decimal.',
'required' => 'The {field} field is required.',
diff --git a/ci4/app/Language/es/Tarifaacabado.php b/ci4/app/Language/es/Tarifaacabado.php
index 63db7206..fdb1d0e9 100644
--- a/ci4/app/Language/es/Tarifaacabado.php
+++ b/ci4/app/Language/es/Tarifaacabado.php
@@ -11,6 +11,7 @@ return [
'nombre' => 'Nombre',
'precioMin' => 'Precio Mínimo',
'importeFijo' => 'Importe Fijo',
+ 'mostrar_en_presupuesto' => 'Mostrar en presupuesto',
'tarifaacabado' => 'Tarifas Acabado',
'tarifaacabadoList' => 'Lista Tarifas Acabado',
'tarifasacabado' => 'Tarifas Acabado',
diff --git a/ci4/app/Language/es/Tarifaencuadernacion.php b/ci4/app/Language/es/Tarifaencuadernacion.php
index 1bf6306d..8b3aa73b 100644
--- a/ci4/app/Language/es/Tarifaencuadernacion.php
+++ b/ci4/app/Language/es/Tarifaencuadernacion.php
@@ -18,6 +18,7 @@ return [
'tarifasencuadernacion' => 'Tarifas Encuadernación',
'tiradaMax' => 'Tirada Max',
'tiradaMin' => 'Tirada Min',
+ 'mostrar_en_presupuesto' => 'Mostrar en presupuesto',
'updatedAt' => 'Actualizado en',
'userCreatedId' => 'ID Usuario \"Creado en\"',
'userUpdateId' => 'ID Usuario \"Actualizado en\"',
diff --git a/ci4/app/Language/es/Tarifamanipulado.php b/ci4/app/Language/es/Tarifamanipulado.php
index 0f0b0235..3e1fc7c5 100644
--- a/ci4/app/Language/es/Tarifamanipulado.php
+++ b/ci4/app/Language/es/Tarifamanipulado.php
@@ -13,6 +13,7 @@ return [
'precioMax' => 'Precio Max',
'precioMin' => 'Precio Min',
'importeFijo' => 'Importe Fijo',
+ 'mostrar_en_presupuesto' => 'Mostrar en presupuesto',
'tarifamanipulado' => 'Tarifa Manipulado',
'tarifamanipuladoList' => 'Lista Tarifas Manipulado',
'tarifasmanipulado' => 'Tarifas Manipulado',
diff --git a/ci4/app/Language/es/Tarifapreimpresion.php b/ci4/app/Language/es/Tarifapreimpresion.php
index c579fecd..5107424b 100644
--- a/ci4/app/Language/es/Tarifapreimpresion.php
+++ b/ci4/app/Language/es/Tarifapreimpresion.php
@@ -10,6 +10,7 @@ return [
'precio' => 'Precio/página',
'precioMin' => 'Precio Mínimo',
'importeFijo' => 'Importe Fijo',
+ 'mostrar_en_presupuesto' => 'Mostrar en presupuesto',
'margen' => 'Margen',
'tarifapreimpresion' => 'Tarifa Preimpresión',
'tarifapreimpresionList' => 'Lista Tarifas Preimpresión',
diff --git a/ci4/app/Models/Compras/ProveedorModel.php b/ci4/app/Models/Compras/ProveedorModel.php
new file mode 100644
index 00000000..2366636d
--- /dev/null
+++ b/ci4/app/Models/Compras/ProveedorModel.php
@@ -0,0 +1,213 @@
+ "t1.nombre",
+ 1 => "t2.nombre",
+
+ ];
+
+ protected $allowedFields = [
+ "nombre",
+ "tipo_id",
+ "razon_social",
+ "cif",
+ "direccion",
+ "cp",
+ "ciudad",
+ "provincia_id",
+ "pais_id",
+ "persona_contacto",
+ "email",
+ "telefono",
+ "is_deleted",
+ "deleted_at"
+ ];
+ protected $returnType = "App\Entities\Compras\ProveedorEntity";
+
+ protected $useTimestamps = true;
+ protected $useSoftDeletes = false;
+
+ protected $createdField = "created_at";
+
+ protected $updatedField = "updated_at";
+
+ public static $labelField = "nombre";
+
+ protected $validationRules = [
+ "cif" => [
+ "label" => "Proveedores.cif",
+ "rules" => "trim|max_length[15]",
+ ],
+ "tipo_id" => [
+ "label" => "Proveedores.tipoId",
+ "rules" => "required",
+ ],
+ "ciudad" => [
+ "label" => "Proveedores.ciudad",
+ "rules" => "trim|max_length[255]",
+ ],
+ "cp" => [
+ "label" => "Proveedores.cp",
+ "rules" => "trim|max_length[10]",
+ ],
+ "direccion" => [
+ "label" => "Proveedores.direccion",
+ "rules" => "trim|max_length[255]",
+ ],
+ "email" => [
+ "label" => "Proveedores.email",
+ "rules" => "trim|max_length[255]|valid_email|permit_empty",
+ ],
+ "nombre" => [
+ "label" => "Proveedores.nombre",
+ "rules" => "trim|required|max_length[255]",
+ ],
+ "persona_contacto" => [
+ "label" => "Proveedores.personaContacto",
+ "rules" => "trim|max_length[255]",
+ ],
+ "razon_social" => [
+ "label" => "Proveedores.razonSocial",
+ "rules" => "trim|max_length[255]",
+ ],
+ "telefono" => [
+ "label" => "Proveedores.telefono",
+ "rules" => "trim|max_length[60]",
+ ],
+ ];
+
+ protected $validationMessages = [
+ "cif" => [
+ "max_length" => "Proveedores.validation.cif.max_length",
+ ],
+ "ciudad" => [
+ "max_length" => "Proveedores.validation.ciudad.max_length",
+ ],
+ "cp" => [
+ "max_length" => "Proveedores.validation.cp.max_length",
+ ],
+ "direccion" => [
+ "max_length" => "Proveedores.validation.direccion.max_length",
+ ],
+ "email" => [
+ "max_length" => "Proveedores.validation.email.max_length",
+ "valid_email" => "Proveedores.validation.email.valid_email",
+ ],
+ "nombre" => [
+ "max_length" => "Proveedores.validation.nombre.max_length",
+ "required" => "Proveedores.validation.nombre.required",
+ ],
+ "tipo_id" => [
+ "required" => "Proveedores.validation.tipo.required",
+ ],
+ "persona_contacto" => [
+ "max_length" => "Proveedores.validation.persona_contacto.max_length",
+ ],
+ "razon_social" => [
+ "max_length" => "Proveedores.validation.razon_social.max_length",
+ ],
+ "telefono" => [
+ "max_length" => "Proveedores.validation.telefono.max_length",
+ ],
+ ];
+ public function findAllWithAllRelations(string $selcols = "*", int $limit = null, int $offset = 0)
+ {
+ $sql =
+ "SELECT t1." .
+ $selcols .
+ ", t2.nombre AS tipo, t3.nombre AS provincia, t4.nombre AS pais FROM " .
+ $this->table .
+ " t1 LEFT JOIN lg_proveedores_tipos t2 ON t1.tipo_id = t2.id LEFT JOIN lg_provincias t3 ON t1.provincia_id = t3.id LEFT JOIN lg_paises t4 ON t1.pais_id = t4.id";
+ if (!is_null($limit) && intval($limit) > 0) {
+ $sql .= " LIMIT " . intval($limit);
+ }
+
+ if (!is_null($offset) && intval($offset) > 0) {
+ $sql .= " OFFSET " . intval($offset);
+ }
+
+ $query = $this->db->query($sql);
+ $result = $query->getResultObject();
+ return $result;
+ }
+
+ /**
+ * Get resource data.
+ *
+ * @param string $search
+ *
+ * @return \CodeIgniter\Database\BaseBuilder
+ */
+ public function getResource(string $search = "")
+ {
+ $builder = $this->db
+ ->table($this->table . " t1")
+ ->select(
+ "t1.id AS id, t1.nombre AS nombre, t1.razon_social AS razon_social, t1.cif AS cif, t1.direccion AS direccion, t1.cp AS cp, t1.ciudad AS ciudad, t1.persona_contacto AS persona_contacto, t1.email AS email, t1.telefono AS telefono, t2.nombre AS tipo, t3.nombre AS provincia, t4.nombre AS pais"
+ );
+ $builder->join("lg_proveedores_tipos t2", "t1.tipo_id = t2.id", "left");
+ $builder->join("lg_provincias t3", "t1.provincia_id = t3.id", "left");
+ $builder->join("lg_paises t4", "t1.pais_id = t4.id", "left");
+
+ //JJO
+ $builder->where("t1.is_deleted", 0);
+
+ return empty($search)
+ ? $builder
+ : $builder
+ ->groupStart()
+ ->like("t1.id", $search)
+ ->orLike("t1.nombre", $search)
+ ->orLike("t1.razon_social", $search)
+ ->orLike("t1.cif", $search)
+ ->orLike("t1.direccion", $search)
+ ->orLike("t1.cp", $search)
+ ->orLike("t1.ciudad", $search)
+ ->orLike("t1.persona_contacto", $search)
+ ->orLike("t1.email", $search)
+ ->orLike("t1.telefono", $search)
+ ->orLike("t2.id", $search)
+ ->orLike("t3.id", $search)
+ ->orLike("t4.id", $search)
+ ->orLike("t1.id", $search)
+ ->orLike("t1.nombre", $search)
+ ->orLike("t1.tipo_id", $search)
+ ->orLike("t1.razon_social", $search)
+ ->orLike("t1.cif", $search)
+ ->orLike("t1.direccion", $search)
+ ->orLike("t1.cp", $search)
+ ->orLike("t1.ciudad", $search)
+ ->orLike("t1.provincia_id", $search)
+ ->orLike("t1.pais_id", $search)
+ ->orLike("t1.persona_contacto", $search)
+ ->orLike("t1.email", $search)
+ ->orLike("t1.telefono", $search)
+ ->orLike("t2.nombre", $search)
+ ->orLike("t3.nombre", $search)
+ ->orLike("t4.nombre", $search)
+ ->groupEnd();
+ }
+
+ public function getProvList(int $tipoId = -1){
+
+ $builder = $this->db
+ ->table($this->table . " t1")
+ ->select(
+ "t1.id AS value, t1.nombre AS label")
+ ->where("tipo_id", $tipoId);
+
+ return $builder->get()->getResultObject();
+ }
+}
diff --git a/ci4/app/Models/Compras/ProveedorTipoModel.php b/ci4/app/Models/Compras/ProveedorTipoModel.php
new file mode 100644
index 00000000..747e5973
--- /dev/null
+++ b/ci4/app/Models/Compras/ProveedorTipoModel.php
@@ -0,0 +1,90 @@
+ "t1.id",
+ 2 => "t1.nombre",
+ 3 => "t1.created_at",
+ 4 => "t1.updated_at",
+ ];
+
+ protected $allowedFields = ["nombre"];
+ protected $returnType = "App\Entities\Compras\ProveedorTipoEntity";
+
+ protected $useTimestamps = true;
+ protected $useSoftDeletes = false;
+
+ protected $createdField = "created_at";
+
+ protected $updatedField = "updated_at";
+
+ public static $labelField = "nombre";
+
+ protected $validationRules = [
+ "nombre" => [
+ "label" => "LgProveedoresTipos.nombre",
+ "rules" => "trim|required|max_length[255]",
+ ],
+ ];
+
+ protected $validationMessages = [
+ "nombre" => [
+ "max_length" => "LgProveedoresTipos.validation.nombre.max_length",
+ "required" => "LgProveedoresTipos.validation.nombre.required",
+ ],
+ ];
+
+ /**
+ * Get resource data.
+ *
+ * @param string $search
+ *
+ * @return \CodeIgniter\Database\BaseBuilder
+ */
+ public function getResource(string $search = "")
+ {
+ $builder = $this->db
+ ->table($this->table . " t1")
+ ->select("t1.id AS id, t1.nombre AS nombre, t1.created_at AS created_at, t1.updated_at AS updated_at");
+
+ return empty($search)
+ ? $builder
+ : $builder
+ ->groupStart()
+ ->like("t1.id", $search)
+ ->orLike("t1.nombre", $search)
+ ->orLike("t1.created_at", $search)
+ ->orLike("t1.updated_at", $search)
+ ->orLike("t1.id", $search)
+ ->orLike("t1.nombre", $search)
+ ->orLike("t1.created_at", $search)
+ ->orLike("t1.updated_at", $search)
+ ->groupEnd();
+ }
+
+
+ public function getTipoId(string $tipo = ""){
+
+ $builder = $this->db
+ ->table($this->table . " t1")
+ ->select("t1.id AS id")
+ ->where("t1.nombre", $tipo);
+
+ $rows = $builder->get()->getResultObject();
+ if(sizeof($rows)>0)
+ return intval($rows[0]->id);
+ else
+ return -1;
+ }
+}
diff --git a/ci4/app/Models/Configuracion/MaquinasTarifasImpresionModel.php b/ci4/app/Models/Configuracion/MaquinasTarifasImpresionModel.php
index f95608f9..62b3e037 100644
--- a/ci4/app/Models/Configuracion/MaquinasTarifasImpresionModel.php
+++ b/ci4/app/Models/Configuracion/MaquinasTarifasImpresionModel.php
@@ -37,7 +37,7 @@ class MaquinasTarifasImpresionModel extends \App\Models\GoBaseModel
],
"tipo" => [
"label" => "MaquinasTarifasImpresions.tipo",
- "rules" => "permit_empty|in_list[negro,color,negrohq,bicolor]",
+ "rules" => "permit_empty|in_list[negro,color,negrohq,bicolor,colorhq]",
],
"uso" => [
"label" => "MaquinasTarifasImpresions.uso",
diff --git a/ci4/app/Models/Tarifas/TarifaAcabadoLineaModel.php b/ci4/app/Models/Tarifas/TarifaAcabadoLineaModel.php
index 48130463..dcde951e 100644
--- a/ci4/app/Models/Tarifas/TarifaAcabadoLineaModel.php
+++ b/ci4/app/Models/Tarifas/TarifaAcabadoLineaModel.php
@@ -13,16 +13,16 @@ class TarifaAcabadoLineaModel extends \App\Models\GoBaseModel
protected $useAutoIncrement = true;
const SORTABLE = [
- 0 => "t1.paginas_min",
- 1 => "t1.paginas_max",
+ 0 => "t1.tirada_min",
+ 1 => "t1.tirada_max",
2 => "t1.precio_min",
3 => "t1.precio_max",
4 => "t1.margen",
];
protected $allowedFields = [
- "paginas_min",
- "paginas_max",
+ "tirada_min",
+ "tirada_max",
"precio_min",
"precio_max",
"margen",
@@ -53,11 +53,11 @@ class TarifaAcabadoLineaModel extends \App\Models\GoBaseModel
"label" => "TarifaAcabadoLineas.precioMin",
"rules" => "required|decimal",
],
- "paginas_max" => [
+ "tirada_max" => [
"label" => "TarifaAcabadoLineas.tiradaMax",
"rules" => "required|integer",
],
- "paginas_min" => [
+ "tirada_min" => [
"label" => "TarifaAcabadoLineas.tiradaMin",
"rules" => "required|integer",
],
@@ -80,13 +80,13 @@ class TarifaAcabadoLineaModel extends \App\Models\GoBaseModel
"decimal" => "TarifaAcabadoLineas.validation.precio_min.decimal",
"required" => "TarifaAcabadoLineas.validation.precio_min.required",
],
- "paginas_max" => [
- "integer" => "TarifaAcabadoLineas.validation.paginas_max.integer",
- "required" => "TarifaAcabadoLineas.validation.paginas_max.required",
+ "tirada_max" => [
+ "integer" => "TarifaAcabadoLineas.validation.tirada_max.integer",
+ "required" => "TarifaAcabadoLineas.validation.tirada_max.required",
],
- "paginas_min" => [
- "integer" => "TarifaAcabadoLineas.validation.paginas_min.integer",
- "required" => "TarifaAcabadoLineas.validation.paginas_min.required",
+ "tirada_min" => [
+ "integer" => "TarifaAcabadoLineas.validation.tirada_min.integer",
+ "required" => "TarifaAcabadoLineas.validation.tirada_min.required",
],
"margen" => [
"integer" => "TarifaAcabadoLineas.validation.margen.integer",
@@ -131,7 +131,7 @@ class TarifaAcabadoLineaModel extends \App\Models\GoBaseModel
$builder = $this->db
->table($this->table . " t1")
->select(
- "t1.id AS id, t1.paginas_min AS paginas_min, t1.paginas_max AS paginas_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.margen AS margen, t2.id AS tarifa_acabado"
+ "t1.id AS id, t1.tirada_min AS tirada_min, t1.tirada_max AS tirada_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.margen AS margen, t2.id AS tarifa_acabado"
);
//JJO
@@ -145,12 +145,12 @@ class TarifaAcabadoLineaModel extends \App\Models\GoBaseModel
? $builder
: $builder
->groupStart()
- ->like("t1.paginas_min", $search)
- ->orLike("t1.paginas_max", $search)
+ ->like("t1.tirada_min", $search)
+ ->orLike("t1.tirada_max", $search)
->orLike("t1.precio_min", $search)
->orLike("t1.precio_max", $search)
- ->orLike("t1.paginas_min", $search)
- ->orLike("t1.paginas_max", $search)
+ ->orLike("t1.tirada_min", $search)
+ ->orLike("t1.tirada_max", $search)
->orLike("t1.precio_min", $search)
->orLike("t1.precio_max", $search)
->groupEnd();
@@ -172,13 +172,13 @@ class TarifaAcabadoLineaModel extends \App\Models\GoBaseModel
helper('general');
- if(floatval($data["paginas_min"])>= floatval($data["paginas_max"])){
- return lang('TarifaAcabadoLineas.validation.error_paginas_range');
+ if(floatval($data["tirada_min"])>= floatval($data["tirada_max"])){
+ return lang('TarifaAcabadoLineas.validation.error_tirada_range');
}
$rows = $this->db
->table($this->table)
- ->select("id, paginas_min, paginas_max")
+ ->select("id, tirada_min, tirada_max")
->where("is_deleted", 0)
->where("tarifa_acabado_id", $id_tarifa_acabado)
->get()->getResultObject();
@@ -190,9 +190,9 @@ class TarifaAcabadoLineaModel extends \App\Models\GoBaseModel
continue;
}
}
- if(check_overlap(floatval($data["paginas_min"]), floatval($data["paginas_max"]),
- $row->paginas_min, $row->paginas_max)){
- return lang('TarifaAcabadoLineas.validation.error_paginas_overlap');
+ if(check_overlap(floatval($data["tirada_min"]), floatval($data["tirada_max"]),
+ $row->tirada_min, $row->tirada_max)){
+ return lang('TarifaAcabadoLineas.validation.error_tirada_overlap');
}
}
diff --git a/ci4/app/Models/Tarifas/TarifaEncuadernacionLineaModel.php b/ci4/app/Models/Tarifas/TarifaEncuadernacionLineaModel.php
index aa5b9519..2c2381aa 100644
--- a/ci4/app/Models/Tarifas/TarifaEncuadernacionLineaModel.php
+++ b/ci4/app/Models/Tarifas/TarifaEncuadernacionLineaModel.php
@@ -20,7 +20,7 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
];
protected $allowedFields = [
- "tarifa_encuadernacion_id",
+ "tirada_encuadernacion_id",
"paginas_min",
"paginas_max",
"precio_min",
@@ -29,7 +29,7 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
"is_deleted",
];
- protected $returnType = "App\Entities\Tarifas\TarifaManipuladoLinea";
+ protected $returnType = "App\Entities\Tarifas\TarifaEncuadernacionLinea";
protected $useTimestamps = true;
protected $useSoftDeletes = false;
@@ -38,51 +38,51 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
protected $updatedField = "updated_at";
- public static $labelField = "tarifa_encuadernacion_id";
+ public static $labelField = "tirada_encuadernacion_id";
protected $validationRules = [
"precio_max" => [
- "label" => "TarifaManipuladoLineas.precioMax",
+ "label" => "TarifaEncuadernacionLineas.precioMax",
"rules" => "required|decimal",
],
"precio_min" => [
- "label" => "TarifaManipuladoLineas.precioMin",
+ "label" => "TarifaEncuadernacionLineas.precioMin",
"rules" => "required|decimal",
],
"paginas_max" => [
- "label" => "TarifaManipuladoLineas.paginasMax",
+ "label" => "TarifaEncuadernacionLineas.paginasMax",
"rules" => "required|decimal",
],
"paginas_min" => [
- "label" => "TarifaManipuladoLineas.paginasMin",
+ "label" => "TarifaEncuadernacionLineas.paginasMin",
"rules" => "required|decimal",
],
"margen" => [
- "label" => "TarifaManipuladoLineas.margen",
+ "label" => "TarifaEncuadernacionLineas.margen",
"rules" => "required|decimal",
],
];
protected $validationMessages = [
"precio_max" => [
- "decimal" => "TarifaManipuladoLineas.validation.precio_max.decimal",
- "required" => "TarifaManipuladoLineas.validation.precio_max.required",
+ "decimal" => "TarifaEncuadernacionLineas.validation.precio_max.decimal",
+ "required" => "TarifaEncuadernacionLineas.validation.precio_max.required",
],
"precio_min" => [
- "decimal" => "TarifaManipuladoLineas.validation.precio_min.decimal",
- "required" => "TarifaManipuladoLineas.validation.precio_min.required",
+ "decimal" => "TarifaEncuadernacionLineas.validation.precio_min.decimal",
+ "required" => "TarifaEncuadernacionLineas.validation.precio_min.required",
],
"paginas_max" => [
- "decimal" => "TarifaManipuladoLineas.validation.paginas_max.decimal",
- "required" => "TarifaManipuladoLineas.validation.paginas_max.required",
+ "decimal" => "TarifaEncuadernacionLineas.validation.paginas_max.decimal",
+ "required" => "TarifaEncuadernacionLineas.validation.paginas_max.required",
],
"paginas_min" => [
- "decimal" => "TarifaManipuladoLineas.validation.paginas_min.decimal",
- "required" => "TarifaManipuladoLineas.validation.paginas_min.required",
+ "decimal" => "TarifaEncuadernacionLineas.validation.paginas_min.decimal",
+ "required" => "TarifaEncuadernacionLineas.validation.paginas_min.required",
],
"margen" => [
- "decimal" => "TarifaManipuladoLineas.validation.margen.decimal",
- "required" => "TarifaManipuladoLineas.validation.margen.required",
+ "decimal" => "TarifaEncuadernacionLineas.validation.margen.decimal",
+ "required" => "TarifaEncuadernacionLineas.validation.margen.required",
],
];
@@ -93,18 +93,18 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
*
* @return \CodeIgniter\Database\BaseBuilder
*/
- public function getResource(string $search = "", $tarifa_encuadernacion_id = -1)
+ public function getResource(string $search = "", $tirada_encuadernacion_id = -1)
{
$builder = $this->db
->table($this->table . " t1")
->select(
- "t1.id AS id, t1.tarifa_encuadernacion_id AS tarifa_encuadernacion_id, t1.paginas_min AS paginas_min, t1.paginas_max AS paginas_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.margen AS margen, t2.id AS tarifa_encuadernacion"
+ "t1.id AS id, t1.tirada_encuadernacion_id AS tirada_encuadernacion_id, t1.paginas_min AS paginas_min, t1.paginas_max AS paginas_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.margen AS margen, t2.id AS tarifa_encuadernacion"
);
//JJO
- $builder->where('tarifa_encuadernacion_id', $tarifa_encuadernacion_id);
+ $builder->where('tirada_encuadernacion_id', $tirada_encuadernacion_id);
$builder->where("t1.is_deleted", 0);
- $builder->join("tarifa_encuadernacion t2", "t1.tarifa_encuadernacion_id = t2.id", "left");
+ $builder->join("tarifa_encuadernacion_tiradas t2", "t1.tirada_encuadernacion_id = t2.id", "left");
return empty($search)
@@ -112,13 +112,13 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
: $builder
->groupStart()
->like("t1.id", $search)
- ->orLike("t1.tarifa_encuadernacion_id", $search)
+ ->orLike("t1.tirada_encuadernacion_id", $search)
->orLike("t1.paginas_min", $search)
->orLike("t1.paginas_max", $search)
->orLike("t1.precio_min", $search)
->orLike("t1.precio_max", $search)
->orLike("t1.id", $search)
- ->orLike("t1.tarifa_encuadernacion_id", $search)
+ ->orLike("t1.tirada_encuadernacion_id", $search)
->orLike("t1.paginas_min", $search)
->orLike("t1.paginas_max", $search)
->orLike("t1.precio_min", $search)
@@ -126,19 +126,19 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
->groupEnd();
}
- public function checkIntervals($data = [], $id_linea = null, $id_tarifa_encuadernacion = null){
+ public function checkIntervals($data = [], $id_linea = null, $tirada_encuadernacion_id = null){
helper('general');
if(floatval($data["paginas_min"])>= floatval($data["paginas_max"])){
- return lang('TarifaManipuladoLineas.validation.error_paginas_range');
+ return lang('TarifaEncuadernacionLineas.validation.error_paginas_range');
}
$rows = $this->db
->table($this->table)
->select("id, paginas_min, paginas_max")
->where("is_deleted", 0)
- ->where("tarifa_encuadernacion_id", $id_tarifa_encuadernacion)
+ ->where("tirada_encuadernacion_id", $tirada_encuadernacion_id)
->get()->getResultObject();
@@ -150,10 +150,22 @@ class TarifaEncuadernacionLineaModel extends \App\Models\GoBaseModel
}
if(check_overlap(floatval($data["paginas_min"]), floatval($data["paginas_max"]),
$row->paginas_min, $row->paginas_max)){
- return lang('TarifaManipuladoLineas.validation.error_paginas_overlap');
+ return lang('TarifaEncuadernacionLineas.validation.error_paginas_overlap');
}
}
return "";
}
+
+ public function removeAllEncuadernacionLineas($tiradaId = -1, $datetime = null, $delete_flag=1){
+
+ $builder = $this->db
+ ->table($this->table)
+ ->set(['deleted_at' => $datetime->format('Y-m-d H:i:s'),
+ 'is_deleted' => $delete_flag])
+ ->where('tirada_encuadernacion_id',$tiradaId)
+ ->update();
+
+ return $builder;
+ }
}
diff --git a/ci4/app/Models/Tarifas/TarifaEncuadernacionModel.php b/ci4/app/Models/Tarifas/TarifaEncuadernacionModel.php
index 69d5a181..05be7bda 100644
--- a/ci4/app/Models/Tarifas/TarifaEncuadernacionModel.php
+++ b/ci4/app/Models/Tarifas/TarifaEncuadernacionModel.php
@@ -14,12 +14,17 @@ class TarifaEncuadernacionModel extends \App\Models\GoBaseModel
const SORTABLE = [
0 => "t1.nombre",
+ 1 => "t1.precio_min",
+ 2 => "t1.importe_fijo",
+ 3 => "t1.mostrar_en_presupuesto",
+
];
protected $allowedFields = [
"nombre",
"precio_min",
"importe_fijo",
+ "mostrar_en_presupuesto",
"deleted_at",
"is_deleted",
"user_created_id",
@@ -76,7 +81,8 @@ class TarifaEncuadernacionModel extends \App\Models\GoBaseModel
*/
public function getResource(string $search = "")
{
- $builder = $this->db->table($this->table . " t1")->select("t1.id AS id, t1.nombre AS nombre, t1.precio_min AS precio_min, t1.importe_fijo AS importe_fijo");
+ $builder = $this->db->table($this->table . " t1")->select("t1.id AS id, t1.nombre AS nombre,
+ t1.precio_min AS precio_min, t1.importe_fijo AS importe_fijo, t1.mostrar_en_presupuesto AS mostrar_en_presupuesto");
//JJO
$builder->where("t1.is_deleted", 0);
diff --git a/ci4/app/Models/Tarifas/TarifaEncuadernacionTiradaModel.php b/ci4/app/Models/Tarifas/TarifaEncuadernacionTiradaModel.php
new file mode 100644
index 00000000..c1984c89
--- /dev/null
+++ b/ci4/app/Models/Tarifas/TarifaEncuadernacionTiradaModel.php
@@ -0,0 +1,133 @@
+ "t3.nombre",
+ 2 => "t1.tirada_min",
+ 3 => "t1.tirada_max",
+
+ ];
+
+ protected $allowedFields = [
+ "tarifa_encuadernacion_id",
+ "tirada_min",
+ "tirada_max",
+ "proveedor_id",
+ "user_created_id",
+ "user_updated_id",
+ "is_deleted",
+ "deleted_at",
+
+ ];
+ protected $returnType = "App\Entities\Tarifas\TarifaEncuadernacionTirada";
+
+ protected $useTimestamps = true;
+ protected $useSoftDeletes = false;
+
+ protected $createdField = "created_at";
+
+ protected $updatedField = "updated_at";
+
+ public static $labelField = "tarifa_encuadernacion_id";
+
+ protected $validationRules = [
+ "tirada_max" => [
+ "label" => "TarifaEncuadernacionTiradas.tiradaMax",
+ "rules" => "required|integer",
+ ],
+ "tirada_min" => [
+ "label" => "TarifaEncuadernacionTiradas.tiradaMin",
+ "rules" => "required|integer",
+ ]
+ ];
+
+ protected $validationMessages = [
+ "tirada_max" => [
+ "integer" => "TarifaEncuadernacionTiradas.validation.tirada_max.integer",
+ "required" => "TarifaEncuadernacionTiradas.validation.tirada_max.required",
+ ],
+ "tirada_min" => [
+ "integer" => "TarifaEncuadernacionTiradas.validation.tirada_min.integer",
+ "required" => "TarifaEncuadernacionTiradas.validation.tirada_min.required",
+ ]
+ ];
+
+ /**
+ * Get resource data.
+ *
+ * @param string $search
+ *
+ * @return \CodeIgniter\Database\BaseBuilder
+ */
+ public function getResource(string $search = "", $tarifa_encuadernacion_id = -1)
+ {
+ $builder = $this->db
+ ->table($this->table . " t1")
+ ->select(
+ "t1.id AS id, t1.tarifa_encuadernacion_id AS tarifa_encuadernacion_id, t1.tirada_min AS tirada_min,
+ t1.tirada_max AS tirada_max, t3.nombre AS proveedor, t3.id AS proveedor_id, t2.id AS tarifa_encuadernacion"
+ );
+ //JJO
+ $builder->where('tarifa_encuadernacion_id', $tarifa_encuadernacion_id);
+ $builder->where("t1.is_deleted", 0);
+
+ $builder->join("tarifa_encuadernacion t2", "t1.tarifa_encuadernacion_id = t2.id", "left");
+ $builder->join("lg_proveedores t3", "t1.proveedor_id = t3.id", "left");
+
+
+ return empty($search)
+ ? $builder
+ : $builder
+ ->groupStart()
+ ->Like("t1.tirada_min", $search)
+ ->orLike("t1.tirada_max", $search)
+ ->orLike("t3.nombre", $search)
+ ->orLike("t1.tirada_min", $search)
+ ->orLike("t1.tirada_max", $search)
+ ->orLike("t3.nombre", $search)
+ ->groupEnd();
+ }
+
+ public function checkIntervals($data = [], $id_tirada = null, $tarifa_encuadernacion_id = null){
+
+ helper('general');
+
+ if(floatval($data["tirada_min"])>= floatval($data["tirada_max"])){
+ return lang('TarifaEncuadernacionTiradas.validation.error_tirada_range');
+ }
+
+ $rows = $this->db
+ ->table($this->table)
+ ->select("id, tirada_min, tirada_max")
+ ->where("is_deleted", 0)
+ ->where("tarifa_encuadernacion_id", $tarifa_encuadernacion_id)
+ ->where("proveedor_id", $data["proveedor_id"])
+ ->get()->getResultObject();
+
+
+ foreach ($rows as $row) {
+ if (!is_null($id_tirada)){
+ if($row->id == $id_tirada){
+ continue;
+ }
+ }
+ if(check_overlap(floatval($data["tirada_min"]), floatval($data["tirada_max"]),
+ $row->tirada_min, $row->tirada_max)){
+ return lang('TarifaEncuadernacionTiradas.validation.error_tirada_overlap');
+ }
+ }
+
+ return "";
+ }
+}
diff --git a/ci4/app/Models/Tarifas/TarifaManipuladoLineaModel.php b/ci4/app/Models/Tarifas/TarifaManipuladoLineaModel.php
index 77fbcc6f..6b795f9f 100644
--- a/ci4/app/Models/Tarifas/TarifaManipuladoLineaModel.php
+++ b/ci4/app/Models/Tarifas/TarifaManipuladoLineaModel.php
@@ -13,16 +13,16 @@ class TarifaManipuladoLineaModel extends \App\Models\GoBaseModel
protected $useAutoIncrement = true;
const SORTABLE = [
- 0 => "t1.paginas_min",
- 1 => "t1.paginas_max",
+ 0 => "t1.tirada_min",
+ 1 => "t1.tirada_max",
2 => "t1.precio_min",
3 => "t1.precio_max",
];
protected $allowedFields = [
"tarifa_manipulado_id",
- "paginas_min",
- "paginas_max",
+ "tirada_min",
+ "tirada_max",
"precio_min",
"precio_max",
"user_created_id",
@@ -49,12 +49,12 @@ class TarifaManipuladoLineaModel extends \App\Models\GoBaseModel
"label" => "TarifaManipuladoLineas.precioMin",
"rules" => "required|decimal",
],
- "paginas_max" => [
- "label" => "TarifaManipuladoLineas.paginasMax",
+ "tirada_max" => [
+ "label" => "TarifaManipuladoLineas.tiradaMax",
"rules" => "required|decimal",
],
- "paginas_min" => [
- "label" => "TarifaManipuladoLineas.paginasMin",
+ "tirada_min" => [
+ "label" => "TarifaManipuladoLineas.tiradaMin",
"rules" => "required|decimal",
],
"margen" => [
@@ -72,13 +72,13 @@ class TarifaManipuladoLineaModel extends \App\Models\GoBaseModel
"decimal" => "TarifaManipuladoLineas.validation.precio_min.decimal",
"required" => "TarifaManipuladoLineas.validation.precio_min.required",
],
- "paginas_max" => [
- "decimal" => "TarifaManipuladoLineas.validation.paginas_max.decimal",
- "required" => "TarifaManipuladoLineas.validation.paginas_max.required",
+ "tirada_max" => [
+ "decimal" => "TarifaManipuladoLineas.validation.tirada_max.decimal",
+ "required" => "TarifaManipuladoLineas.validation.tirada_max.required",
],
- "paginas_min" => [
- "decimal" => "TarifaManipuladoLineas.validation.paginas_min.decimal",
- "required" => "TarifaManipuladoLineas.validation.paginas_min.required",
+ "tirada_min" => [
+ "decimal" => "TarifaManipuladoLineas.validation.tirada_min.decimal",
+ "required" => "TarifaManipuladoLineas.validation.tirada_min.required",
],
"margen" => [
"decimal" => "TarifaManipuladoLineas.validation.margen.decimal",
@@ -98,7 +98,7 @@ class TarifaManipuladoLineaModel extends \App\Models\GoBaseModel
$builder = $this->db
->table($this->table . " t1")
->select(
- "t1.id AS id, t1.tarifa_manipulado_id AS tarifa_manipulado_id, t1.paginas_min AS paginas_min, t1.paginas_max AS paginas_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.margen AS margen, t2.id AS tarifa_manipulado"
+ "t1.id AS id, t1.tarifa_manipulado_id AS tarifa_manipulado_id, t1.tirada_min AS tirada_min, t1.tirada_max AS tirada_max, t1.precio_min AS precio_min, t1.precio_max AS precio_max, t1.margen AS margen, t2.id AS tarifa_manipulado"
);
//JJO
$builder->where('tarifa_manipulado_id', $tarifa_manipulado_id);
@@ -113,14 +113,14 @@ class TarifaManipuladoLineaModel extends \App\Models\GoBaseModel
->groupStart()
->like("t1.id", $search)
->orLike("t1.tarifa_manipulado_id", $search)
- ->orLike("t1.paginas_min", $search)
- ->orLike("t1.paginas_max", $search)
+ ->orLike("t1.tirada_min", $search)
+ ->orLike("t1.tirada_max", $search)
->orLike("t1.precio_min", $search)
->orLike("t1.precio_max", $search)
->orLike("t1.id", $search)
->orLike("t1.tarifa_manipulado_id", $search)
- ->orLike("t1.paginas_min", $search)
- ->orLike("t1.paginas_max", $search)
+ ->orLike("t1.tirada_min", $search)
+ ->orLike("t1.tirada_max", $search)
->orLike("t1.precio_min", $search)
->orLike("t1.precio_max", $search)
->groupEnd();
@@ -130,13 +130,13 @@ class TarifaManipuladoLineaModel extends \App\Models\GoBaseModel
helper('general');
- if(floatval($data["paginas_min"])>= floatval($data["paginas_max"])){
- return lang('TarifaManipuladoLineas.validation.error_paginas_range');
+ if(floatval($data["tirada_min"])>= floatval($data["tirada_max"])){
+ return lang('TarifaManipuladoLineas.validation.error_tirada_range');
}
$rows = $this->db
->table($this->table)
- ->select("id, paginas_min, paginas_max")
+ ->select("id, tirada_min, tirada_max")
->where("is_deleted", 0)
->where("tarifa_manipulado_id", $id_tarifa_manipulado)
->get()->getResultObject();
@@ -148,9 +148,9 @@ class TarifaManipuladoLineaModel extends \App\Models\GoBaseModel
continue;
}
}
- if(check_overlap(floatval($data["paginas_min"]), floatval($data["paginas_max"]),
- $row->paginas_min, $row->paginas_max)){
- return lang('TarifaManipuladoLineas.validation.error_paginas_overlap');
+ if(check_overlap(floatval($data["tirada_min"]), floatval($data["tirada_max"]),
+ $row->tirada_min, $row->tirada_max)){
+ return lang('TarifaManipuladoLineas.validation.error_tirada_overlap');
}
}
diff --git a/ci4/app/Models/Tarifas/TarifaManipuladoModel.php b/ci4/app/Models/Tarifas/TarifaManipuladoModel.php
index f7accda2..8afc3ab4 100644
--- a/ci4/app/Models/Tarifas/TarifaManipuladoModel.php
+++ b/ci4/app/Models/Tarifas/TarifaManipuladoModel.php
@@ -14,12 +14,16 @@ class TarifaManipuladoModel extends \App\Models\GoBaseModel
const SORTABLE = [
0 => "t1.nombre",
+ 1 => "precio_min",
+ 2 => "importe_fijo",
+ 3 => "t1.mostrar_en_presupuesto",
];
protected $allowedFields = [
"nombre",
"precio_min",
"importe_fijo",
+ "mostrar_en_presupuesto",
"deleted_at",
"is_deleted",
"user_created_id",
@@ -76,7 +80,8 @@ class TarifaManipuladoModel extends \App\Models\GoBaseModel
*/
public function getResource(string $search = "")
{
- $builder = $this->db->table($this->table . " t1")->select("t1.id AS id, t1.nombre AS nombre, t1.precio_min AS precio_min, t1.importe_fijo AS importe_fijo");
+ $builder = $this->db->table($this->table . " t1")->select("t1.id AS id, t1.nombre AS nombre, t1.precio_min AS precio_min, t1.importe_fijo AS importe_fijo
+ ,t1.mostrar_en_presupuesto AS mostrar_en_presupuesto");
//JJO
$builder->where("t1.is_deleted", 0);
diff --git a/ci4/app/Models/Tarifas/TarifaacabadoModel.php b/ci4/app/Models/Tarifas/TarifaacabadoModel.php
index 049b16f2..8d9d209d 100644
--- a/ci4/app/Models/Tarifas/TarifaacabadoModel.php
+++ b/ci4/app/Models/Tarifas/TarifaacabadoModel.php
@@ -16,12 +16,14 @@ class TarifaacabadoModel extends \App\Models\GoBaseModel
0 => "t1.nombre",
1 => "precio_min",
2 => "importe_fijo",
+ 3 => "t1.mostrar_en_presupuesto",
];
protected $allowedFields = [
"nombre",
"precio_min",
"importe_fijo",
+ "mostrar_en_presupuesto",
"deleted_at",
"is_deleted",
"user_created_id",
@@ -79,7 +81,7 @@ class TarifaacabadoModel extends \App\Models\GoBaseModel
public function getResource(string $search = "")
{
$builder = $this->db->table($this->table . " t1")->select(
- "t1.id AS id, t1.nombre AS nombre, t1.precio_min AS precio_min, t1.importe_fijo AS importe_fijo"
+ "t1.id AS id, t1.nombre AS nombre, t1.precio_min AS precio_min, t1.importe_fijo AS importe_fijo, t1.mostrar_en_presupuesto AS mostrar_en_presupuesto"
);
//JJO
diff --git a/ci4/app/Models/Tarifas/TarifapreimpresionModel.php b/ci4/app/Models/Tarifas/TarifapreimpresionModel.php
index e56da859..0de5263f 100644
--- a/ci4/app/Models/Tarifas/TarifapreimpresionModel.php
+++ b/ci4/app/Models/Tarifas/TarifapreimpresionModel.php
@@ -18,6 +18,7 @@ class TarifapreimpresionModel extends \App\Models\GoBaseModel
"precio_min",
"importe_fijo",
"margen",
+ "mostrar_en_presupuesto",
"deleted_at",
"is_deleted",
"user_created_id",
@@ -38,7 +39,7 @@ class TarifapreimpresionModel extends \App\Models\GoBaseModel
"label" => "Tarifapreimpresion.nombre",
"rules" => "trim|required|max_length[255]",
],
- "precio" => [
+ "precio_pagina" => [
"label" => "Tarifapreimpresion.precio",
"rules" => "required|decimal",
],
@@ -61,7 +62,7 @@ class TarifapreimpresionModel extends \App\Models\GoBaseModel
"max_length" => "Tarifapreimpresion.validation.nombre.max_length",
"required" => "Tarifapreimpresion.validation.nombre.required",
],
- "precio" => [
+ "precio_pagina" => [
"decimal" => "Tarifapreimpresion.validation.precio.decimal",
"required" => "Tarifapreimpresion.validation.precio.required",
],
diff --git a/ci4/app/Views/themes/_commonPartialsBs/_alertBoxes.php b/ci4/app/Views/themes/_commonPartialsBs/_alertBoxes.php
index d3b7e52f..ab60abcd 100644
--- a/ci4/app/Views/themes/_commonPartialsBs/_alertBoxes.php
+++ b/ci4/app/Views/themes/_commonPartialsBs/_alertBoxes.php
@@ -24,9 +24,7 @@ if (session()->has('error')) {
= $this->section('additionalInlineJs') ?>
-function popAlert(message, alertType){
- var alertClass = "alert-" + alertType;
- var alertIcon = alertType == "success" ? "ti-check" : "ti-" + alertType;
+function popAlert(message, alertClass, alertIcon){
var htmlString = `
@@ -45,15 +43,15 @@ function popAlert(message, alertType){
}
function popSuccessAlert(successMsg){
- popAlert(successMsg, "success");
+ popAlert(successMsg, "alert-success", "ti-check");
}
function popWarningAlert(warningMsg){
- popAlert(warningMsg, "warning");
+ popAlert(warningMsg, "alert-warning", "ti-bell");
}
function popErrorAlert(errorMsg){
- popAlert(errorMsg, "error");
+ popAlert(errorMsg, "alert-danger", "ti-ban");
}
diff --git a/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/_proveedorFormItems.php b/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/_proveedorFormItems.php
new file mode 100644
index 00000000..a0902c32
--- /dev/null
+++ b/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/_proveedorFormItems.php
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/_proveedorTipoFormItems.php b/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/_proveedorTipoFormItems.php
new file mode 100644
index 00000000..90d8389b
--- /dev/null
+++ b/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/_proveedorTipoFormItems.php
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/viewProveedorForm.php b/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/viewProveedorForm.php
new file mode 100644
index 00000000..a96c6207
--- /dev/null
+++ b/ci4/app/Views/themes/backend/vuexy/form/compras/proveedores/viewProveedorForm.php
@@ -0,0 +1,97 @@
+= $this->include("themes/_commonPartialsBs/select2bs5") ?>
+= $this->include("themes/_commonPartialsBs/sweetalert") ?>
+= $this->extend('themes/backend/vuexy/main/defaultlayout') ?>
+= $this->section("content") ?>
+
+
\ No newline at end of file
diff --git a/ci4/app/Views/themes/backend/vuexy/form/tarifas/manipulado/viewTarifaManipuladoForm.php b/ci4/app/Views/themes/backend/vuexy/form/tarifas/manipulado/viewTarifaManipuladoForm.php
index fb54d6db..a1276a7b 100644
--- a/ci4/app/Views/themes/backend/vuexy/form/tarifas/manipulado/viewTarifaManipuladoForm.php
+++ b/ci4/app/Views/themes/backend/vuexy/form/tarifas/manipulado/viewTarifaManipuladoForm.php
@@ -47,12 +47,12 @@