/** metodo para buscar un resultado determinado */
 public Resultado buscarResultado(int id) {
   for (Resultado res : this.resultados) {
     if (res.getIdPartido() == id) {
       return res;
     }
   }
   return null;
 }
Exemplo n.º 2
0
 private Resultado validarContenidoBasico() {
   final Comprobante comprobante = docto.getComprobante();
   BigDecimal subTotal = comprobante.getSubTotal();
   BigDecimal suma = BigDecimal.ZERO;
   for (Concepto c : comprobante.getConceptos().getConceptoArray()) {
     suma = suma.add(c.getImporte());
   }
   Resultado res = new Resultado("CERTIFICADO");
   if (subTotal.equals(suma)) {
     res.setDescripcion("Los importes de los conceptos son consistentes con el subtotal");
     res.setResultado("CORRECTO");
   } else {
     res.setDescripcion(
         MessageFormat.format(
             "La suma de los importes de los conceptos no es igual al subtotal. Suma: {0} SubTotal: {1}",
             suma, subTotal));
     res.setResultado("ERROR");
   }
   return res;
 }
Exemplo n.º 3
0
  private List<Resultado> validarEstructura() {

    final List<Resultado> resultados = new ArrayList<Resultado>();

    if (docto == null) {
      try {
        docto = ComprobanteDocument.Factory.parse(xmlFile);
      } catch (Exception e) {
        throw new RuntimeException(
            "Error procesando el archivo XML " + ExceptionUtils.getRootCauseMessage(e), e);
      }
    }

    final XmlOptions options = new XmlOptions();
    final List<XmlValidationError> errors = new ArrayList<XmlValidationError>();
    options.setErrorListener(errors);
    boolean valid = docto.validate(options);

    if (valid) {
      Resultado res = new Resultado("Estructura");
      res.setDescripcion("Estructura del CFD segun la versión 2 del schema del SAT");
      res.setResultado("CORRECTO");
      resultados.add(res);
    } else {
      for (XmlValidationError e : errors) {
        // buff.append(e.getMessage()+"\n");
        Resultado res = new Resultado("Estructura");
        res.setDescripcion(e.getMessage());
        res.setResultado("ERROR");
        resultados.add(res);
      }
    }
    return resultados;
  }
Exemplo n.º 4
0
 private Resultado validarCertificado() {
   final Comprobante comprobante = docto.getComprobante();
   try {
     String msg =
         ValidarVigenciaDelCSD.validar(
             comprobante.getNoCertificado(),
             comprobante.getEmisor().getRfc(),
             comprobante.getFecha().getTime());
     Resultado res = new Resultado("SERIE_FOLIO");
     res.setDescripcion(msg);
     res.setResultado("CORRECTO");
     return res;
   } catch (Exception e) {
     Resultado res = new Resultado("SERIE_FOLIO");
     res.setDescripcion(ExceptionUtils.getRootCauseMessage(e));
     res.setResultado("ERROR");
     return res;
   }
 }
Exemplo n.º 5
0
 private Resultado validarSerieFolio() {
   final Comprobante comprobante = docto.getComprobante();
   try {
     String msg2 =
         ValidadorDeFoliosSAT.validar(
             comprobante.getEmisor().getRfc(),
             comprobante.getNoAprobacion().toString(),
             Integer.valueOf(comprobante.getAnoAprobacion()),
             comprobante.getSerie(),
             comprobante.getFolio());
     Resultado res = new Resultado("SERIE_FOLIO");
     res.setDescripcion(msg2);
     res.setResultado("CORRECTO");
     return res;
   } catch (Exception e) {
     Resultado res = new Resultado("SERIE_FOLIO");
     res.setDescripcion(ExceptionUtils.getRootCauseMessage(e));
     res.setResultado("ERROR");
     return res;
   }
 }