mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
imposiciones
This commit is contained in:
@ -1,4 +1,6 @@
|
||||
<?php namespace App\Controllers\Configuracion;
|
||||
<?php
|
||||
|
||||
namespace App\Controllers\Configuracion;
|
||||
|
||||
|
||||
use App\Controllers\BaseResourceController;
|
||||
@ -56,7 +58,7 @@ class Imposiciones extends \App\Controllers\BaseResourceController
|
||||
{
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if ($this->request->getPost()) :
|
||||
|
||||
@ -130,7 +132,7 @@ class Imposiciones extends \App\Controllers\BaseResourceController
|
||||
return $this->redirect2listView('sweet-error', $message);
|
||||
endif;
|
||||
|
||||
|
||||
|
||||
|
||||
if ($this->request->getPost()) :
|
||||
|
||||
@ -279,6 +281,9 @@ class Imposiciones extends \App\Controllers\BaseResourceController
|
||||
];
|
||||
return $orientacionOptions;
|
||||
}
|
||||
|
||||
|
||||
public function selectImposicion()
|
||||
{
|
||||
$data = $this->model->querySelect($this->request->getGet('q'));
|
||||
return $this->response->setJSON($data);
|
||||
}
|
||||
}
|
||||
|
||||
@ -141,7 +141,7 @@ class Ordentrabajo extends BaseController
|
||||
$q = $this->otModel->getDatatableQuery()->where("ordenes_trabajo.estado", "F");
|
||||
// return $this->response->setJSON($q->get()->getResultArray());
|
||||
return DataTable::of($q)
|
||||
->add("logo", fn($q) => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)))
|
||||
->add("logo", fn($q) => ["logo" => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)), "imposicion" => $q->imposicion_name])
|
||||
->edit(
|
||||
"fecha_encuadernado_at",
|
||||
fn($q) => $q->fecha_encuadernado_at ? Time::createFromFormat("Y-m-d", $q->fecha_encuadernado_at)->format("d/m/Y") : ""
|
||||
@ -156,7 +156,7 @@ class Ordentrabajo extends BaseController
|
||||
$q = $this->otModel->getDatatableQuery()->whereIn("ordenes_trabajo.estado", ["I", "PM"]);
|
||||
// return $this->response->setJSON($q->get()->getResultArray());
|
||||
return DataTable::of($q)
|
||||
->add("logo", fn($q) => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)))
|
||||
->add("logo", fn($q) => ["logo" => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)), "imposicion" => $q->imposicion_name])
|
||||
->edit(
|
||||
"fecha_encuadernado_at",
|
||||
fn($q) => $q->fecha_encuadernado_at ? Time::createFromFormat("Y-m-d", $q->fecha_encuadernado_at)->format("d/m/Y") : ""
|
||||
@ -171,7 +171,7 @@ class Ordentrabajo extends BaseController
|
||||
$q = $this->otModel->getDatatableQuery()->where("ferro_ok_at", null);
|
||||
// return $this->response->setJSON($q->get()->getResultArray());
|
||||
return DataTable::of($q)
|
||||
->add("logo", fn($q) => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)))
|
||||
->add("logo", fn($q) => ["logo" => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)), "imposicion" => $q->imposicion_name])
|
||||
->edit(
|
||||
"fecha_encuadernado_at",
|
||||
fn($q) => $q->fecha_encuadernado_at ? Time::createFromFormat("Y-m-d", $q->fecha_encuadernado_at)->format("d/m/Y") : ""
|
||||
@ -186,7 +186,7 @@ class Ordentrabajo extends BaseController
|
||||
$q = $this->otModel->getDatatableQuery()->where("ferro_ok_at is NOT NULL", NULL, FALSE);
|
||||
// return $this->response->setJSON($q->get()->getResultArray());
|
||||
return DataTable::of($q)
|
||||
->add("logo", fn($q) => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)))
|
||||
->add("logo", fn($q) => ["logo" => site_url($logo->get_logo_path($q->presupuesto_linea_tipo)), "imposicion" => $q->imposicion_name])
|
||||
->edit(
|
||||
"fecha_encuadernado_at",
|
||||
fn($q) => $q->fecha_encuadernado_at ? Time::createFromFormat("Y-m-d", $q->fecha_encuadernado_at)->format("d/m/Y") : ""
|
||||
@ -232,6 +232,8 @@ class Ordentrabajo extends BaseController
|
||||
->edit("tiempo_estimado", fn($q) => float_seconds_to_hhmm_string($q->tiempo_estimado))
|
||||
->edit("tiempo_real", fn($q) => float_seconds_to_hhmm_string($q->tiempo_real))
|
||||
->edit("maquina_tarea", fn($q) => ["id" => $q->id, "maquina_id" => $q->maquina_tarea, "maquina_name" => $q->maquina_nombre])
|
||||
->add("imposicion", fn($q) => ["id" => $q->id, "imposicion_id" => $q->imposicion_id, "name" => $q->imposicion_name,"is_presupuesto_linea" => $q->presupuesto_linea_id ? true : false ])
|
||||
|
||||
->toJson(true);
|
||||
}
|
||||
public function get_pdf($orden_trabajo_id)
|
||||
@ -296,7 +298,6 @@ class Ordentrabajo extends BaseController
|
||||
}
|
||||
} catch (\Throwable $th) {
|
||||
return $this->response->setJSON(["message" => "Portada error", "error" => $th->getMessage()])->setStatusCode(500);
|
||||
|
||||
}
|
||||
}
|
||||
public function planning_rotativa_datatable()
|
||||
|
||||
@ -19,4 +19,13 @@ class Imposicion extends \CodeIgniter\Entity\Entity
|
||||
"alto" => "int",
|
||||
"unidades" => "?int",
|
||||
];
|
||||
|
||||
public function getFullName() : string
|
||||
{
|
||||
$ancho_x_alto = $this->attributes["ancho"] ."x". $this->attributes["alto"];
|
||||
$unidades = $this->attributes["unidades"] ?? "";
|
||||
$orientacion = $this->attributes["orientacion"] ?? "";
|
||||
return implode("_",[$ancho_x_alto,$unidades,$orientacion]);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,9 +2,11 @@
|
||||
namespace App\Entities\Configuracion;
|
||||
|
||||
use App\Models\Configuracion\MaquinasPapelesImpresionModel;
|
||||
use App\Models\Configuracion\PapelGenericoModel;
|
||||
use App\Models\Configuracion\PapelImpresionMargenModel;
|
||||
use App\Models\Configuracion\PapelImpresionTipologiaModel;
|
||||
use CodeIgniter\Entity;
|
||||
use CodeIgniter\Model;
|
||||
|
||||
class PapelImpresion extends \CodeIgniter\Entity\Entity
|
||||
{
|
||||
@ -68,4 +70,15 @@ class PapelImpresion extends \CodeIgniter\Entity\Entity
|
||||
$m = model(PapelImpresionMargenModel::class);
|
||||
return $m->asArray()->where('papel_impresion_id',$this->attributes["id"])->findAll();
|
||||
}
|
||||
public function papel_generico() : ?PapelGenerico
|
||||
{
|
||||
$m = model(PapelGenericoModel::class);
|
||||
return $m->find($this->attributes["papel_generico_id"]);
|
||||
}
|
||||
public function getPapelCodeOt() : ?string
|
||||
{
|
||||
$code_ot = $this->papel_generico()->code_ot;
|
||||
$gramaje = $this->attributes["gramaje"];
|
||||
return implode(" ",[$code_ot,$gramaje]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -134,4 +134,18 @@ class OrdenTrabajoEntity extends Entity
|
||||
{
|
||||
return $this->pedidoEsperaBy();
|
||||
}
|
||||
public function getPortadaPath(): ?string
|
||||
{
|
||||
helper('filesystem');
|
||||
$path = $this->attributes["portada_path"];
|
||||
$portada_path = null;
|
||||
if($path){
|
||||
if(file_exists($path)){
|
||||
$portada_path = $path;
|
||||
}else{
|
||||
$portada_path = null;
|
||||
}
|
||||
}
|
||||
return $portada_path;
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,10 +2,12 @@
|
||||
|
||||
namespace App\Entities\Produccion;
|
||||
|
||||
use App\Entities\Configuracion\Imposicion;
|
||||
use App\Entities\Configuracion\Maquina;
|
||||
use App\Entities\Presupuestos\PresupuestoAcabadosEntity;
|
||||
use App\Entities\Presupuestos\PresupuestoLineaEntity;
|
||||
use App\Entities\Presupuestos\PresupuestoManipuladosEntity;
|
||||
use App\Models\Configuracion\ImposicionModel;
|
||||
use App\Models\Configuracion\MaquinaModel;
|
||||
use App\Models\OrdenTrabajo\OrdenTrabajoModel;
|
||||
use App\Models\Presupuestos\PresupuestoAcabadosModel;
|
||||
@ -105,5 +107,10 @@ class OrdenTrabajoTareaEntity extends Entity
|
||||
$m = model(PresupuestoAcabadosModel::class);
|
||||
return $m->find($this->attributes["presupuesto_linea_id"]);
|
||||
}
|
||||
public function imposicion() : ?Imposicion
|
||||
{
|
||||
$m = model(ImposicionModel::class);
|
||||
return $m->find($this->attributes["imposicion_id"]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -33,6 +33,14 @@ class TarifaEncuadernacionEntity extends \CodeIgniter\Entity\Entity
|
||||
"user_updated_id" => "int",
|
||||
"is_deleted" => "int",
|
||||
];
|
||||
|
||||
public function getNameInitials(): string
|
||||
{
|
||||
$words = explode(" ",$this->attributes["nombre"]);
|
||||
$words_initial = array_map(fn($w) => substr(strtoupper($w),0,1),$words);
|
||||
return implode("",$words_initial);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -39,7 +39,8 @@ return [
|
||||
"maquina_presupuesto" => "Máquina presupuesto",
|
||||
"maquina_actual" => "Máquina actual",
|
||||
"tiempo_estimado" => "Tiempo estimado",
|
||||
"tiempo" => "Tiempo"
|
||||
"tiempo" => "Tiempo",
|
||||
"imposicion" => "Imposición"
|
||||
],
|
||||
"finalizadas" => "Finalizadas",
|
||||
"pendiente_ferro" => "Ferro pendiente",
|
||||
@ -79,6 +80,13 @@ return [
|
||||
"solapa" => "Solapa",
|
||||
"papel_gramajes" => "Papel y gramajes",
|
||||
"estado" => "Estado",
|
||||
"pedido_espera" => "Pedido en espera"
|
||||
"pedido_espera" => "Pedido en espera",
|
||||
"imposicion_no_label" => "Sin etiqueta",
|
||||
"pliegos_de" => "pliegos de",
|
||||
"size" => "Tamaño",
|
||||
"ejemplares" => "Ejemplares",
|
||||
"tipo" => "Tipo",
|
||||
"lomo" => "Lomo"
|
||||
|
||||
|
||||
];
|
||||
@ -1,4 +1,5 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models\Configuracion;
|
||||
|
||||
class ImposicionModel extends \App\Models\BaseModel
|
||||
@ -95,21 +96,37 @@ class ImposicionModel extends \App\Models\BaseModel
|
||||
return empty($search)
|
||||
? $builder
|
||||
: $builder
|
||||
->groupStart()
|
||||
->like("t1.id", $search)
|
||||
->orlike("t1.ancho", $search)
|
||||
->orLike("t1.alto", $search)
|
||||
->orLike("t1.unidades", $search)
|
||||
->orLike("t1.orientacion", $search)
|
||||
->orLike("t1.maquina", $search)
|
||||
->orLike("t1.etiqueta", $search)
|
||||
->orlike("t1.id", $search)
|
||||
->orLike("t1.ancho", $search)
|
||||
->orLike("t1.alto", $search)
|
||||
->orLike("t1.unidades", $search)
|
||||
->orLike("t1.orientacion", $search)
|
||||
->orLike("t1.maquina", $search)
|
||||
->orLike("t1.etiqueta", $search)
|
||||
->groupEnd();
|
||||
->groupStart()
|
||||
->like("t1.id", $search)
|
||||
->orlike("t1.ancho", $search)
|
||||
->orLike("t1.alto", $search)
|
||||
->orLike("t1.unidades", $search)
|
||||
->orLike("t1.orientacion", $search)
|
||||
->orLike("t1.maquina", $search)
|
||||
->orLike("t1.etiqueta", $search)
|
||||
->orlike("t1.id", $search)
|
||||
->orLike("t1.ancho", $search)
|
||||
->orLike("t1.alto", $search)
|
||||
->orLike("t1.unidades", $search)
|
||||
->orLike("t1.orientacion", $search)
|
||||
->orLike("t1.maquina", $search)
|
||||
->orLike("t1.etiqueta", $search)
|
||||
->groupEnd();
|
||||
}
|
||||
|
||||
public function querySelect(?string $q)
|
||||
{
|
||||
$query = $this->builder()->select([
|
||||
"id",
|
||||
"CONCAT(lg_imposiciones.ancho,'x',lg_imposiciones.alto,'_',COALESCE(lg_imposiciones.unidades,'NULL'),'_',COALESCE(lg_imposiciones.orientacion,'NULL')) as name",
|
||||
"COALESCE(lg_imposiciones.etiqueta,'" . lang("Produccion.imposicion_no_label") . "') as description"
|
||||
]);
|
||||
if ($q) {
|
||||
$query->orLike("CONCAT(lg_imposiciones.ancho,'x',lg_imposiciones.alto)", $q);
|
||||
$query->orLike("lg_imposiciones.etiqueta", $q);
|
||||
}
|
||||
return $query
|
||||
->orderBy('id', 'ASC')
|
||||
->get()->getResultArray();
|
||||
}
|
||||
}
|
||||
|
||||
@ -82,7 +82,9 @@ class OrdenTrabajoModel extends Model
|
||||
"tipos_presupuestos.codigo as tipo_presupuesto_impresion",
|
||||
"ordenes_trabajo.progreso",
|
||||
"presupuesto_linea.tipo as presupuesto_linea_tipo",
|
||||
"orden_trabajo_dates.ferro_ok_at"
|
||||
"orden_trabajo_dates.ferro_ok_at",
|
||||
"CONCAT(lg_imposiciones.ancho,'x',lg_imposiciones.alto,'_',COALESCE(lg_imposiciones.unidades,'NULL'),'_',COALESCE(lg_imposiciones.orientacion,'NULL')) as imposicion_name"
|
||||
|
||||
])
|
||||
->join("orden_trabajo_dates","orden_trabajo_dates.orden_trabajo_id = ordenes_trabajo.id","left")
|
||||
->join("pedidos","pedidos.id = ordenes_trabajo.pedido_id","left")
|
||||
@ -92,6 +94,9 @@ class OrdenTrabajoModel extends Model
|
||||
->join("clientes","clientes.id = presupuestos.cliente_id","left")
|
||||
->join("tipos_presupuestos","presupuestos.tipo_impresion_id = tipos_presupuestos.id","left")
|
||||
->join("ubicaciones","ubicaciones.id = pedidos_linea.ubicacion_id","left")
|
||||
->join("orden_trabajo_tareas","orden_trabajo_tareas.orden_trabajo_id = ordenes_trabajo.id","left")
|
||||
->join("lg_imposiciones","lg_imposiciones.id = orden_trabajo_tareas.imposicion_id","left")
|
||||
|
||||
->whereIn("presupuesto_linea.tipo",["lp_bn","lp_bnhq","lp_rot_bn","lp_color","lp_colorhq","lp_rot_color"])
|
||||
->where("ordenes_trabajo.deleted_at",null)
|
||||
->groupBy("ordenes_trabajo.id");
|
||||
|
||||
@ -3,6 +3,7 @@
|
||||
namespace App\Services;
|
||||
|
||||
use App\Entities\Clientes\ClienteEntity;
|
||||
use App\Entities\Configuracion\Imposicion;
|
||||
use App\Entities\Pedidos\PedidoEntity;
|
||||
use App\Entities\Presupuestos\PresupuestoEntity;
|
||||
use App\Entities\Presupuestos\PresupuestoLineaEntity;
|
||||
@ -414,9 +415,12 @@ class ProductionService extends BaseService
|
||||
"orden_trabajo_tareas.maquina_id as maquina_tarea",
|
||||
"lg_maquinas.nombre as maquina_nombre",
|
||||
"lg_imposiciones.id as imposicion_id",
|
||||
"CONCAT(lg_imposiciones.ancho,'x',lg_imposiciones.alto,'_',COALESCE(lg_imposiciones.unidades,'NULL'),'_',COALESCE(lg_imposiciones.orientacion,'NULL'),'_',COALESCE(lg_imposiciones.etiqueta,'')) as imposicion_name",
|
||||
"orden_trabajo_tareas.tiempo_estimado",
|
||||
"orden_trabajo_tareas.tiempo_real",
|
||||
"orden_trabajo_tareas.comment",
|
||||
"orden_trabajo_tareas.presupuesto_linea_id",
|
||||
"presupuesto_linea.tipo",
|
||||
|
||||
])
|
||||
->join("orden_trabajo_tareas", "orden_trabajo_tareas.orden_trabajo_id = ordenes_trabajo.id", "left")
|
||||
@ -657,39 +661,53 @@ class ProductionService extends BaseService
|
||||
"linea_impresion" => $this->presupuesto->presupuestoLineaImpresion(),
|
||||
"linea_cubierta" => $this->presupuesto->presupuestoLineaCubierta(),
|
||||
"peso_unidad" => $logistica_data["peso_unidad"],
|
||||
"peso_pedido" => $logistica_data["peso_pedido"]
|
||||
"peso_pedido" => $logistica_data["peso_pedido"],
|
||||
"imposicion" => $this->getImposicionTareaImpresion()
|
||||
];
|
||||
}
|
||||
public function getTareaImpresionSobreCubierta(): array
|
||||
public function getImposicionTareaImpresion(): ?Imposicion
|
||||
{
|
||||
$imposicion = null;
|
||||
$impresionInteriorBnImposicion = $this->getTareaImpresionInteriorBn()?->imposicion();
|
||||
$impresionInteriorColorImposicion = $this->getTareaImpresionInteriorColor()?->imposicion();
|
||||
if($impresionInteriorBnImposicion){
|
||||
$imposicion = $impresionInteriorBnImposicion;
|
||||
}
|
||||
if($impresionInteriorColorImposicion){
|
||||
$imposicion = $impresionInteriorColorImposicion;
|
||||
}
|
||||
return $imposicion;
|
||||
}
|
||||
public function getTareaImpresionSobreCubierta(): ?OrdenTrabajoTareaEntity
|
||||
{
|
||||
$q = $this->otTarea->select('orden_trabajo_tareas.*')
|
||||
->join("presupuesto_linea", "presupuesto_linea.id = orden_trabajo_tareas.presupuesto_linea_id", "left")
|
||||
->where("orden_trabajo_tareas.orden_trabajo_id", $this->ot->id)
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_sobrecubierta"])->findAll();
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_sobrecubierta"])->first();
|
||||
return $q;
|
||||
}
|
||||
public function getTareaImpresionCubierta(): array
|
||||
public function getTareaImpresionCubierta(): ?OrdenTrabajoTareaEntity
|
||||
{
|
||||
$q = $this->otTarea->select('orden_trabajo_tareas.*')
|
||||
->join("presupuesto_linea", "presupuesto_linea.id = orden_trabajo_tareas.presupuesto_linea_id", "left")
|
||||
->where("orden_trabajo_tareas.orden_trabajo_id", $this->ot->id)
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_cubierta"])->findAll();
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_cubierta"])->first();
|
||||
return $q;
|
||||
}
|
||||
public function getTareaImpresionInteriorBn(): array
|
||||
public function getTareaImpresionInteriorBn(): ?OrdenTrabajoTareaEntity
|
||||
{
|
||||
$q = $this->otTarea->select('orden_trabajo_tareas.*')
|
||||
->join("presupuesto_linea", "presupuesto_linea.id = orden_trabajo_tareas.presupuesto_linea_id", "left")
|
||||
->where("orden_trabajo_tareas.orden_trabajo_id", $this->ot->id)
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_rot_bn", "lp_bn", "lp_bnhq"])->findAll();
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_rot_bn", "lp_bn", "lp_bnhq"])->first();
|
||||
return $q;
|
||||
}
|
||||
public function getTareaImpresionInteriorColor(): array
|
||||
public function getTareaImpresionInteriorColor(): ?OrdenTrabajoTareaEntity
|
||||
{
|
||||
$q = $this->otTarea->select('orden_trabajo_tareas.*')
|
||||
->join("presupuesto_linea", "presupuesto_linea.id = orden_trabajo_tareas.presupuesto_linea_id", "left")
|
||||
->where("orden_trabajo_tareas.orden_trabajo_id", $this->ot->id)
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_rot_color", "lp_color", "lp_colorhq"])->findAll();
|
||||
->whereIn("presupuesto_linea.tipo", ["lp_rot_color", "lp_color", "lp_colorhq"])->first();
|
||||
return $q;
|
||||
}
|
||||
public function getPresupuestoLineaImpresion() {}
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
<th><?= lang('Produccion.task.task') ?></th>
|
||||
<th><?= lang('Produccion.task.maquina_presupuesto') ?></th>
|
||||
<th><?= lang('Produccion.task.maquina_actual') ?></th>
|
||||
<!-- <th><?= lang('Produccion.task.imposicion_id') ?></th> -->
|
||||
<th><?= lang('Produccion.task.imposicion') ?></th>
|
||||
<th><?= lang('Produccion.task.tiempo_estimado') ?></th>
|
||||
<th><?= lang('Produccion.task.tiempo') ?></th>
|
||||
<th></th>
|
||||
|
||||
@ -52,6 +52,8 @@
|
||||
|
||||
<?= $this->section('css') ?>
|
||||
<link rel="stylesheet" href="<?= site_url('themes/vuexy/vendor/libs/formvalidation/dist/css/formValidation.min.css') ?>" />
|
||||
<link rel="stylesheet" href="<?= site_url('themes/vuexy/css/ot.css') ?>" />
|
||||
|
||||
<?= $this->endSection() ?>
|
||||
|
||||
<?= $this->section("additionalExternalJs") ?>
|
||||
|
||||
@ -44,13 +44,13 @@ $settings = $session->get('settings');
|
||||
</div>
|
||||
<div class="row mb-2 d-flex flex align-items-stretch">
|
||||
<div class="col-2">
|
||||
<img class="portada-img border-secondary img-thumbnail img-fluid" src="<?= $ot->portada_path ? "data:image/png;base64,".base64_encode(file_get_contents(WRITEPATH . "uploads/" . $ot->portada_path)): '/assets/img/portada_not_found.png' ?>" />
|
||||
<img class="portada-img border-secondary img-thumbnail img-fluid" src="<?= $ot->portada_path ? "data:image/png;base64," . base64_encode(file_get_contents(WRITEPATH . "uploads/" . $ot->portada_path)) : '/assets/img/portada_not_found.png' ?>" />
|
||||
</div>
|
||||
<div class="col-10 <?= $ot->fecha_entrega_warning ? "bg-danger" : "bg-secondary" ?> py-2 rounded border-1 border-secondary">
|
||||
<div class="row">
|
||||
<div class="col-8">
|
||||
<div class="px-2 d-flex flex justify-content-between align-items-center mb-2 border boder-1 border-dark bg-primary text-white rounded-pill bordered border-secondary">
|
||||
<span><strong><?= $dates->fecha_encuadernado_at ? week_day_humanize(Time::createFromFormat("Y-m-d", $dates->fecha_encuadernado_at)->getDayOfWeek(), true) : "" ?></strong></span>
|
||||
<span><strong><?= $dates?->fecha_encuadernado_at ? week_day_humanize(Time::createFromFormat("Y-m-d", $dates?->fecha_encuadernado_at)->getDayOfWeek(), true) : "" ?></strong></span>
|
||||
<span><strong>Comercial:</strong> <?= $cliente->first_name . " " . $cliente->comercial()->last_name ?> </span>
|
||||
</div>
|
||||
</div>
|
||||
@ -64,52 +64,52 @@ $settings = $session->get('settings');
|
||||
<div class="row p-2">
|
||||
<div class="col-4 h-100">
|
||||
<div class="row px-2 d-flex flex justify-content-between align-items-center">
|
||||
<div class="col-6 w-75 border border-1 border-dark text-center <?= $ot->fecha_entrega_warning ? "bg-danger" : "bg-secondary" ?> ">
|
||||
<span class="text-white" id="fecha_encuadernado_at"><strong><?= $dates->fecha_encuadernado_at ? Time::createFromFormat("Y-m-d", $dates->fecha_encuadernado_at)?->format("d/m/Y") : "" ?></strong></span>
|
||||
</div>
|
||||
<div class="col-6 w-25 border border-1 border-dark text-center bg-secondary text-white">
|
||||
<strong>RF</strong>
|
||||
</div>
|
||||
<div class="col-6 w-75 border border-1 border-dark text-center <?= $ot->fecha_entrega_warning ? "bg-danger" : "bg-secondary" ?> ">
|
||||
<span class="text-white" id="fecha_encuadernado_at"><strong><?= $dates?->fecha_encuadernado_at ? Time::createFromFormat("Y-m-d", $dates?->fecha_encuadernado_at)?->format("d/m/Y") : "" ?></strong></span>
|
||||
</div>
|
||||
<div class="col-6 w-25 border border-1 border-dark text-center bg-secondary text-white">
|
||||
<strong><?=isset($encuadernaciones[0]) ? $encuadernaciones[0]->tarifa()->code ?? "?" : "?" ?></strong>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row px-2 mt-2 h-100">
|
||||
<table class="h-100">
|
||||
<tr class="t-row">
|
||||
<th class="t-header">IN</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">PO</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">PL</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">EN</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">MA</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
</table>
|
||||
<table class="h-100">
|
||||
<tr class="t-row">
|
||||
<th class="t-header">IN</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">PO</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">PL</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">EN</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
<tr class="t-row">
|
||||
<th class="t-header">MA</th>
|
||||
<td class="t-cell bg-white"><?= $ubicacion ?></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="col-4">
|
||||
<div class="row h-100">
|
||||
<div class="col-6 h-50 square text-center text-dark bg-secondary border border-right border-dark">
|
||||
BCLF 100
|
||||
<div class="col-6 h-50 square text-center text-dark bg-white border border-right border-dark">
|
||||
<?= $linea_impresion->papel_impresion()->papel_code_ot ?>
|
||||
</div>
|
||||
<div class="col-6 h-50 square text-center text-dark bg-secondary border border-right border-dark">
|
||||
0:3
|
||||
</div>
|
||||
<div class="col-6 h-50 square bg-primary text-center text-white border border-right border-dark">
|
||||
EM 300
|
||||
<?= $linea_cubierta->papel_impresion()->papel_code_ot ?>
|
||||
</div>
|
||||
<div class="col-6 h-50 square bg-blue text-center text-dark bg-secondary border border-right border-dark">
|
||||
BRILLO
|
||||
<?= isset($acabados[0]) ? $acabados[0]->tarifa()->code : "" ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -130,26 +130,26 @@ $settings = $session->get('settings');
|
||||
</div>
|
||||
<div class="row mb-2">
|
||||
<div class="col-8">
|
||||
<table class="h-100">
|
||||
<table class="h-50">
|
||||
<tr>
|
||||
<th>Cliente</th>
|
||||
<td class="t-cell ">
|
||||
<th >Cliente</th>
|
||||
<td class="t-cell">
|
||||
<?= $cliente->nombre ?>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Titulo</th>
|
||||
<td class="t-cell ">
|
||||
<th >Titulo</th>
|
||||
<td class="t-cell">
|
||||
<?= $presupuesto->titulo ?>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
<tr>
|
||||
<th>ISBN</th>
|
||||
<th >ISBN</th>
|
||||
<td class="t-cell"><?= $presupuesto->isbn ?></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>CIF</th>
|
||||
<th >CIF</th>
|
||||
<td class="t-cell"><?= $cliente->cif ?></td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -187,7 +187,7 @@ $settings = $session->get('settings');
|
||||
<table>
|
||||
<tr>
|
||||
<th>Imposicion</th>
|
||||
<td>??</td>
|
||||
<td><?= $imposicion->full_name ?></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
@ -198,6 +198,18 @@ $settings = $session->get('settings');
|
||||
<div class="section-title impresion">IMP. INTERIOR</div>
|
||||
<div class="col-12">
|
||||
<div>
|
||||
<table>
|
||||
<tr>
|
||||
<th class="t-header" style="width: 10%;"><?=lang('Produccion.size')?></th>
|
||||
<td class="t-cell"> ?? </td>
|
||||
<th class="t-header" style="width: 10%;"><?=lang('Produccion.ejemplares')?></th>
|
||||
<td class="t-cell"> <?=$presupuesto->tirada ?> </td>
|
||||
<th class="t-header" style="width: 10%;"><?=lang('Produccion.tipo')?></th>
|
||||
<td class="t-cell"> <?=$presupuesto->tipo ?> </td>
|
||||
<th class="t-header" style="width: 10%;"><?=lang('Produccion.lomo')?></th>
|
||||
<td class="t-cell"> <?=$presupuesto->lomo_cubierta ?> </td>
|
||||
</tr>
|
||||
</table>
|
||||
<table>
|
||||
<tr>
|
||||
<td rowspan="3" class="row-logo-impresion"><img src="<?= site_url($linea_impresion->get_impresion_logo()) ?>" width="35px" height="35px"></td>
|
||||
@ -288,7 +300,7 @@ $settings = $session->get('settings');
|
||||
<th class="t-header" style="width: 10%;">Máquina</th>
|
||||
<td class="t-cell"><?= implode("/", array_map(fn($q) => $q->nombre, $acabados[0]->maquinas())) ?> </td>
|
||||
<th class="t-header" style="width: 10%;">Operario</th>
|
||||
<td class="t-cell"><?= $ot->users()->plastificado_by?->getFullName() ?? null ?> </td>
|
||||
<td class="t-cell"><?= $ot->users()?->plastificado_by?->getFullName() ?? null ?> </td>
|
||||
</tr>
|
||||
</table>
|
||||
<table>
|
||||
@ -307,7 +319,7 @@ $settings = $session->get('settings');
|
||||
<td><?= $value->tarifa()->nombre ?></td>
|
||||
<td><?= $presupuesto->solapas ? "SI" : "NO" ?></td>
|
||||
<td><?= $presupuesto->hasSobrecubierta() ? "SI" : "NO" ?></td>
|
||||
<td> <?= $linea_impresion->pliegos_libro?>/<?=$linea_impresion->pliegos_pedido?> </td>
|
||||
<td>_____<?=" ".lang("Produccion.pliegos_de")." "?>_____</td>
|
||||
<td><?= $presupuesto->guardas ? "SI" : "NO" ?></td>
|
||||
<td><?= $presupuesto->retractilado ? "SI" : "NO" ?></td>
|
||||
<td><?= $presupuesto->marcapaginas ? "SI" : "NO" ?></td>
|
||||
|
||||
Reference in New Issue
Block a user