diff --git a/crov-prase-model/src/main/java/com/arrebol/taxiservicios/model/enums/TipoTarjeta.java b/crov-prase-model/src/main/java/com/arrebol/taxiservicios/model/enums/TipoTarjeta.java
new file mode 100644
index 0000000..a52b013
--- /dev/null
+++ b/crov-prase-model/src/main/java/com/arrebol/taxiservicios/model/enums/TipoTarjeta.java
@@ -0,0 +1,34 @@
+/*
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
+ * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
+ */
+package com.arrebol.taxiservicios.model.enums;
+
+/**
+ *
+ * @author Oscar
+ */
+public enum TipoTarjeta {
+ CREDITO("CREDITO") {
+ @Override
+ public String toString() {
+ return "Credito";
+ }
+ },
+ DEBITO("DEBITO") {
+ @Override
+ public String toString() {
+ return "Debito";
+ }
+ };
+
+ private final String type;
+
+ private TipoTarjeta(String type) {
+ this.type = type;
+ }
+
+ public String getType() {
+ return type;
+ }
+}
diff --git a/crov-prase-model/src/main/java/com/crov/prase/model/prase/DetellePagoPoliza.java b/crov-prase-model/src/main/java/com/crov/prase/model/prase/DetellePagoPoliza.java
index 9922a2e..18a9475 100644
--- a/crov-prase-model/src/main/java/com/crov/prase/model/prase/DetellePagoPoliza.java
+++ b/crov-prase-model/src/main/java/com/crov/prase/model/prase/DetellePagoPoliza.java
@@ -8,6 +8,7 @@ import com.arrebol.taxiservicios.model.core.User;
import com.arrebol.taxiservicios.model.enums.GenericEnumType;
import com.arrebol.taxiservicios.model.enums.MetodoPago;
import com.arrebol.taxiservicios.model.enums.TipoAbono;
+import com.arrebol.taxiservicios.model.enums.TipoTarjeta;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
@@ -60,6 +61,10 @@ public class DetellePagoPoliza implements Serializable {
@Column(name = "tipo_pago", nullable = false)
private TipoAbono tipoPago;
+ @Enumerated(EnumType.STRING)
+ @Column(name = "tipo_tarjeta", nullable = true)
+ private TipoTarjeta tipoTarjeta;
+
@Temporal(TemporalType.TIMESTAMP)
@Column(name = "fecha_pago")
private Date fechaPago;
@@ -241,4 +246,12 @@ public class DetellePagoPoliza implements Serializable {
this.tipoPago = tipoPago;
}
+ public TipoTarjeta getTipoTarjeta() {
+ return tipoTarjeta;
+ }
+
+ public void setTipoTarjeta(TipoTarjeta tipoTarjeta) {
+ this.tipoTarjeta = tipoTarjeta;
+ }
+
}
diff --git a/crov-prase-web/src/main/java/com/crov/prase/prase/PagosPolizasBean.java b/crov-prase-web/src/main/java/com/crov/prase/prase/PagosPolizasBean.java
index 1c7f47f..d953146 100644
--- a/crov-prase-web/src/main/java/com/crov/prase/prase/PagosPolizasBean.java
+++ b/crov-prase-web/src/main/java/com/crov/prase/prase/PagosPolizasBean.java
@@ -11,6 +11,7 @@ import com.arrebol.taxiservicios.model.enums.GenericEnumType;
import com.arrebol.taxiservicios.model.enums.MetodoPago;
import com.arrebol.taxiservicios.model.enums.PolizaEstatus;
import com.arrebol.taxiservicios.model.enums.TipoAbono;
+import com.arrebol.taxiservicios.model.enums.TipoTarjeta;
import com.crov.prase.controller.prase.PagosPolizaController;
import com.crov.prase.controller.prase.PolizaController;
import com.crov.prase.model.prase.DetellePagoPoliza;
@@ -58,6 +59,7 @@ public class PagosPolizasBean extends TaxiGenericBean implements Serializable {
private Boolean pagoExitoso;
private String imagen;
private String metodoPago;
+ private String tipoTargeta;
private HistorialAbonoMultiple selectedHistorialAbonoMultiple;
private String comentarioDevolucionPago;
@@ -105,6 +107,11 @@ public class PagosPolizasBean extends TaxiGenericBean implements Serializable {
setCantidadAPagar(getSelectedPago().getDiferenciaPago());
setSelectedDetellePago(null);
setMetodoPago("");
+ setTipoTargeta("0");
+ }
+
+ public void limpiarTipoPago() {
+ setTipoTargeta("0");
}
public void pagarMultiple() {
@@ -160,6 +167,11 @@ public class PagosPolizasBean extends TaxiGenericBean implements Serializable {
return;
}
+ if (getMetodoPago().equals("TARJETA") && getTipoTargeta().equals("0")) {
+ showMessage(FacesMessage.SEVERITY_WARN, "ERROR", "Si selecciono el método de pago con TARJETA, debe de seleccionar el TIPO DE TARJETA ");
+ return;
+ }
+
// se valida el pago realizado sea el siguiente según el consecutivo
if (getSelectedPago().getId().equals(getPagoSiguiente())) {
// se actuliza el pago
@@ -197,6 +209,7 @@ public class PagosPolizasBean extends TaxiGenericBean implements Serializable {
detalle.setCobro(getLoggedUser());
detalle.setFolio(folio);
detalle.setMetodoPago(MetodoPago.valueOf(metodoDePago));
+ detalle.setTipoTarjeta(detalle.getMetodoPago().equals(MetodoPago.TARJETA) ? TipoTarjeta.valueOf(getTipoTargeta()) : null);
getPagosPolizaController().createDetellePago(detalle, getLoggedUser());
// se actualisa el pago pricipal
@@ -521,4 +534,12 @@ public class PagosPolizasBean extends TaxiGenericBean implements Serializable {
this.detallePagoDisponibleParaDevocion = detallePagoDisponibleParaDevocion;
}
+ public String getTipoTargeta() {
+ return tipoTargeta;
+ }
+
+ public void setTipoTargeta(String tipoTargeta) {
+ this.tipoTargeta = tipoTargeta;
+ }
+
}
diff --git a/crov-prase-web/src/main/webapp/app/prase/poliza/pagos.xhtml b/crov-prase-web/src/main/webapp/app/prase/poliza/pagos.xhtml
index 658aa21..f78056d 100644
--- a/crov-prase-web/src/main/webapp/app/prase/poliza/pagos.xhtml
+++ b/crov-prase-web/src/main/webapp/app/prase/poliza/pagos.xhtml
@@ -344,10 +344,24 @@