Receptores::obtenerDetalleReceptor()   A
last analyzed

Complexity

Conditions 3
Paths 4

Size

Total Lines 14
Code Lines 7

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 12

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 3
eloc 7
c 1
b 0
f 0
nc 4
nop 2
dl 0
loc 14
ccs 0
cts 8
cp 0
crap 12
rs 10
1
<?php
2
3
declare(strict_types=1);
4
5
/**
6
 * BHExpress
7
 * Copyright (C) SASCO SpA (https://sasco.cl)
8
 *
9
 * Este programa es software libre: usted puede redistribuirlo y/o modificarlo
10
 * bajo los términos de la GNU Lesser General Public License (LGPL) publicada
11
 * por la Fundación para el Software Libre, ya sea la versión 3 de la Licencia,
12
 * o (a su elección) cualquier versión posterior de la misma.
13
 *
14
 * Este programa se distribuye con la esperanza de que sea útil, pero SIN
15
 * GARANTÍA ALGUNA; ni siquiera la garantía implícita MERCANTIL o de APTITUD
16
 * PARA UN PROPÓSITO DETERMINADO. Consulte los detalles de la GNU Lesser General
17
 * Public License (LGPL) para obtener una información más detallada.
18
 *
19
 * Debería haber recibido una copia de la GNU Lesser General Public License
20
 * (LGPL) junto a este programa. En caso contrario, consulte
21
 * <http://www.gnu.org/licenses/lgpl.html>.
22
 */
23
24
namespace bhexpress\api_client\bhe;
25
26
use bhexpress\api_client\ApiBase;
27
28
/**
29
 * Módulo que permite obtener información de receptores con los cuales se haya interactuado.
30
 */
31
class Receptores extends ApiBase
32
{
33
    /**
34
     * Módulo que permite obtener información de receptores con los cuales se haya interactuado.
35
     *
36
     * @param string $token Token de autenticación del usuario. Si no se
37
     * proporciona, se intentará obtener de una variable de entorno.
38
     * @param string $rut RUT del emisor de BHExpress. Si no se proporciona,
39
     * se intentará obtener de una variable de entorno.
40
     * @param string $url URL base de la API. Si no se proporciona, se
41
     * usará una URL por defecto.
42
     */
43
    public function __construct(
44
        string $token = null,
45
        string $rut = null,
46
        string $url = null
47
    ) {
48
        parent::__construct($token, $rut, $url);
49
    }
50
51
    /**
52
     * Recurso que permite obtener información de uno o más receptores con los que
53
     * ya se haya interactuado.
54
     *
55
     * @return \Psr\Http\Message\ResponseInterface Respuesta con la lista de receptores.
56
     */
57
    public function listarReceptores()
58
    {
59
        $url = '/bhe/receptores';
60
61
        $response = $this->get($url);
62
63
        return $response;
64
    }
65
66
    /**
67
     * Recurso que permite obtener información de un receptor específico con el
68
     * que ya se haya interactuado.
69
     *
70
     * @param int $rut RUT del receptor a ser buscado, sin puntos ni DV (opcional).
71
     * @param int $codigo Código del receptor (opcional).
72
     * @return \Psr\Http\Message\ResponseInterface Respuesta con la
73
     * información del receptor.
74
     */
75
    public function obtenerDetalleReceptor(int $rut = null, int $codigo = null)
76
    {
77
        $url = '/bhe/receptores';
78
79
        if (isset($rut)) {
80
            $url = sprintf('%s/%d', $url, $rut);
81
        }
82
        if (isset($codigo)) {
83
            $url = sprintf('%s/%d', $url, $codigo);
84
        }
85
86
        $response = $this->get($url);
87
88
        return $response;
89
    }
90
}
91