validarPeriodoApuracao static method
- String? periodoApuracao
Valida período de apuração no formato AAAAMM
Retorna null se válido, ou uma mensagem de erro se inválido
Implementation
static String? validarPeriodoApuracao(String? periodoApuracao) {
if (periodoApuracao == null || periodoApuracao.isEmpty) {
return 'Período de apuração é obrigatório';
}
// Verifica se tem exatamente 6 caracteres
if (periodoApuracao.length != 6) {
return 'Período de apuração deve ter formato AAAAMM';
}
// Verifica se são apenas números
if (!RegExp(r'^\d{6}$').hasMatch(periodoApuracao)) {
return 'Período de apuração deve conter apenas números no formato AAAAMM';
}
// Verifica se é um período válido
final ano = int.parse(periodoApuracao.substring(0, 4));
final mes = int.parse(periodoApuracao.substring(4, 6));
if (ano < 2000 || ano > 2100) {
return 'Ano do período deve estar entre 2000 e 2100';
}
if (mes < 1 || mes > 12) {
return 'Mês do período deve estar entre 01 e 12';
}
return null;
}