responseController = new ResponseController(); $this->encController = new EncryptionController(); $this->resourcesController = new ResourcesController(); $this->documentManagementController = new DocumentManagementController(); } public function getPartialDeliveries($user, $line) { $arrResponseCheckUser = $this->resourcesController->checkUserEnc($user, $line); if ($arrResponseCheckUser['error']) { DB::rollBack(); return $this->responseController->makeResponse(true, 'ERR_WAREHOUSE_GETBY000:'.$arrResponseCheckUser['msg'], [], 401); } try { $getPartial = DB::table('S002V01THIOR') ->where('HIOR_ESOR', '=', 'Recibido Parcial') ->where('HIOR_NULI', '=', $line) ->get([ 'HIOR_IDHO AS ID_HISTORIAL_ORDEN', 'HIOR_NUOR AS NUMERO_ORDEN', 'HIOR_ESOR AS ESTADO_ORDEN', 'HIOR_DESC AS DESCRIPCION', 'HIOR_EVID AS EVIDENCIA', 'HIOR_POEN AS PORCENTAJE_ENTREGA', 'HIOR_ESTA AS ESTADO', 'HIOR_USRE AS USUARIO_REGISTRA', 'HIOR_FERE AS FECHA_REGISTRA', 'HIOR_USMO AS USUARIO_MODIFICA', 'HIOR_FEMO AS FECHA_MODIFICA', ]); $arrPartial = json_decode(json_encode($getPartial), true); } catch (\Throwable $th) { return $this->responseController->makeResponse(true, "Ocurrió un error al momento de obtener los registros.", $th->getMessage(), 500); } $responseCheckLatestUpdate = $this->resourcesController->checkLatestUpdate($arrPartial, $line); if ($responseCheckLatestUpdate['error']) { return $this->responseController->makeResponse(true, $responseCheckLatestUpdate['msg'], [], 500); } $arrPartial = $responseCheckLatestUpdate['response']; foreach ($arrPartial as $keyHistoryOrder => $historyOrder) { if ( !is_null($historyOrder['EVIDENCIA']) ) { $arrEvidence = json_decode($historyOrder['EVIDENCIA']); $arrUrlImage = array(); foreach ($arrEvidence as $key => $imagen) { $responseDocument = $this->documentManagementController->privateGetPublicDocumentURL($imagen, $user, $line); if ($responseDocument['error']) { return $this->responseController->makeResponse(true, "Ocurrió un error al obtener la URL de la imágen.", [], 500); } $arrUrlImage[] = $responseDocument['response']['public_uri']; } $historyOrder['EVIDENCIA'] = $arrUrlImage; } $arrPartial[$keyHistoryOrder] = $historyOrder; } return $this->responseController->makeResponse(false, "ÉXITO: Consulta exitosa", $arrPartial); } }