diff --git a/ci4/app/Config/OrdenTrabajo.php b/ci4/app/Config/OrdenTrabajo.php index bde32b99..b3638dba 100644 --- a/ci4/app/Config/OrdenTrabajo.php +++ b/ci4/app/Config/OrdenTrabajo.php @@ -18,6 +18,10 @@ class OrdenTrabajo extends BaseConfig "corte_at" => "corte_user_id", "preparacion_interiores_at" => "preparacion_interior_user_id", "entrada_manipulado_at" => "entrada_manipulado_user_id", + "cosido_at" => "cosido_user_id", + "grapado_at" => "grapado_user_id", + "solapa_at" => "solapa_user_id", + //FERRO "pendiente_ferro_at" => "pendiente_ferro_user_id", "ferro_en_cliente_at" => "ferro_en_cliente_user_id", @@ -45,8 +49,8 @@ class OrdenTrabajo extends BaseConfig "impreso_int" => "#AFDDFF", "impreso_cub" => "#3A59D1", "plastificado" => "#FFD63A", - "solapas" => "#4F1C51", "preparado" => "#FF0B55", + "solapa" => "#4F1C51", "cosido" => "#FF0B55", "grapado" => "#FEBA17", "encuadernado" => "#FEBA17", diff --git a/ci4/app/Database/Migrations/2025-04-14-204500_UpdateDateFieldsOrdenTrabajoDates.php b/ci4/app/Database/Migrations/2025-04-14-204500_UpdateDateFieldsOrdenTrabajoDates.php new file mode 100644 index 00000000..a69258c7 --- /dev/null +++ b/ci4/app/Database/Migrations/2025-04-14-204500_UpdateDateFieldsOrdenTrabajoDates.php @@ -0,0 +1,61 @@ + [ + "type" => "DATE", + "null" => true, + ], + "solapa_at" => [ + "type" => "DATE", + "null" => true, + ], + "grapado_at" => [ + "type" => "DATE", + "null" => true, + ], + ]; + protected array $USERS = [ + "cosido_user_id" => [ + "type" => "INT", + "unsigned" => true, + "constraint" => 10, + "null" => true, + ], + "solapa_user_id" => [ + "type" => "INT", + "unsigned" => true, + "constraint" => 10, + "null" => true, + ], + "grapado_user_id" => [ + "type" => "INT", + "unsigned" => true, + "constraint" => 10, + "null" => true, + ], + ]; + + public function up() + { + $this->forge->addColumn("orden_trabajo_dates", $this->DATES); + $this->forge->addColumn("orden_trabajo_users", $this->USERS); + foreach ($this->USERS as $key => $value) { + $this->forge->addForeignKey([$key],"users",["id"]); + } + } + + public function down() + { + $this->forge->dropColumn("orden_trabajo_dates", array_keys($this->DATES)); + $this->forge->dropColumn("orden_trabajo_users", array_keys($this->USERS)); + + + } +} diff --git a/ci4/app/Entities/Produccion/OrdenTrabajoDateEntity.php b/ci4/app/Entities/Produccion/OrdenTrabajoDateEntity.php index 0142b0bf..43410440 100644 --- a/ci4/app/Entities/Produccion/OrdenTrabajoDateEntity.php +++ b/ci4/app/Entities/Produccion/OrdenTrabajoDateEntity.php @@ -21,6 +21,9 @@ class OrdenTrabajoDateEntity extends Entity "corte_at" => null, "preparacion_interiores_at" => null, "entrada_manipulado_at" => null, + "cosido_at" => null, + "solapa_at" => null, + "cosido_at" => null, //FERRO "pendiente_ferro_at" => null, "ferro_en_cliente_at" => null, @@ -77,4 +80,16 @@ class OrdenTrabajoDateEntity extends Entity { return $this->attributes['corte_at'] != null; } + public function cosidoStatus():bool + { + return $this->attributes['cosido_at'] != null; + } + public function grapadoStatus():bool + { + return $this->attributes['grapado_at'] != null; + } + public function solapaStatus():bool + { + return $this->attributes['solapa_at'] != null; + } } diff --git a/ci4/app/Entities/Produccion/OrdenTrabajoUserEntity.php b/ci4/app/Entities/Produccion/OrdenTrabajoUserEntity.php index 4f516ecd..26e78560 100644 --- a/ci4/app/Entities/Produccion/OrdenTrabajoUserEntity.php +++ b/ci4/app/Entities/Produccion/OrdenTrabajoUserEntity.php @@ -25,6 +25,9 @@ class OrdenTrabajoUserEntity extends Entity "corte_user_id" => null, "preparacion_interior_user_id" => null, "entrada_manipulado_user_id" => null, + "cosido_user_id"=> null, + "solapa_user_id"=> null, + "grapado_user_id"=> null, //FERRO "pendiente_ferro_user_id" => null, "ferro_en_cliente_user_id" => null, diff --git a/ci4/app/Language/es/Produccion.php b/ci4/app/Language/es/Produccion.php index c8cb238b..4e27fb34 100644 --- a/ci4/app/Language/es/Produccion.php +++ b/ci4/app/Language/es/Produccion.php @@ -87,6 +87,10 @@ return [ "ejemplares" => "Ejemplares", "tipo" => "Tipo", "lomo" => "Lomo", + + "cosido" => "Cosido", + "grapado" => "Grapado", + "solapa" => "Solapas", //IMPRESION "impresion_bn" => "Impresión BN", "cubierta" => "Cubierta/Portada", @@ -96,6 +100,7 @@ return [ "pre_solapa" => "Revisión solapa", "pre_codbarras" => "Revisión código barras", "pre_imposicion" => "Revisión imposición", + "errors" => [ diff --git a/ci4/app/Models/OrdenTrabajo/OrdenTrabajoDate.php b/ci4/app/Models/OrdenTrabajo/OrdenTrabajoDate.php index 83f62c54..0c883788 100644 --- a/ci4/app/Models/OrdenTrabajo/OrdenTrabajoDate.php +++ b/ci4/app/Models/OrdenTrabajo/OrdenTrabajoDate.php @@ -28,6 +28,9 @@ class OrdenTrabajoDate extends Model "corte_at", "preparacion_interiores_at", "entrada_manipulado_at", + "cosido_at", + "solapa_at", + "cosido_at", //FERRO "pendiente_ferro_at", "ferro_en_cliente_at", diff --git a/ci4/app/Models/OrdenTrabajo/OrdenTrabajoUser.php b/ci4/app/Models/OrdenTrabajo/OrdenTrabajoUser.php index 3bc18711..12c6b0e9 100644 --- a/ci4/app/Models/OrdenTrabajo/OrdenTrabajoUser.php +++ b/ci4/app/Models/OrdenTrabajo/OrdenTrabajoUser.php @@ -29,6 +29,9 @@ class OrdenTrabajoUser extends Model "corte_user_id", "preparacion_interior_user_id", "entrada_manipulado_user_id", + "cosido_user_id", + "solapa_user_id", + "grapado_user_id", //FERRO "pendiente_ferro_user_id", "ferro_en_cliente_user_id", diff --git a/ci4/app/Services/ProductionService.php b/ci4/app/Services/ProductionService.php index 1392dde4..c073dc38 100644 --- a/ci4/app/Services/ProductionService.php +++ b/ci4/app/Services/ProductionService.php @@ -1150,7 +1150,9 @@ class ProductionService extends BaseService } protected function otSolapaColor() { - + if ($this->ot->dates()->solapaStatus()) { + $this->statusColor = $this->ordenTrabajoConfig->OT_COLORS["solapa"]; + }; } protected function otEncuadernadoColor() { @@ -1172,9 +1174,15 @@ class ProductionService extends BaseService } protected function otCosidoColor() { + if ($this->ot->dates()->cosidoStatus()) { + $this->statusColor = $this->ordenTrabajoConfig->OT_COLORS["cosido"]; + }; } protected function otGrapadoColor() { + if ($this->ot->dates()->grapadoStatus()) { + $this->statusColor = $this->ordenTrabajoConfig->OT_COLORS["grapado"]; + }; } protected function updateColor(){ $this->otSinImprimirColor(); diff --git a/ci4/app/Views/themes/vuexy/form/produccion/ot/otProgress.php b/ci4/app/Views/themes/vuexy/form/produccion/ot/otProgress.php index 382cf351..a3b25fe9 100644 --- a/ci4/app/Views/themes/vuexy/form/produccion/ot/otProgress.php +++ b/ci4/app/Views/themes/vuexy/form/produccion/ot/otProgress.php @@ -97,7 +97,24 @@