/CargoOnlineMPM/src/main/java/com/maxcom/mpm/util/Utilerias.java

https://github.com/castelarhub/CirculoCredito · Java · 110 lines · 61 code · 21 blank · 28 comment · 3 complexity · fa19c47c752822602ca7b0b7d492cfda MD5 · raw file

  1. package com.maxcom.mpm.util;
  2. import java.util.Arrays;
  3. import java.util.Calendar;
  4. import java.util.List;
  5. import java.util.regex.Matcher;
  6. import java.util.regex.Pattern;
  7. /**
  8. * Contiene funcionalidades comunes que se comparten en el proyecto.
  9. * @author Nelson C.
  10. */
  11. public class Utilerias {
  12. public static final Pattern VALID_DATE =
  13. Pattern.compile("^\\d{2}/\\d{2}/\\d{4}$", Pattern.CASE_INSENSITIVE);
  14. public static final Pattern VALID_EMAIL_ADDRESS_REGEX =
  15. Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE);
  16. public static final Pattern VALID_CUSTOMER_NAME_REGEX =
  17. Pattern.compile("^\\p{L}+(?: \\p{L}+)*$", Pattern.CASE_INSENSITIVE);
  18. public static final List tiposTarjetaValidas = Arrays.asList("V","MC","AMEX");
  19. /**
  20. * Valida si una cadena no es nula o esta vacia.
  21. * @param s Cadena a validar
  22. * @return True-Si la cadena no es nula y tiene al menos un caracter.
  23. */
  24. public static boolean isValidString(String s){
  25. return s!=null && s.length()>0;
  26. }
  27. /**
  28. * Valida si el año es valido. Un año es valido si es mayor o igual al actual.
  29. * @param m Año a validar
  30. * @return True - Si el año enviado es valido
  31. */
  32. public static boolean isValidNumberYear(int m){
  33. Calendar cal = Calendar.getInstance();
  34. int anioActual = cal.get(Calendar.YEAR);
  35. return m >= anioActual;
  36. }
  37. public static boolean isValidNumberMonth(int m){
  38. return m>=1 && m<=12;
  39. }
  40. public static boolean isValidIntegerNumber(String n){
  41. Integer numero;
  42. boolean bValido = true;
  43. try{
  44. numero = Integer.valueOf(n);
  45. }catch(NumberFormatException e){
  46. bValido = false;
  47. }
  48. return bValido;
  49. }
  50. /**
  51. * Valida si una lista es nulla o esta vacia.
  52. * @param l Lista a validar
  53. * @return True - Si la lista no es nula y tiene al menos un elemento
  54. */
  55. public static boolean isValidList(List l){
  56. return l!=null && l.size()>0;
  57. }
  58. public static boolean isValidEmail(String email){
  59. Matcher matcher = VALID_EMAIL_ADDRESS_REGEX .matcher(email);
  60. return matcher.find();
  61. }
  62. public static boolean isValidDate(String date){
  63. Matcher matcher = VALID_DATE .matcher(date);
  64. return matcher.find();
  65. }
  66. /**
  67. * Valida si la cadena de entrada corresponde a un nombre de cliente valido
  68. * @param name
  69. * @return
  70. */
  71. public static boolean isValidCustomerName(String name){
  72. name = name.trim();
  73. Matcher matcher = VALID_CUSTOMER_NAME_REGEX .matcher(name);
  74. return matcher.find();
  75. }
  76. /**
  77. * Obtiene el periodo de acuerdo a la fecha actual
  78. * @return Una cadena con el periodo en formato mm-aaaa
  79. */
  80. public static String getCurrentPeriodo(){
  81. Calendar cal = Calendar.getInstance();
  82. int mes = cal.get(Calendar.MONTH)+1;
  83. int anio = cal.get(Calendar.YEAR);
  84. return ((mes>9)?mes+"":("0"+mes))+"-"+ anio ;
  85. }
  86. public static boolean isValidCardType(String tipoTarjeta){
  87. return tiposTarjetaValidas.contains(tipoTarjeta.toUpperCase());
  88. }
  89. }