diff --git a/ci4/app/Controllers/Presupuestos/Presupuestopreimpresiones.php b/ci4/app/Controllers/Presupuestos/Presupuestopreimpresiones.php index 8c381705..75612c0a 100755 --- a/ci4/app/Controllers/Presupuestos/Presupuestopreimpresiones.php +++ b/ci4/app/Controllers/Presupuestos/Presupuestopreimpresiones.php @@ -58,6 +58,34 @@ class Presupuestopreimpresiones extends \App\Controllers\GoBaseResourceControlle return $this->respond($data); } + public function update($requestedId = null) + { + + if ($requestedId == null) : + return; + endif; + + $postData = $this->request->getJSON(); + $tarifas = array_column($postData->datos, 'tarifa_id'); + $result = []; + + if(count($tarifas)>0){ + foreach ($tarifas as $tarifa){ + $values = $this->model->getPrecioTarifa($tarifa); + array_push($result, $values); + } + } + + $newTokenHash = csrf_hash(); + $csrfTokenName = csrf_token(); + $data = [ + 'lines' => $result, + $csrfTokenName => $newTokenHash + ]; + + return $this->respond($data); + } + public function datatable() { if ($this->request->isAJAX()) { diff --git a/ci4/app/Entities/Presupuestos/PresupuestoAcabadosEntity.php b/ci4/app/Entities/Presupuestos/PresupuestoAcabadosEntity.php index 8a4bf9ed..89c30ac9 100755 --- a/ci4/app/Entities/Presupuestos/PresupuestoAcabadosEntity.php +++ b/ci4/app/Entities/Presupuestos/PresupuestoAcabadosEntity.php @@ -11,6 +11,7 @@ class PresupuestoAcabadosEntity extends \CodeIgniter\Entity\Entity "tarifa_acabado_id" => null, "precio_unidad" => null, "precio_total" => null, + "margen" => null, "created_at" => null, "updated_at" => null, ]; @@ -19,5 +20,6 @@ class PresupuestoAcabadosEntity extends \CodeIgniter\Entity\Entity "tarifa_acabado_id" => "int", "precio_unidad" => "float", "precio_total" => "float", + "margen" => "float", ]; } diff --git a/ci4/app/Entities/Presupuestos/PresupuestoManipuladosEntity.php b/ci4/app/Entities/Presupuestos/PresupuestoManipuladosEntity.php index 8b2830c7..d7b3d752 100755 --- a/ci4/app/Entities/Presupuestos/PresupuestoManipuladosEntity.php +++ b/ci4/app/Entities/Presupuestos/PresupuestoManipuladosEntity.php @@ -11,6 +11,7 @@ class PresupuestoManipuladosEntity extends \CodeIgniter\Entity\Entity "tarifa_manipulado_id" => null, "precio_unidad" => null, "precio_total" => null, + "margen" => null, "created_at" => null, "updated_at" => null, ]; @@ -19,5 +20,6 @@ class PresupuestoManipuladosEntity extends \CodeIgniter\Entity\Entity "tarifa_manipulado_id" => "int", "precio_unidad" => "float", "precio_total" => "float", + "margen" => "float", ]; } diff --git a/ci4/app/Entities/Presupuestos/PresupuestoPreimpresionesEntity.php b/ci4/app/Entities/Presupuestos/PresupuestoPreimpresionesEntity.php index 8a56a8fc..7fa9cdb4 100755 --- a/ci4/app/Entities/Presupuestos/PresupuestoPreimpresionesEntity.php +++ b/ci4/app/Entities/Presupuestos/PresupuestoPreimpresionesEntity.php @@ -9,15 +9,15 @@ class PresupuestoPreimpresionesEntity extends \CodeIgniter\Entity\Entity "id" => null, "presupuesto_id" => null, "tarifa_preimpresion_id" => null, - "precio_unidad" => null, "precio_total" => null, + "margen" => null, "created_at" => null, "updated_at" => null, ]; protected $casts = [ "presupuesto_id" => "int", "tarifa_preimpresion_id" => "int", - "precio_unidad" => "float", "precio_total" => "float", + "margen" => "float", ]; } diff --git a/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php b/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php index 510d1bd4..3bf50737 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoAcabadosModel.php @@ -19,7 +19,7 @@ class PresupuestoAcabadosModel extends \App\Models\GoBaseModel 2 => "t1.precio_total" ]; - protected $allowedFields = ["presupuesto_id", "tarifa_acabado_id", "nombre", "precio_total", "precio_unidad"]; + protected $allowedFields = ["presupuesto_id", "tarifa_acabado_id", "nombre", "precio_total", "precio_unidad", "margen"]; protected $returnType = "App\Entities\Presupuestos\PresupuestoAcabadosEntity"; protected $useTimestamps = true; @@ -56,6 +56,7 @@ class PresupuestoAcabadosModel extends \App\Models\GoBaseModel 'tarifa_nombre'=> $tarifa_value[0]->tarifa_acabado_nombre, 'precio_unidad'=> $result_data[0], 'total'=> $result_data[1], + 'margen'=> $result_data[2], ]; return $ret_array; } @@ -64,6 +65,7 @@ class PresupuestoAcabadosModel extends \App\Models\GoBaseModel 'tarifa_id'=> $tarifa_acabado_id, 'tarifa_nombre'=> $modelTarifa->getNombreTarifaAcabado($tarifa_acabado_id)[0]->nombre, 'precio_unidad' => 0, + 'margen' => 0, 'total'=> 0, ]; return $ret_array; @@ -79,12 +81,13 @@ class PresupuestoAcabadosModel extends \App\Models\GoBaseModel $precio_unidad = $precio_unidad* (1+ floatval($tarifa->margen)/100.0); $total = $precio_unidad * $tirada; + $margen = floatval($tarifa->margen); if (!$is_POD){ $total += floatval($tarifa->tarifa_importe_fijo); } - return [$precio_unidad, $total]; + return [$precio_unidad, $total, $margen]; } public function deleteAllServicios($presupuesto_id){ @@ -123,6 +126,7 @@ class PresupuestoAcabadosModel extends \App\Models\GoBaseModel ->where('tarifa_acabado_id', $tarifa->tarifa_id) ->set('precio_unidad', $tarifa->precio_unidad) ->set('precio_total', $tarifa->precio_total) + ->set('margen', $tarifa->margen) ->update(); @@ -134,6 +138,7 @@ class PresupuestoAcabadosModel extends \App\Models\GoBaseModel ->set('tarifa_acabado_id', $tarifa->tarifa_id) ->set('precio_unidad', $tarifa->precio_unidad) ->set('precio_total', $tarifa->precio_total) + ->set('margen', $tarifa->margen) ->insert(); } } @@ -152,7 +157,7 @@ class PresupuestoAcabadosModel extends \App\Models\GoBaseModel ->table($this->table . " t1") ->select( "t1.id AS id, t1.tarifa_acabado_id AS tarifa_acabado_id, t1.precio_unidad AS precio_unidad, - t1.precio_total AS precio_total, t2.nombre AS nombre" + t1.precio_total AS precio_total, t1.margen AS margen, t2.nombre AS nombre" ); $builder->where('t1.presupuesto_id', $presupuesto_id); diff --git a/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php b/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php index a2e0b46c..ae47dd9e 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoEncuadernacionesModel.php @@ -73,7 +73,7 @@ class PresupuestoEncuadernacionesModel extends \App\Models\GoBaseModel $result_data[0] = floatval($precio_total / $tirada); // Precio/unidad $result_data[1] = $precio_total; - $result_data[2] = $precio_total * ($tarifa_value[0]->margen/100.0) ; // margen + $result_data[2] = $tarifa_value[0]->margen ; // margen array_push($tarifas, (object)[ @@ -206,7 +206,7 @@ class PresupuestoEncuadernacionesModel extends \App\Models\GoBaseModel $result_data[0] = floatval($precio_total / $tirada); // Precio/unidad $result_data[1] = $precio_total; - $result_data[2] = $precio_total * ($tarifa_value[0]->margen/100.0) ; // margen + $result_data[2] = $tarifa_value[0]->margen; // margen $ret_array[] = (object)[ 'tarifa_id'=> $tarifa_encuadernacion_id, @@ -242,7 +242,7 @@ class PresupuestoEncuadernacionesModel extends \App\Models\GoBaseModel $precio_unidad = $precio_unidad* (1+ floatval($tarifa->margen)/100.0); $total = $precio_unidad * $paginas; - $margen = $total * (floatval($tarifa->margen)/100.0); + $margen = floatval($tarifa->margen); if (!$is_POD){ $total += floatval($tarifa->tarifa_importe_fijo); diff --git a/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php b/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php index a6613f4d..10709065 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoManipuladosModel.php @@ -19,7 +19,7 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel 2 => "t1.precio_total" ]; - protected $allowedFields = ["presupuesto_id", "tarifa_manipulado_id", "nombre", "precio_total", "precio_unidad"]; + protected $allowedFields = ["presupuesto_id", "tarifa_manipulado_id", "nombre", "precio_total", "precio_unidad", "margen"]; protected $returnType = "App\Entities\Presupuestos\PresupuestoManipuladosEntity"; protected $useTimestamps = true; @@ -57,6 +57,7 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel 'tarifa_nombre'=> $tarifa_value[0]->tarifa_manipulado_nombre, 'precio_unidad'=> $result_data[0], 'total'=> $result_data[1], + 'margen' => $result_data[2], ]; return $ret_array; } @@ -66,6 +67,7 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel 'tarifa_nombre'=> $modelTarifa->getNombreTarifaManipulado($tarifa_manipulado_id)[0]->nombre, 'precio_unidad' => 0, 'total'=> 0, + 'margen' => 0, ]; return $ret_array; } @@ -80,12 +82,13 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel $precio_unidad = $precio_unidad* (1+ floatval($tarifa->margen)/100.0); $total = $precio_unidad * $tirada; + $margen = floatval($tarifa->margen); if (!$is_POD){ $total += floatval($tarifa->tarifa_importe_fijo); } - return [$precio_unidad, $total]; + return [$precio_unidad, $total, $margen]; } public function deleteAllServicios($presupuesto_id){ @@ -124,6 +127,7 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel ->where('tarifa_manipulado_id', $tarifa->tarifa_id) ->set('precio_unidad', $tarifa->precio_unidad) ->set('precio_total', $tarifa->precio_total) + ->set('margen', $tarifa->margen) ->update(); @@ -135,6 +139,7 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel ->set('tarifa_manipulado_id', $tarifa->tarifa_id) ->set('precio_unidad', $tarifa->precio_unidad) ->set('precio_total', $tarifa->precio_total) + ->set('margen', $tarifa->margen) ->insert(); } } @@ -160,6 +165,7 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel 'tarifa_nombre'=> $tarifa_value[0]->tarifa_manipulado_nombre, 'precio_unidad'=> $result_data[0], 'total'=> $result_data[1], + 'margen'=> $result_data[2], ]); } else{ @@ -169,6 +175,7 @@ class PresupuestoManipuladosModel extends \App\Models\GoBaseModel 'tarifa_nombre'=> $tarifa['tarifa_nombre'], 'precio_unidad' => 0, 'total'=> 0, + 'margen' => 0, ]); } @@ -189,7 +196,8 @@ class PresupuestoManipuladosModel 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.precio_unidad AS precio_unidad, t1.precio_total AS precio_total, t2.nombre AS nombre" + "t1.id AS id, t1.tarifa_manipulado_id AS tarifa_manipulado_id, t1.precio_unidad AS precio_unidad, + t1.precio_total AS precio_total, t1.margen AS margen, t2.nombre AS nombre" ); $builder->where('t1.presupuesto_id', $presupuesto_id); diff --git a/ci4/app/Models/Presupuestos/PresupuestoPreimpresionesModel.php b/ci4/app/Models/Presupuestos/PresupuestoPreimpresionesModel.php index f5d2dd8a..33c49394 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoPreimpresionesModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoPreimpresionesModel.php @@ -19,7 +19,7 @@ class PresupuestoPreimpresionesModel extends \App\Models\GoBaseModel 2 => "t1.precio_total" ]; - protected $allowedFields = ["presupuesto_id", "tarifa_preimpresion_id", "nombre", "precio_total", "precio_unidad"]; + protected $allowedFields = ["presupuesto_id", "tarifa_preimpresion_id", "nombre", "precio_total", "precio_unidad", "margen"]; protected $returnType = "App\Entities\Presupuestos\PresupuestoPreimpresionesEntity"; protected $useTimestamps = true; @@ -55,7 +55,8 @@ class PresupuestoPreimpresionesModel extends \App\Models\GoBaseModel $ret_array[] = (object)[ 'tarifa_id'=> $tarifa_value[0]->tarifa_preimpresion_id, 'tarifa_nombre'=> $tarifa_value[0]->tarifa_preimpresion_nombre, - 'precio'=> $result_data, + 'precio'=> $result_data[0], + 'margen'=> $result_data[1], ]; return $ret_array; } @@ -64,6 +65,7 @@ class PresupuestoPreimpresionesModel extends \App\Models\GoBaseModel 'tarifa_id'=> $tarifa_preimpresion_id, 'tarifa_nombre'=> $modelTarifa->getNombreTarifaPreimpresion($tarifa_preimpresion_id)[0]->nombre, 'precio' => 0, + 'margen' => 0, ]; return $ret_array; } @@ -74,8 +76,9 @@ class PresupuestoPreimpresionesModel extends \App\Models\GoBaseModel $precio = floatval($tarifa->precio); $precio = $precio * (1+ floatval($tarifa->margen)/100.0); - - return $precio; + $margen = $tarifa->margen; + + return [$precio, $margen]; } public function deleteAllServicios($presupuesto_id){ @@ -114,6 +117,7 @@ class PresupuestoPreimpresionesModel extends \App\Models\GoBaseModel ->where('presupuesto_id', $presupuesto_id) ->where('tarifa_preimpresion_id', $tarifa->tarifa_id) ->set('precio', $tarifa->precio) + ->set('margen', $tarifa->margen) ->update(); @@ -124,6 +128,7 @@ class PresupuestoPreimpresionesModel extends \App\Models\GoBaseModel ->set('presupuesto_id', $presupuesto_id) ->set('tarifa_preimpresion_id', $tarifa->tarifa_id) ->set('precio', $tarifa->precio) + ->set('margen', $tarifa->margen) ->insert(); } } @@ -142,7 +147,7 @@ class PresupuestoPreimpresionesModel extends \App\Models\GoBaseModel $builder = $this->db ->table($this->table . " t1") ->select( - "t1.id AS id, t1.tarifa_preimpresion_id AS tarifa_preimpresion_id, t1.precio AS precio, t2.nombre AS nombre" + "t1.id AS id, t1.tarifa_preimpresion_id AS tarifa_preimpresion_id, t1.precio AS precio, t1.margen AS margen, t2.nombre AS nombre" ); $builder->where('t1.presupuesto_id', $presupuesto_id); diff --git a/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosServiciosItems.php b/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosServiciosItems.php index 82cee6d3..d9afca14 100755 --- a/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosServiciosItems.php +++ b/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosServiciosItems.php @@ -80,6 +80,7 @@