Skip to content

Commit 4ccdd44

Browse files
committed
Merge branch 'release/v1.0.0'
2 parents e8b6d27 + 9ed9eaf commit 4ccdd44

7 files changed

+73
-94
lines changed

readme.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Validador de Cédula y RUC de Ecuador
55
<p align="center">
66
<a href="https://app.codeship.com/projects/222775"><img src="https://app.codeship.com/projects/67213cf0-26f5-0135-0866-026545364f16/status?branch=master"></a>
77
<a href="https://packagist.org/packages/tavo1987/ec-validador-cedula-ruc"><img src="https://img.shields.io/badge/Packagist-v1.0.0-orange.svg?style=flat-square"></a>
8+
<a href="https://styleci.io/repos/92779185"><img src="https://styleci.io/repos/92779185/shield"></a>
89
<a href="https://packagist.org/packages/tavo1987/ec-validador-cedula-ruc"><img src="https://img.shields.io/github/license/mashape/apistatus.svg?style=flat-square"></a>
910
<a href="https://packagist.org/packages/tavo1987/ec-validador-cedula-ruc"><img src="https://poser.pugx.org/tavo1987/ec-validador-cedula-ruc/downloads" alt="Total Downloads"></a>
1011
<a href="https://packagist.org/packages/tavo1987/ec-validador-cedula-ruc"><img src="https://poser.pugx.org/tavo1987/ec-validador-cedula-ruc/v/stable" alt="Total Downloads"></a>

src/ValidadorEc.php

Lines changed: 68 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace Tavo;
44

5-
Use Exception;
5+
use Exception;
66

77
/**
88
* ValidadorEc contiene metodos para validar cédula, RUC de persona natural, RUC de sociedad privada y
@@ -16,23 +16,21 @@
1616
*/
1717
class ValidadorEc
1818
{
19-
2019
/**
21-
* Error
20+
* Error.
2221
*
2322
* Contiene errores globales de la clase
2423
*
2524
* @var string
26-
* @access protected
2725
*/
2826
protected $error = '';
2927

3028
/**
31-
* Validar cédula
29+
* Validar cédula.
3230
*
33-
* @param string $numero Número de cédula
31+
* @param string $numero Número de cédula
3432
*
35-
* @return Boolean
33+
* @return bool
3634
*/
3735
public function validarCedula($numero = '')
3836
{
@@ -50,23 +48,24 @@ public function validarCedula($numero = '')
5048
$this->algoritmoModulo10(substr($numero, 0, 9), $numero[9]);
5149
} catch (Exception $e) {
5250
$this->setError($e->getMessage());
51+
5352
return false;
5453
}
5554

5655
return true;
5756
}
5857

5958
/**
60-
* Validar RUC persona natural
59+
* Validar RUC persona natural.
6160
*
62-
* @param string $numero Número de RUC persona natural
61+
* @param string $numero Número de RUC persona natural
6362
*
64-
* @return Boolean
63+
* @return bool
6564
*/
6665
public function validarRucPersonaNatural($numero = '')
6766
{
6867
// fuerzo parametro de entrada a string
69-
$numero = (string)$numero;
68+
$numero = (string) $numero;
7069

7170
// borro por si acaso errores de llamadas anteriores.
7271
$this->setError('');
@@ -80,24 +79,24 @@ public function validarRucPersonaNatural($numero = '')
8079
$this->algoritmoModulo10(substr($numero, 0, 9), $numero[9]);
8180
} catch (Exception $e) {
8281
$this->setError($e->getMessage());
82+
8383
return false;
8484
}
8585

8686
return true;
8787
}
8888

89-
9089
/**
91-
* Validar RUC sociedad privada
90+
* Validar RUC sociedad privada.
9291
*
93-
* @param string $numero Número de RUC sociedad privada
92+
* @param string $numero Número de RUC sociedad privada
9493
*
95-
* @return Boolean
94+
* @return bool
9695
*/
9796
public function validarRucSociedadPrivada($numero = '')
9897
{
9998
// fuerzo parametro de entrada a string
100-
$numero = (string)$numero;
99+
$numero = (string) $numero;
101100

102101
// borro por si acaso errores de llamadas anteriores.
103102
$this->setError('');
@@ -111,23 +110,24 @@ public function validarRucSociedadPrivada($numero = '')
111110
$this->algoritmoModulo11(substr($numero, 0, 9), $numero[9], 'ruc_privada');
112111
} catch (Exception $e) {
113112
$this->setError($e->getMessage());
113+
114114
return false;
115115
}
116116

117117
return true;
118118
}
119119

120120
/**
121-
* Validar RUC sociedad publica
121+
* Validar RUC sociedad publica.
122122
*
123-
* @param string $numero Número de RUC sociedad publica
123+
* @param string $numero Número de RUC sociedad publica
124124
*
125-
* @return Boolean
125+
* @return bool
126126
*/
127127
public function validarRucSociedadPublica($numero = '')
128128
{
129129
// fuerzo parametro de entrada a string
130-
$numero = (string)$numero;
130+
$numero = (string) $numero;
131131

132132
// borro por si acaso errores de llamadas anteriores.
133133
$this->setError('');
@@ -141,22 +141,23 @@ public function validarRucSociedadPublica($numero = '')
141141
$this->algoritmoModulo11(substr($numero, 0, 8), $numero[8], 'ruc_publica');
142142
} catch (Exception $e) {
143143
$this->setError($e->getMessage());
144+
144145
return false;
145146
}
146147

147148
return true;
148149
}
149150

150151
/**
151-
* Validaciones iniciales para CI y RUC
152+
* Validaciones iniciales para CI y RUC.
152153
*
153-
* @param string $numero CI o RUC
154-
* @param integer $caracteres Cantidad de caracteres requeridos
155-
*
156-
* @return Boolean
154+
* @param string $numero CI o RUC
155+
* @param int $caracteres Cantidad de caracteres requeridos
157156
*
158157
* @throws exception Cuando valor esta vacio, cuando no es dígito y
159-
* cuando no tiene cantidad requerida de caracteres
158+
* cuando no tiene cantidad requerida de caracteres
159+
*
160+
* @return bool
160161
*/
161162
protected function validarInicial($numero, $caracteres)
162163
{
@@ -176,13 +177,13 @@ protected function validarInicial($numero, $caracteres)
176177
}
177178

178179
/**
179-
* Validación de código de provincia (dos primeros dígitos de CI/RUC)
180-
*
181-
* @param string $numero Dos primeros dígitos de CI/RUC
180+
* Validación de código de provincia (dos primeros dígitos de CI/RUC).
182181
*
183-
* @return boolean
182+
* @param string $numero Dos primeros dígitos de CI/RUC
184183
*
185184
* @throws exception Cuando el código de provincia no esta entre 00 y 24
185+
*
186+
* @return bool
186187
*/
187188
protected function validarCodigoProvincia($numero)
188189
{
@@ -194,7 +195,7 @@ protected function validarCodigoProvincia($numero)
194195
}
195196

196197
/**
197-
* Validación de tercer dígito
198+
* Validación de tercer dígito.
198199
*
199200
* Permite validad el tercer dígito del documento. Dependiendo
200201
* del campo tipo (tipo de identificación) se realizan las validaciones.
@@ -209,13 +210,13 @@ protected function validarCodigoProvincia($numero)
209210
* Para RUC de sociedades públicas el terder dígito debe ser
210211
* igual a 6.
211212
*
212-
* @param string $numero tercer dígito de CI/RUC
213-
* @param string $tipo tipo de identificador
214-
*
215-
* @return boolean
213+
* @param string $numero tercer dígito de CI/RUC
214+
* @param string $tipo tipo de identificador
216215
*
217216
* @throws exception Cuando el tercer digito no es válido. El mensaje
218-
* de error depende del tipo de Idenficiación.
217+
* de error depende del tipo de Idenficiación.
218+
*
219+
* @return bool
219220
*/
220221
protected function validarTercerDigito($numero, $tipo)
221222
{
@@ -246,13 +247,13 @@ protected function validarTercerDigito($numero, $tipo)
246247
}
247248

248249
/**
249-
* Validación de código de establecimiento
250+
* Validación de código de establecimiento.
250251
*
251-
* @param string $numero tercer dígito de CI/RUC
252-
*
253-
* @return boolean
252+
* @param string $numero tercer dígito de CI/RUC
254253
*
255254
* @throws exception Cuando el establecimiento es menor a 1
255+
*
256+
* @return bool
256257
*/
257258
protected function validarCodigoEstablecimiento($numero)
258259
{
@@ -293,36 +294,35 @@ protected function validarCodigoEstablecimiento($numero)
293294
*
294295
* Nota: Cuando el residuo es cero(0) el dígito verificador debe ser 0.
295296
*
296-
* @param string $digitosIniciales Nueve primeros dígitos de CI/RUC
297-
* @param string $digitoVerificador Décimo dígito de CI/RUC
298-
*
299-
* @return boolean
297+
* @param string $digitosIniciales Nueve primeros dígitos de CI/RUC
298+
* @param string $digitoVerificador Décimo dígito de CI/RUC
300299
*
301300
* @throws exception Cuando los digitosIniciales no concuerdan contra
302-
* el código verificador.
301+
* el código verificador.
302+
*
303+
* @return bool
303304
*/
304305
protected function algoritmoModulo10($digitosIniciales, $digitoVerificador)
305306
{
306-
$arrayCoeficientes = array(2,1,2,1,2,1,2,1,2);
307+
$arrayCoeficientes = [2, 1, 2, 1, 2, 1, 2, 1, 2];
307308

308-
$digitoVerificador = (int)$digitoVerificador;
309+
$digitoVerificador = (int) $digitoVerificador;
309310
$digitosIniciales = str_split($digitosIniciales);
310311

311312
$total = 0;
312313
foreach ($digitosIniciales as $key => $value) {
313-
314-
$valorPosicion = ( (int)$value * $arrayCoeficientes[$key] );
314+
$valorPosicion = ((int) $value * $arrayCoeficientes[$key]);
315315

316316
if ($valorPosicion >= 10) {
317317
$valorPosicion = str_split($valorPosicion);
318318
$valorPosicion = array_sum($valorPosicion);
319-
$valorPosicion = (int)$valorPosicion;
319+
$valorPosicion = (int) $valorPosicion;
320320
}
321321

322322
$total = $total + $valorPosicion;
323323
}
324324

325-
$residuo = $total % 10;
325+
$residuo = $total % 10;
326326

327327
$resultado = ($residuo == 0) ? 0 : 10 - $residuo;
328328

@@ -334,7 +334,7 @@ protected function algoritmoModulo10($digitosIniciales, $digitoVerificador)
334334
}
335335

336336
/**
337-
* Algoritmo Modulo11 para validar RUC de sociedades privadas y públicas
337+
* Algoritmo Modulo11 para validar RUC de sociedades privadas y públicas.
338338
*
339339
* El código verificador es el decimo digito para RUC de empresas privadas
340340
* y el noveno dígito para RUC de empresas públicas
@@ -375,39 +375,39 @@ protected function algoritmoModulo10($digitosIniciales, $digitoVerificador)
375375
*
376376
* Nota: Cuando el residuo es cero(0) el dígito verificador debe ser 0.
377377
*
378-
* @param string $digitosIniciales Nueve primeros dígitos de RUC
379-
* @param string $digitoVerificador Décimo dígito de RUC
380-
* @param string $tipo Tipo de identificador
381-
*
382-
* @return boolean
378+
* @param string $digitosIniciales Nueve primeros dígitos de RUC
379+
* @param string $digitoVerificador Décimo dígito de RUC
380+
* @param string $tipo Tipo de identificador
383381
*
384382
* @throws exception Cuando los digitosIniciales no concuerdan contra
385-
* el código verificador.
383+
* el código verificador.
384+
*
385+
* @return bool
386386
*/
387387
protected function algoritmoModulo11($digitosIniciales, $digitoVerificador, $tipo)
388388
{
389389
switch ($tipo) {
390390
case 'ruc_privada':
391-
$arrayCoeficientes = array(4, 3, 2, 7, 6, 5, 4, 3, 2);
391+
$arrayCoeficientes = [4, 3, 2, 7, 6, 5, 4, 3, 2];
392392
break;
393393
case 'ruc_publica':
394-
$arrayCoeficientes = array(3, 2, 7, 6, 5, 4, 3, 2);
394+
$arrayCoeficientes = [3, 2, 7, 6, 5, 4, 3, 2];
395395
break;
396396
default:
397397
throw new Exception('Tipo de Identificacion no existe.');
398398
break;
399399
}
400400

401-
$digitoVerificador = (int)$digitoVerificador;
401+
$digitoVerificador = (int) $digitoVerificador;
402402
$digitosIniciales = str_split($digitosIniciales);
403403

404404
$total = 0;
405405
foreach ($digitosIniciales as $key => $value) {
406-
$valorPosicion = ( (int)$value * $arrayCoeficientes[$key] );
406+
$valorPosicion = ((int) $value * $arrayCoeficientes[$key]);
407407
$total = $total + $valorPosicion;
408408
}
409409

410-
$residuo = $total % 11;
410+
$residuo = $total % 11;
411411

412412
$resultado = ($residuo == 0) ? 0 : 11 - $residuo;
413413

@@ -419,7 +419,7 @@ protected function algoritmoModulo11($digitosIniciales, $digitoVerificador, $tip
419419
}
420420

421421
/**
422-
* Get error
422+
* Get error.
423423
*
424424
* @return string Mensaje de error
425425
*/
@@ -429,14 +429,16 @@ public function getError()
429429
}
430430

431431
/**
432-
* Set error
432+
* Set error.
433+
*
434+
* @param string $newError
433435
*
434-
* @param string $newError
435436
* @return object $this
436437
*/
437438
public function setError($newError)
438439
{
439440
$this->error = $newError;
441+
440442
return $this;
441443
}
442444
}

tests/TestCase.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,22 @@
22

33
namespace Tests;
44

5-
use Tavo\ValidadorEc;
65
use PHPUnit\Framework\TestCase as BaseTestCase;
6+
use Tavo\ValidadorEc;
77

88
class TestCase extends BaseTestCase
99
{
1010
/**
11-
* Validador
11+
* Validador.
1212
*
1313
* Guarda Instancia de clase ValidarIdentificacion() disponible para todos los métodos
1414
*
1515
* @var string
16-
* @access protected
1716
*/
1817
protected $validador;
1918

2019
/**
21-
* Inicio objecto Validador()
20+
* Inicio objecto Validador().
2221
*/
2322
protected function setUp()
2423
{

0 commit comments

Comments
 (0)