validate static method
Implementation
static bool validate(List<ValidatorModel> lstvalidate) {
bool blnOk = true;
String password1 = "";
String password2 = "";
var passwordConf;
var password;
try {
for (var validate in lstvalidate) {
validate.error.value = "";
switch (validate.type) {
case Constant.kdTpValidName:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (validate.value!.length < 3) {
validate.error.value = validate.messageError == null
? 'Nome inválido'
: validate.messageError!;
} else {
List<String> lstName = validate.value!.split(' ');
if (lstName.length < 2) {
validate.error.value = validate.messageError == null
? 'Nome inválido'
: validate.messageError!;
}
}
break;
case Constant.kdTpValidCity:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (validate.value!.length < 3) {
validate.error.value = validate.messageError == null
? 'Cidade inválida'
: validate.messageError!;
}
break;
case Constant.kdTpValidEmail:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (!email(validate.value!)) {
validate.error.value = validate.messageError == null
? 'E-mail inválido'
: validate.messageError!;
}
break;
case Constant.kdTpValidPhone:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (!phone(
validate.value!.replaceAll(RegExp(r'[()\-/\.]'), ''))) {
validate.error.value = validate.messageError == null
? 'Telefone inválido'
: validate.messageError!;
}
break;
case Constant.kdTpValidInt:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (int.parse(validate.value!) == 0) {
validate.error.value = validate.messageError!;
}
break;
case Constant.kdTpValidCEP:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (validate.value!
.replaceAll(RegExp(r'[()\-/\.]'), '')
.length !=
8) {
validate.error.value = validate.messageError == null
? 'C.E.P. inválido'
: validate.messageError!;
}
break;
case Constant.kdTpValidText:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (validate.size != null &&
validate.value!.length < validate.size!) {
validate.error.value = validate.messageError!;
}
break;
case Constant.kdTpValidDate:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (!DateTimeUtil.isValidDate(validate.value!)) {
validate.error.value = validate.messageError == null
? "Data inválida"
: validate.messageError!;
}
break;
case Constant.kdTpValidCPF:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (!cpf(
validate.value!.replaceAll(RegExp(r'[()\-/\.]'), ''))) {
validate.error.value = validate.messageError == null
? "C.P.F. inválido"
: validate.messageError!;
}
break;
case Constant.kdTpValidPasswordConf:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (validate.value!.length < 8) {
validate.error.value = "A senha deve conter no minímo 8 digitos";
} else {
if (password1.isEmpty) {
password1 = validate.value!;
password = validate.error;
} else {
password2 = validate.value!;
passwordConf = validate.error;
}
}
if (password1.isNotEmpty && password2.isNotEmpty) {
if (password1 != password2) {
passwordConf.value = "A confirmação da senha não confere";
blnOk = false;
}
}
break;
case Constant.kdTpValidPassword:
if (validate.value == null || validate.value!.isEmpty) {
validate.error.value = 'Campo obrigatório';
} else if (validate.value!.length < 8) {
validate.error.value = "A senha deve conter no minímo 8 digitos";
} else {
password1 = validate.value!;
}
}
if (validate.error.value.isNotEmpty) {
blnOk = false;
}
}
} catch (ex) {
errorDescription = ex.toString();
blnOk = false;
}
return blnOk;
}