trabajando en el backend para papeles diferentes

This commit is contained in:
2024-10-15 15:41:38 +02:00
parent 52303e9185
commit 19be8591f3
6 changed files with 3227 additions and 26 deletions

View File

@ -320,6 +320,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$tipo = $reqData['tipo'];
$paginasCuadernillo = $reqData['paginasCuadernillo'] ?? null;
$papelInteriorDiferente = $reqData['papelInteriorDiferente'] ?? null;
$isColor = intval($reqData['isColor']) ?? 0;
$isHq = intval($reqData['isHq']) ?? 0;
@ -343,6 +344,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
'excluirRotativa' => $excluirRotativa == "false" ? false : true,
'paginas' => $paginas,
'paginas_color' => $paginas_color,
'papelInteriorDiferente' => $papelInteriorDiferente
];
@ -1107,14 +1109,17 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
$isColor = $datos_entrada['isColor'];
$isHq = $datos_entrada['isHq'];
$paginasCuadernillo = $datos_entrada['paginasCuadernillo'] ?? null;
// Interior
$papelInteriorDiferente = $datos_entrada['interior']['papelInteriorDiferente'] ?? false;
$papel_generico = $datos_entrada['interior']['papel_generico'];
$gramaje = $datos_entrada['interior']['gramaje'];
$excluirRotativa = $datos_entrada['interior']['excluirRotativa'];
$paginas = $datos_entrada['interior']['paginas'];
$paginas_color = $datos_entrada['interior']['paginas_color'];
// Cubierta
$papel_generico_cubierta = $datos_entrada['cubierta']['papel_generico_cubierta'];
$gramajeCubierta = $datos_entrada['cubierta']['gramajeCubierta'];
@ -1192,6 +1197,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
'cliente_id' => $cliente_id,
'paginas_color' => $paginas_color,
'excluirRotativa' => $excluirRotativa,
'papelInteriorDiferente' => $papelInteriorDiferente
);
$interior = PresupuestoClienteService::obtenerInterior($input_data);

View File

@ -17,33 +17,32 @@ class PresupuestoClienteService extends BaseService
$rotativa = [];
$plana = [];
// no se busca en plana cuando es estándar (no Premium)
if($data['isHq'])
if ($data['isHq'])
$plana = PresupuestoClienteService::obtenerPresupuestoClienteInterior($data);
if (!$data['excluirRotativa'] && !$data['isHq'])
$rotativa = PresupuestoClienteService::obtenerPresupuestoClienteInteriorRotativa($data);
$total_plana = -1;
$hay_plana = false;
if($data['isColor']){
$papelInteriorDiferente = $data['papelInteriorDiferente'];
if ($data['isColor']) {
if ($data['datosPedido']->paginas == $data['paginas_color'])
$total_plana += floatval($plana[1]['total_impresion']);
elseif(count($plana[0]) > 2 && count($plana[1]) > 2) {
$total_plana = 0.0;
elseif (count($plana[0]) > 2 && count($plana[1]) > 2) {
$total_plana = 0.0;
foreach ($plana as $linea) {
if (count($linea) > 0)
$total_plana += floatval($linea['total_impresion']);
}
}
}
else{
} else {
foreach ($plana as $linea) {
if (count($linea) > 0)
if($linea['tipo_linea'] == 'lp_bn' || $linea['tipo_linea'] == 'lp_bnhq'){
if ($linea['tipo_linea'] == 'lp_bn' || $linea['tipo_linea'] == 'lp_bnhq') {
$total_plana = 0.0;
$total_plana = floatval($linea['total_impresion']);
}
}
}
@ -75,7 +74,7 @@ class PresupuestoClienteService extends BaseService
$paginas_color = $data['paginas_color'];
$lineas_cubierta = [];
for ($i = 0; $i < 2; $i++) {
$lineas = PresupuestoService::obtenerComparadorPlana([
@ -127,7 +126,7 @@ class PresupuestoClienteService extends BaseService
$paginas_color = $data['paginas_color'];
$lineas_sobrecubierta = [];
for ($i = 0; $i < 2; $i++) {
$lineas = PresupuestoService::obtenerComparadorPlana([
@ -178,7 +177,7 @@ class PresupuestoClienteService extends BaseService
$cliente_id = $data['cliente_id'];
$lineas_guardas = [];
for ($i = 0; $i < 2; $i++) {
$lineas = PresupuestoService::obtenerComparadorPlana([
@ -241,11 +240,21 @@ class PresupuestoClienteService extends BaseService
$uso = $data['uso'];
$tipo_impresion_id = $data['tipo_impresion_id'];
$datosPedido = $data['datosPedido'];
$papel_generico = $data['papel_generico'];
$gramaje = $data['gramaje'];
if ($data['papelInteriorDiferente'] == false)
$papel_generico = $data['papel_generico'];
else {
$papel_generico = $data['papel_generico']['negro'];
$papel_generico_color = $data['papel_generico']['color'];
}
if ($data['papelInteriorDiferente'] == false)
$gramaje = $data['gramaje'];
else {
$gramaje = $data['gramaje']['negro'];
$gramaje_color = $data['gramaje']['color'];
}
$isColor = $data['isColor'];
$isHq = $data['isHq'];
$cliente_id = $data['cliente_id'];
$cliente_id = $data['cliente_id'];
$paginas_color = $data['paginas_color'];
$paginas_negro = $datosPedido->paginas - $paginas_color;
@ -335,7 +344,8 @@ class PresupuestoClienteService extends BaseService
return [$linea_negro_plana, $linea_color_plana];
}
public static function getServiciosEncuadernacionDefault($data){
public static function getServiciosEncuadernacionDefault($data)
{
$tipo_impresion_id = $data['tipo_impresion_id'] ?? -1;
$tirada = $data['tirada'] ?? -1;
@ -351,42 +361,46 @@ class PresupuestoClienteService extends BaseService
return $values;
}
public static function getServiciosManipulado($data){
public static function getServiciosManipulado($data)
{
$tarifa_id = $data['tarifa_id'] ?? -1;
$tirada = $data['tirada'] ?? -1;
$POD = $data['POD'] ?? -1;
$model = model('App\Models\Presupuestos\PresupuestoManipuladosModel');
$values = $model->getPrecioTarifa($tarifa_id, $tirada, $POD);
return $values;
}
public static function getServiciosPreimpresion($data){
public static function getServiciosPreimpresion($data)
{
$tarifa_id = $data['tarifa_id'] ?? -1;
$model = model('App\Models\Presupuestos\PresupuestoPreimpresionesModel');
$values = $model->getPrecioTarifa($tarifa_id);
return $values;
}
public static function getServiciosExtra($data){
public static function getServiciosExtra($data)
{
$tarifa_id = $data['tarifa_id'] ?? -1;
$model = model('App\Models\Presupuestos\PresupuestoServiciosExtraModel');
$values = $model->getPrecioTarifa($tarifa_id);
return $values;
}
public static function getServiciosAcabados($data){
public static function getServiciosAcabados($data)
{
$tarifa_id = $data['tarifa_id'] ?? -1;
$tirada = $data['tirada'] ?? -1;
$POD = $data['POD'] ?? -1;
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
$values = $model->getPrecioTarifa($tarifa_id, $tirada, -1, $POD); // proveedor más barato
return $values;

View File

@ -54,6 +54,9 @@ let ClassSelect = function (domItem, url, placeholder, allowClear = false, param
this.reset = function () {
this.item.val(null).trigger("change");
};
this.setParams = function(params){
this.params = params;
};
this.getVal = function () {
return this.item.val();
};

View File

@ -131,7 +131,7 @@ class Direcciones {
#handleChangeCliente() {
this.direccionesCliente.setParams({ 'cliente_id': $("#clienteId").select2('data')[0].id })
this.direccionesCliente.clear();
this.direccionesCliente.empty();
this.domItem.find('.direccion-cliente').remove();
this.direcciones = [];

View File

@ -56,7 +56,7 @@ class PresupuestoCliente {
this.disenioCubierta.init();
this.direcciones.init();
//this.RELLENAR_PRESUPUESTO();
this.RELLENAR_PRESUPUESTO();
}
@ -213,12 +213,14 @@ class PresupuestoCliente {
this.datos = {
clienteId: this.datosGenerales.cliente.getValue(),
clienteId: this.datosGenerales.cliente.getVal(),
tamanio: this.datosGenerales.getDimensionLibro(),
tirada: this.datosGenerales.getTiradas(),
paginas: this.datosGenerales.paginas.val(),
paginasColor: this.datosGenerales.paginasColor.val(),
paginasCuadernillo: this.datosGenerales.paginasCuadernillo.val(),
papelInteriorDiferente: this.datosGenerales.papelDiferente.is(':checked');
tipo: this.datosGenerales.tiposLibro.filter('.selected').attr('id'),

3176
xdebug.log Normal file

File diff suppressed because one or more lines are too long