From 89e6d0787a9d7880183515b1d0f1481cedb8c6dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Jim=C3=A9nez?= Date: Tue, 6 May 2025 13:06:48 +0200 Subject: [PATCH] puesto como precio minimo el coste --- .../Presupuestos/PresupuestoAcabadosModel.php | 14 +++++++------- .../PresupuestoEncuadernacionesModel.php | 14 +++++++------- .../Presupuestos/PresupuestoManipuladosModel.php | 16 +++++++--------- 3 files changed, 21 insertions(+), 23 deletions(-) diff --git a/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php b/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php index 562c40fc..36565374 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php @@ -305,17 +305,17 @@ class PresupuestoAcabadosModel extends \App\Models\BaseModel $precio_unidad = $tarifa->precio_max; $precio_unidad = $precio_unidad * (1 + floatval($tarifa->margen) / 100.0); - if (!$is_POD) { - $precio_unidad += floatval($tarifa->tarifa_importe_fijo)/floatval($tirada); - } - $total = $precio_unidad * $tirada; $margen = floatval($tarifa->margen); + $tarifa_precio_min = floatval($tarifa->tarifa_precio_min); if ($tarifa->tarifa_precio_min > $total) { - $total = $total - ($total * $margen / 100.0); - $margen = round(100.0 * (floatval($tarifa->tarifa_precio_min) - $total) / floatval($tarifa->tarifa_precio_min), 0); - $total = floatval($tarifa->tarifa_precio_min); + $total = $tarifa_precio_min + (1 + floatval($tarifa->margen)/100.0); + $precio_unidad = round(floatval($total / $tirada), 2); + } + + if (!$is_POD) { + $total += floatval($tarifa->tarifa_importe_fijo) ; $precio_unidad = round(floatval($total / $tirada), 2); } diff --git a/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php b/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php index 8f5d52cb..da89b13c 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php @@ -365,17 +365,17 @@ class PresupuestoEncuadernacionesModel extends \App\Models\BaseModel $total = $precio_unidad * $ejemplares; $margen = floatval($tarifa->margen); - if (!$is_POD) { - $total += floatval($tarifa->tarifa_importe_fijo) ; - $precio_unidad = round(floatval($total / $ejemplares), 2); - } $tarifa_precio_min = floatval($tarifa->tarifa_precio_min); if ($tarifa_precio_min > $total) { - $total = $total - ($total * $margen / 100.0); - $margen = round(100.0 * (floatval($tarifa_precio_min) - $total) / floatval($tarifa_precio_min), 0); - $total = floatval($tarifa_precio_min); + + $total = $tarifa_precio_min + (1 + floatval($tarifa->margen)/100.0); + $precio_unidad = round(floatval($total / $ejemplares), 2); + + } + if (!$is_POD) { + $total += floatval($tarifa->tarifa_importe_fijo) ; $precio_unidad = round(floatval($total / $ejemplares), 2); } diff --git a/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php b/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php index 9e0637a9..7f221226 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php @@ -102,17 +102,15 @@ class PresupuestoManipuladosModel extends \App\Models\BaseModel $precio_unidad = $tarifa->precio_max; $precio_unidad = $precio_unidad * (1 + floatval($tarifa->margen) / 100.0); - if (!$is_POD) { - $precio_unidad += floatval($tarifa->tarifa_importe_fijo)/floatval($tirada); - } - $total = $precio_unidad * $tirada; $margen = floatval($tarifa->margen); - - if ($tarifa->tarifa_precio_min > $total) { - $total = $total - ($total * $margen / 100.0); - $margen = round(100.0 * (floatval($tarifa->tarifa_precio_min) - $total) / floatval($tarifa->tarifa_precio_min), 0); - $total = floatval($tarifa->tarifa_precio_min); + $tarifa_precio_min = floatval($tarifa->tarifa_precio_min); + if ($tarifa_precio_min > $total) { + $total = $tarifa_precio_min + (1 + floatval($tarifa->margen)/100.0); + $precio_unidad = round(floatval($total / $tirada), 2); + } + if (!$is_POD) { + $total += floatval($tarifa->tarifa_importe_fijo); $precio_unidad = round(floatval($total / $tirada), 2); }