"integer", "user_created_id" => "?integer", "user_updated_id" => "?integer", "fecha_entrega_warning" => "bool", "fecha_entrega_warning_revised" => "bool", "total_tirada" => "?integer", "total_precio" => "?integer", "tipo_entrada" => "?integer", "progreso" => "float", "revisar_formato" => "bool", "revisar_lomo" => "bool", "revisar_solapa" => "bool", "revisar_isbn" => "bool", "revisar_codigo_barras" => "bool", "realizar_imposicion" => "bool", "enviar_impresion" => "bool" ]; protected array $castHandlers = []; // Dates protected $useTimestamps = true; protected $dateFormat = 'datetime'; protected $createdField = 'created_at'; protected $updatedField = 'updated_at'; protected $deletedField = 'deleted_at'; // Validation protected $validationRules = []; protected $validationMessages = []; protected $skipValidation = false; protected $cleanValidationRules = true; // Callbacks protected $allowCallbacks = true; protected $beforeInsert = []; protected $afterInsert = []; protected $beforeUpdate = []; protected $afterUpdate = []; protected $beforeFind = []; protected $afterFind = []; protected $beforeDelete = []; protected $afterDelete = []; public function getDatatableQuery() : BaseBuilder { $q = $this->builder() ->select([ "ordenes_trabajo.id", "ordenes_trabajo.pedido_id", "orden_trabajo_dates.fecha_encuadernado_at", "clientes.nombre as cliente_nombre", "presupuestos.titulo as presupuesto_titulo", "ordenes_trabajo.estado", "ubicaciones.nombre as ubicacion_nombre", "pedidos.total_tirada", "tipos_presupuestos.codigo as tipo_presupuesto_impresion", "ordenes_trabajo.progreso", "presupuesto_linea.tipo as presupuesto_linea_tipo", "orden_trabajo_dates.ferro_ok_at" ]) ->join("orden_trabajo_dates","orden_trabajo_dates.orden_trabajo_id = ordenes_trabajo.id","left") ->join("pedidos","pedidos.id = ordenes_trabajo.pedido_id","left") ->join("pedidos_linea","pedidos.id = pedidos_linea.pedido_id","left") ->join("presupuestos","presupuestos.id = pedidos_linea.presupuesto_id","left") ->join("presupuesto_linea","presupuestos.id = presupuesto_linea.presupuesto_id","left") ->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") ->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"); return $q; } public function updateMaquinas(OrdenTrabajoEntity $ot) { } }