Faltan test sobre tarifas encuadernación

This commit is contained in:
Jaime Jiménez
2023-08-17 13:15:01 +02:00
parent d8afcf9c32
commit ce070dfcf7
4 changed files with 28 additions and 30 deletions

View File

@ -58,22 +58,22 @@ class Tarifaencuadernaciontiradas extends \App\Controllers\GoBaseResourceControl
->fields(
Field::inst('tirada_min')
->validator('Validate::numeric', array(
'message' => lang('TarifaAcabadoLineas.validation.paginas_min.decimal'))
'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_min.decimal'))
)
->validator('Validate::notEmpty', array(
'message' => lang('TarifaAcabadoLineas.validation.paginas_min.required'))
'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_min.required'))
),
Field::inst('tirada_max')
->validator('Validate::numeric', array(
'message' => lang('TarifaAcabadoLineas.validation.paginas_max.decimal'))
'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_max.decimal'))
)
->validator('Validate::notEmpty', array(
'message' => lang('TarifaAcabadoLineas.validation.paginas_max.required'))
'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_max.required'))
),
Field::inst('proveedor_id')
->validator('Validate::notEmpty', array(
'message' => lang('TarifaAcabadoLineas.validation.paginas_max.required'))
),
'message' => lang('TarifaEncuadernacionTiradas.validation.tirada_max.required'))
),
Field::inst('tarifa_encuadernacion_id'),
Field::inst('user_created_id'),
Field::inst('created_at'),
@ -83,14 +83,15 @@ class Tarifaencuadernaciontiradas extends \App\Controllers\GoBaseResourceControl
Field::inst('deleted_at'),
)
/*->validator(function ($editor, $action, $data) {
->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['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]['tirada_encuadernacion_id']);
$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;
@ -98,7 +99,7 @@ class Tarifaencuadernaciontiradas extends \App\Controllers\GoBaseResourceControl
}
}
}
})*/
})
->on('preCreate', function ($editor, &$values) {
$session = session();
$datetime = (new \CodeIgniter\I18n\Time("now"));

View File

@ -14,15 +14,13 @@ return [
'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} field must contain a integer number.',
'required' => 'The {field} field is required.',
'integer' => 'The field must contain an integer.',
'required' => 'The field is required.',
],
'paginas_min' => [
'integer' => 'The {field} field must contain a integer number.',
'required' => 'The {field} field is required.',
]
'tirada_min' => [
'integer' => 'The field must contain an integer.',
'required' => 'The field is required.',
],
],
];

View File

@ -14,15 +14,13 @@ return [
'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 {field} debe contener un número entero.',
'required' => 'El campo {field} es obligatorio.',
'integer' => 'El campo debe contener un número entero.',
'required' => 'El campo es obligatorio.',
],
'paginas_min' => [
'integer' => 'El campo {field} debe contener un número entero.',
'required' => 'El campo {field} es obligatorio.',
]
'tirada_min' => [
'integer' => 'El campo debe contener un número entero.',
'required' => 'El campo es obligatorio.',
],
],
];

View File

@ -99,7 +99,7 @@ class TarifaEncuadernacionTiradaModel extends \App\Models\GoBaseModel
->groupEnd();
}
public function checkIntervals($data = [], $id_linea = null, $tarifa_encuadernacion_id = null){
public function checkIntervals($data = [], $id_tirada = null, $tarifa_encuadernacion_id = null){
helper('general');
@ -112,12 +112,13 @@ class TarifaEncuadernacionTiradaModel extends \App\Models\GoBaseModel
->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_linea)){
if($row->id == $id_linea){
if (!is_null($id_tirada)){
if($row->id == $id_tirada){
continue;
}
}