mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
acabando el tema de las direcciones
This commit is contained in:
@ -572,7 +572,6 @@ $routes->group('presupuestocliente', ['namespace' => 'App\Controllers\Presupuest
|
|||||||
$routes->post('getgramaje', 'Presupuestocliente::getGramaje', ['as' => 'obtenerGramaje']);
|
$routes->post('getgramaje', 'Presupuestocliente::getGramaje', ['as' => 'obtenerGramaje']);
|
||||||
$routes->post('presupuesto', 'Presupuestocliente::presupuesto', ['as' => 'presupuestoCliente']);
|
$routes->post('presupuesto', 'Presupuestocliente::presupuesto', ['as' => 'presupuestoCliente']);
|
||||||
$routes->post('getDireccionesCliente', 'Presupuestocliente::getDireccionesCliente', ['as' => 'getDirecciones']);
|
$routes->post('getDireccionesCliente', 'Presupuestocliente::getDireccionesCliente', ['as' => 'getDirecciones']);
|
||||||
$routes->post('getDatosDireccion', 'Presupuestocliente::getDatosDireccion', ['as' => 'getDatosDireccion']);
|
|
||||||
$routes->post('getNuevaDireccion', 'Presupuestocliente::getNuevaDireccion', ['as' => 'nuevaDireccion']);
|
$routes->post('getNuevaDireccion', 'Presupuestocliente::getNuevaDireccion', ['as' => 'nuevaDireccion']);
|
||||||
$routes->post('guardarPresupuesto', 'Presupuestocliente::guardarPresupuesto', ['as' => 'guardarPresupuesto']);
|
$routes->post('guardarPresupuesto', 'Presupuestocliente::guardarPresupuesto', ['as' => 'guardarPresupuesto']);
|
||||||
$routes->post('duplicarPresupuesto', 'Presupuestocliente::duplicarPresupuesto', ['as' => 'duplicarPresupuesto']);
|
$routes->post('duplicarPresupuesto', 'Presupuestocliente::duplicarPresupuesto', ['as' => 'duplicarPresupuesto']);
|
||||||
|
|||||||
@ -332,13 +332,15 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
$excluirRotativa = $reqData['excluirRotativa'] ?? 0;
|
$excluirRotativa = $reqData['excluirRotativa'] ?? 0;
|
||||||
$ivaReducido = $reqData['ivaReducido'] ?? 0;
|
$ivaReducido = $reqData['ivaReducido'] ?? 0;
|
||||||
|
|
||||||
|
$direcciones = $reqData['direcciones'] ?? [];
|
||||||
|
|
||||||
$tipo_impresion_id = $this->getTipoImpresion($tipo, $cubierta['tipoCubierta']);
|
$tipo_impresion_id = $this->getTipoImpresion($tipo, $cubierta['tipoCubierta']);
|
||||||
|
|
||||||
// Interior
|
// Interior
|
||||||
$interior = [
|
$interior = [
|
||||||
'papel_generico' => $modelPapelGenerico->getIdFromCode($interior['papelInterior']),
|
'papel_generico' => $modelPapelGenerico->getIdFromCode($interior['papelInterior']),
|
||||||
'gramaje' => intval($interior['gramajeInterior']),
|
'gramaje' => intval($interior['gramajeInterior']),
|
||||||
'excluirRotativa' => $excluirRotativa == "false" ? false: true,
|
'excluirRotativa' => $excluirRotativa == "false" ? false : true,
|
||||||
'paginas' => $paginas,
|
'paginas' => $paginas,
|
||||||
'paginas_color' => $paginas_color,
|
'paginas_color' => $paginas_color,
|
||||||
];
|
];
|
||||||
@ -361,8 +363,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
'solapas' => intval($sobrecubierta['solapas'] ?? 0),
|
'solapas' => intval($sobrecubierta['solapas'] ?? 0),
|
||||||
'acabados' => $sobrecubierta['plastificado'] ?? 0,
|
'acabados' => $sobrecubierta['plastificado'] ?? 0,
|
||||||
];
|
];
|
||||||
}
|
} else
|
||||||
else
|
|
||||||
$sobrecubierta = false;
|
$sobrecubierta = false;
|
||||||
|
|
||||||
// Guardas
|
// Guardas
|
||||||
@ -372,8 +373,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
'gramaje' => intval($guardas['gramaje']),
|
'gramaje' => intval($guardas['gramaje']),
|
||||||
'caras' => intval($guardas['guardasImpresas']),
|
'caras' => intval($guardas['guardasImpresas']),
|
||||||
];
|
];
|
||||||
}
|
} else
|
||||||
else
|
|
||||||
$datos_guardas = false;
|
$datos_guardas = false;
|
||||||
|
|
||||||
$datos_presupuesto = array(
|
$datos_presupuesto = array(
|
||||||
@ -389,10 +389,38 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
'cubierta' => $cubierta,
|
'cubierta' => $cubierta,
|
||||||
'sobrecubierta' => $sobrecubierta,
|
'sobrecubierta' => $sobrecubierta,
|
||||||
'datos_guardas' => $datos_guardas,
|
'datos_guardas' => $datos_guardas,
|
||||||
|
|
||||||
|
'servicios' => $reqData['servicios'] ?? [],
|
||||||
);
|
);
|
||||||
|
|
||||||
$return_data = $this->calcular_presupuesto($datos_presupuesto, 0, false); //TRUE FOR DEBUG
|
$return_data = $this->calcular_presupuesto($datos_presupuesto, 0, false); //TRUE FOR DEBUG
|
||||||
|
|
||||||
|
if(count($direcciones) > 1){
|
||||||
|
|
||||||
|
for ($i=0; $i<count($tirada); $i++){
|
||||||
|
|
||||||
|
$coste_envio = 0.0;
|
||||||
|
foreach($direcciones as $direccion){
|
||||||
|
$coste_envio += $this->getCosteEnvio(
|
||||||
|
$direccion['id'],
|
||||||
|
$return_data['peso'][$i],
|
||||||
|
$direccion['unidades'],
|
||||||
|
$direccion['enPallets'] == 'true'?1:0)[0]->coste;
|
||||||
|
}
|
||||||
|
$return_data['precio_u'][$i] = round(floatval($return_data['precio_u'][$i]) + $coste_envio, 4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
|
||||||
|
for ($i=0; $i<count($tirada); $i++){
|
||||||
|
$coste_envio = 0.0;
|
||||||
|
$coste_envio += $this->getCosteEnvio(null, $return_data['peso'][$i], $tirada[$i], false)[0]->coste;
|
||||||
|
$return_data['precio_u'][$i] = round(floatval($return_data['precio_u'][$i]) + $coste_envio, 4);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
return $this->respond($return_data);
|
return $this->respond($return_data);
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
return $this->failServerError($e->getMessage());
|
return $this->failServerError($e->getMessage());
|
||||||
@ -424,30 +452,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getDatosDireccion()
|
|
||||||
{
|
|
||||||
|
|
||||||
if ($this->request->isAJAX()) {
|
|
||||||
|
|
||||||
$newTokenHash = csrf_hash();
|
|
||||||
$csrfTokenName = csrf_token();
|
|
||||||
|
|
||||||
$reqData = $this->request->getPost();
|
|
||||||
$direccionId = $reqData['id'] ?? 0;
|
|
||||||
$peso = $reqData['peso'] ?? 0;
|
|
||||||
$unidades = $reqData['unidades'] ?? 0;
|
|
||||||
$entregaPieCalle = $reqData['entregaPieCalle'] ?? 0;
|
|
||||||
|
|
||||||
$data = $this->calcular_coste_envio($direccionId, $peso, $unidades, $entregaPieCalle);
|
|
||||||
|
|
||||||
return $this->respond([
|
|
||||||
'data' => $data,
|
|
||||||
$csrfTokenName => $newTokenHash
|
|
||||||
]);
|
|
||||||
} else {
|
|
||||||
return $this->failUnauthorized('Invalid request', 403);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getNuevaDireccion()
|
public function getNuevaDireccion()
|
||||||
{
|
{
|
||||||
@ -1026,11 +1031,21 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
protected function calcular_coste_envio($direccionId, $peso, $unidades, $entregaPieCalle)
|
protected function getCosteEnvio($direccionId = null, $peso, $unidades, $entregaPieCalle)
|
||||||
{
|
{
|
||||||
|
|
||||||
$model = model('App\Models\Clientes\ClienteDireccionesModel');
|
if($direccionId != null){
|
||||||
$data = $model->getDireccion($direccionId);
|
$model = model('App\Models\Clientes\ClienteDireccionesModel');
|
||||||
|
$data = $model->getDireccion($direccionId);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$data = [];
|
||||||
|
array_push($data, (object)[
|
||||||
|
'pais_id' => 1, // españa
|
||||||
|
'cp' => 18000, // envio nacional
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
$modelTarifaEnvio = model('App\Models\Tarifas\TarifaEnvioModel');
|
$modelTarifaEnvio = model('App\Models\Tarifas\TarifaEnvioModel');
|
||||||
$coste = 0;
|
$coste = 0;
|
||||||
@ -1105,6 +1120,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
$gramajeCubierta = $datos_entrada['cubierta']['gramajeCubierta'];
|
$gramajeCubierta = $datos_entrada['cubierta']['gramajeCubierta'];
|
||||||
$carasCubierta = $datos_entrada['cubierta']['carasCubierta'];
|
$carasCubierta = $datos_entrada['cubierta']['carasCubierta'];
|
||||||
$solapasCubierta = $datos_entrada['cubierta']['solapasCubierta'];
|
$solapasCubierta = $datos_entrada['cubierta']['solapasCubierta'];
|
||||||
|
$acabadosCubierta = $datos_entrada['cubierta']['acabadosCubierta'] ?? [];
|
||||||
|
|
||||||
// Sobrecubierta
|
// Sobrecubierta
|
||||||
$sobreCubierta = $datos_entrada["sobrecubierta"] ?? null;
|
$sobreCubierta = $datos_entrada["sobrecubierta"] ?? null;
|
||||||
@ -1291,18 +1307,22 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
else
|
else
|
||||||
$error->cubierta = "";
|
$error->cubierta = "";
|
||||||
|
|
||||||
$tarifaAcabadoCubierta = intval($datos_entrada['acabadoCubierta'] ?? 0);
|
// Acabados Cubierta
|
||||||
|
$tarifaAcabadoCubierta = $this->obtenerTarifasAcabado($acabadosCubierta);
|
||||||
$acabadoCubierta = [];
|
$acabadoCubierta = [];
|
||||||
if ($tarifaAcabadoCubierta > 0) {
|
foreach ($tarifaAcabadoCubierta as $tarifa) {
|
||||||
|
|
||||||
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
||||||
$acabadoCubierta = $model->getPrecioTarifa($tarifaAcabadoCubierta, $datosPedido->tirada, -1, $POD);
|
$acabadoCubierta = $model->getPrecioTarifa($tarifa, $datosPedido->tirada, -1, $POD);
|
||||||
}
|
|
||||||
if (count($acabadoCubierta) > 0) {
|
if (count($acabadoCubierta) > 0) {
|
||||||
if ($acabadoCubierta[0]->total <= 0)
|
if ($acabadoCubierta[0]->total <= 0)
|
||||||
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
||||||
$coste_servicios += floatval($acabadoCubierta[0]->total);
|
$coste_servicios += floatval($acabadoCubierta[0]->total);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Sobrecubierta
|
// Sobrecubierta
|
||||||
$coste_sobrecubierta = 0.0;
|
$coste_sobrecubierta = 0.0;
|
||||||
$peso_sobrecubierta = 0.0;
|
$peso_sobrecubierta = 0.0;
|
||||||
@ -1316,7 +1336,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
$input_data['datosPedido']->paginas = 4;
|
$input_data['datosPedido']->paginas = 4;
|
||||||
$input_data['paginas_color'] = 4;
|
$input_data['paginas_color'] = 4;
|
||||||
$input_data['datosPedido']->solapas_ancho = intval($sobreCubierta['solapas'] ?? 0);
|
$input_data['datosPedido']->solapas_ancho = intval($sobreCubierta['solapas'] ?? 0);
|
||||||
$input_data['datosPedido']->solapas = $input_data['datosPedido']->solapas_ancho > 0 ? 1 : 0;
|
$input_data['datosPedido']->solapas = $sobreCubierta['solapas'] > 0 ? 1 : 0;
|
||||||
$input_data['datosPedido']->lomo = $this->calcular_lomo([$cubierta], $input_data['datosPedido']->lomo);
|
$input_data['datosPedido']->lomo = $this->calcular_lomo([$cubierta], $input_data['datosPedido']->lomo);
|
||||||
$input_data['isColor'] = 1;
|
$input_data['isColor'] = 1;
|
||||||
$input_data['isHq'] = 1;
|
$input_data['isHq'] = 1;
|
||||||
@ -1346,17 +1366,18 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
|
|
||||||
$lomo_sobrecubierta = $lomo + floatval($linea_sobrecubierta['mano']);
|
$lomo_sobrecubierta = $lomo + floatval($linea_sobrecubierta['mano']);
|
||||||
|
|
||||||
////////////////////////////////////JJJO
|
$tarifaAcabadoSobrecubierta = $this->obtenerTarifasAcabado(['plastificado' => $sobreCubierta['acabados']]);
|
||||||
$tarifaAcabadoSobrecubierta = intval(strlen($sobreCubierta['acabados']) == 0 ? 0 : $sobreCubierta['acabados']);
|
|
||||||
$acabadoSobrecubierta = [];
|
$acabadoSobrecubierta = [];
|
||||||
if ($tarifaAcabadoSobrecubierta > 0) {
|
foreach ($tarifaAcabadoSobrecubierta as $tarifa) {
|
||||||
|
|
||||||
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
||||||
$acabadoSobrecubierta = $model->getPrecioTarifa($tarifaAcabadoSobrecubierta, $datosPedido->tirada, $POD);
|
$acabadoSobrecubierta = $model->getPrecioTarifa($tarifa, $datosPedido->tirada, -1, $POD);
|
||||||
}
|
|
||||||
if (count($acabadoSobrecubierta) > 0) {
|
if (count($acabadoSobrecubierta) > 0) {
|
||||||
if ($acabadoSobrecubierta[0]->total <= 0)
|
if ($acabadoSobrecubierta[0]->total <= 0)
|
||||||
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
||||||
$coste_servicios += floatval($acabadoSobrecubierta[0]->total);
|
$coste_servicios += floatval($acabadoSobrecubierta[0]->total);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1460,16 +1481,16 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
'retractilado' => 3,
|
'retractilado' => 3,
|
||||||
'retractilado5' => 5,
|
|
||||||
'ferro' => 24,
|
|
||||||
'prototipo' => 9,
|
'prototipo' => 9,
|
||||||
'fajaColor' => 16,
|
|
||||||
'plegadoGuardas' => 62,
|
|
||||||
*/
|
*/
|
||||||
$serviciosAutomaticos = [];
|
$serviciosAutomaticos = [];
|
||||||
|
$servicios = [];
|
||||||
|
if ($datos_entrada['cubierta']['acabadosCubierta']['retractilado'] === 'true')
|
||||||
|
array_push($servicios, 3);
|
||||||
|
if ($datos_entrada['servicios']['prototipo'])
|
||||||
|
array_push($servicios, 9);
|
||||||
foreach ($servicios as $servicio) {
|
foreach ($servicios as $servicio) {
|
||||||
if (intval($servicio) == 3 || intval($servicio) == 5 || intval($servicio) == 16) {
|
if (intval($servicio) == 3) {
|
||||||
// Servicios acabado
|
// Servicios acabado
|
||||||
$resultado = PresupuestoCLienteService::getServiciosAcabados([
|
$resultado = PresupuestoCLienteService::getServiciosAcabados([
|
||||||
'tarifa_id' => $servicio,
|
'tarifa_id' => $servicio,
|
||||||
@ -1485,22 +1506,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
$totalServicios += floatval($resultado[0]->total);
|
$totalServicios += floatval($resultado[0]->total);
|
||||||
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
|
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
|
||||||
}
|
}
|
||||||
} else if (intval($servicio) == 24) {
|
} else if (intval($servicio) == 9) {
|
||||||
// Servicios preimpresion (Ferro)
|
|
||||||
$resultado = PresupuestoCLienteService::getServiciosPreimpresion([
|
|
||||||
'tarifa_id' => $servicio,
|
|
||||||
]);
|
|
||||||
array_push($serviciosAutomaticos, $resultado[0]);
|
|
||||||
if ($resultado[0]->precio <= 0)
|
|
||||||
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
|
||||||
|
|
||||||
$coste_servicios += floatval($resultado[0]->precio);
|
|
||||||
if ($extra_info) {
|
|
||||||
$totalServicios += floatval($resultado[0]->precio);
|
|
||||||
$margenServicios += floatval($resultado[0]->precio) * floatval($resultado[0]->margen) / 100.0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (intval($servicio) == 9) {
|
|
||||||
// Servicios preimpresion
|
// Servicios preimpresion
|
||||||
$resultado = PresupuestoCLienteService::getServiciosExtra([
|
$resultado = PresupuestoCLienteService::getServiciosExtra([
|
||||||
'tarifa_id' => $servicio,
|
'tarifa_id' => $servicio,
|
||||||
@ -1514,22 +1520,6 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
$totalServicios += floatval($resultado[0]->precio);
|
$totalServicios += floatval($resultado[0]->precio);
|
||||||
$margenServicios += floatval($resultado[0]->precio) * floatval($resultado[0]->margen) / 100.0;
|
$margenServicios += floatval($resultado[0]->precio) * floatval($resultado[0]->margen) / 100.0;
|
||||||
}
|
}
|
||||||
} else if (intval($servicio) == 62) {
|
|
||||||
// Servicios manipulado
|
|
||||||
$resultado = PresupuestoCLienteService::getServiciosManipulado([
|
|
||||||
'tarifa_id' => $servicio,
|
|
||||||
'tirada' => $tirada[$t],
|
|
||||||
'POD' => $POD,
|
|
||||||
]);
|
|
||||||
array_push($serviciosAutomaticos, $resultado[0]);
|
|
||||||
if ($resultado[0]->total <= 0)
|
|
||||||
$error->servicios = lang('Presupuestos.errores.errorPresupuesto');
|
|
||||||
|
|
||||||
$coste_servicios += floatval($resultado[0]->total);
|
|
||||||
if ($extra_info) {
|
|
||||||
$totalServicios += floatval($resultado[0]->total);
|
|
||||||
$margenServicios += floatval($resultado[0]->total) * floatval($resultado[0]->margen) / 100.0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2020,4 +2010,69 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController
|
|||||||
}
|
}
|
||||||
return 32; // valor por defecto
|
return 32; // valor por defecto
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function obtenerTarifasAcabado($acabados)
|
||||||
|
{
|
||||||
|
$tarifas = [];
|
||||||
|
|
||||||
|
|
||||||
|
foreach ($acabados as $acabado => $value) {
|
||||||
|
|
||||||
|
if ($acabado == 'plastificado') {
|
||||||
|
|
||||||
|
if ($value !== 'NONE') {
|
||||||
|
|
||||||
|
switch ($value) {
|
||||||
|
case 'BRIL':
|
||||||
|
array_push($tarifas, 1);
|
||||||
|
break;
|
||||||
|
case 'MATE':
|
||||||
|
array_push($tarifas, 2);
|
||||||
|
break;
|
||||||
|
case 'ANTI':
|
||||||
|
array_push($tarifas, 28);
|
||||||
|
break;
|
||||||
|
case 'SAND':
|
||||||
|
array_push($tarifas, 94);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if ($acabado == 'barniz') {
|
||||||
|
if ($value !== 'NONE') {
|
||||||
|
switch ($value) {
|
||||||
|
case 'R2D':
|
||||||
|
array_push($tarifas, 102);
|
||||||
|
break;
|
||||||
|
case 'R3D':
|
||||||
|
array_push($tarifas, 8);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if ($acabado == 'estampado') {
|
||||||
|
if ($value !== 'NONE') {
|
||||||
|
switch ($value) {
|
||||||
|
case 'GOLD':
|
||||||
|
array_push($tarifas, 103);
|
||||||
|
break;
|
||||||
|
case 'SILV':
|
||||||
|
array_push($tarifas, 104);
|
||||||
|
break;
|
||||||
|
case 'COPP':
|
||||||
|
array_push($tarifas, 105);
|
||||||
|
break;
|
||||||
|
case 'BRON':
|
||||||
|
array_push($tarifas, 106);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $tarifas;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -201,11 +201,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-sm-8 mb-3 d-flex flex-column align-items-center">
|
<div class="col-sm-8 mt-5 mb-3 d-flex flex-column align-items-center">
|
||||||
<h3 class="mb-1 fw-bold"> Servicios extra </h3>
|
<h3 class="mb-1 fw-bold"> Servicios extra </h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row col-sm-9 mb-3 d-flex flex-column align-items-center">
|
<div class="row col-sm-9 mb-3 d-flex flex-column align-items-left">
|
||||||
<div class="col-sm-3 form-check form-switch mb-2">
|
<div class="col-sm-3 form-check form-switch mb-2">
|
||||||
<input class="calcular-presupuesto form-check-input" type="checkbox" id="prototipo" name="prototipo" value="1">
|
<input class="calcular-presupuesto form-check-input" type="checkbox" id="prototipo" name="prototipo" value="1">
|
||||||
<label class="form-check-label" for="prototipo">Prototipo</label>
|
<label class="form-check-label" for="prototipo">Prototipo</label>
|
||||||
@ -217,7 +217,7 @@
|
|||||||
<h3 class="mb-1 fw-bold"> Otros </h3>
|
<h3 class="mb-1 fw-bold"> Otros </h3>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row col-sm-10 mt-5 mb-3">
|
<div class="row col-sm-10 mb-3">
|
||||||
|
|
||||||
<div class="col-sm-2 mb-md-0 mb-2">
|
<div class="col-sm-2 mb-md-0 mb-2">
|
||||||
<label for="ivaReducido" class="form-label">I.V.A. reducido</label>
|
<label for="ivaReducido" class="form-label">I.V.A. reducido</label>
|
||||||
|
|||||||
@ -352,7 +352,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row col-sm-12 mb-0 justify-content-center">
|
<div class="row col-sm-12 mb-0 justify-content-center d-none">
|
||||||
|
|
||||||
<div class="row justify-content-center">
|
<div class="row justify-content-center">
|
||||||
|
|
||||||
|
|||||||
@ -67,6 +67,18 @@ class Direcciones {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
getDirecciones(){
|
||||||
|
|
||||||
|
let direcciones = this.divDirecciones.find('.direccion-cliente')
|
||||||
|
if(direcciones.length > 0){
|
||||||
|
direcciones.forEach(element => {
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#insertDireccion() {
|
#insertDireccion() {
|
||||||
|
|
||||||
self = this;
|
self = this;
|
||||||
@ -76,7 +88,7 @@ class Direcciones {
|
|||||||
let id = this.direccionesCliente.getValue();
|
let id = this.direccionesCliente.getValue();
|
||||||
let unidades = this.unidadesAdd.val();
|
let unidades = this.unidadesAdd.val();
|
||||||
let entregaPalets = this.entregaPieCallero.is(':checked');
|
let entregaPalets = this.entregaPieCallero.is(':checked');
|
||||||
let dirId = "dirEnvio-1";
|
let dirId = "dirEnvio-" + id;
|
||||||
let direccionesActuales = this.divDirecciones.find('.direccion-cliente');
|
let direccionesActuales = this.divDirecciones.find('.direccion-cliente');
|
||||||
if (direccionesActuales.length > 0) {
|
if (direccionesActuales.length > 0) {
|
||||||
// the the lass item
|
// the the lass item
|
||||||
@ -99,7 +111,7 @@ class Direcciones {
|
|||||||
tarjeta.card.find('.direccion-editar').on('click', this.#editUnits.bind(self));
|
tarjeta.card.find('.direccion-editar').on('click', this.#editUnits.bind(self));
|
||||||
tarjeta.card.find('.direccion-eliminar').on('click', this.#deleteDireccion.bind(self));
|
tarjeta.card.find('.direccion-eliminar').on('click', this.#deleteDireccion.bind(self));
|
||||||
this.divDirecciones.append(tarjeta.card);
|
this.divDirecciones.append(tarjeta.card);
|
||||||
this.direcciones.push({ "id": dirId, "unidades": unidades, "enPallets": entregaPalets, "direccion": response.data[0] });
|
this.direcciones.push({ "id": id, "unidades": unidades, "enPallets": entregaPalets});
|
||||||
self.divDirecciones.trigger('change');
|
self.divDirecciones.trigger('change');
|
||||||
$('#loader').hide();
|
$('#loader').hide();
|
||||||
},
|
},
|
||||||
|
|||||||
@ -27,11 +27,13 @@ class PresupuestoCliente {
|
|||||||
this.disenioCubierta = new DisenioCubierta($("#cubierta-libro"), this.clientePresupuestoWizard, this.validationStepper);
|
this.disenioCubierta = new DisenioCubierta($("#cubierta-libro"), this.clientePresupuestoWizard, this.validationStepper);
|
||||||
this.direcciones = new Direcciones($("#direcciones-libro"), this.clientePresupuestoWizard, this.validationStepper);
|
this.direcciones = new Direcciones($("#direcciones-libro"), this.clientePresupuestoWizard, this.validationStepper);
|
||||||
|
|
||||||
|
this.divTiradasPrecios = $("#divTiradasPrecio");
|
||||||
|
|
||||||
this.datos = {};
|
this.datos = {};
|
||||||
this.ajax_calcular = new Ajax('/presupuestocliente/calcular',
|
this.ajax_calcular = new Ajax('/presupuestocliente/calcular',
|
||||||
{}, this.datos,
|
{}, this.datos,
|
||||||
this.#procesarPresupuesto,
|
this.#procesarPresupuesto.bind(this),
|
||||||
() => { $('#loader').hide(); console.log("Error") });
|
() => { $('#loader').hide(); });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -54,12 +56,12 @@ class PresupuestoCliente {
|
|||||||
this.disenioCubierta.init();
|
this.disenioCubierta.init();
|
||||||
this.direcciones.init();
|
this.direcciones.init();
|
||||||
|
|
||||||
this.RELLENAR_PRESUPUESTO();
|
//this.RELLENAR_PRESUPUESTO();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
checkForm() {
|
checkForm(event) {
|
||||||
|
|
||||||
this.#getDatos();
|
this.#getDatos();
|
||||||
|
|
||||||
@ -154,8 +156,24 @@ class PresupuestoCliente {
|
|||||||
#procesarPresupuesto(response) {
|
#procesarPresupuesto(response) {
|
||||||
|
|
||||||
$('#loader').hide();
|
$('#loader').hide();
|
||||||
console.log("Success");
|
// checj if response.tiradas exists and is not empty
|
||||||
console.log(response);
|
if (response.tiradas && response.tiradas.length) {
|
||||||
|
|
||||||
|
this.divTiradasPrecios.empty();
|
||||||
|
|
||||||
|
for (let i = 0; i < response.tiradas.length; i++) {
|
||||||
|
new tarjetaTiradasPrecio(
|
||||||
|
this.divTiradasPrecios,
|
||||||
|
('precio-tiradas-' + response.tiradas[i]),
|
||||||
|
response.tiradas[i],
|
||||||
|
(parseFloat(response.precio_u[i])*parseInt(response.tiradas[i])).toFixed(2),
|
||||||
|
response.precio_u[i]
|
||||||
|
);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// DEBUG
|
||||||
|
//console.log(response);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -228,7 +246,7 @@ class PresupuestoCliente {
|
|||||||
excluirRotativa: this.datosGenerales.excluirRotativa.is(':checked'),
|
excluirRotativa: this.datosGenerales.excluirRotativa.is(':checked'),
|
||||||
ivaReducido: this.datosGenerales.ivaReducido.find('option:selected').val(),
|
ivaReducido: this.datosGenerales.ivaReducido.find('option:selected').val(),
|
||||||
servicios: {
|
servicios: {
|
||||||
'prototipo' : this.datosGenerales.servicios.prototipo.is(':checked'),
|
'prototipo' : this.datosGenerales.prototipo.is(':checked'),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -248,6 +266,10 @@ class PresupuestoCliente {
|
|||||||
else{
|
else{
|
||||||
this.datos.cubierta.solapas = false;
|
this.datos.cubierta.solapas = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(this.direcciones.direcciones.length > 0){
|
||||||
|
this.datos.direcciones = this.direcciones.direcciones;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -15,12 +15,12 @@ class tarjetaTiradasPrecio {
|
|||||||
|
|
||||||
let $html = $('<div>', {
|
let $html = $('<div>', {
|
||||||
id: id,
|
id: id,
|
||||||
class: 'list-group'
|
class: 'list-group mb-2'
|
||||||
});
|
});
|
||||||
|
|
||||||
let $link = $('<a>', {
|
let $link = $('<a>', {
|
||||||
href: 'javascript:void(0);',
|
href: 'javascript:void(0);',
|
||||||
class: 'list-group-item list-group-item-action'
|
class: 'list-group-item'
|
||||||
});
|
});
|
||||||
|
|
||||||
let $liWrapper = $('<div>', {
|
let $liWrapper = $('<div>', {
|
||||||
|
|||||||
Reference in New Issue
Block a user