Test Failed
Push — master ( e81f34...58150d )
by
unknown
19:06
created

PortalMipymeDte::getCodigoDte()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 4
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 6

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 2
eloc 1
c 1
b 0
f 0
nc 2
nop 1
dl 0
loc 4
ccs 0
cts 2
cp 0
crap 6
rs 10
1
<?php
2
3
declare(strict_types=1);
4
5
/**
6
 * API Gateway: Cliente de API en PHP.
7
 * Copyright (C) API Gateway <https://www.apigateway.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 apigatewaycl\api_client\sii;
25
26
use apigatewaycl\api_client\sii\PortalMipyme;
27
28
/**
29
 * Módulo para consultas de DTEs al Portal MIPYME del SII.
30
 *
31
 * Para más información sobre la API, consulte la `documentación completa del
32
 * Portal MIPYME <https://developers.apigateway.cl/#d545a096-09be-4c9e-8d12-7b86b6bf1be6>`_.
33
 *
34
 * Base para los clientes específicos de DTE del Portal Mipyme.
35
 * Incluye constantes para diferentes estados de DTE.
36
 */
37
class PortalMipymeDte extends PortalMiPyme
38
{
39
    /**
40
     * Abreviatura: Documento emitido
41
     * @var string
42
     */
43
    protected const ESTADO_EMITIDO = 'EMI'; # Documento emitido
44
45
    /**
46
     * Abreviatura: Borrador (pre-view) de documento
47
     * @var string
48
     */
49
    protected const ESTADO_BORRADOR = 'PRV'; # Borrador (pre-view) de documento
50
51
    /**
52
     * Abreviatura: Certificado rechazado
53
     * @var string
54
     */
55
    protected const ESTADO_CERTIFICADO_RECHAZADO = 'DCD'; # Certificado rechazado
56
57
    /**
58
     * Abreviatura: RUT emisor inválido
59
     * @var string
60
     */
61
    protected const ESTADO_EMISOR_INVALIDO = 'DEI'; # RUT emisor inválido
62
63
    /**
64
     * Abreviatura: Folio DTE inválido
65
     * @var string
66
     */
67
    protected const ESTADO_FOLIO_INVALIDO = 'DFI'; # Folio DTE inválido
68
69
    /**
70
     * Abreviatura: Incompleto
71
     * @var string
72
     */
73
    protected const ESTADO_INCOMPLETO = 'DIN'; # Incompleto
74
75
    /**
76
     * Abreviatura: Sin permiso de firma
77
     * @var string
78
     */
79
    protected const ESTADO_FIRMA_SIN_PERMISO = 'DPF'; # Sin permiso de firma
80
81
    /**
82
     * Abreviatura: DTE rechazado por firma
83
     * @var string
84
     */
85
    protected const ESTADO_FIRMA_RECHAZADA = 'DRF'; # DTE rechazado por firma
86
87
    /**
88
     * Abreviatura: RUT receptor inválido
89
     * @var string
90
     */
91
    protected const ESTADO_RECEPTOR_INVALIDO = 'DRI'; # RUT receptor inválido
92
93
    /**
94
     * Abreviatura: Rechazado por repetido
95
     * @var string
96
     */
97
    protected const ESTADO_REPETIDO = 'DRR'; # Rechazado por repetido
98
99
    /**
100
     * Abreviatura: DTE inicializado
101
     * @var string
102
     */
103
    protected const ESTADO_INICIALIZADO = 'INI'; # DTE inicializado
104
105
    /**
106
     * Abreviatura: DTE aceptado por receptor
107
     * @var string
108
     */
109
    protected const ESTADO_ACEPTADO = 'RAC'; # DTE aceptado por receptor
110
111
    /**
112
     * Abreviatura: DTE aceptado con discrepancias
113
     * @var string
114
     */
115
    protected const ESTADO_DISCREPANCIAS = 'RAD'; # DTE aceptado con discrepancias
116
117
    /**
118
     * Abreviatura: DTE no recibido por receptor
119
     * @var string
120
     */
121
    protected const ESTADO_NO_RECIBIDO = 'RNR'; # DTE no recibido por receptor
122
123
    /**
124
     * Abreviatura: DTE recibido por receptor
125
     * @var string
126
     */
127
    protected const ESTADO_RECIBIDO = 'RRC'; # DTE recibido por receptor
128
129
    /**
130
     * Abreviatura: DTE aceptado Ley 19.983
131
     * @var string
132
     */
133
    protected const ESTADO_ACEPTADO_LEY_19983 = 'RAL'; # DTE aceptado Ley 19.983
134
135
    /**
136
     * Abreviatura: DTE rechazado por receptor
137
     * @var string
138
     */
139
    protected const ESTADO_RECHAZADO_RECEPTOR = 'RRH'; # DTE rechazado por receptor
140
141
    /**
142
     * Abreviatura: Recibido sin reparos
143
     * @var string
144
     */
145
    protected const ESTADO_SIN_REPAROS = 'RSR'; # Recibido sin reparos
146
147
    /**
148
     * Obtiene el código correspondiente al tipo de DTE.
149
     *
150
     * @param string $tipo Tipo de DTE.
151
     * @return string Código del DTE.
152
     */
153
    public function getCodigoDte(string $tipo)
154
    {
155
        # TODO: Resolver este fragmento de código
156
        return isset($this->DTE_TIPOS[$tipo]) ? $this->DTE_TIPOS[$tipo] : str_replace(' ', '-', $tipo);
0 ignored issues
show
Bug Best Practice introduced by
The property DTE_TIPOS does not exist on apigatewaycl\api_client\sii\PortalMipymeDte. Did you maybe forget to declare it?
Loading history...
157
    }
158
}
159