isValidDataAcolhimento static method

bool isValidDataAcolhimento(
  1. int dataAcolhimento
)

Valida se uma data de acolhimento está no formato correto (AAAAMMDD)

dataAcolhimento - Data no formato AAAAMMDD

Implementation

static bool isValidDataAcolhimento(int dataAcolhimento) {
  final dataStr = dataAcolhimento.toString();

  if (dataStr.length != 8) return false;

  final ano = int.tryParse(dataStr.substring(0, 4));
  final mes = int.tryParse(dataStr.substring(4, 6));
  final dia = int.tryParse(dataStr.substring(6, 8));

  if (ano == null || mes == null || dia == null) return false;
  if (mes < 1 || mes > 12) return false;
  if (dia < 1 || dia > 31) return false;

  // Verificar se é uma data válida
  try {
    DateTime(ano, mes, dia);
    return true;
  } catch (e) {
    return false;
  }
}