|
@ -9,7 +9,11 @@ import java.util.Optional; |
|
|
import javax.ejb.Stateless; |
|
|
import javax.ejb.Stateless; |
|
|
import javax.faces.application.FacesMessage; |
|
|
import javax.faces.application.FacesMessage; |
|
|
import javax.faces.context.FacesContext; |
|
|
import javax.faces.context.FacesContext; |
|
|
|
|
|
import xforce.dao.EstadosDAO; |
|
|
|
|
|
import xforce.dao.MarcaDAO; |
|
|
import xforce.dao.ProveedorDAO; |
|
|
import xforce.dao.ProveedorDAO; |
|
|
|
|
|
import xforce.modelo.Estados; |
|
|
|
|
|
import xforce.modelo.Marca; |
|
|
import xforce.modelo.Producto; |
|
|
import xforce.modelo.Producto; |
|
|
import xforce.modelo.Proveedor; |
|
|
import xforce.modelo.Proveedor; |
|
|
import xforce.msg.Mensaje; |
|
|
import xforce.msg.Mensaje; |
|
@ -30,29 +34,53 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
|
|
|
|
|
|
ProveedorDAO pDAO = new ProveedorDAO(); |
|
|
ProveedorDAO pDAO = new ProveedorDAO(); |
|
|
Mensaje m; |
|
|
Mensaje m; |
|
|
|
|
|
MarcaDAO marcaDAO = new MarcaDAO(); |
|
|
|
|
|
EstadosDAO estadosDao = new EstadosDAO(); |
|
|
|
|
|
|
|
|
//Toda la logica
|
|
|
//Toda la logica
|
|
|
|
|
|
Estados estados = estadosDao.buscarId(proveedor.getEstadosId()); |
|
|
|
|
|
System.out.println("ASAASASA"); |
|
|
|
|
|
if (estados == null) { |
|
|
|
|
|
System.out.println("El estado no existe. No se puede agregar el proveedor."); |
|
|
|
|
|
return Mensaje.ESTADO_ERRONEO; // Agrega un mensaje de error específico para marca no existente
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Marca marca = marcaDAO.buscarId(proveedor.getMarcaId()); |
|
|
|
|
|
System.out.println("ASAASASA"); |
|
|
|
|
|
|
|
|
|
|
|
if (marca == null) { |
|
|
|
|
|
System.out.println("La ubicacion no existe. No se puede agregar el producto."); |
|
|
|
|
|
return Mensaje.MARCA_ERRONEA; // Agrega un mensaje de error específico para marca no existente
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
if (proveedor.getNombre().isEmpty() |
|
|
if (proveedor.getNombre().isEmpty() |
|
|
||proveedor.getEmail().isEmpty() |
|
|
|| proveedor.getEmail().isEmpty() |
|
|
||proveedor.getTelefono().isEmpty() |
|
|
|| proveedor.getTelefono().isEmpty() |
|
|
) { |
|
|
|| proveedor.getEstadosId() == null |
|
|
|
|
|
|| proveedor.getMarcaId() == null |
|
|
|
|
|
|| proveedor.getDomicilio() == null) { |
|
|
|
|
|
|
|
|
System.out.println("Campos incompletos"); |
|
|
System.out.println("Campos incompletos"); |
|
|
return Mensaje.CAMPOS_INCOMPLETOS; |
|
|
return Mensaje.CAMPOS_INCOMPLETOS; |
|
|
} |
|
|
} |
|
|
proveedor.setEstado(2); |
|
|
proveedor.setEstado(2); |
|
|
Optional<Proveedor> pEncontradoOptional = pDAO.buscarproveedor(proveedor); |
|
|
Optional<Proveedor> pEncontradoOptional = pDAO.buscarproveedor(proveedor); |
|
|
|
|
|
Optional<Proveedor> telEncontradoOptional = pDAO.buscarTelefono(proveedor); |
|
|
|
|
|
|
|
|
if (pEncontradoOptional.isPresent()) { |
|
|
if (pEncontradoOptional.isPresent() && telEncontradoOptional.isPresent()) { |
|
|
// Manejar el caso en el que se encontró al menos una marca
|
|
|
// Manejar el caso en el que se encontró al menos una marca
|
|
|
|
|
|
|
|
|
System.out.println("Elemento duplicado"); |
|
|
System.out.println("Elemento duplicado"); |
|
|
addMessage(FacesMessage.SEVERITY_ERROR,"ERROR","Elemento duplicado"); |
|
|
addMessage(FacesMessage.SEVERITY_ERROR, "ERROR", "Elemento duplicado"); |
|
|
m = Mensaje.ELEMENTO_DUPLICADO; |
|
|
m = Mensaje.ELEMENTO_DUPLICADO; |
|
|
} else { |
|
|
} else { |
|
|
|
|
|
System.out.println("ASAASASA"); |
|
|
|
|
|
|
|
|
pDAO.agregar(proveedor); |
|
|
pDAO.agregar(proveedor); |
|
|
|
|
|
System.out.println("ASAASASA"); |
|
|
|
|
|
|
|
|
System.out.println("Agregado con exito"); |
|
|
System.out.println("Agregado con exito"); |
|
|
addMessage(FacesMessage.SEVERITY_INFO,"INFO","Agregado con exito"); |
|
|
addMessage(FacesMessage.SEVERITY_INFO, "INFO", "Agregado con exito"); |
|
|
m = Mensaje.SIN_ERROR; |
|
|
m = Mensaje.SIN_ERROR; |
|
|
} |
|
|
} |
|
|
return m; |
|
|
return m; |
|
@ -73,18 +101,17 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public Mensaje editar(Proveedor proveedor) { |
|
|
public Mensaje editar(Proveedor proveedor) { |
|
|
Mensaje m = null; |
|
|
Mensaje m = null; |
|
|
try { |
|
|
try { |
|
|
|
|
|
|
|
|
ProveedorDAO p = new ProveedorDAO(); |
|
|
ProveedorDAO p = new ProveedorDAO(); |
|
|
|
|
|
|
|
|
if (proveedor.getNombre().isEmpty() || proveedor.getEmail().isEmpty() || proveedor.getTelefono().isEmpty() |
|
|
if (proveedor.getNombre().isEmpty() || proveedor.getEmail().isEmpty() || proveedor.getTelefono().isEmpty()) { |
|
|
) { |
|
|
|
|
|
System.out.println("Algunos campos son erroneos"); |
|
|
System.out.println("Algunos campos son erroneos"); |
|
|
m = m.CAMPOS_INCOMPLETOS; |
|
|
m = m.CAMPOS_INCOMPLETOS; |
|
|
return m; |
|
|
return m; |
|
|
} |
|
|
} |
|
|
Optional<Proveedor> marcaEncontradoOptional = p.buscarproveedor(proveedor); |
|
|
Optional<Proveedor> marcaEncontradoOptional = p.buscarproveedor(proveedor); |
|
|
|
|
|
|
|
|
if (marcaEncontradoOptional.isPresent()) { |
|
|
if (marcaEncontradoOptional.isPresent()) { |
|
|
// Manejar el caso en el que se encontró al menos una marca
|
|
|
// Manejar el caso en el que se encontró al menos una marca
|
|
@ -99,20 +126,21 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
if (mark != null) { |
|
|
if (mark != null) { |
|
|
// Copiar los valores de los atributos (excepto estado) al producto existente
|
|
|
// Copiar los valores de los atributos (excepto estado) al producto existente
|
|
|
mark.setNombre(proveedor.getNombre()); |
|
|
mark.setNombre(proveedor.getNombre()); |
|
|
// Editar el usuario solo si todas las validaciones son exitosas
|
|
|
// Editar el usuario solo si todas las validaciones son exitosas
|
|
|
if (p.editar(proveedor) == true) { |
|
|
if (p.editar(proveedor) == true) { |
|
|
System.out.println("Editado con exito"); |
|
|
System.out.println("Editado con exito"); |
|
|
addMessage(FacesMessage.SEVERITY_INFO,"INFO","Editado con exito"); |
|
|
addMessage(FacesMessage.SEVERITY_INFO, "INFO", "Editado con exito"); |
|
|
m = m.SIN_ERROR; |
|
|
m = m.SIN_ERROR; |
|
|
return m; |
|
|
return m; |
|
|
}} else { |
|
|
} |
|
|
System.out.println("No existe le proveedor a editar"); |
|
|
} else { |
|
|
m = m.CAMPOS_INCOMPLETOS; |
|
|
System.out.println("No existe le proveedor a editar"); |
|
|
return m; |
|
|
m = m.CAMPOS_INCOMPLETOS; |
|
|
} |
|
|
return m; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
}catch (Exception e) { |
|
|
} catch (Exception e) { |
|
|
|
|
|
|
|
|
System.out.println("Algo es erroneo"); |
|
|
System.out.println("Algo es erroneo"); |
|
|
m = m.DATOS_INCORRECTOS; |
|
|
m = m.DATOS_INCORRECTOS; |
|
@ -123,12 +151,12 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public Mensaje eliminar(Proveedor proveedor) { |
|
|
public Mensaje eliminar(Proveedor proveedor) { |
|
|
Mensaje m = null; |
|
|
Mensaje m = null; |
|
|
ProveedorDAO proveedorDao = new ProveedorDAO(); |
|
|
ProveedorDAO proveedorDao = new ProveedorDAO(); |
|
|
Proveedor prov = proveedorDao.buscarPorId(proveedor); |
|
|
Proveedor prov = proveedorDao.buscarPorId(proveedor); |
|
|
|
|
|
|
|
|
if (prov != null) { |
|
|
if (prov != null) { |
|
|
List<Producto> idsMarcasReferenciadas = proveedorDao.buscarMarcasReferenciadas(prov); |
|
|
List<Producto> idsMarcasReferenciadas = proveedorDao.buscarMarcasReferenciadas(prov); |
|
|
|
|
|
|
|
|
/*for (Producto producto : idsMarcasReferenciadas) { |
|
|
/*for (Producto producto : idsMarcasReferenciadas) { |
|
|
if (marca.getId().equals(producto.getId())) { |
|
|
if (marca.getId().equals(producto.getId())) { |
|
@ -137,7 +165,6 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
}*/ |
|
|
}*/ |
|
|
|
|
|
|
|
|
if (!idsMarcasReferenciadas.isEmpty()) { |
|
|
if (!idsMarcasReferenciadas.isEmpty()) { |
|
|
|
|
|
|
|
|
System.out.println(idsMarcasReferenciadas.toString()); |
|
|
System.out.println(idsMarcasReferenciadas.toString()); |
|
@ -147,23 +174,23 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
m = Mensaje.ERROR_PRODUCTOS_ASOCIADOS; |
|
|
m = Mensaje.ERROR_PRODUCTOS_ASOCIADOS; |
|
|
System.out.println(m); |
|
|
System.out.println(m); |
|
|
|
|
|
|
|
|
}else{ |
|
|
} else { |
|
|
if (prov.getEstado() == 2) { |
|
|
if (prov.getEstado() == 2) { |
|
|
prov.setEstado(1); |
|
|
prov.setEstado(1); |
|
|
|
|
|
|
|
|
if (proveedorDao.eliminar(prov)) { |
|
|
if (proveedorDao.eliminar(prov)) { |
|
|
System.out.println("provvedor eliminado"); |
|
|
System.out.println("provvedor eliminado"); |
|
|
addMessage(FacesMessage.SEVERITY_INFO, "INFO", "Eliminado correctamente"); |
|
|
addMessage(FacesMessage.SEVERITY_INFO, "INFO", "Eliminado correctamente"); |
|
|
m = Mensaje.SIN_ERROR; |
|
|
m = Mensaje.SIN_ERROR; |
|
|
|
|
|
} else { |
|
|
|
|
|
System.out.println("erro al eliminar proveedor"); |
|
|
|
|
|
|
|
|
|
|
|
m = Mensaje.DATOS_INCORRECTOS; |
|
|
|
|
|
} |
|
|
} else { |
|
|
} else { |
|
|
System.out.println("erro al eliminar proveedor"); |
|
|
System.out.println("proveedor se acaba de eliminar"); |
|
|
|
|
|
m = Mensaje.NO_EXISTE; |
|
|
m = Mensaje.DATOS_INCORRECTOS; |
|
|
|
|
|
} |
|
|
} |
|
|
} else { |
|
|
|
|
|
System.out.println("proveedor se acaba de eliminar"); |
|
|
|
|
|
m = Mensaje.NO_EXISTE; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} else { |
|
|
} else { |
|
@ -174,8 +201,7 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
return m; |
|
|
return m; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
|
|
|
public List<Proveedor> buscarValidos(boolean estado) { |
|
|
public List<Proveedor> buscarValidos(boolean estado) { |
|
|
ProveedorDAO proveedor = new ProveedorDAO(); |
|
|
ProveedorDAO proveedor = new ProveedorDAO(); |
|
|
System.out.println("Proveedor existente"); |
|
|
System.out.println("Proveedor existente"); |
|
@ -183,8 +209,7 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
return proveedor.buscarValidos(estado); |
|
|
return proveedor.buscarValidos(estado); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
|
|
|
public Proveedor buscarNombre(Proveedor proveedor) { |
|
|
public Proveedor buscarNombre(Proveedor proveedor) { |
|
|
ProveedorDAO p = new ProveedorDAO(); |
|
|
ProveedorDAO p = new ProveedorDAO(); |
|
|
if (p.buscarPorNombre(proveedor) == null) { |
|
|
if (p.buscarPorNombre(proveedor) == null) { |
|
@ -197,10 +222,9 @@ public class ProveedorBL implements ProveedorBLLocal { |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public void addMessage(FacesMessage.Severity severity, String summary, String detail) { |
|
|
public void addMessage(FacesMessage.Severity severity, String summary, String detail) { |
|
|
FacesContext.getCurrentInstance(). |
|
|
FacesContext.getCurrentInstance(). |
|
|
addMessage("mensajeProveedor", new FacesMessage(severity, summary, detail)); |
|
|
addMessage("mensajeProveedor", new FacesMessage(severity, summary, detail)); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|