Toggle navigation
Toggle navigation
This project
Loading...
Sign in
flutter_package
/
fluttertpc_get
Go to a project
Toggle navigation
Projects
Groups
Snippets
Help
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
Kauê Murakami
2020-07-15 15:40:46 -0300
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
2a3892c9c6683be04b31cbc74570ee22c3b6bfe9
2a3892c9
1 parent
8e2162ed
add function for cnpj validation
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
44 additions
and
0 deletions
lib/src/regex/get_utils.dart
lib/src/regex/get_utils.dart
View file @
2a3892c
...
...
@@ -293,6 +293,50 @@ class GetUtils {
/// Checks if num a EQUAL than num b.
static
bool
isEqual
(
num
a
,
num
b
)
=>
a
==
b
;
//Check if num is a cnpj
static
bool
isCnpj
(
String
cnpj
)
{
if
(
cnpj
==
null
)
return
false
;
// Obter somente os números do CNPJ
var
numbers
=
cnpj
.
replaceAll
(
RegExp
(
r'[^0-9]'
),
''
);
// Testar se o CNPJ possui 14 dígitos
if
(
numbers
.
length
!=
14
)
return
false
;
// Testar se todos os dígitos do CNPJ são iguais
if
(
RegExp
(
r'^(\d)\1*$'
).
hasMatch
(
numbers
))
return
false
;
// Dividir dígitos
List
<
int
>
digits
=
numbers
.
split
(
''
).
map
((
String
d
)
=>
int
.
parse
(
d
)).
toList
();
// Calcular o primeiro dígito verificador
var
calcDv1
=
0
;
var
j
=
0
;
for
(
var
i
in
Iterable
<
int
>.
generate
(
12
,
(
i
)
=>
i
<
4
?
5
-
i
:
13
-
i
))
{
calcDv1
+=
digits
[
j
++]
*
i
;
}
calcDv1
%=
11
;
var
dv1
=
calcDv1
<
2
?
0
:
11
-
calcDv1
;
// Testar o primeiro dígito verificado
if
(
digits
[
12
]
!=
dv1
)
return
false
;
// Calcular o segundo dígito verificador
var
calcDv2
=
0
;
j
=
0
;
for
(
var
i
in
Iterable
<
int
>.
generate
(
13
,
(
i
)
=>
i
<
5
?
6
-
i
:
14
-
i
))
{
calcDv2
+=
digits
[
j
++]
*
i
;
}
calcDv2
%=
11
;
var
dv2
=
calcDv2
<
2
?
0
:
11
-
calcDv2
;
// Testar o segundo dígito verificador
if
(
digits
[
13
]
!=
dv2
)
return
false
;
return
true
;
}
/// Checks if the cpf is valid.
static
bool
isCpf
(
String
cpf
)
{
if
(
cpf
==
null
)
return
false
;
...
...
Please
register
or
login
to post a comment