mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
Merge branch 'mod/tipo_papel_generico' into 'main'
Mod/tipo papel generico See merge request jjimenez/safekat!881
This commit is contained in:
@ -11,6 +11,7 @@ use App\Services\PapelImpresionService;
|
|||||||
use CodeIgniter\Config\BaseService;
|
use CodeIgniter\Config\BaseService;
|
||||||
use App\Services\ProductionService;
|
use App\Services\ProductionService;
|
||||||
use App\Services\TarifaMaquinaService;
|
use App\Services\TarifaMaquinaService;
|
||||||
|
use App\Services\PapelService;
|
||||||
use CodeIgniter\Email\Email;
|
use CodeIgniter\Email\Email;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -39,6 +40,9 @@ class Services extends BaseService
|
|||||||
* }
|
* }
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
public static function papel(){
|
||||||
|
return new PapelService();
|
||||||
|
}
|
||||||
public static function production(){
|
public static function production(){
|
||||||
return new ProductionService();
|
return new ProductionService();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -40,6 +40,8 @@ class Papelesgenericos extends \App\Controllers\BaseResourceController
|
|||||||
// Se indica el flag para los ficheros borrados
|
// Se indica el flag para los ficheros borrados
|
||||||
$this->delete_flag = 1;
|
$this->delete_flag = 1;
|
||||||
|
|
||||||
|
$this->papelService = service('papel');
|
||||||
|
|
||||||
// Breadcrumbs (IMN)
|
// Breadcrumbs (IMN)
|
||||||
$this->viewData['breadcrumb'] = [
|
$this->viewData['breadcrumb'] = [
|
||||||
['title' => lang("App.menu_configuration"), 'route' => "javascript:void(0);", 'active' => false],
|
['title' => lang("App.menu_configuration"), 'route' => "javascript:void(0);", 'active' => false],
|
||||||
@ -70,10 +72,6 @@ class Papelesgenericos extends \App\Controllers\BaseResourceController
|
|||||||
public function add()
|
public function add()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if ($this->request->getPost()):
|
if ($this->request->getPost()):
|
||||||
|
|
||||||
$nullIfEmpty = true; // !(phpversion() >= '8.1');
|
$nullIfEmpty = true; // !(phpversion() >= '8.1');
|
||||||
@ -123,6 +121,8 @@ class Papelesgenericos extends \App\Controllers\BaseResourceController
|
|||||||
|
|
||||||
$this->viewData['papelGenerico'] = isset($sanitizedData) ? new PapelGenerico($sanitizedData) : new PapelGenerico();
|
$this->viewData['papelGenerico'] = isset($sanitizedData) ? new PapelGenerico($sanitizedData) : new PapelGenerico();
|
||||||
|
|
||||||
|
$this->viewData['tipoPapelGenericoList'] = $this->papelService->getTipoPapelGenerico();
|
||||||
|
|
||||||
$this->viewData['formAction'] = route_to('createPapelGenerico');
|
$this->viewData['formAction'] = route_to('createPapelGenerico');
|
||||||
|
|
||||||
$this->viewData['boxTitle'] = lang('Basic.global.addNew') . ' ' . lang('PapelGenerico.moduleTitle') . ' ' . lang('Basic.global.addNewSuffix');
|
$this->viewData['boxTitle'] = lang('Basic.global.addNew') . ' ' . lang('PapelGenerico.moduleTitle') . ' ' . lang('Basic.global.addNewSuffix');
|
||||||
@ -145,7 +145,6 @@ class Papelesgenericos extends \App\Controllers\BaseResourceController
|
|||||||
endif;
|
endif;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if ($this->request->getPost()):
|
if ($this->request->getPost()):
|
||||||
|
|
||||||
$nullIfEmpty = true; // !(phpversion() >= '8.1');
|
$nullIfEmpty = true; // !(phpversion() >= '8.1');
|
||||||
@ -211,6 +210,8 @@ class Papelesgenericos extends \App\Controllers\BaseResourceController
|
|||||||
|
|
||||||
$this->viewData['papelGenerico'] = $papelGenerico;
|
$this->viewData['papelGenerico'] = $papelGenerico;
|
||||||
|
|
||||||
|
$this->viewData['tipoPapelGenericoList'] = $this->papelService->getTipoPapelGenerico();
|
||||||
|
|
||||||
$this->viewData['formAction'] = route_to('updatePapelGenerico', $id);
|
$this->viewData['formAction'] = route_to('updatePapelGenerico', $id);
|
||||||
|
|
||||||
$this->viewData['boxTitle'] = lang('Basic.global.edit2') . ' ' . lang('PapelGenerico.moduleTitle') . ' ' . lang('Basic.global.edit3');
|
$this->viewData['boxTitle'] = lang('Basic.global.edit2') . ' ' . lang('PapelGenerico.moduleTitle') . ' ' . lang('Basic.global.edit3');
|
||||||
|
|||||||
@ -0,0 +1,68 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Database\Migrations;
|
||||||
|
|
||||||
|
use CodeIgniter\Database\Migration;
|
||||||
|
|
||||||
|
class CreateTiposPapelGenerico extends Migration
|
||||||
|
{
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
// Crear tabla tipos_papel_generico
|
||||||
|
$this->forge->addField([
|
||||||
|
'id' => [
|
||||||
|
'type' => 'INT',
|
||||||
|
'unsigned' => true,
|
||||||
|
'auto_increment' => true,
|
||||||
|
],
|
||||||
|
'clave' => [
|
||||||
|
'type' => 'VARCHAR',
|
||||||
|
'constraint' => '50',
|
||||||
|
'unique' => true,
|
||||||
|
],
|
||||||
|
]);
|
||||||
|
$this->forge->addKey('id', true);
|
||||||
|
$this->forge->createTable('tipos_papel_generico');
|
||||||
|
|
||||||
|
// Insertar claves
|
||||||
|
$data = [
|
||||||
|
['clave' => 'offset_blanco'],
|
||||||
|
['clave' => 'offset_ahuesado'],
|
||||||
|
['clave' => 'estucados'],
|
||||||
|
['clave' => 'volumen'],
|
||||||
|
['clave' => 'especiales'],
|
||||||
|
['clave' => 'reciclados'],
|
||||||
|
['clave' => 'cartulinas'],
|
||||||
|
['clave' => 'verjurados'],
|
||||||
|
];
|
||||||
|
$this->db->table('tipos_papel_generico')->insertBatch($data);
|
||||||
|
|
||||||
|
// Añadir columna tipo_papel_generico_id a lg_papel_generico
|
||||||
|
$this->forge->addColumn('lg_papel_generico', [
|
||||||
|
'tipo_papel_generico_id' => [
|
||||||
|
'type' => 'INT',
|
||||||
|
'unsigned' => true,
|
||||||
|
'null' => true,
|
||||||
|
'after' => 'id', // Ajusta si deseas colocarla en otro lugar
|
||||||
|
]
|
||||||
|
]);
|
||||||
|
|
||||||
|
// Agregar constraint foreign key
|
||||||
|
$this->db->query(
|
||||||
|
'ALTER TABLE lg_papel_generico
|
||||||
|
ADD CONSTRAINT fk_tipo_papel_generico
|
||||||
|
FOREIGN KEY (tipo_papel_generico_id)
|
||||||
|
REFERENCES tipos_papel_generico(id)
|
||||||
|
ON DELETE SET NULL
|
||||||
|
ON UPDATE CASCADE'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
// Eliminar foreign key primero
|
||||||
|
$this->db->query('ALTER TABLE lg_papel_generico DROP FOREIGN KEY fk_tipo_papel_generico');
|
||||||
|
$this->forge->dropColumn('lg_papel_generico', 'tipo_papel_generico_id');
|
||||||
|
$this->forge->dropTable('tipos_papel_generico');
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -16,11 +16,13 @@ class PapelGenerico extends \CodeIgniter\Entity\Entity
|
|||||||
"activo" => false,
|
"activo" => false,
|
||||||
"created_at" => null,
|
"created_at" => null,
|
||||||
"updated_at" => null,
|
"updated_at" => null,
|
||||||
|
"tipo_papel_generico_id" => null,
|
||||||
];
|
];
|
||||||
protected $casts = [
|
protected $casts = [
|
||||||
"show_in_client" => "boolean",
|
"show_in_client" => "boolean",
|
||||||
"activo" => "boolean",
|
"activo" => "boolean",
|
||||||
"show_in_client_special" => "boolean",
|
"show_in_client_special" => "boolean",
|
||||||
"is_deleted" => "int",
|
"is_deleted" => "int",
|
||||||
|
"tipo_papel_generico_id" => "int",
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
11
ci4/app/Entities/Configuracion/TipoPapelGenerico.php
Executable file
11
ci4/app/Entities/Configuracion/TipoPapelGenerico.php
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
<?php
|
||||||
|
namespace App\Entities\Configuracion;
|
||||||
|
|
||||||
|
use CodeIgniter\Entity;
|
||||||
|
|
||||||
|
class TipoPapelGenerico extends \CodeIgniter\Entity\Entity
|
||||||
|
{
|
||||||
|
protected $attributes = [
|
||||||
|
"clave" => null,
|
||||||
|
];
|
||||||
|
}
|
||||||
@ -6,6 +6,7 @@ return [
|
|||||||
'code' => 'Código',
|
'code' => 'Código',
|
||||||
'codeOt' => 'Código Ot',
|
'codeOt' => 'Código Ot',
|
||||||
'createdAt' => 'Creado el',
|
'createdAt' => 'Creado el',
|
||||||
|
'tipo_papel_generico_id' => 'Tipo Papel Genérico',
|
||||||
'deletedAt' => 'Deleted At',
|
'deletedAt' => 'Deleted At',
|
||||||
'id' => 'ID',
|
'id' => 'ID',
|
||||||
'activo' => 'Activo',
|
'activo' => 'Activo',
|
||||||
@ -21,6 +22,16 @@ return [
|
|||||||
'updatedAt' => 'Actualizado el',
|
'updatedAt' => 'Actualizado el',
|
||||||
'form_acordion_title' => 'Propiedades Papel Genérico',
|
'form_acordion_title' => 'Propiedades Papel Genérico',
|
||||||
|
|
||||||
|
// Tipos de papel genérico
|
||||||
|
'offset_blanco' => 'Offset Blanco',
|
||||||
|
'offset_ahuesado' => 'Offset Ahuesado',
|
||||||
|
'estucados' => 'Estucados',
|
||||||
|
'volumen' => 'Volumen',
|
||||||
|
'especiales' => 'Especiales',
|
||||||
|
'reciclados' => 'Reciclados',
|
||||||
|
'cartulinas' => 'Cartulinas',
|
||||||
|
'verdujados' => 'Verdujados',
|
||||||
|
|
||||||
'validation' => [
|
'validation' => [
|
||||||
'code' => [
|
'code' => [
|
||||||
'max_length' => 'El campo {field} no puede exceder {param} caracteres en longitud.',
|
'max_length' => 'El campo {field} no puede exceder {param} caracteres en longitud.',
|
||||||
|
|||||||
@ -22,7 +22,18 @@ class PapelGenericoModel extends \App\Models\BaseModel
|
|||||||
4 => "t1.show_in_client_special",
|
4 => "t1.show_in_client_special",
|
||||||
];
|
];
|
||||||
|
|
||||||
protected $allowedFields = ["nombre", "code", "code_ot", "show_in_client", "show_in_client_special", "deleted_at", "is_deleted", "activo"];
|
protected $allowedFields =
|
||||||
|
[
|
||||||
|
"nombre",
|
||||||
|
"code",
|
||||||
|
"code_ot",
|
||||||
|
"show_in_client",
|
||||||
|
"show_in_client_special",
|
||||||
|
"deleted_at",
|
||||||
|
"is_deleted",
|
||||||
|
"activo",
|
||||||
|
"tipo_papel_generico_id",
|
||||||
|
];
|
||||||
protected $returnType = "App\Entities\Configuracion\PapelGenerico";
|
protected $returnType = "App\Entities\Configuracion\PapelGenerico";
|
||||||
|
|
||||||
protected $useTimestamps = true;
|
protected $useTimestamps = true;
|
||||||
@ -132,16 +143,16 @@ class PapelGenericoModel extends \App\Models\BaseModel
|
|||||||
return empty($search)
|
return empty($search)
|
||||||
? $builder
|
? $builder
|
||||||
: $builder
|
: $builder
|
||||||
->groupStart()
|
->groupStart()
|
||||||
->like("t1.id", $search)
|
->like("t1.id", $search)
|
||||||
->orLike("t1.nombre", $search)
|
->orLike("t1.nombre", $search)
|
||||||
->orLike("t1.code", $search)
|
->orLike("t1.code", $search)
|
||||||
->orLike("t1.code_ot", $search)
|
->orLike("t1.code_ot", $search)
|
||||||
->orLike("t1.id", $search)
|
->orLike("t1.id", $search)
|
||||||
->orLike("t1.nombre", $search)
|
->orLike("t1.nombre", $search)
|
||||||
->orLike("t1.code", $search)
|
->orLike("t1.code", $search)
|
||||||
->orLike("t1.code_ot", $search)
|
->orLike("t1.code_ot", $search)
|
||||||
->groupEnd();
|
->groupEnd();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
22
ci4/app/Models/Configuracion/TipoPapelGenericoModel.php
Executable file
22
ci4/app/Models/Configuracion/TipoPapelGenericoModel.php
Executable file
@ -0,0 +1,22 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models\Configuracion;
|
||||||
|
|
||||||
|
class TipoPapelGenericoModel extends \App\Models\BaseModel
|
||||||
|
{
|
||||||
|
protected $table = "tipos_papel_generico";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whether primary key uses auto increment.
|
||||||
|
*
|
||||||
|
* @var bool
|
||||||
|
*/
|
||||||
|
protected $useAutoIncrement = true;
|
||||||
|
|
||||||
|
protected $allowedFields = [
|
||||||
|
"clave",
|
||||||
|
];
|
||||||
|
protected $returnType = "App\Entities\Configuracion\TipoPapelGenerico";
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
27
ci4/app/Services/PapelService.php
Normal file
27
ci4/app/Services/PapelService.php
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Services;
|
||||||
|
|
||||||
|
use CodeIgniter\Config\BaseService;
|
||||||
|
use App\Models\Configuracion\TipoPapelGenericoModel;
|
||||||
|
|
||||||
|
class PapelService extends BaseService
|
||||||
|
{
|
||||||
|
protected TipoPapelGenericoModel $tipoPapelGenericoModel;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
$this->tipoPapelGenericoModel = model(TipoPapelGenericoModel::class);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getTipoPapelGenerico()
|
||||||
|
{
|
||||||
|
$values = $this->tipoPapelGenericoModel->findAll();
|
||||||
|
$tipoPapelGenericoList = [];
|
||||||
|
foreach ($values as $value) {
|
||||||
|
$tipoPapelGenericoList[$value->id] = lang('PapelGenerico.' . $value->clave);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $tipoPapelGenericoList;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -8,6 +8,23 @@
|
|||||||
value="<?= old('nombre', $papelGenerico->nombre) ?>">
|
value="<?= old('nombre', $papelGenerico->nombre) ?>">
|
||||||
</div><!--//.mb-3 -->
|
</div><!--//.mb-3 -->
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label for="tipo_papel_generico_id" class="form-label">
|
||||||
|
<?= lang('PapelGenerico.tipo_papel_generico_id') ?>
|
||||||
|
</label>
|
||||||
|
<select id="tipo_papel_generico_id" name="tipo_papel_generico_id" class="form-control select2" data-placeholder="">
|
||||||
|
<option value="" <?= is_null($papelGenerico->tipo_papel_generico_id) ? 'selected' : '' ?>></option>
|
||||||
|
<?php if (isset($tipoPapelGenericoList) && is_array($tipoPapelGenericoList) && !empty($tipoPapelGenericoList)):
|
||||||
|
foreach ($tipoPapelGenericoList as $k => $v): ?>
|
||||||
|
<option value="<?= $k ?>" <?= $k == $papelGenerico->tipo_papel_generico_id ? 'selected' : '' ?>>
|
||||||
|
<?= esc($v) ?>
|
||||||
|
</option>
|
||||||
|
<?php endforeach;
|
||||||
|
endif; ?>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
</div><!--//.mb-3 -->
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label for="code" class="form-label">
|
<label for="code" class="form-label">
|
||||||
<?= lang('PapelGenerico.code') ?>
|
<?= lang('PapelGenerico.code') ?>
|
||||||
@ -28,8 +45,8 @@
|
|||||||
<label for="activo_papel_generico" class="form-check-label">
|
<label for="activo_papel_generico" class="form-check-label">
|
||||||
<?= lang('PapelGenerico.activo') ?>
|
<?= lang('PapelGenerico.activo') ?>
|
||||||
</label>
|
</label>
|
||||||
<input type="checkbox" id="activo_papel_generico" name="activo" value="1"
|
<input type="checkbox" id="activo_papel_generico" name="activo" value="1" class="form-check-input"
|
||||||
class="form-check-input" <?= $papelGenerico->activo == true ? 'checked' : ''; ?>>
|
<?= $papelGenerico->activo == true ? 'checked' : ''; ?>>
|
||||||
</div><!--//.form-check -->
|
</div><!--//.form-check -->
|
||||||
</div><!--//.mb-3 -->
|
</div><!--//.mb-3 -->
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
|
|||||||
Reference in New Issue
Block a user