mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
Merge branch 'dev/tiradas_alternativas' into 'main'
Dev/tiradas alternativas See merge request jjimenez/safekat!176
This commit is contained in:
@ -27,6 +27,23 @@ class Js_loader extends BaseController
|
||||
return view('themes/backend/vuexy/form/presupuestos/cosidotapablanda/previews.js');
|
||||
}
|
||||
|
||||
function tiradasAlternativas_js()
|
||||
{
|
||||
$this->response->setHeader('Content-Type', 'text/javascript');
|
||||
return view('themes/backend/vuexy/form/presupuestos/cosidotapablanda/_tiradasAlternativasItems.js');
|
||||
}
|
||||
|
||||
function datosServicios_js()
|
||||
{
|
||||
$this->response->setHeader('Content-Type', 'text/javascript');
|
||||
return view('themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosServiciosItems.js');
|
||||
}
|
||||
|
||||
function datosEnvios_js()
|
||||
{
|
||||
$this->response->setHeader('Content-Type', 'text/javascript');
|
||||
return view('themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosEnvios.js');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -53,7 +53,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$this->soft_delete = true;
|
||||
// Se indica el flag para los ficheros borrados
|
||||
$this->delete_flag = 1;
|
||||
|
||||
|
||||
$this->viewData = ['usingServerSideDataTable' => true]; // JJO
|
||||
|
||||
parent::initController($request, $response, $logger);
|
||||
@ -72,11 +72,11 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
'tipo_impresion_id' => $tipo_impresion_id
|
||||
];
|
||||
|
||||
$viewData = array_merge($viewData, $this->getStringsFromTipoImpresion($tipo_impresion_id));
|
||||
$viewData = array_merge($viewData, $this->getStringsFromTipoImpresion($tipo_impresion_id));
|
||||
|
||||
$viewData = array_merge($this->viewData, $viewData); // merge any possible values from the parent controller class
|
||||
|
||||
|
||||
|
||||
|
||||
return view(static::$viewPath . 'viewCosidotapablandaList', $viewData);
|
||||
}
|
||||
|
||||
@ -102,7 +102,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
|
||||
if (!isset($sanitizedData['papel_formato_id']) || $sanitizedData['papel_formato_id'] == null) {
|
||||
$sanitizedData['papel_formato_id'] = 0;
|
||||
}
|
||||
}
|
||||
|
||||
$noException = true;
|
||||
if ($successfulResult = $this->canValidate($this->model->validationRulesAdd, $this->model->validationMessagesAdd)) : // if ($successfulResult = $this->validate($this->formValidationRules) ) :
|
||||
@ -157,7 +157,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
|
||||
$this->viewData['formAction'] = route_to('createCosidotapablanda', $tipo_impresion_id);
|
||||
|
||||
$this->viewData = array_merge($this->viewData, $this->getStringsFromTipoImpresion($tipo_impresion_id));
|
||||
$this->viewData = array_merge($this->viewData, $this->getStringsFromTipoImpresion($tipo_impresion_id));
|
||||
|
||||
$this->viewData['boxTitle'] = lang('Basic.global.addNew') . ' ' . $this->viewData['pageTitle'] . ' ' . lang('Basic.global.addNewSuffix');
|
||||
|
||||
@ -167,7 +167,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
|
||||
public function edit($requestedId = null)
|
||||
{
|
||||
// JJO
|
||||
// JJO
|
||||
$session = session();
|
||||
|
||||
if ($requestedId == null) :
|
||||
@ -193,7 +193,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
|
||||
$sanitizedData = $this->sanitized($postData, $nullIfEmpty);
|
||||
|
||||
|
||||
|
||||
// JJO
|
||||
$sanitizedData['user_updated_id'] = $session->id_user;
|
||||
|
||||
@ -202,7 +202,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
}
|
||||
if ($this->request->getPost('retractilado5') == null) {
|
||||
$sanitizedData['retractilado5'] = false;
|
||||
}
|
||||
}
|
||||
if ($this->request->getPost('ferro') == null) {
|
||||
$sanitizedData['ferro'] = false;
|
||||
}
|
||||
@ -234,8 +234,10 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
}
|
||||
|
||||
$noException = true;
|
||||
if($sanitizedData['papel_formato_id'] == null && $sanitizedData['papel_formato_ancho'] == null
|
||||
&& $sanitizedData['papel_formato_alto'] == null){
|
||||
if (
|
||||
$sanitizedData['papel_formato_id'] == null && $sanitizedData['papel_formato_ancho'] == null
|
||||
&& $sanitizedData['papel_formato_alto'] == null
|
||||
) {
|
||||
if ($this->request->isAJAX()) {
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
@ -244,14 +246,11 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
return $this->respond($data);
|
||||
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
$this->session->setFlashData('errorMessage', lang('Presupuestos.errores.formato_papel'));
|
||||
}
|
||||
$successfulResult = false;
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
|
||||
if ($successfulResult = $this->canValidate()) : // if ($successfulResult = $this->validate($this->formValidationRules) )
|
||||
|
||||
@ -292,11 +291,10 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
return $this->respond($data);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
return $this->redirect2listView('sweet-success', $message);
|
||||
}
|
||||
|
||||
|
||||
endif;
|
||||
else :
|
||||
if ($this->request->isAJAX()) {
|
||||
@ -307,8 +305,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
return $this->respond($data);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
$this->session->setFlashData('sweet-success', $message);
|
||||
}
|
||||
endif;
|
||||
@ -322,7 +319,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$this->viewData['isCosido'] = (new TipoPresupuestoModel())->get_isCosido($presupuestoEntity->tipo_impresion_id);
|
||||
$this->viewData['isTapaDura'] = (new TipoPresupuestoModel())->get_isTapaDura($presupuestoEntity->tipo_impresion_id);
|
||||
|
||||
if(!is_null($presupuestoEntity->comparador_json_data))
|
||||
if (!is_null($presupuestoEntity->comparador_json_data))
|
||||
$this->viewData['comp_data'] = json_decode($presupuestoEntity->comparador_json_data);
|
||||
else
|
||||
$this->viewData['comp_data'] = "";
|
||||
@ -362,7 +359,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$this->viewData['serviciosPreimpresionList'] = (new PresupuestoPreimpresionesModel())->getResource($id)->get()->getResultObject();
|
||||
|
||||
// Direciones presupuesto
|
||||
$this->viewData['presupuestoDirecciones'] = (new PresupuestoDireccionesModel())->getResource("",$id)->get()->getResultObject();
|
||||
$this->viewData['presupuestoDirecciones'] = (new PresupuestoDireccionesModel())->getResource("", $id)->get()->getResultObject();
|
||||
|
||||
$this->viewData['POD'] = $this->getPOD();
|
||||
|
||||
@ -373,11 +370,11 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
'prototipo' => 9,
|
||||
'fajaColor' => 16,
|
||||
'plegadoGuardas' => 62,
|
||||
];
|
||||
];
|
||||
|
||||
$this->viewData['tipo_impresion_id'] = $presupuestoEntity->tipo_impresion_id; // Cosido tapa blanda JJO
|
||||
|
||||
$this->viewData = array_merge($this->viewData, $this->getStringsFromTipoImpresion($presupuestoEntity->tipo_impresion_id));
|
||||
$this->viewData = array_merge($this->viewData, $this->getStringsFromTipoImpresion($presupuestoEntity->tipo_impresion_id));
|
||||
|
||||
$this->viewData['formAction'] = route_to('updateCosidotapablanda', $id);
|
||||
|
||||
@ -395,7 +392,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$reqData = $this->request->getPost();
|
||||
|
||||
$type = $reqData['type'] ?? null;
|
||||
|
||||
|
||||
if (is_null($type)) {
|
||||
if (!isset($reqData['draw']) || !isset($reqData['columns'])) {
|
||||
$errstr = 'No data available in response to this specific request.';
|
||||
@ -406,7 +403,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
}
|
||||
$start = $reqData['start'] ?? 0;
|
||||
$length = $reqData['length'] ?? 5;
|
||||
|
||||
|
||||
$requestedOrder1 = $reqData['order']['0']['column'] ?? 0;
|
||||
$order1 = PresupuestoModel::SORTABLE[$requestedOrder1 >= 0 ? $requestedOrder1 : 0];
|
||||
$dir1 = $reqData['order']['0']['dir'] ?? 'asc';
|
||||
@ -423,7 +420,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
if (is_null($type)) {
|
||||
|
||||
$searchValues = get_filter_datatables_columns($reqData);
|
||||
|
||||
|
||||
$resourceData = $this->model->getResource($searchValues, $tipo_impresion_id)->orderBy($order1, $dir1)->orderBy($order2, $dir2)
|
||||
->orderBy($order3, $dir3)->limit($length, $start)->get()->getResultObject();
|
||||
foreach ($resourceData as $item) :
|
||||
@ -468,7 +465,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
|
||||
$isColor = $reqData['color'] ?? false;
|
||||
$isHq = $reqData['hq'] ?? false;
|
||||
|
||||
|
||||
$datosPedido = (object)array(
|
||||
'paginas' => intval($reqData['paginas']) ?? 0,
|
||||
'tirada' => intval($reqData['tirada']) ?? 0,
|
||||
@ -483,17 +480,17 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
'id' => $reqData['papel_generico_id'] ?? 0,
|
||||
'nombre' => $reqData['papel_generico'] ?? "",
|
||||
];
|
||||
|
||||
|
||||
$gramaje = $reqData['gramaje'] ?? 0;
|
||||
|
||||
$cliente_id = $reqData['cliente_id'] ?? -1;
|
||||
|
||||
|
||||
|
||||
if ($type=='interior' || $type=='guardas') {
|
||||
|
||||
|
||||
if ($type == 'interior' || $type == 'guardas') {
|
||||
|
||||
$datosTipolog = $reqData['negro'] ?? null;
|
||||
if(!is_null($datosTipolog)){
|
||||
if (!is_null($datosTipolog)) {
|
||||
$datosTipolog = [];
|
||||
$data = (object)array(
|
||||
'negro' => floatval($reqData['negro']) ?? 0,
|
||||
@ -503,37 +500,35 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
'cg' => floatval($reqData['cg']) ?? 0,
|
||||
'gota_negro' => intval($reqData['gota_negro']) ?? 0,
|
||||
'gota_color' => intval($reqData['gota_color']) ?? 0,
|
||||
);
|
||||
);
|
||||
array_push($datosTipolog, $data);
|
||||
}
|
||||
|
||||
if ($type=='guardas') {
|
||||
if ($type == 'guardas') {
|
||||
$datosPedido->paginas_impresion = intval($reqData['paginas_impresion']) ?? 0;
|
||||
// Para el caso de Fresado y Cosido tapa dura, las guardas son un diptico
|
||||
// y hay que imprimirlas como "cosido" (dos hojas pegadas). En el caso de espiral
|
||||
// o wire-o tapa dura, las guardas se imprimen como hojas sueltas
|
||||
if($tipo_impresion_id == 1 || $tipo_impresion_id == 3){
|
||||
if ($tipo_impresion_id == 1 || $tipo_impresion_id == 3) {
|
||||
$datosPedido->isCosido = true;
|
||||
}else if ($tipo_impresion_id == 5 || $tipo_impresion_id == 7){
|
||||
} else if ($tipo_impresion_id == 5 || $tipo_impresion_id == 7) {
|
||||
$datosPedido->isCosido = false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
$a_favor_fibra = $reqData['a_favor_fibra'] ?? false;
|
||||
|
||||
$resourceData = $this->getCompIntData($type, $datosPedido, $papel_generico, $gramaje, $isColor, $isHq, $cliente_id, $datosTipolog, $a_favor_fibra);
|
||||
|
||||
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
$data = [
|
||||
'lineas' => $resourceData,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
|
||||
|
||||
return $this->respond($data);
|
||||
}
|
||||
else if ($type=='interior_rot') {
|
||||
} else if ($type == 'interior_rot') {
|
||||
|
||||
$paginas = (object)array(
|
||||
'negro' => intval($reqData['paginas_negro']) ?? 0,
|
||||
@ -541,7 +536,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
);
|
||||
|
||||
$datosTipolog = $reqData['negro'] ?? null;
|
||||
if(!is_null($datosTipolog)){
|
||||
if (!is_null($datosTipolog)) {
|
||||
$datosTipolog = [];
|
||||
$data = (object)array(
|
||||
'negro' => floatval($reqData['negro']) ?? 0,
|
||||
@ -550,23 +545,22 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
'amarillo' => floatval($reqData['amarillo']) ?? 0,
|
||||
'gota_negro' => intval($reqData['gota_negro']) ?? 0,
|
||||
'gota_color' => intval($reqData['gota_color']) ?? 0,
|
||||
);
|
||||
);
|
||||
array_push($datosTipolog, $data);
|
||||
}
|
||||
|
||||
$resourceData = $this->getCompIntRotData($datosPedido, $papel_generico, $gramaje, $paginas, $cliente_id, $datosTipolog);
|
||||
|
||||
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
$data = [
|
||||
'lineas' => $resourceData,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
|
||||
|
||||
return $this->respond($data);
|
||||
}
|
||||
else if ($type=='cubierta' || $type=='sobrecubierta') {
|
||||
|
||||
} else if ($type == 'cubierta' || $type == 'sobrecubierta') {
|
||||
|
||||
$datosPedido->solapas = $reqData['solapas'];
|
||||
$datosPedido->solapas_ancho = $reqData['solapas_ancho'];
|
||||
$datosPedido->lomo = $reqData['lomo'];
|
||||
@ -575,17 +569,16 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$datosPedido->altoExteriores = PresupuestoService::getAltoTotalExteriores($type, $tipo_impresion_id, $datosPedido);
|
||||
// Cubierta y sobrecubierta siempre color HQ
|
||||
$resourceData = $this->getCompIntData($type, $datosPedido, $papel_generico, $gramaje, $isColor, 1, $cliente_id);
|
||||
|
||||
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
$data = [
|
||||
'lineas' => $resourceData,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
|
||||
|
||||
return $this->respond($data);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return $this->respond(Collection::datatable(
|
||||
@ -605,18 +598,18 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$reqData = $this->request->getPost();
|
||||
|
||||
$tipo = $reqData['tipo'] ?? '';
|
||||
|
||||
if($tipo=='lineasPresupuesto'){
|
||||
|
||||
|
||||
if ($tipo == 'lineasPresupuesto') {
|
||||
|
||||
$model = model('App\Models\Presupuestos\PresupuestoLineaModel');
|
||||
|
||||
|
||||
$datos = $reqData['datos'] ?? null;
|
||||
|
||||
|
||||
$presupuesto_id = $reqData['presupuesto_id'] ?? -1;
|
||||
|
||||
$model->where("presupuesto_id", $presupuesto_id)->delete();
|
||||
|
||||
if($datos != null){
|
||||
if ($datos != null) {
|
||||
|
||||
$model->insertLineasPresupuesto($presupuesto_id, $datos);
|
||||
}
|
||||
@ -625,7 +618,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$data = [
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
|
||||
|
||||
return $this->respond($data);
|
||||
}
|
||||
|
||||
@ -634,21 +627,21 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$data = [
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
|
||||
return $this->respond($data);
|
||||
|
||||
return $this->respond($data);
|
||||
} else {
|
||||
return $this->failUnauthorized('Invalid request', 403);
|
||||
}
|
||||
}
|
||||
|
||||
private function getStringsFromTipoImpresion($tipo_impresion_id){
|
||||
|
||||
private function getStringsFromTipoImpresion($tipo_impresion_id)
|
||||
{
|
||||
|
||||
$breadcrumbTitle = "";
|
||||
|
||||
switch ($tipo_impresion_id){
|
||||
switch ($tipo_impresion_id) {
|
||||
|
||||
// Fresado tapa dura
|
||||
// Fresado tapa dura
|
||||
case 1:
|
||||
$viewData['pageTitle'] = lang('Presupuestos.moduleTitleFresadoTD');
|
||||
$viewData['isCosido'] = 0;
|
||||
@ -656,15 +649,15 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$breadcrumbTitle = lang("App.menu_libros_fresasdo_tapa_dura");
|
||||
break;
|
||||
|
||||
// Fresado tapa blanda
|
||||
// Fresado tapa blanda
|
||||
case 2:
|
||||
$viewData['pageTitle'] = lang('Presupuestos.moduleTitleFresadoTB');
|
||||
$viewData['isCosido'] = 0;
|
||||
$viewData['isTapaDura'] = 0;
|
||||
$breadcrumbTitle = lang("App.menu_libros_fresasdo_tapa_blanda");
|
||||
$breadcrumbTitle = lang("App.menu_libros_fresasdo_tapa_blanda");
|
||||
break;
|
||||
|
||||
// Cosido tapa dura
|
||||
// Cosido tapa dura
|
||||
case 3:
|
||||
$viewData['pageTitle'] = lang('Presupuestos.moduleTitleCosidoTD');
|
||||
$viewData['isCosido'] = 1;
|
||||
@ -672,7 +665,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$breadcrumbTitle = lang("App.menu_libros_cosido_tapa_dura");
|
||||
break;
|
||||
|
||||
// Cosido tapa blanda
|
||||
// Cosido tapa blanda
|
||||
case 4:
|
||||
$viewData['pageTitle'] = lang('Presupuestos.moduleTitleCosidoTB');
|
||||
$viewData['isCosido'] = 1;
|
||||
@ -682,7 +675,6 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
|
||||
default:
|
||||
return "A IMPLEMENTAR!";
|
||||
|
||||
}
|
||||
|
||||
// Breadcrumbs
|
||||
@ -697,42 +689,10 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
|
||||
public function getCompIntData($uso, $datosPedido, $papel_generico, $gramaje, $isColor, $isHq, $cliente_id, $datosTipolog = null, $a_favor_fibra = false)
|
||||
{
|
||||
$tipo = $isColor? ($isHq?'colorhq':'color'): ($isHq?'negrohq':'negro');
|
||||
$tipo = $isColor ? ($isHq ? 'colorhq' : 'color') : ($isHq ? 'negrohq' : 'negro');
|
||||
|
||||
$opciones_papel = PresupuestoService::get_opciones_papel($uso, $isColor);
|
||||
|
||||
if( $uso == 'cubierta' ){
|
||||
$opciones_papel = array(
|
||||
'cubierta' => 1,
|
||||
//'color' => 1,
|
||||
'rotativa' => 0,
|
||||
);
|
||||
}
|
||||
else if ( $uso == 'sobrecubierta' ){
|
||||
$opciones_papel = array(
|
||||
'sobrecubierta' => 1,
|
||||
//'color' => 1,
|
||||
'rotativa' => 0,
|
||||
);
|
||||
}
|
||||
else if ( $uso == 'guardas' ){
|
||||
$opciones_papel = array(
|
||||
'guardas' => 1,
|
||||
//'color' => 1,
|
||||
'rotativa' => 0,
|
||||
);
|
||||
}
|
||||
else if( $isColor ){
|
||||
$opciones_papel = array(
|
||||
'color' => 1,
|
||||
'rotativa' => 0,
|
||||
);
|
||||
}
|
||||
else{
|
||||
$opciones_papel = array(
|
||||
'bn' => 1,
|
||||
'rotativa' => 0,
|
||||
);
|
||||
}
|
||||
|
||||
// Se obtienen los papeles disponibles
|
||||
$papelimpresionmodel = new PapelImpresionModel();
|
||||
$papeles = $papelimpresionmodel->getIdPapelesImpresionForPresupuesto(
|
||||
@ -749,7 +709,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$maquinas = $maquinamodel->getMaquinaImpresionForPresupuesto(
|
||||
is_rotativa: 0,
|
||||
tarifa_tipo: $tipo,
|
||||
uso_tarifa: ($uso=='guardas')?'interior':$uso,
|
||||
uso_tarifa: ($uso == 'guardas') ? 'interior' : $uso,
|
||||
tirada: $datosPedido->tirada + $datosPedido->merma,
|
||||
papel_impresion_id: $papel->id,
|
||||
);
|
||||
@ -757,145 +717,25 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
// Se recorren las máquinas y se calcula el coste de linea por cada una
|
||||
foreach ($maquinas as $maquina) {
|
||||
|
||||
if($maquina->is_inkjet){
|
||||
$parametrosInkjet = (object)array(
|
||||
'a_favor_fibra' => $a_favor_fibra, // este parametro se cambia para comprobar
|
||||
// en las dos direcciones (menos en rustica fresada que es siempre 1)
|
||||
'bnPages' => $isColor?0:$datosPedido->paginas,
|
||||
'colorPages' => ($uso == 'guardas')?$datosPedido->paginas_impresion:($isColor?$datosPedido->paginas:0),
|
||||
'rotativa_gota_negro' => 0,
|
||||
'rotativa_gota_color' => 0,
|
||||
);
|
||||
|
||||
$papelImpresionTipologiaModel = new \App\Models\Configuracion\PapelImpresionTipologiaModel();
|
||||
if(is_null($datosTipolog)){
|
||||
$datosTipologias = $papelImpresionTipologiaModel
|
||||
->findTipologiasForPapelImpresion($papel->id, $parametrosInkjet->colorPages>0?'color':'negro')
|
||||
->get()->getResultObject();
|
||||
|
||||
|
||||
if(count($datosTipologias)==0){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
else{
|
||||
$datosTipologias = $datosTipolog;
|
||||
}
|
||||
$parametrosInkjet->rotativa_gota_negro = $datosTipologias[0]->gota_negro;
|
||||
$parametrosInkjet->rotativa_gota_color = $datosTipologias[0]->gota_color;
|
||||
$parametrosInkjet->rotativa_negro = $datosTipologias[0]->negro;
|
||||
$parametrosInkjet->rotativa_cyan = $datosTipologias[0]->cyan;
|
||||
$parametrosInkjet->rotativa_magenta = $datosTipologias[0]->magenta;
|
||||
$parametrosInkjet->rotativa_amarillo = $datosTipologias[0]->amarillo;
|
||||
$parametrosInkjet->rotativa_cg = $datosTipologias[0]->cg;
|
||||
}
|
||||
$data['uso'] = $uso;
|
||||
$data['tipo'] = $tipo;
|
||||
$data['datosPedido'] = $datosPedido;
|
||||
$data['cliente_id'] = $cliente_id;
|
||||
$data['papel'] = $papel;
|
||||
$data['opciones_papel'] = $opciones_papel;
|
||||
$data['maquina'] = $maquina;
|
||||
$data['papel_generico'] = $papel_generico;
|
||||
$data['isColor'] = $isColor;
|
||||
$data['a_favor_fibra'] = $a_favor_fibra;
|
||||
$data['datosTipolog'] = $datosTipolog;
|
||||
$data['gramaje'] = $gramaje;
|
||||
|
||||
$tarifamodel = new MaquinasTarifasImpresionModel();
|
||||
|
||||
[$tarifaId, $tarifa, $tarifa_margen] = $tarifamodel->getTarifa($maquina->maquina_id, ($uso=='guardas')?'interior':$uso, $tipo);
|
||||
|
||||
|
||||
if(!is_float($tarifa)){
|
||||
$linea = PresupuestoService::getLineaPresupuestoPlana($data);
|
||||
|
||||
if(empty($linea))
|
||||
continue;
|
||||
}
|
||||
|
||||
if($maquina->is_inkjet){
|
||||
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa, $tarifa_margen, $parametrosInkjet->a_favor_fibra);
|
||||
}
|
||||
else{
|
||||
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa, $tarifa_margen);
|
||||
}
|
||||
|
||||
if(array_key_exists('error', $linea)){
|
||||
//array_push($lineas, $linea); for debug
|
||||
continue;
|
||||
}
|
||||
|
||||
if($maquina->is_inkjet){
|
||||
// calculo de tintas
|
||||
$linea['fields'] = array_merge($linea['fields'], PresupuestoService::calculoCosteTintas($maquina, $datosPedido, $parametrosInkjet));
|
||||
}
|
||||
|
||||
$linea['fields']['tarifa_impresion_id'] = $tarifaId;
|
||||
$linea['fields']['maquina'] = $maquina->maquina;
|
||||
$linea['fields']['maquina_id'] = $maquina->maquina_id;
|
||||
$linea['fields']['maquina_velocidad'] = $maquina->velocidad;
|
||||
$linea['fields']['papel_impresion'] = $papel->nombre;
|
||||
$linea['fields']['papel_impresion_id'] = $papel->id;
|
||||
$linea['fields']['paginas'] = $datosPedido->paginas;
|
||||
$linea['fields']['gramaje'] = $gramaje;
|
||||
$linea['fields']['papel_generico_id'] = $papel_generico['id'];
|
||||
$linea['fields']['papel_generico'] = $papel_generico['nombre'];
|
||||
|
||||
$linea['fields']['tiempo_maquina'] = PresupuestoService::getTiempoMaquina(
|
||||
$linea['fields']['precio_click_pedido'],
|
||||
$linea['fields']['precio_click'],
|
||||
$maquina->velocidad);
|
||||
|
||||
$clientePreciosModel = new ClientePreciosModel();
|
||||
$config = (object)[
|
||||
"tipo" => ($uso=='guardas')?'interior':$uso,
|
||||
"tipo_maquina" => $maquina->is_inkjet?'inkjet':'toner',
|
||||
"tipo_impresion" => $tipo
|
||||
];
|
||||
$tiempo = PresupuestoService::getHorasMaquina(
|
||||
$linea['fields']['precio_click_pedido'],
|
||||
$linea['fields']['precio_click'],
|
||||
$maquina->velocidad);
|
||||
[$precio_hora, $margen_precio_hora] = $clientePreciosModel->get_precio_hora($cliente_id, $config, $tiempo);
|
||||
|
||||
|
||||
if(is_null($precio_hora)){
|
||||
continue;
|
||||
}
|
||||
|
||||
$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_margen'] = $precio_hora*($margen_precio_hora/100.0);
|
||||
$linea['fields']['horas_maquina'] = $tiempo;
|
||||
$linea['fields']['precio_impresion_horas'] = $linea['fields']['precio_hora']*$tiempo;
|
||||
$linea['fields']['margen_impresion_horas'] = $linea['fields']['precio_hora_margen']*$tiempo;
|
||||
|
||||
// para guardas
|
||||
if(\property_exists($datosPedido, 'paginas_impresion')){
|
||||
$linea['fields']['paginas_impresion'] = $datosPedido->paginas_impresion;
|
||||
}
|
||||
|
||||
if($maquina->is_inkjet){
|
||||
$linea['fields']['a_favor_fibra'] = $parametrosInkjet->a_favor_fibra;
|
||||
$linea['fields']['paginas_color'] = $isColor?$datosPedido->paginas:0;
|
||||
$linea['fields']['totalClicksPedido'] = $linea['fields']['precio_click_pedido'];
|
||||
if( $uso != 'guardas' ){
|
||||
$linea['fields']['clicks_libro'] = round(ceil($linea['fields']['pliegos_libro']) * 2, 2);
|
||||
}
|
||||
else{
|
||||
if($datosPedido->paginas_impresion == 4)
|
||||
$linea['fields']['clicks_libro'] = round(ceil($linea['fields']['pliegos_libro']), 2);
|
||||
else if($datosPedido->paginas_impresion == 8)
|
||||
$linea['fields']['clicks_libro'] = round(ceil($linea['fields']['pliegos_libro'])*2, 2);
|
||||
else
|
||||
$linea['fields']['clicks_libro'] = 0;
|
||||
}
|
||||
$linea['fields']['clicks_pedido'] = round($linea['fields']['clicks_libro'] * ($datosPedido->tirada + $datosPedido->merma), 2);
|
||||
[$ancho, $alto] = PresupuestoService::calculoDimForma($datosPedido, $parametrosInkjet);
|
||||
$linea['fields']['factor_anchura'] = round($maquina->ancho_impresion / $ancho, 2);
|
||||
$linea['fields']['factor_altura'] = round($maquina->alto_impresion / ($alto + PresupuestoService::MARGEN_PAGINAS_ROTATIVA), 2);
|
||||
$linea['fields']['paginas_por_pliego'] = ($datosPedido->isCosido)?$linea['fields']['num_formas']['value']*2:$linea['fields']['num_formas']['value'] * 2; // Se multiplica *2 porque es doble cara
|
||||
$linea['fields']['datosTipologias'] = $datosTipologias[0];
|
||||
$linea['fields']['total_impresion'] =
|
||||
floatval($linea['fields']['precio_pedido']) + // papel
|
||||
floatval($linea['fields']['precio_impresion_horas']) + // horas de maquina
|
||||
floatval($linea['fields']['precio_click_pedido']) + // precio clicks del pedido
|
||||
floatval($linea['fields']['precio_tinta']); // tinta
|
||||
}
|
||||
else{
|
||||
$linea['fields']['total_impresion'] = floatval($linea['fields']['precio_pedido']) + // papel
|
||||
floatval($linea['fields']['precio_click_pedido']) + // precio clicks del pedido
|
||||
floatval($linea['fields']['precio_impresion_horas']) ; // horas de maquina
|
||||
}
|
||||
|
||||
|
||||
|
||||
array_push($lineas, $linea);
|
||||
}
|
||||
}
|
||||
@ -908,11 +748,11 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
{
|
||||
$uso = 'interior';
|
||||
|
||||
$tipo = $paginas->color>0? 'color': 'negro';
|
||||
$tipo = $paginas->color > 0 ? 'color' : 'negro';
|
||||
|
||||
|
||||
$parametrosRotativa = (object)array(
|
||||
'a_favor_fibra' => $datosPedido->a_favor_fibra,
|
||||
'a_favor_fibra' => $datosPedido->a_favor_fibra,
|
||||
'bnPages' => $paginas->negro,
|
||||
'colorPages' => $paginas->color,
|
||||
'rotativa_gota_negro' => 0,
|
||||
@ -924,15 +764,15 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
);
|
||||
|
||||
$tipo = array();
|
||||
if( $paginas->color > 0 ){
|
||||
if ($paginas->color > 0) {
|
||||
$tipo = 'color';
|
||||
$opciones_papel['color'] = 1;
|
||||
}
|
||||
if( $paginas->negro > 0 ){
|
||||
if ($paginas->negro > 0) {
|
||||
$opciones_papel['bn'] = 1;
|
||||
$tipo = 'negro';
|
||||
}
|
||||
|
||||
|
||||
// Se obtienen los papeles disponibles
|
||||
$papelimpresionmodel = new PapelImpresionModel();
|
||||
$papeles = $papelimpresionmodel->getIdPapelesImpresionForPresupuesto(
|
||||
@ -946,33 +786,32 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
foreach ($papeles as $papel) {
|
||||
|
||||
$papelImpresionTipologiaModel = new \App\Models\Configuracion\PapelImpresionTipologiaModel();
|
||||
if(is_null($datosTipolog)){
|
||||
if (is_null($datosTipolog)) {
|
||||
$datosTipologias = $papelImpresionTipologiaModel
|
||||
->findTipologiasForPapelImpresion($papel->id, $parametrosRotativa->colorPages>0?'color':'negro')
|
||||
->findTipologiasForPapelImpresion($papel->id, $parametrosRotativa->colorPages > 0 ? 'color' : 'negro')
|
||||
->get()->getResultObject();
|
||||
|
||||
|
||||
if(count($datosTipologias)==0){
|
||||
|
||||
if (count($datosTipologias) == 0) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
$datosTipologias = $datosTipolog;
|
||||
}
|
||||
|
||||
|
||||
$parametrosRotativa->rotativa_gota_negro = $datosTipologias[0]->gota_negro;
|
||||
$parametrosRotativa->rotativa_gota_color = $datosTipologias[0]->gota_color;
|
||||
$parametrosRotativa->rotativa_negro = $datosTipologias[0]->negro;
|
||||
$parametrosRotativa->rotativa_cyan = $datosTipologias[0]->cyan;
|
||||
$parametrosRotativa->rotativa_magenta = $datosTipologias[0]->magenta;
|
||||
$parametrosRotativa->rotativa_amarillo = $datosTipologias[0]->amarillo;
|
||||
|
||||
|
||||
$maquinamodel = new MaquinaModel();
|
||||
|
||||
|
||||
$maquinas = $maquinamodel->getMaquinaImpresionForPresupuesto(
|
||||
is_rotativa: 1,
|
||||
tarifa_tipo: $tipo,
|
||||
uso_tarifa: $uso,
|
||||
uso_tarifa: $uso,
|
||||
tirada: $datosPedido->tirada + $datosPedido->merma,
|
||||
papel_impresion_id: $papel->id,
|
||||
);
|
||||
@ -981,24 +820,24 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
foreach ($maquinas as $maquina) {
|
||||
|
||||
$tarifamodel = new MaquinasTarifasImpresionModel();
|
||||
[$tarifaId, $tarifa, $tarifa_margen] = $tarifamodel->getTarifa($maquina->maquina_id, $uso, is_array($tipo)?'color':$tipo);
|
||||
if(!is_float($tarifa)){
|
||||
[$tarifaId, $tarifa, $tarifa_margen] = $tarifamodel->getTarifa($maquina->maquina_id, $uso, is_array($tipo) ? 'color' : $tipo);
|
||||
if (!is_float($tarifa)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
// precio del pliego de impresion
|
||||
$linea['fields'] = PresupuestoService::getCostesLineaRotativa($maquina, $papel, $datosPedido, $parametrosRotativa);
|
||||
|
||||
|
||||
[$precio_pliego_impresion, $margen_pliego_impresion] = PresupuestoService::getPrecioPliego($maquina, $papel, $datosPedido->paginas);
|
||||
|
||||
|
||||
$linea['fields']['tarifa_impresion_id'] = $tarifaId;
|
||||
|
||||
$linea['fields']['precios_pliegos'] = $precio_pliego_impresion+$margen_pliego_impresion;
|
||||
$linea['fields']['precios_pliegos'] = $precio_pliego_impresion + $margen_pliego_impresion;
|
||||
|
||||
$linea['fields']['precio_libro'] = $linea['fields']['pliegos_libro'] * $linea['fields']['precios_pliegos'];
|
||||
// Precio papel pedido
|
||||
$linea['fields']['precio_pedido'] = $linea['fields']['precio_libro'] * ($datosPedido->tirada + $datosPedido->merma);
|
||||
$linea['fields']['margen_papel_pedido'] = $linea['fields']['pliegos_libro']*$margen_pliego_impresion* ($datosPedido->tirada + $datosPedido->merma); ;
|
||||
$linea['fields']['precio_pedido'] = $linea['fields']['precio_libro'] * ($datosPedido->tirada + $datosPedido->merma);
|
||||
$linea['fields']['margen_papel_pedido'] = $linea['fields']['pliegos_libro'] * $margen_pliego_impresion * ($datosPedido->tirada + $datosPedido->merma);;
|
||||
|
||||
$linea['fields']['a_favor_fibra'] = $parametrosRotativa->a_favor_fibra;
|
||||
$linea['fields']['maquina'] = $maquina->maquina;
|
||||
@ -1017,20 +856,21 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$linea['fields']['num_formas_horizontales'] = floor($linea['fields']['factor_anchura']);
|
||||
$linea['fields']['num_formas_verticales'] = floor($linea['fields']['factor_altura']);
|
||||
|
||||
|
||||
|
||||
|
||||
$linea['fields']['datosTipologias'] = $datosTipologias[0];
|
||||
|
||||
// impresion
|
||||
$linea['fields']['precio_click'] = $tarifa *(1+ $tarifa_margen/100.0);
|
||||
$linea['fields']['precio_click_margen'] = $tarifa *($tarifa_margen/100.0);
|
||||
$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']['margen_click_pedido'] = $linea['fields']['clicks_pedido'] * $linea['fields']['precio_click_margen'];
|
||||
|
||||
$linea['fields']['tiempo_maquina'] = PresupuestoService::getTiempoMaquina(
|
||||
$linea['fields']['precio_click_pedido'],
|
||||
$linea['fields']['precio_click'],
|
||||
$maquina->velocidad);
|
||||
$linea['fields']['precio_click_pedido'],
|
||||
$linea['fields']['precio_click'],
|
||||
$maquina->velocidad
|
||||
);
|
||||
|
||||
|
||||
$clientePreciosModel = new ClientePreciosModel();
|
||||
@ -1040,30 +880,31 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
"tipo_impresion" => $tipo
|
||||
];
|
||||
$tiempo = PresupuestoService::getHorasMaquina(
|
||||
$linea['fields']['precio_click_pedido'],
|
||||
$linea['fields']['precio_click'],
|
||||
$maquina->velocidad);
|
||||
$linea['fields']['precio_click_pedido'],
|
||||
$linea['fields']['precio_click'],
|
||||
$maquina->velocidad
|
||||
);
|
||||
[$precio_hora, $margen_precio_hora] = $clientePreciosModel->get_precio_hora($cliente_id, $config, $tiempo);
|
||||
|
||||
if(is_null($precio_hora)){
|
||||
if (is_null($precio_hora)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$linea['fields']['precio_hora'] = $precio_hora*(1+$margen_precio_hora/100.0);
|
||||
$linea['fields']['precio_hora_margen'] = $precio_hora*($margen_precio_hora/100.0);
|
||||
$linea['fields']['horas_maquina'] = $tiempo;
|
||||
$linea['fields']['precio_impresion_horas'] = $linea['fields']['precio_hora']*$tiempo;
|
||||
$linea['fields']['margen_impresion_horas'] = $linea['fields']['precio_hora_margen']*$tiempo;
|
||||
$linea['fields']['precio_hora'] = $precio_hora * (1 + $margen_precio_hora / 100.0);
|
||||
$linea['fields']['precio_hora_margen'] = $precio_hora * ($margen_precio_hora / 100.0);
|
||||
$linea['fields']['horas_maquina'] = $tiempo;
|
||||
$linea['fields']['precio_impresion_horas'] = $linea['fields']['precio_hora'] * $tiempo;
|
||||
$linea['fields']['margen_impresion_horas'] = $linea['fields']['precio_hora_margen'] * $tiempo;
|
||||
|
||||
// total linea rotativa
|
||||
//$linea['fields']['total_impresion'] = $linea['fields']['precio_pedido'] + $linea['fields']['precio_click_pedido'] + $linea['fields']['precio_tinta'] +
|
||||
// $linea['fields']['total_corte'];
|
||||
$linea['fields']['total_impresion'] =
|
||||
floatval($linea['fields']['precio_pedido']) + // papel
|
||||
floatval($linea['fields']['precio_click_pedido']) + // precio clicks del pedido
|
||||
floatval($linea['fields']['precio_impresion_horas']) + // horas de maquina
|
||||
floatval($linea['fields']['precio_tinta']) + // tinta
|
||||
floatval($linea['fields']['total_corte']); // corte
|
||||
$linea['fields']['total_impresion'] =
|
||||
floatval($linea['fields']['precio_pedido']) + // papel
|
||||
floatval($linea['fields']['precio_click_pedido']) + // precio clicks del pedido
|
||||
floatval($linea['fields']['precio_impresion_horas']) + // horas de maquina
|
||||
floatval($linea['fields']['precio_tinta']) + // tinta
|
||||
floatval($linea['fields']['total_corte']); // corte
|
||||
|
||||
array_push($lineas, $linea);
|
||||
}
|
||||
@ -1099,7 +940,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
if ($this->request->isAJAX()) {
|
||||
|
||||
$reqData = $this->request->getPost();
|
||||
try{
|
||||
try {
|
||||
|
||||
$tipo = $reqData['tipo'] ?? null;
|
||||
$uso = $reqData['uso'] ?? null;
|
||||
@ -1114,39 +955,35 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$tirada = $reqData['tirada'] ?? 0;
|
||||
$merma = $reqData['merma'] ?? 0;
|
||||
$model = new PapelGenericoModel();
|
||||
$menu = $model->getGramajeComparador($datos, $uso, intval($tirada+$merma) );
|
||||
$menu = $model->getGramajeComparador($datos, $uso, intval($tirada + $merma));
|
||||
|
||||
$data = [
|
||||
'menu' => $menu,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
}
|
||||
elseif ($tipo == 'gramajeLineasPresupuesto') {
|
||||
} elseif ($tipo == 'gramajeLineasPresupuesto') {
|
||||
$tipoLinea = $reqData['tipoLinea'] ?? null;
|
||||
// En este caso contiene el id del papel generico
|
||||
$model = new PapelGenericoModel();
|
||||
$menu = $model->getGramajeLineasPresupuesto($datos, $tipoLinea, $uso );
|
||||
$menu = $model->getGramajeLineasPresupuesto($datos, $tipoLinea, $uso);
|
||||
|
||||
$data = [
|
||||
'menu' => $menu,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
}
|
||||
elseif ($tipo == 'papelImpresion') {
|
||||
} elseif ($tipo == 'papelImpresion') {
|
||||
$gramaje = $reqData['gramaje'] ?? null;
|
||||
$tipoLinea = $reqData['tipoLinea'] ?? null;
|
||||
// En este caso contiene el nombre del papel generico
|
||||
// Uso: negro, negrohq, color, colorhq, rot_bn, rot_color,
|
||||
$model = new PapelImpresionModel();
|
||||
$menu = $model->getPapelesImpresionForMenu($datos, $gramaje, $tipoLinea, $uso );
|
||||
$menu = $model->getPapelesImpresionForMenu($datos, $gramaje, $tipoLinea, $uso);
|
||||
|
||||
$data = [
|
||||
'menu' => $menu,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
}
|
||||
|
||||
elseif ($tipo == 'maquina') {
|
||||
} elseif ($tipo == 'maquina') {
|
||||
$is_rotativa = $reqData['is_rotativa'] ?? null;
|
||||
$papel_impresion = $reqData['papel_impresion'] ?? null;
|
||||
$tipo_linea = $reqData['tipoLinea'] ?? null;
|
||||
@ -1156,13 +993,13 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
// uso: negro, negrohq, color, colorhq,
|
||||
$uso_tarifa = $reqData['uso_tarifa'] ?? 'interior';
|
||||
$model = new MaquinaModel();
|
||||
$maquinas = $model->getMaquinaImpresionForPresupuesto($is_rotativa, $uso, $uso_tarifa ,$datos, $papel_impresion );
|
||||
$maquinas = $model->getMaquinaImpresionForPresupuesto($is_rotativa, $uso, $uso_tarifa, $datos, $papel_impresion);
|
||||
$menu = [];
|
||||
foreach ($maquinas as $maquina){
|
||||
|
||||
foreach ($maquinas as $maquina) {
|
||||
|
||||
$formas = PresupuestoService::getNumFormasPlana($tipo_linea, $maquina, floatval($ancho), floatval($alto), true);
|
||||
|
||||
if($formas['num_formas'] != 'n/a'){
|
||||
|
||||
if ($formas['num_formas'] != 'n/a') {
|
||||
array_push($menu, $maquina);
|
||||
}
|
||||
}
|
||||
@ -1171,26 +1008,21 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
'menu' => $menu,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
}
|
||||
} else {
|
||||
|
||||
else{
|
||||
|
||||
$data = [
|
||||
'tipo' => $tipo,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
}
|
||||
}
|
||||
catch(Exception $e){
|
||||
} catch (Exception $e) {
|
||||
$data = [
|
||||
'error' => $e,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
}
|
||||
finally{
|
||||
} finally {
|
||||
return $this->respond($data);
|
||||
}
|
||||
|
||||
} else {
|
||||
return $this->failUnauthorized('Invalid request', 403);
|
||||
}
|
||||
@ -1398,5 +1230,4 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
|
||||
$model = model('App\Models\Configuracion\ConfiguracionSistemaModel');
|
||||
return $model->getPOD();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -140,5 +140,32 @@ class Presupuestodirecciones extends \App\Controllers\GoBaseResourceController
|
||||
}
|
||||
}
|
||||
|
||||
public function datatable_2(){
|
||||
|
||||
$reqData = $this->request->getJSON();
|
||||
|
||||
if($reqData->tipo=='get_tarifa'){
|
||||
$peso = $reqData->peso ?? 0;
|
||||
$paisId = $reqData->paisId ?? 0;
|
||||
$cp = $reqData->cp ?? 0;
|
||||
$tipo_envio = $reqData->tipo_envio ?? 'cajas';
|
||||
|
||||
$model = model('App\Models\Tarifas\TarifaEnvioModel');
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
$values = $model->getTarifaEnvio($paisId, $cp, $peso, $tipo_envio);
|
||||
$data = [
|
||||
'data' => count($values)>0?$values[0]:[],
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
|
||||
return $this->respond($data);
|
||||
}
|
||||
else if($reqData->tipo=='clear_lineas'){
|
||||
|
||||
$presupuesto_id = $reqData->presupuesto_id ?? 0;
|
||||
return $this->respond($this->model->where('presupuesto_id', $presupuesto_id)->delete());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,252 @@
|
||||
<?php
|
||||
|
||||
namespace App\Controllers\Presupuestos;
|
||||
|
||||
|
||||
use App\Controllers\GoBaseResourceController;
|
||||
|
||||
use App\Models\Collection;
|
||||
|
||||
use App\Services\PresupuestoService;
|
||||
|
||||
class Presupuestotiradasalternativas extends \App\Controllers\GoBaseResourceController
|
||||
{
|
||||
|
||||
protected $modelName = PresupuestoManipuladosModel::class;
|
||||
protected $format = 'json';
|
||||
|
||||
protected static $singularObjectName = 'Presupuestos tirada alternativa';
|
||||
protected static $singularObjectNameCc = 'PresupuestoTiradaAlternativa';
|
||||
protected static $pluralObjectName = 'Presupuesto tiradas alternativas';
|
||||
protected static $pluralObjectNameCc = 'PresupuestoTiradasAlternativas';
|
||||
|
||||
protected static $controllerSlug = 'presupuesto-tiradas';
|
||||
|
||||
protected static $viewPath = 'themes/backend/vuexy/form/presupuestos/';
|
||||
|
||||
|
||||
public function initController(\CodeIgniter\HTTP\RequestInterface $request, \CodeIgniter\HTTP\ResponseInterface $response, \Psr\Log\LoggerInterface $logger)
|
||||
{
|
||||
parent::initController($request, $response, $logger);
|
||||
}
|
||||
|
||||
|
||||
public function edit($requestedId = null)
|
||||
{
|
||||
}
|
||||
|
||||
public function update($requestedId = null)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
public function datatable()
|
||||
{
|
||||
if ($this->request->isAJAX()) {
|
||||
$reqData = $this->request->getPost();
|
||||
|
||||
$tarifa_manipulado_id = $reqData['tarifa_manipulado_id'] ?? 0;
|
||||
$tirada = $reqData['tirada'] ?? 0;
|
||||
$POD = $reqData['POD'] ?? 0;
|
||||
$tipo = $reqData['tipo'] ?? null;
|
||||
|
||||
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
|
||||
if (is_null($tipo)) {
|
||||
$values = $this->model->getPrecioTarifa($tarifa_manipulado_id, $tirada, $POD);
|
||||
} else {
|
||||
$solapas = $reqData['solapas'] ?? -1;
|
||||
$tipo_impresion_id = $reqData['tipo_impresion_id'] ?? 4;
|
||||
$values = $this->model->initPresupuesto($tipo_impresion_id, $solapas, $tirada, $POD);
|
||||
}
|
||||
|
||||
$data = [
|
||||
'values' => $values,
|
||||
$csrfTokenName => $newTokenHash
|
||||
];
|
||||
|
||||
return $this->respond($data);
|
||||
} else {
|
||||
return $this->failUnauthorized('Invalid request', 403);
|
||||
}
|
||||
}
|
||||
|
||||
// Esta funcion se usa para obtener los datos de la tabla de la vista de presupuestos
|
||||
public function datatable_2()
|
||||
{
|
||||
|
||||
$reqData = $this->request->getPost();
|
||||
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
|
||||
$json_data = $reqData['json_tiradas'] ?? null;
|
||||
$cliente_id = $reqData['cliente_id'] ?? 0;
|
||||
|
||||
$tipo_impresion_id = $reqData['tipo_impresion_id'] ?? 4;
|
||||
|
||||
$values = [];
|
||||
|
||||
if ($json_data) {
|
||||
|
||||
$data = json_decode($json_data, true);
|
||||
|
||||
foreach ($data as $linea) {
|
||||
// Se obtienen los valores de cada linea para el calculo del precio
|
||||
$datosPedido = (object)array(
|
||||
'paginas' => intval($linea['paginas']) ?? 0,
|
||||
'tirada' => intval($reqData['tirada']) ?? 0,
|
||||
'merma' => intval($reqData['merma']) ?? 0,
|
||||
'ancho' => intval($reqData['ancho']) ?? 100000,
|
||||
'alto' => intval($reqData['alto']) ?? 100000,
|
||||
'a_favor_fibra' => $linea['aFavorFibra'] ?? 1,
|
||||
'isCosido' => (new \App\Models\Configuracion\TipoPresupuestoModel())->get_isCosido($tipo_impresion_id), // JJO esto es custom por cada tipo de presupuesto
|
||||
);
|
||||
|
||||
if ($linea['row_id'] == 'lp_guardas') {
|
||||
$datosPedido->paginas_impresion = intval($linea['paginas_impresion']) ?? 0;
|
||||
// Para el caso de Fresado y Cosido tapa dura, las guardas son un diptico
|
||||
// y hay que imprimirlas como "cosido" (dos hojas pegadas). En el caso de espiral
|
||||
// o wire-o tapa dura, las guardas se imprimen como hojas sueltas
|
||||
if ($tipo_impresion_id == 1 || $tipo_impresion_id == 3) {
|
||||
$datosPedido->isCosido = true;
|
||||
} else if ($tipo_impresion_id == 5 || $tipo_impresion_id == 7) {
|
||||
$datosPedido->isCosido = false;
|
||||
}
|
||||
} else if ($linea['row_id'] == 'lp_sobrecubierta' || $linea['row_id'] == 'lp_cubierta') {
|
||||
$datosPedido->solapas =
|
||||
$linea['row_id'] == 'lp_cubierta' ? $reqData['solapas_cubierta'] : $reqData['solapas_sobrecubierta'];
|
||||
$datosPedido->solapas_ancho =
|
||||
$linea['row_id'] == 'lp_cubierta' ? $reqData['solapas_cubierta_ancho'] : $reqData['solapas_sobrecubierta_ancho'];
|
||||
$datosPedido->lomo = $reqData['lomo'];
|
||||
|
||||
$type = $linea['row_id'] == 'lp_cubierta' ? 'cubierta' : 'sobrecubierta';
|
||||
|
||||
$datosPedido->anchoExteriores = PresupuestoService::getAnchoTotalExteriores($type, $tipo_impresion_id, $datosPedido);
|
||||
$datosPedido->altoExteriores = PresupuestoService::getAltoTotalExteriores($type, $tipo_impresion_id, $datosPedido);
|
||||
}
|
||||
|
||||
|
||||
$maquina = (new \App\Models\Configuracion\MaquinaModel())->find($linea['maquina_id']);
|
||||
$papel = (new \App\Models\Configuracion\PapelImpresionModel())->find($linea['papel_impresion_id']);
|
||||
$pg = (new \App\Models\Configuracion\PapelGenericoModel())->find($linea['papel']);
|
||||
|
||||
$papel_generico['id'] = $pg->id;
|
||||
$papel_generico['nombre'] = $pg->nombre;
|
||||
|
||||
$maquina->maquina_id = $maquina->id;
|
||||
unset($maquina->id);
|
||||
|
||||
switch ($linea['row_id']) {
|
||||
case 'lp_rot_bn':
|
||||
case 'lp_rot_color':
|
||||
$uso = 'rotativa';
|
||||
$tipo = strpos($linea['row_id'], "_bn") !== false ? 'negro' : 'color';
|
||||
break;
|
||||
case 'lp_cubierta':
|
||||
$uso = 'cubierta';
|
||||
break;
|
||||
case 'lp_sobrecubierta':
|
||||
$uso = 'sobrecubierta';
|
||||
break;
|
||||
case 'lp_guardas':
|
||||
$uso = 'guardas';
|
||||
break;
|
||||
default:
|
||||
$uso = 'interior';
|
||||
$isHq = strpos($linea['row_id'], "hq") !== false ? true : false;
|
||||
$isColor = strpos($linea['row_id'], "_color") !== false ? true : false;
|
||||
$tipo = $isColor ? ($isHq ? 'colorhq' : 'color') : ($isHq ? 'negrohq' : 'negro');
|
||||
break;
|
||||
}
|
||||
|
||||
if ($uso == 'cubierta' || $uso == 'sobrecubierta' || $uso == 'guardas') {
|
||||
$isColor = true;
|
||||
$isHq = true;
|
||||
$tipo = 'colorhq';
|
||||
}
|
||||
|
||||
|
||||
|
||||
$opciones_papel = PresupuestoService::get_opciones_papel($uso, $isColor);
|
||||
|
||||
$datosTipolog = $linea['gotaNegro'] ?? null;
|
||||
if (!is_null($datosTipolog)) {
|
||||
$datosTipolog = [];
|
||||
$data = (object)array(
|
||||
'negro' => intval($linea['cobNegro']) ?? 0,
|
||||
'cyan' => intval($linea['cobCyan']) ?? 0,
|
||||
'magenta' => intval($linea['cobMagenta']) ?? 0,
|
||||
'amarillo' => intval($linea['cobAmarillo']) ?? 0,
|
||||
'cg' => intval($linea['cobCG']) ?? 0,
|
||||
'gota_negro' => intval($linea['gotaNegro']) ?? 0,
|
||||
'gota_color' => intval($linea['gotaColor']) ?? 0,
|
||||
);
|
||||
array_push($datosTipolog, $data);
|
||||
}
|
||||
|
||||
$data['uso'] = $uso;
|
||||
$data['tipo'] = $tipo;
|
||||
$data['datosPedido'] = $datosPedido;
|
||||
$data['cliente_id'] = $cliente_id;
|
||||
$data['papel'] = $papel;
|
||||
$data['opciones_papel'] = $opciones_papel;
|
||||
$data['maquina'] = $maquina;
|
||||
$data['papel_generico'] = $papel_generico;
|
||||
$data['isColor'] = $isColor;
|
||||
$data['a_favor_fibra'] = $linea['aFavorFibra'] ?? null;
|
||||
$data['datosTipolog'] = $datosTipolog;
|
||||
$data['gramaje'] = $linea['gramaje'] ?? 0;
|
||||
|
||||
if ($linea['row_id'] != 'lp_rot_bn' && $linea['row_id'] != 'lp_rot_color') {
|
||||
$linea_coste = PresupuestoService::getLineaPresupuestoPlana($data);
|
||||
} else {
|
||||
$linea_coste = [0];
|
||||
}
|
||||
|
||||
if (empty($linea))
|
||||
continue;
|
||||
|
||||
if ($linea['check_papel_total'] == 0) {
|
||||
$linea_coste['fields']['precio_pedido'] = 0;
|
||||
}
|
||||
if ($linea['check_impresion_total'] == 0) {
|
||||
$linea_coste['fields']['precio_impresion_horas'] = 0;
|
||||
$linea_coste['fields']['precio_click_pedido'] = 0;
|
||||
if ($linea_coste['fields']['tipo_maquina'] == 'inkjet') {
|
||||
$linea_coste['fields']['precio_tinta'] = 0;
|
||||
$linea_coste['fields']['totalCorte'] = 0;
|
||||
}
|
||||
}
|
||||
$linea_coste['total_coste'] = $linea_coste['fields']['precio_pedido'] +
|
||||
$linea_coste['fields']['precio_impresion_horas'] +
|
||||
$linea_coste['fields']['precio_click_pedido'];
|
||||
if ($linea_coste['fields']['tipo_maquina'] == 'inkjet') {
|
||||
$linea_coste['total_coste'] +=
|
||||
$linea_coste['fields']['precio_tinta'] +
|
||||
$linea_coste['fields']['totalCorte'];
|
||||
}
|
||||
|
||||
$linea_coste['total_margen'] = $linea_coste['fields']['margen_papel_pedido'] +
|
||||
$linea_coste['fields']['margen_impresion_horas'] +
|
||||
$linea_coste['fields']['margen_click_pedido'];
|
||||
|
||||
unset($linea_coste['fields']);
|
||||
array_push($values, $linea_coste);
|
||||
}
|
||||
} else {
|
||||
$values = [];
|
||||
}
|
||||
|
||||
$newTokenHash = csrf_hash();
|
||||
$csrfTokenName = csrf_token();
|
||||
|
||||
$response[$csrfTokenName] = $newTokenHash;
|
||||
$response['lineas'] = $values;
|
||||
|
||||
return $this->respond($response);
|
||||
|
||||
}
|
||||
}
|
||||
@ -12,37 +12,166 @@ class Test extends BaseController
|
||||
{
|
||||
function __construct()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public function index()
|
||||
{
|
||||
$json_text = '[{"paginas":"150","paginas_impresion":0,"papel":"3","papel_impresion_id":"45","gramaje":"90.00","maquina_id":"33","row_id":"lp_bnhq"},{"paginas":"150","paginas_impresion":0,"papel":"3","papel_impresion_id":"45","gramaje":"90.00","maquina_id":"97","row_id":"lp_colorhq"},{"paginas":"2","paginas_impresion":0,"papel":"5","papel_impresion_id":"49","gramaje":"270.00","maquina_id":"55","row_id":"lp_cubierta"},{"paginas":"4","paginas_impresion":0,"papel":"1","papel_impresion_id":"91","gramaje":"200.00","maquina_id":"55","row_id":"lp_sobrecubierta"}]';
|
||||
echo '<pre>';
|
||||
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
||||
$tarifas = [
|
||||
(object)['tarifa_id'=>1, "cubierta"=>0, "sobrecubierta"=>0]
|
||||
];
|
||||
var_dump($model->deleteServiciosNotInArray(44, $tarifas));
|
||||
var_dump($this->test_get_tirada_alt(
|
||||
tirada: 200,
|
||||
merma: 20,
|
||||
tipo_impresion_id: 4,
|
||||
json_data: $json_text,
|
||||
cliente_id: 685,
|
||||
ancho: 150,
|
||||
alto: 210,
|
||||
solapas_cubierta: 0,
|
||||
solapas_ancho_cubierta: 0,
|
||||
solapas_sobrecubierta: 0,
|
||||
solapas_ancho_sobrecubierta: 0,
|
||||
lomo: 16.53
|
||||
));
|
||||
echo '</pre>';
|
||||
/*
|
||||
|
||||
|
||||
$linea = PresupuestoService::getCostesLinea('interior', $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
|
||||
|
||||
echo '<pre>';
|
||||
|
||||
var_dump($formas);
|
||||
|
||||
echo '</pre>';
|
||||
echo '<pre>';
|
||||
$tarifa_value = $this->get_tarifa_enc(18,150,22,150,210);
|
||||
var_dump($tarifa_value[0]);
|
||||
$model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel');
|
||||
$result = $model->calcularTarifa($tarifa_value[0], 150, true);
|
||||
var_dump($result);
|
||||
echo '</pre>';*/
|
||||
}
|
||||
|
||||
|
||||
private function test_get_tirada_alt($tirada, $merma, $tipo_impresion_id,
|
||||
$json_data, $cliente_id, $ancho, $alto,
|
||||
$solapas_cubierta, $solapas_ancho_cubierta, $solapas_sobrecubierta, $solapas_ancho_sobrecubierta, $lomo)
|
||||
{
|
||||
$values = [];
|
||||
|
||||
if ($json_data) {
|
||||
|
||||
$data = json_decode($json_data, true);
|
||||
|
||||
foreach ($data as $linea) {
|
||||
echo '------------------------------------<br>';
|
||||
var_dump($linea);
|
||||
// Se obtienen los valores de cada linea para el calculo del precio
|
||||
$datosPedido = (object)array(
|
||||
'paginas' => intval($linea['paginas']) ?? 0,
|
||||
'tirada' => intval($tirada) ?? 0,
|
||||
'merma' => intval($merma) ?? 0,
|
||||
'ancho' => intval($ancho) ?? 100000,
|
||||
'alto' => intval($alto) ?? 100000,
|
||||
'a_favor_fibra' => $linea['aFavorFibra'] ?? 1,
|
||||
'isCosido' => (new \App\Models\Configuracion\TipoPresupuestoModel())->get_isCosido($tipo_impresion_id), // JJO esto es custom por cada tipo de presupuesto
|
||||
);
|
||||
|
||||
if ($linea['row_id'] == 'lp_guardas') {
|
||||
$datosPedido->paginas_impresion = intval($linea['paginas_impresion']) ?? 0;
|
||||
// Para el caso de Fresado y Cosido tapa dura, las guardas son un diptico
|
||||
// y hay que imprimirlas como "cosido" (dos hojas pegadas). En el caso de espiral
|
||||
// o wire-o tapa dura, las guardas se imprimen como hojas sueltas
|
||||
if ($tipo_impresion_id == 1 || $tipo_impresion_id == 3) {
|
||||
$datosPedido->isCosido = true;
|
||||
} else if ($tipo_impresion_id == 5 || $tipo_impresion_id == 7) {
|
||||
$datosPedido->isCosido = false;
|
||||
}
|
||||
} else if ($linea['row_id'] == 'lp_sobrecubierta' || $linea['row_id'] == 'lp_cubierta') {
|
||||
$datosPedido->solapas =
|
||||
$linea['row_id'] == 'lp_cubierta' ? $solapas_cubierta : $solapas_sobrecubierta;
|
||||
$datosPedido->solapas_ancho =
|
||||
$linea['row_id'] == 'lp_cubierta' ? $solapas_ancho_cubierta : $solapas_ancho_sobrecubierta;
|
||||
$datosPedido->lomo = $lomo;
|
||||
|
||||
$type = $linea['row_id'] == 'lp_cubierta' ? 'cubierta' : 'sobrecubierta';
|
||||
|
||||
$datosPedido->anchoExteriores = PresupuestoService::getAnchoTotalExteriores($type, $tipo_impresion_id, $datosPedido);
|
||||
$datosPedido->altoExteriores = PresupuestoService::getAltoTotalExteriores($type, $tipo_impresion_id, $datosPedido);
|
||||
}
|
||||
|
||||
$maquina = (new \App\Models\Configuracion\MaquinaModel())->find($linea['maquina_id']);
|
||||
$papel = (new \App\Models\Configuracion\PapelImpresionModel())->find($linea['papel_impresion_id']);
|
||||
$pg = (new \App\Models\Configuracion\PapelGenericoModel())->find($linea['papel']);
|
||||
$papel_generico['id'] = $pg->id;
|
||||
$papel_generico['nombre'] = $pg->nombre;
|
||||
|
||||
$maquina->maquina_id = $maquina->id;
|
||||
unset($maquina->id);
|
||||
|
||||
switch ($linea['row_id']) {
|
||||
case 'lp_rot_bn':
|
||||
case 'lp_rot_color':
|
||||
$uso = 'rotativa';
|
||||
$tipo = strpos($linea['row_id'], "_bn") !== false ? 'negro' : 'color';
|
||||
break;
|
||||
case 'lp_cubierta':
|
||||
$uso = 'cubierta';
|
||||
break;
|
||||
case 'lp_sobrecubierta':
|
||||
$uso = 'sobrecubierta';
|
||||
break;
|
||||
case 'lp_guardas':
|
||||
$uso = 'guardas';
|
||||
break;
|
||||
default:
|
||||
$uso = 'interior';
|
||||
$isHq = strpos($linea['row_id'], "hq") !== false ? true : false;
|
||||
$isColor = strpos($linea['row_id'], "_color") !== false ? true : false;
|
||||
$tipo = $isColor ? ($isHq ? 'colorhq' : 'color') : ($isHq ? 'negrohq' : 'negro');
|
||||
break;
|
||||
}
|
||||
|
||||
if ($uso == 'cubierta' || $uso == 'sobrecubierta' || $uso == 'guardas') {
|
||||
$isColor = true;
|
||||
$isHq = true;
|
||||
$tipo = 'colorhq';
|
||||
}
|
||||
|
||||
|
||||
|
||||
$opciones_papel = PresupuestoService::get_opciones_papel($uso, $isColor);
|
||||
|
||||
$datosTipolog = $linea['gotaNegro'] ?? null;
|
||||
if (!is_null($datosTipolog)) {
|
||||
$datosTipolog = [];
|
||||
$data = (object)array(
|
||||
'negro' => intval($linea['cobNegro']) ?? 0,
|
||||
'cyan' => intval($linea['cobCyan']) ?? 0,
|
||||
'magenta' => intval($linea['cobMagenta']) ?? 0,
|
||||
'amarillo' => intval($linea['cobAmarillo']) ?? 0,
|
||||
'cg' => intval($linea['cobCG']) ?? 0,
|
||||
'gota_negro' => intval($linea['gotaNegro']) ?? 0,
|
||||
'gota_color' => intval($linea['gotaColor']) ?? 0,
|
||||
);
|
||||
array_push($datosTipolog, $data);
|
||||
}
|
||||
|
||||
$data['uso'] = $uso;
|
||||
$data['tipo'] = $tipo;
|
||||
$data['datosPedido'] = $datosPedido;
|
||||
$data['cliente_id'] = $cliente_id;
|
||||
$data['papel'] = $papel;
|
||||
$data['opciones_papel'] = $opciones_papel;
|
||||
$data['maquina'] = $maquina;
|
||||
$data['papel_generico'] = (array)$papel_generico;
|
||||
$data['isColor'] = $isColor;
|
||||
$data['a_favor_fibra'] = $linea['aFavorFibra'] ?? null;
|
||||
$data['datosTipolog'] = $datosTipolog;
|
||||
$data['gramaje'] = $linea['gramaje'] ?? 0;
|
||||
|
||||
|
||||
if ($linea['row_id'] != 'lp_rot_bn' && $linea['row_id'] != 'lp_rot_color') {
|
||||
$linea_coste = PresupuestoService::getLineaPresupuestoPlana($data);
|
||||
var_dump($linea_coste);
|
||||
}
|
||||
|
||||
if (empty($linea))
|
||||
continue;
|
||||
|
||||
array_push($values, $linea_coste);
|
||||
}
|
||||
} else {
|
||||
$values = [];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
private function asignar_tarifa_defecto_todos_usuarios()
|
||||
{
|
||||
|
||||
@ -59,9 +188,9 @@ class Test extends BaseController
|
||||
|
||||
$clientes = $clienteModel->getResource()->get()->getResultObject();
|
||||
|
||||
foreach ($clientes as $cliente){
|
||||
foreach ($clientes as $cliente) {
|
||||
|
||||
foreach ($plantillaDefecto as $plantillaDefectoLinea){
|
||||
foreach ($plantillaDefecto as $plantillaDefectoLinea) {
|
||||
|
||||
$data = [
|
||||
'plantilla_id' => $plantillaDefectoId,
|
||||
@ -83,137 +212,149 @@ class Test extends BaseController
|
||||
echo '</pre>';*/
|
||||
|
||||
$builder->insert($data);
|
||||
|
||||
|
||||
}
|
||||
|
||||
//break;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function init_presupuesto_encuadernacion($tipo_presupuesto, $solapas, $paginas, $tirada, $ancho, $alto, $POD){
|
||||
public function init_presupuesto_encuadernacion($tipo_presupuesto, $solapas, $paginas, $tirada, $ancho, $alto, $POD)
|
||||
{
|
||||
$model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel');
|
||||
return $model->initPresupuesto($tipo_presupuesto, $solapas, $paginas, $tirada, $ancho, $alto, $POD);
|
||||
}
|
||||
|
||||
public function get_precio_tarifa($tarifa_encuadernacion_id, $paginas, $tirada, $ancho, $alto, $proveedor_id, $POD){
|
||||
public function get_precio_tarifa($tarifa_encuadernacion_id, $paginas, $tirada, $ancho, $alto, $proveedor_id, $POD)
|
||||
{
|
||||
$model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel');
|
||||
return $model->getPrecioTarifa($tarifa_encuadernacion_id, $paginas, $tirada, $ancho, $alto, $proveedor_id, $POD);
|
||||
}
|
||||
|
||||
public function get_precio_tarifa_acabado($tarifa_id, $tirada, $POD){
|
||||
public function get_precio_tarifa_acabado($tarifa_id, $tirada, $POD)
|
||||
{
|
||||
$model = model('App\Models\Presupuestos\PresupuestoAcabadosModel');
|
||||
return $model->getPrecioTarifa($tarifa_id, $tirada, $POD);
|
||||
}
|
||||
|
||||
public function get_precio_tarifa_horas($tarifa_encuadernacion_id, $paginas, $tirada, $proveedor_id, $POD){
|
||||
public function get_precio_tarifa_horas($tarifa_encuadernacion_id, $paginas, $tirada, $proveedor_id, $POD)
|
||||
{
|
||||
$model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel');
|
||||
return $model->getPrecioTarifaHoras($tarifa_encuadernacion_id, $paginas, $tirada, $proveedor_id, $POD);
|
||||
}
|
||||
|
||||
|
||||
public function get_tarifa_enc($tarifa_id, $paginas, $tirada, $ancho, $alto){
|
||||
|
||||
public function get_tarifa_enc($tarifa_id, $paginas, $tirada, $ancho, $alto)
|
||||
{
|
||||
$model = model('App\Models\Tarifas\TarifaEncuadernacionModel');
|
||||
return $model->getTarifaPresupuestoEncuadernacion($tarifa_id, $paginas, $tirada, $ancho, $alto);
|
||||
}
|
||||
|
||||
public function getProveedoresForSelector_enc($tarifa_id, $paginas, $tirada, $ancho, $alto){
|
||||
public function getProveedoresForSelector_enc($tarifa_id, $paginas, $tirada, $ancho, $alto)
|
||||
{
|
||||
$model = model('App\Models\Presupuestos\PresupuestoEncuadernacionesModel');
|
||||
return $model->getProveedoresForSelector($tarifa_id, $paginas, $tirada, $ancho, $alto);
|
||||
}
|
||||
|
||||
public function get_dimensiones_enc(){
|
||||
public function get_dimensiones_enc()
|
||||
{
|
||||
$dimensionModel = model('App\Models\Tarifas\TarifaEncuadernacionDimensionesModel');
|
||||
|
||||
$dimensiones = $dimensionModel->getDimensiones();
|
||||
var_dump($dimensiones);
|
||||
foreach($dimensiones as $dim){
|
||||
$dim->label= lang("TarifaEncuadernacionLineas." . $dim->label);
|
||||
foreach ($dimensiones as $dim) {
|
||||
$dim->label = lang("TarifaEncuadernacionLineas." . $dim->label);
|
||||
}
|
||||
var_dump($dimensiones);
|
||||
}
|
||||
|
||||
|
||||
public function get_tarifas_encuadernacion($tipo_presupuesto, $solapas){
|
||||
public function get_tarifas_encuadernacion($tipo_presupuesto, $solapas)
|
||||
{
|
||||
$model = model('App\Models\Presupuestos\TipoPresupuestoTarifaEncuadernacionModel');
|
||||
return $model->get_tarifas($tipo_presupuesto,$solapas);
|
||||
}
|
||||
return $model->get_tarifas($tipo_presupuesto, $solapas);
|
||||
}
|
||||
|
||||
public function timeToSeconds(){
|
||||
public function timeToSeconds()
|
||||
{
|
||||
$time = '99:59:59';
|
||||
|
||||
|
||||
$time_parts = explode(":", $time);
|
||||
$seconds = $time_parts[2] + $time_parts[1] * 60 + $time_parts[0] * 3600;
|
||||
echo "Time in seconds: " . $seconds;
|
||||
}
|
||||
|
||||
public function getLP(){
|
||||
public function getLP()
|
||||
{
|
||||
$lp_model = model('App\Models\Presupuestos\PresupuestoLineaModel');
|
||||
$data = $lp_model->getLineasPresupuesto(8);
|
||||
$papel_imp_model = model('App\Models\Configuracion\PapelImpresionModel');
|
||||
$maquina_model = model('App\Models\Configuracion\MaquinaModel');
|
||||
foreach($data as $linea){
|
||||
foreach ($data as $linea) {
|
||||
//$linea->papel_impresion_id = $papel_imp_model->getValue_Nombre($linea->papel_impresion_id)[0];
|
||||
//$linea->maquina_id = $maquina_model->getValue_Nombre($linea->maquina_id)[0];
|
||||
var_dump($linea->papel_impresion_id);
|
||||
var_dump($linea->maquina_id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function createLP(){
|
||||
public function createLP()
|
||||
{
|
||||
$lp_model = model('App\Models\Presupuestos\PresupuestoLineaModel');
|
||||
$lp_model->createForPresupuesto(8);
|
||||
}
|
||||
|
||||
public function getPapelesHQ(){
|
||||
public function getPapelesHQ()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('colorhq', false, false);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getPapelesCubierta(){
|
||||
public function getPapelesCubierta()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('colorhq', true, false);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getPapelesSobrecubierta(){
|
||||
public function getPapelesSobrecubierta()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('colorhq', false, true, false);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getPapelesGuardas(){
|
||||
public function getPapelesGuardas()
|
||||
{
|
||||
$model = model('App\Models\Configuracion\PapelGenericoModel');
|
||||
$data = $model->getPapelForComparador('color', false, false, false, true);
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function getGramaje(){
|
||||
public function getGramaje()
|
||||
{
|
||||
$model = new PapelGenericoModel();
|
||||
$data = $model->getGramajeComparador("AHUESADO OFFSET", "bnhq" );
|
||||
$data = $model->getGramajeComparador("AHUESADO OFFSET", "bnhq");
|
||||
|
||||
var_dump($data);
|
||||
}
|
||||
|
||||
public function testGetPrecioPliegoRotativa()
|
||||
{
|
||||
$paginas=240;
|
||||
|
||||
$paginas = 240;
|
||||
|
||||
$papel_impresion = (object)array(
|
||||
'id' => 198,
|
||||
'gramaje' => 90,
|
||||
'precio_tonelada'=> 1600
|
||||
'precio_tonelada' => 1600
|
||||
);
|
||||
|
||||
|
||||
|
||||
$maquina = (object)array(
|
||||
//'id' => 48,
|
||||
@ -222,9 +363,8 @@ class Test extends BaseController
|
||||
);
|
||||
|
||||
$precio = PresupuestoService::getPrecioPliego($maquina, $papel_impresion, $paginas);
|
||||
|
||||
|
||||
var_dump($precio);
|
||||
|
||||
}
|
||||
|
||||
public function testGetMaquinasFromTarifas()
|
||||
@ -340,9 +480,8 @@ class Test extends BaseController
|
||||
var_dump($papel->nombre);
|
||||
$tarifa = (new \App\Models\Configuracion\MaquinasTarifasImpresionModel())->getTarifa($maquina->maquina_id, $uso, $tipo);
|
||||
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
|
||||
|
||||
|
||||
var_dump($linea);
|
||||
|
||||
}
|
||||
}
|
||||
echo '</pre>';
|
||||
@ -391,18 +530,18 @@ class Test extends BaseController
|
||||
options: $opciones_papel
|
||||
);
|
||||
|
||||
|
||||
|
||||
foreach ($papeles as $papel) {
|
||||
|
||||
$papelImpresionTipologiaModel = new \App\Models\Configuracion\PapelImpresionTipologiaModel();
|
||||
$datosTipologias = $papelImpresionTipologiaModel
|
||||
->findTipologiasForPapelImpresion($papel->id, $parametrosRotativa->colorPages>0?'color':'negro')
|
||||
->findTipologiasForPapelImpresion($papel->id, $parametrosRotativa->colorPages > 0 ? 'color' : 'negro')
|
||||
->get()->getResultObject();
|
||||
echo '<pre>';
|
||||
var_dump($papel->id);
|
||||
var_dump($datosTipologias);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
$parametrosRotativa->rotativa_gota_negro = $datosTipologias[0]->gota_negro;
|
||||
$parametrosRotativa->rotativa_gota_color = $datosTipologias[0]->gota_color;
|
||||
$parametrosRotativa->rotativa_negro = $datosTipologias[0]->negro;
|
||||
@ -488,7 +627,7 @@ class Test extends BaseController
|
||||
echo '<pre>';
|
||||
var_dump($maquinas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
// Se recorren las máquinas y se calcula el coste de linea por cada una
|
||||
foreach ($maquinas as $maquina) {
|
||||
|
||||
@ -503,7 +642,7 @@ class Test extends BaseController
|
||||
var_dump($tarifa);
|
||||
echo '</pre>';
|
||||
|
||||
if(!is_float($tarifa)){
|
||||
if (!is_float($tarifa)) {
|
||||
continue;
|
||||
}
|
||||
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
|
||||
@ -519,12 +658,10 @@ class Test extends BaseController
|
||||
array_push($lineas, $linea);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
echo '<pre>';
|
||||
var_dump($lineas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
}
|
||||
|
||||
public static function testLineasSobrecubierta()
|
||||
@ -581,7 +718,7 @@ class Test extends BaseController
|
||||
echo '<pre>';
|
||||
var_dump($maquinas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
// Se recorren las máquinas y se calcula el coste de linea por cada una
|
||||
foreach ($maquinas as $maquina) {
|
||||
|
||||
@ -596,7 +733,7 @@ class Test extends BaseController
|
||||
var_dump($tarifa);
|
||||
echo '</pre>';
|
||||
|
||||
if(!is_float($tarifa)){
|
||||
if (!is_float($tarifa)) {
|
||||
continue;
|
||||
}
|
||||
$linea = PresupuestoService::getCostesLinea($uso, $datosPedido, $maquina, $papel, $opciones_papel, $tarifa);
|
||||
@ -612,12 +749,9 @@ class Test extends BaseController
|
||||
array_push($lineas, $linea);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
echo '<pre>';
|
||||
var_dump($lineas);
|
||||
echo '</pre>';
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user