añadido margen a tarifas impresion

This commit is contained in:
Jaime Jiménez
2024-02-24 14:05:01 +01:00
parent c6b7a1712b
commit a44ee4e4ed
9 changed files with 71 additions and 31 deletions

View File

@ -234,6 +234,13 @@ class Maquinastarifasimpresion extends \App\Controllers\GoBaseResourceController
->validator('Validate::notEmpty', array( ->validator('Validate::notEmpty', array(
'message' => lang('MaquinasTarifasImpresions.validation.tipo.required')) 'message' => lang('MaquinasTarifasImpresions.validation.tipo.required'))
), ),
Field::inst('margen')
->validator('Validate::numeric', array(
'message' => lang('MaquinasTarifasImpresions.validation.precio.decimal'))
)
->validator('Validate::notEmpty', array(
'message' => lang('MaquinasTarifasImpresions.validation.tipo.required'))
),
Field::inst('maquina_id'), Field::inst('maquina_id'),
Field::inst('user_created_id'), Field::inst('user_created_id'),
Field::inst('created_at'), Field::inst('created_at'),
@ -260,9 +267,11 @@ class Maquinastarifasimpresion extends \App\Controllers\GoBaseResourceController
'uso' => $values['uso'], 'uso' => $values['uso'],
'is_deleted' => 0)); 'is_deleted' => 0));
$id = $builder->get()->getFirstRow()->id;
// No se pueden duplicar valores al crear o al editar // No se pueden duplicar valores al crear o al editar
if ($builder->countAllResults() >= 1) { if ($builder->countAllResults() >= 1) {
if (($action === Editor::ACTION_EDIT && $builder->get()->getFirstRow()->id != $pkey) if (($action === Editor::ACTION_EDIT && $id != $pkey)
|| $action === Editor::ACTION_CREATE) { || $action === Editor::ACTION_CREATE) {
return lang('MaquinasTarifasImpresions.validation.duplicated_uso_tipo'); return lang('MaquinasTarifasImpresions.validation.duplicated_uso_tipo');

View File

@ -791,7 +791,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
} }
$tarifamodel = new MaquinasTarifasImpresionModel(); $tarifamodel = new MaquinasTarifasImpresionModel();
[$tarifaId, $tarifa] = $tarifamodel->getTarifa($maquina->maquina_id, ($uso=='guardas')?'interior':$uso, $tipo); [$tarifaId, $tarifa, $tarifa_margen] = $tarifamodel->getTarifa($maquina->maquina_id, ($uso=='guardas')?'interior':$uso, $tipo);
// Generates a message like: User 123 logged into the system from 127.0.0.1 // Generates a message like: User 123 logged into the system from 127.0.0.1
if(!is_float($tarifa)){ if(!is_float($tarifa)){
@ -799,10 +799,10 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
} }
if($maquina->is_inkjet){ if($maquina->is_inkjet){
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa, $parametrosInkjet->a_favor_fibra); $linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa, $tarifa_margen, $parametrosInkjet->a_favor_fibra);
} }
else{ else{
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa); $linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa, $tarifa_margen);
} }
if(array_key_exists('error', $linea)){ if(array_key_exists('error', $linea)){
@ -842,6 +842,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
$linea['fields']['precio_click'], $linea['fields']['precio_click'],
$maquina->velocidad); $maquina->velocidad);
[$precio_hora, $margen_precio_hora] = $clientePreciosModel->get_precio_hora($cliente_id, $config, $tiempo); [$precio_hora, $margen_precio_hora] = $clientePreciosModel->get_precio_hora($cliente_id, $config, $tiempo);
if(is_null($precio_hora)){ if(is_null($precio_hora)){
continue; continue;
@ -849,10 +850,10 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
$linea['fields']['tipo_maquina'] = $maquina->is_inkjet?'inkjet':'toner'; $linea['fields']['tipo_maquina'] = $maquina->is_inkjet?'inkjet':'toner';
$linea['fields']['precio_hora'] = $precio_hora*(1+$margen_precio_hora/100.0); $linea['fields']['precio_hora'] = $precio_hora*(1+$margen_precio_hora/100.0);
$linea['fields']['precio_hora_margen'] = $margen_precio_hora; $linea['fields']['precio_hora_margen'] = $precio_hora*($margen_precio_hora/100.0);
$linea['fields']['horas_maquina'] = $tiempo; $linea['fields']['horas_maquina'] = $tiempo;
$linea['fields']['precio_impresion_horas'] = $precio_hora*(1+$margen_precio_hora/100.0)*$tiempo; $linea['fields']['precio_impresion_horas'] = $linea['fields']['precio_hora']*$tiempo;
$linea['fields']['margen_impresion_horas'] = $precio_hora*($margen_precio_hora/100.0)*$tiempo; $linea['fields']['margen_impresion_horas'] = $linea['fields']['precio_hora_margen']*$tiempo;
// para guardas // para guardas
if(\property_exists($datosPedido, 'paginas_impresion')){ if(\property_exists($datosPedido, 'paginas_impresion')){
@ -979,7 +980,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
foreach ($maquinas as $maquina) { foreach ($maquinas as $maquina) {
$tarifamodel = new MaquinasTarifasImpresionModel(); $tarifamodel = new MaquinasTarifasImpresionModel();
[$tarifaId, $tarifa] = $tarifamodel->getTarifa($maquina->maquina_id, $uso, is_array($tipo)?'color':$tipo); [$tarifaId, $tarifa, $tarifa_margen] = $tarifamodel->getTarifa($maquina->maquina_id, $uso, is_array($tipo)?'color':$tipo);
if(!is_float($tarifa)){ if(!is_float($tarifa)){
continue; continue;
} }
@ -991,7 +992,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
$linea['fields']['tarifa_impresion_id'] = $tarifaId; $linea['fields']['tarifa_impresion_id'] = $tarifaId;
$linea['fields']['precios_pliegos'] = $precio_pliego_impresion; $linea['fields']['precios_pliegos'] = $precio_pliego_impresion+$margen_pliego_impresion;
$linea['fields']['precio_libro'] = $linea['fields']['pliegos_libro'] * $precio_pliego_impresion; $linea['fields']['precio_libro'] = $linea['fields']['pliegos_libro'] * $precio_pliego_impresion;
// Precio papel pedido // Precio papel pedido
@ -1020,8 +1021,10 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
$linea['fields']['datosTipologias'] = $datosTipologias[0]; $linea['fields']['datosTipologias'] = $datosTipologias[0];
// impresion // impresion
$linea['fields']['precio_click'] = $tarifa; $linea['fields']['precio_click'] = $tarifa *(1+ $tarifa_margen/100.0);
$linea['fields']['precio_click_margen'] = $tarifa *($tarifa_margen/100.0);
$linea['fields']['precio_click_pedido'] = $linea['fields']['clicks_pedido'] * $linea['fields']['precio_click']; $linea['fields']['precio_click_pedido'] = $linea['fields']['clicks_pedido'] * $linea['fields']['precio_click'];
$linea['fields']['margen_click_pedido'] = $linea['fields']['clicks_pedido'] * $linea['fields']['precio_click_margen'];
$linea['fields']['tiempo_maquina'] = PresupuestoService::getTiempoMaquina( $linea['fields']['tiempo_maquina'] = PresupuestoService::getTiempoMaquina(
$linea['fields']['precio_click_pedido'], $linea['fields']['precio_click_pedido'],
@ -1046,10 +1049,10 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
} }
$linea['fields']['precio_hora'] = $precio_hora*(1+$margen_precio_hora/100.0); $linea['fields']['precio_hora'] = $precio_hora*(1+$margen_precio_hora/100.0);
$linea['fields']['precio_hora_margen'] = $margen_precio_hora; $linea['fields']['precio_hora_margen'] = $precio_hora*($margen_precio_hora/100.0);
$linea['fields']['horas_maquina'] = $tiempo; $linea['fields']['horas_maquina'] = $tiempo;
$linea['fields']['precio_impresion_horas'] = $precio_hora*(1+$margen_precio_hora/100.0)*$tiempo; $linea['fields']['precio_impresion_horas'] = $linea['fields']['precio_hora']*$tiempo;
$linea['fields']['margen_impresion_horas'] = $precio_hora*($margen_precio_hora/100.0)*$tiempo; $linea['fields']['margen_impresion_horas'] = $linea['fields']['precio_hora_margen']*$tiempo;
// total linea rotativa // total linea rotativa
//$linea['fields']['total_impresion'] = $linea['fields']['precio_pedido'] + $linea['fields']['precio_click_pedido'] + $linea['fields']['precio_tinta'] + //$linea['fields']['total_impresion'] = $linea['fields']['precio_pedido'] + $linea['fields']['precio_click_pedido'] + $linea['fields']['precio_tinta'] +

View File

@ -11,6 +11,7 @@ class MaquinasTarifasImpresionEntity extends \CodeIgniter\Entity\Entity
"tipo" => null, "tipo" => null,
"precio" => null, "precio" => null,
"uso" => null, "uso" => null,
"margen" => null,
"user_created_id" => 0, "user_created_id" => 0,
"user_updated_id" => 0, "user_updated_id" => 0,
"is_deleted" => 0, "is_deleted" => 0,
@ -20,6 +21,7 @@ class MaquinasTarifasImpresionEntity extends \CodeIgniter\Entity\Entity
protected $casts = [ protected $casts = [
"maquina_id" => "int", "maquina_id" => "int",
"precio" => "float", "precio" => "float",
"margen" => "float",
"user_created_id" => "int", "user_created_id" => "int",
"user_updated_id" => "int", "user_updated_id" => "int",
"is_deleted" => "int", "is_deleted" => "int",

View File

@ -20,6 +20,7 @@ return [
'userCreatedId' => 'User Created ID', 'userCreatedId' => 'User Created ID',
'userUpdatedId' => 'User Updated ID', 'userUpdatedId' => 'User Updated ID',
'uso' => 'Uso', 'uso' => 'Uso',
'margen' => 'Margen',
'interior' => 'Interior', 'interior' => 'Interior',
'cubierta' => 'Cubierta', 'cubierta' => 'Cubierta',
'sobrecubierta' => 'Sobrecubierta', 'sobrecubierta' => 'Sobrecubierta',

View File

@ -17,9 +17,10 @@ class MaquinasTarifasImpresionModel extends \App\Models\GoBaseModel
1 => "t1.tipo", 1 => "t1.tipo",
2 => "t1.uso", 2 => "t1.uso",
3 => "t1.precio", 3 => "t1.precio",
4 => "t1.margen"
]; ];
protected $allowedFields = ["maquina_id", "tipo", "precio", "uso", "user_created_id", "user_updated_id", "is_deleted", "deleted_at", "created_at", "updated_at"]; protected $allowedFields = ["maquina_id", "tipo", "precio", "uso", "margen", "user_created_id", "user_updated_id", "is_deleted", "deleted_at", "created_at", "updated_at"];
protected $returnType = "App\Entities\Configuracion\MaquinasTarifasImpresionEntity"; protected $returnType = "App\Entities\Configuracion\MaquinasTarifasImpresionEntity";
protected $useTimestamps = true; protected $useTimestamps = true;
@ -94,7 +95,7 @@ class MaquinasTarifasImpresionModel extends \App\Models\GoBaseModel
$builder = $this->db $builder = $this->db
->table($this->table . " t1") ->table($this->table . " t1")
->select( ->select(
"t1.id AS id, t1.tipo AS tipo, t1.precio AS precio, t1.uso AS uso" "t1.id AS id, t1.tipo AS tipo, t1.precio AS precio, t1.uso AS uso, t1.margen AS margen"
); );
//JJO //JJO
@ -111,6 +112,7 @@ class MaquinasTarifasImpresionModel extends \App\Models\GoBaseModel
->orLike("t1.tipo", $search) ->orLike("t1.tipo", $search)
->orLike("t1.precio", $search) ->orLike("t1.precio", $search)
->orLike("t1.uso", $search) ->orLike("t1.uso", $search)
->orLike("t1.margen", $search)
->orLike("t1.id", $search) ->orLike("t1.id", $search)
->orLike("t1.maquina_id", $search) ->orLike("t1.maquina_id", $search)
->orLike("t1.tipo", $search) ->orLike("t1.tipo", $search)
@ -124,7 +126,7 @@ class MaquinasTarifasImpresionModel extends \App\Models\GoBaseModel
$builder = $this->db $builder = $this->db
->table($this->table . " t1") ->table($this->table . " t1")
->select( ->select(
"t1.id AS id, t1.precio AS precio" "t1.id AS id, t1.precio AS precio, t1.margen AS margen"
); );
//JJO //JJO
@ -135,7 +137,7 @@ class MaquinasTarifasImpresionModel extends \App\Models\GoBaseModel
$tarifas = $builder->get()->getResultArray(); $tarifas = $builder->get()->getResultArray();
if (count($tarifas)>0){ if (count($tarifas)>0){
return [$tarifas[0]['id'], floatval($tarifas[0]['precio'])]; return [$tarifas[0]['id'], floatval($tarifas[0]['precio']), floatval($tarifas[0]['margen'])];
} }
return $tarifas; return $tarifas;
} }

View File

@ -40,7 +40,7 @@ class PresupuestoService extends BaseService
* *
* @return [type] * @return [type]
*/ */
public static function getCostesLinea($uso, $datosPedido, $maquina, $papel_impresion, $opciones_papel, $tarifa, $forzar_a_favor_fibra = false) public static function getCostesLinea($uso, $datosPedido, $maquina, $papel_impresion, $opciones_papel, $tarifa, $tarifa_margen, $forzar_a_favor_fibra = false)
{ {
$response['fields'] = []; $response['fields'] = [];
@ -64,12 +64,17 @@ class PresupuestoService extends BaseService
$precio_click = 0; $precio_click = 0;
$precio_click_pedido = 0; $precio_click_pedido = 0;
$margen_click_pedido = 0;
$pliegos_libro = 0; $pliegos_libro = 0;
$cubierta = array_key_exists('cubierta', $opciones_papel) ? $opciones_papel['cubierta'] : 0; $cubierta = array_key_exists('cubierta', $opciones_papel) ? $opciones_papel['cubierta'] : 0;
$sobrecubierta = array_key_exists('sobrecubierta', $opciones_papel) ? $opciones_papel['sobrecubierta'] : 0; $sobrecubierta = array_key_exists('sobrecubierta', $opciones_papel) ? $opciones_papel['sobrecubierta'] : 0;
$rotativa = array_key_exists('rotativa', $opciones_papel) ? $opciones_papel['rotativa'] : 0; $rotativa = array_key_exists('rotativa', $opciones_papel) ? $opciones_papel['rotativa'] : 0;
$precio_click = $tarifa * (1 + $tarifa_margen / 100.0);
$margen_click = $tarifa * ($tarifa_margen / 100.0);
//interior (bn o color) //interior (bn o color)
if ($cubierta == 0 && $sobrecubierta == 0 && $rotativa == 0) { if ($cubierta == 0 && $sobrecubierta == 0 && $rotativa == 0) {
// precio papel // precio papel
@ -92,17 +97,22 @@ class PresupuestoService extends BaseService
); );
// impresion // impresion
$precio_click = $tarifa;
if($uso=='guardas'){ if($uso=='guardas'){
if(floatval($datosPedido->paginas_impresion)==0) if(floatval($datosPedido->paginas_impresion)==0)
$precio_click_pedido = 0; $precio_click_pedido = 0;
elseif (floatval($datosPedido->paginas_impresion)==4) // Una cara elseif (floatval($datosPedido->paginas_impresion)==4){ // Una cara
$precio_click_pedido = $pliegos_pedido * $precio_click; $precio_click_pedido = $pliegos_pedido * $precio_click;
else // dos caras (impresion normal) $margen_click_pedido = $pliegos_pedido * $margen_click;
}
else{ // dos caras (impresion normal)
$precio_click_pedido = $pliegos_pedido * 2 * $precio_click; $precio_click_pedido = $pliegos_pedido * 2 * $precio_click;
$margen_click_pedido = $pliegos_pedido * 2 * $margen_click;
}
} }
else else {
$precio_click_pedido = $pliegos_pedido * 2 * $precio_click; $precio_click_pedido = $pliegos_pedido * 2 * $precio_click;
$margen_click_pedido = $pliegos_pedido * 2 * $margen_click;
}
} }
// cubierta o sobrecubierta (siempre a color) // cubierta o sobrecubierta (siempre a color)
@ -112,7 +122,7 @@ class PresupuestoService extends BaseService
// En cubierta y sobrecubierta siempre el mínimo pliego es 1 // En cubierta y sobrecubierta siempre el mínimo pliego es 1
$pliegos_libro = $pliegos_libro<1?1:$pliegos_libro; $pliegos_libro = $pliegos_libro<1?1:$pliegos_libro;
$pliegos_pedido = $pliegos_libro * ($datosPedido->tirada + $datosPedido->merma); $pliegos_pedido = $pliegos_libro * ($datosPedido->tirada + $datosPedido->merma);
$precio_libro = $pliegos_libro * $precio_pliego_impresion; $precio_libro = $pliegos_libro * ($precio_pliego_impresion + $margen_pliego_impresion);
$margen_papel_pedido = $pliegos_libro * $margen_pliego_impresion * ($datosPedido->tirada + $datosPedido->merma); $margen_papel_pedido = $pliegos_libro * $margen_pliego_impresion * ($datosPedido->tirada + $datosPedido->merma);
$precio_pedido = $precio_libro * ($datosPedido->tirada + $datosPedido->merma); $precio_pedido = $precio_libro * ($datosPedido->tirada + $datosPedido->merma);
@ -124,12 +134,13 @@ class PresupuestoService extends BaseService
// impresion // impresion
if ($tarifa) { if ($tarifa) {
$precio_click = $tarifa;
$precio_click_pedido = $pliegos_pedido * $precio_click; $precio_click_pedido = $pliegos_pedido * $precio_click;
$margen_click_pedido = $pliegos_pedido * $margen_click;
// dos caras // dos caras
if($datosPedido->paginas > 2) { if($datosPedido->paginas > 2) {
$precio_click_pedido *= 2.0; $precio_click_pedido *= 2.0;
$margen_click_pedido *= 2.0;
} }
} }
} }
@ -138,7 +149,7 @@ class PresupuestoService extends BaseService
// response // response
$response['fields']['pliegos_libro'] = $pliegos_libro; $response['fields']['pliegos_libro'] = $pliegos_libro;
$response['fields']['pliegos_pedido'] = $pliegos_pedido; $response['fields']['pliegos_pedido'] = $pliegos_pedido;
$response['fields']['precios_pliegos'] = $precio_pliego_impresion; $response['fields']['precios_pliegos'] = $precio_pliego_impresion+$margen_pliego_impresion;
$response['fields']['precio_libro'] = $precio_libro; $response['fields']['precio_libro'] = $precio_libro;
$response['fields']['margen_papel_pedido'] = $margen_papel_pedido; $response['fields']['margen_papel_pedido'] = $margen_papel_pedido;
$response['fields']['precio_pedido'] = $precio_pedido; $response['fields']['precio_pedido'] = $precio_pedido;
@ -146,6 +157,7 @@ class PresupuestoService extends BaseService
$response['fields']['peso'] = $peso; $response['fields']['peso'] = $peso;
$response['fields']['precio_click'] = $precio_click; $response['fields']['precio_click'] = $precio_click;
$response['fields']['precio_click_pedido'] = $precio_click_pedido; $response['fields']['precio_click_pedido'] = $precio_click_pedido;
$response['fields']['margen_click_pedido'] = $margen_click_pedido;
$response['fields']['dimensiones_maquina'] = [$maquina->ancho, $maquina->alto]; $response['fields']['dimensiones_maquina'] = [$maquina->ancho, $maquina->alto];
$response['fields']['dimensiones_maquina_impresion'] = [$maquina->ancho_impresion, $maquina->alto_impresion]; $response['fields']['dimensiones_maquina_impresion'] = [$maquina->ancho_impresion, $maquina->alto_impresion];
@ -538,7 +550,7 @@ class PresupuestoService extends BaseService
else else
$horas = 0; $horas = 0;
return round($horas,2); return $horas;
} catch (Exception $e) { } catch (Exception $e) {
return 0; return 0;

View File

@ -50,6 +50,7 @@
<th><?= lang('MaquinasTarifasImpresions.uso') ?></th> <th><?= lang('MaquinasTarifasImpresions.uso') ?></th>
<th><?= lang('MaquinasTarifasImpresions.tipo') ?></th> <th><?= lang('MaquinasTarifasImpresions.tipo') ?></th>
<th><?= lang('MaquinasTarifasImpresions.precio') ?></th> <th><?= lang('MaquinasTarifasImpresions.precio') ?></th>
<th><?= lang('MaquinasTarifasImpresions.margen') ?></th>
<th class="text-nowrap"><?= lang('Basic.global.Action') ?></th> <th class="text-nowrap"><?= lang('Basic.global.Action') ?></th>
</tr> </tr>
</thead> </thead>
@ -364,6 +365,11 @@
attr: { attr: {
type: "number" type: "number"
} }
}, {
name: "margen",
attr: {
type: "number"
}
}, { }, {
"name": "maquina_id", "name": "maquina_id",
"type": "hidden" "type": "hidden"
@ -484,6 +490,7 @@
} }
}, },
{ 'data': 'precio' }, { 'data': 'precio' },
{ 'data': 'margen' },
{ {
data: actionBtns, data: actionBtns,
className: 'row-edit dt-center' className: 'row-edit dt-center'

View File

@ -144,6 +144,7 @@ function format(d) {
'<input id="' + d.row_id + '_checkClicks" name="' + d.row_id +'_checkClicks" class="update-totales" style="bottom:0;width: 15px; padding: 0; margin:0;" type="checkbox" ' + (d.check_impresion_total==true?'checked':'') + '>' + '<input id="' + d.row_id + '_checkClicks" name="' + d.row_id +'_checkClicks" class="update-totales" style="bottom:0;width: 15px; padding: 0; margin:0;" type="checkbox" ' + (d.check_impresion_total==true?'checked':'') + '>' +
'</div>'+ '</div>'+
'<input id="' + d.row_id +'_margenImpresion" name="' + d.row_id +'_margenImpresion" readonly class="lp-input lp-cell lp-cell-disabled ' + d.row_class + '-input" type="text" value="' + d.margenImpresion +'" style="display: none;">' + '<input id="' + d.row_id +'_margenImpresion" name="' + d.row_id +'_margenImpresion" readonly class="lp-input lp-cell lp-cell-disabled ' + d.row_class + '-input" type="text" value="' + d.margenImpresion +'" style="display: none;">' +
'<input id="' + d.row_id +'_margenClicks" name="' + d.row_id +'_margenClicks" readonly class="lp-input lp-cell lp-cell-disabled ' + d.row_class + '-input" type="text" value="' + d.margenClicks +'" style="display: none;">' +
'</div>' + '</div>' +
'</td>' '</td>'
@ -791,7 +792,8 @@ function processRowData(row, rowId, rowClass){
'margenPapelPedido': isNaN(parseFloat(row.margen_papel_pedido)) ? "": parseFloat(row.margen_papel_pedido).toFixed(2), 'margenPapelPedido': isNaN(parseFloat(row.margen_papel_pedido)) ? "": parseFloat(row.margen_papel_pedido).toFixed(2),
'click': isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6), 'click': isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6),
'totalClicks': isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2), 'totalClicks': isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2),
'horasMaquina': isNaN(parseFloat(row.horas_maquina)) ? "" : parseFloat(row.horas_maquina).toFixed(2), 'margenClicks': isNaN(parseFloat(row.margen_click_pedido)) ? "" : parseFloat(row.margen_click_pedido).toFixed(2),
'horasMaquina': isNaN(parseFloat(row.horas_maquina)) ? "" : parseFloat(row.horas_maquina).toFixed(4),
'precioHora': isNaN(parseFloat(row.precio_hora)) ? "" : parseFloat(row.precio_hora).toFixed(2), 'precioHora': isNaN(parseFloat(row.precio_hora)) ? "" : parseFloat(row.precio_hora).toFixed(2),
'precioImpresion': isNaN(parseFloat(row.precio_impresion_horas)) ? "" : parseFloat(row.precio_impresion_horas).toFixed(2), 'precioImpresion': isNaN(parseFloat(row.precio_impresion_horas)) ? "" : parseFloat(row.precio_impresion_horas).toFixed(2),
'margenImpresion': isNaN(parseFloat(row.margen_impresion_horas)) ? "" : parseFloat(row.margen_impresion_horas).toFixed(2), 'margenImpresion': isNaN(parseFloat(row.margen_impresion_horas)) ? "" : parseFloat(row.margen_impresion_horas).toFixed(2),
@ -3471,6 +3473,7 @@ function fill_lp_cubierta(row, fromComparador=false){
} }
else{ else{
console.log(row)
var portadaObjeto = { var portadaObjeto = {
anchoLibro:row.dimensiones_libro[0], anchoLibro:row.dimensiones_libro[0],
altoLibro:row.dimensiones_libro[1], altoLibro:row.dimensiones_libro[1],
@ -4170,6 +4173,7 @@ function fill_lp_from_bbdd(){
lp['peso_gotas_cg'] = lp['rotativa_peso_gotas_cg'] lp['peso_gotas_cg'] = lp['rotativa_peso_gotas_cg']
lp['clicks_pedido'] = lp['rotativa_clicks_total'] lp['clicks_pedido'] = lp['rotativa_clicks_total']
lp['precio_click_pedido'] = lp['precio_click_pedido'] lp['precio_click_pedido'] = lp['precio_click_pedido']
lp['margen_click_pedido'] = lp['margen_click_pedido']
lp['precio_tinta'] = lp['rotativa_precio_tinta'] lp['precio_tinta'] = lp['rotativa_precio_tinta']
@ -4283,6 +4287,7 @@ async function fill_bbdd_from_lp(presupuesto_id){
peso: rowData.peso, peso: rowData.peso,
precio_click: rowData.click, precio_click: rowData.click,
precio_click_pedido: rowData.totalClicks, precio_click_pedido: rowData.totalClicks,
margen_click_pedido: rowData.margenClicks,
check_papel_total: $('#' + rowData.row_id + '_checkPapel').is(":checked")?1:0, check_papel_total: $('#' + rowData.row_id + '_checkPapel').is(":checked")?1:0,
check_impresion_total: $('#' + rowData.row_id + '_checkClicks').is(":checked")?1:0, check_impresion_total: $('#' + rowData.row_id + '_checkClicks').is(":checked")?1:0,
tarifa_impresion_id: rowData.tarifa_impresion_id, tarifa_impresion_id: rowData.tarifa_impresion_id,

View File

@ -110,13 +110,13 @@ function updateTotales(updateLP=true, updateServicios=true, updateEnvio=true){
if($('#' + rowData.row_id + '_checkClicks').prop('checked')){ if($('#' + rowData.row_id + '_checkClicks').prop('checked')){
totalImpresion += parseFloat($('#' + rowData.row_id + '_precioImpresion').val()) totalImpresion += parseFloat($('#' + rowData.row_id + '_precioImpresion').val())
totalImpresion += parseFloat($('#' + rowData.row_id + '_totalClicks').val()) totalImpresion += parseFloat($('#' + rowData.row_id + '_totalClicks').val())
totalImpresionforMargen += parseFloat($('#' + rowData.row_id + '_precioImpresion').val())
if(rowData.maquinaTipo=='inkjet'){ if(rowData.maquinaTipo=='inkjet'){
totalImpresion += parseFloat(rowData.totalTinta) totalImpresion += parseFloat(rowData.totalTinta)
totalImpresion += parseFloat(rowData.totalCorte) totalImpresion += parseFloat(rowData.totalCorte)
} }
margenImpresion += parseFloat($('#' + rowData.row_id + '_margenImpresion').val()) margenImpresion += parseFloat($('#' + rowData.row_id + '_margenImpresion').val())
margenImpresion += parseFloat($('#' + rowData.row_id + '_margenClicks').val())
if(!isNaN(parseFloat($('#' + rowData.row_id + 'lp_bn_totalTinta').val()))) if(!isNaN(parseFloat($('#' + rowData.row_id + 'lp_bn_totalTinta').val())))
totalImpresion += parseFloat($('#' + rowData.row_id + 'lp_bn_totalTinta').val()) totalImpresion += parseFloat($('#' + rowData.row_id + 'lp_bn_totalTinta').val())
} }
@ -124,15 +124,14 @@ function updateTotales(updateLP=true, updateServicios=true, updateEnvio=true){
} }
totalImpresion -= margenImpresion totalImpresion -= margenImpresion
totalImpresionforMargen -= margenImpresion
totalPapel -= margenPapel totalPapel -= margenPapel
var porcentajeMargenPapel = isNaN(margenPapel/(totalPapel)*100)?0:margenPapel/(totalPapel)*100 var porcentajeMargenPapel = isNaN(margenPapel/(totalPapel)*100.0)?0:margenPapel/(totalPapel)*100.0
$('#porcentajeMargenPapel').text(porcentajeMargenPapel.toFixed(0) + '%') $('#porcentajeMargenPapel').text(porcentajeMargenPapel.toFixed(0) + '%')
$('#totalCostePapel').text(totalPapel.toFixed(2)+ '€') $('#totalCostePapel').text(totalPapel.toFixed(2)+ '€')
$('#margenPapel').text(margenPapel.toFixed(2) + '€') $('#margenPapel').text(margenPapel.toFixed(2) + '€')
var porcentajeMargenImpresion = isNaN(margenImpresion/(totalImpresionforMargen)*100)?0:margenImpresion/(totalImpresionforMargen)*100 var porcentajeMargenImpresion = isNaN(margenImpresion/(totalImpresion)*100.0)?0:margenImpresion/(totalImpresion)*100.0
$('#porcentajeMargenImpresion').text(porcentajeMargenImpresion.toFixed(0) + '%') $('#porcentajeMargenImpresion').text(porcentajeMargenImpresion.toFixed(0) + '%')
$('#totalCosteImpresion').text(totalImpresion.toFixed(2) + '€') $('#totalCosteImpresion').text(totalImpresion.toFixed(2) + '€')
$('#margenImpresion').text(margenImpresion.toFixed(2) + '€') $('#margenImpresion').text(margenImpresion.toFixed(2) + '€')