/** * Verifica si para este pago proceden notas de credito de descuento * * @param pago * @return */ public boolean procedeDescuento(PagoM pago) { boolean val = (pago.getTipoDeDocumento().equals("E") || pago.getTipoDeDocumento().equals("S")); if (!val) return val; for (Pago p : pago.getPagos()) { if (p.getVenta().getDescuento1() == 0 && p.getVenta().getBonificaciones() == 0) { return true; } } return false; }
/** * Intenta eliminar un pago tipo PagoM aplicado * * @param pago * @return */ public boolean eliminarPagoM(final PagoM pago) { final String pattern = "Elminar Pago aplicado: {0}\n (Tiene {1} pagos de facturas con descuentos aplicados)"; int aplicados = 0; getPagosManager().refresh(pago); for (Pago p : pago.getPagos()) { if (p.getVenta() != null && p.getVenta().getDescuentos() != 0) aplicados++; } boolean res = MessageUtils.showConfirmationMessage( MessageFormat.format(pattern, pago.getId(), aplicados), "EliminaciĆ³n de pagos"); if (res) { try { getPagosManager().eliminarPagoM(pago); return true; } catch (Exception e) { MessageUtils.showError("Error al elimiar pago", e); return false; } } return false; }