Proyectos de Subversion LeadersLinked - Services

Rev

Rev 533 | Rev 535 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 533 Rev 534
Línea 104... Línea 104...
104
        }
104
        }
Línea 105... Línea 105...
105
 
105
 
Línea 106... Línea 106...
106
        if ($request->isGet()) {
106
        if ($request->isGet()) {
107
 
107
 
Línea 108... Línea 108...
108
            // Llamar a la función que obtiene los archivos de la vacante
108
            // Llamar a la función que obtiene los archivos de la vacante
109
            $data = $this->analyzeJobDescriptionCompetencies($jobDescriptionId);
109
            $data = $this->getJobDescriptionCompetencies($jobDescriptionId);
110
 
110
 
111
            return new JsonModel([
111
            return new JsonModel([
Línea 300... Línea 300...
300
 
300
 
301
        // 🔹 Intentar decodificar respuesta JSON (por si OpenAI responde directamente con JSON)
301
        // 🔹 Intentar decodificar respuesta JSON (por si OpenAI responde directamente con JSON)
Línea 302... Línea 302...
302
        $decoded = json_decode($reply, true);
302
        $decoded = json_decode($reply, true);
303
 
303
 
304
        if (json_last_error() === JSON_ERROR_NONE && is_array($decoded)) {
304
        if (json_last_error() === JSON_ERROR_NONE && is_array($decoded)) {
305
            return $decoded;
305
            //return $decoded;
Línea 306... Línea 306...
306
            //return $this->insertOrUpdateCompetenciesFromAIResponse($jobDescriptionId, $decoded['data']['list_competencies']);
306
            return $this->insertOrUpdateCompetenciesFromAIResponse($jobDescriptionId, $decoded['list_competencies']);
307
        }
307
        }
308
 
308
 
Línea 322... Línea 322...
322
        $data[6] = chr(ord($data[6]) & 0x0f | 0x40); // versión 4
322
        $data[6] = chr(ord($data[6]) & 0x0f | 0x40); // versión 4
323
        $data[8] = chr(ord($data[8]) & 0x3f | 0x80); // variante RFC 4122
323
        $data[8] = chr(ord($data[8]) & 0x3f | 0x80); // variante RFC 4122
Línea 324... Línea 324...
324
 
324
 
325
        return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
325
        return vsprintf('%s%s-%s-%s-%s-%s%s%s', str_split(bin2hex($data), 4));
326
    }
-
 
327
 
326
    }
328
    public function insertOrUpdateCompetenciesFromAIResponse($jobDescriptionId, array $aiCompetencies, $competencyTypeId = 1)
327
    public function insertOrUpdateCompetenciesFromAIResponse($jobDescriptionId, array $aiCompetencies, $competencyTypeId = 1)
329
    {
328
    {
330
        if (!is_numeric($jobDescriptionId) || $jobDescriptionId <= 0) {
329
        if (!is_numeric($jobDescriptionId) || $jobDescriptionId <= 0) {
331
            return [
330
            return [