use of com.querydsl.core.BooleanBuilder in project sic by belluccifranco.
the class TransportistaServiceImpl method buildPredicadoNombre.
private BooleanBuilder buildPredicadoNombre(String nombre, QTransportista qtransportista) {
String[] terminos = nombre.split(" ");
BooleanBuilder descripcionProducto = new BooleanBuilder();
for (String termino : terminos) {
descripcionProducto.and(qtransportista.nombre.containsIgnoreCase(termino));
}
return descripcionProducto;
}
use of com.querydsl.core.BooleanBuilder in project sic by belluccifranco.
the class ProductoServiceImpl method buildPredicadoDescripcion.
private BooleanBuilder buildPredicadoDescripcion(String descripcion, QProducto qproducto) {
String[] terminos = descripcion.split(" ");
BooleanBuilder descripcionProducto = new BooleanBuilder();
for (String termino : terminos) {
descripcionProducto.and(qproducto.descripcion.containsIgnoreCase(termino));
}
return descripcionProducto;
}
use of com.querydsl.core.BooleanBuilder in project sic by belluccifranco.
the class ProveedorServiceImpl method buildPredicadoRazonSocial.
private BooleanBuilder buildPredicadoRazonSocial(String razonSocial, QProveedor qproveedor) {
String[] terminos = razonSocial.split(" ");
BooleanBuilder predicadoRazonSocial = new BooleanBuilder();
for (String termino : terminos) {
predicadoRazonSocial.and(qproveedor.razonSocial.containsIgnoreCase(termino));
}
return predicadoRazonSocial;
}
use of com.querydsl.core.BooleanBuilder in project sic by belluccifranco.
the class TransportistaServiceImpl method buscarTransportistas.
@Override
public List<Transportista> buscarTransportistas(BusquedaTransportistaCriteria criteria) {
// Empresa
if (criteria.getEmpresa() == null) {
throw new EntityNotFoundException(ResourceBundle.getBundle("Mensajes").getString("mensaje_empresa_no_existente"));
}
QTransportista qtransportista = QTransportista.transportista;
BooleanBuilder builder = new BooleanBuilder();
builder.and(qtransportista.empresa.eq(criteria.getEmpresa()).and(qtransportista.eliminado.eq(false)));
// Nombre
if (criteria.isBuscarPorNombre() == true) {
builder.and(this.buildPredicadoNombre(criteria.getNombre(), qtransportista));
}
// Localidad
if (criteria.isBuscarPorLocalidad() == true) {
builder.and(qtransportista.localidad.eq(criteria.getLocalidad()));
}
// Provincia
if (criteria.isBuscarPorProvincia() == true) {
builder.and(qtransportista.localidad.provincia.eq(criteria.getProvincia()));
}
// Pais
if (criteria.isBuscarPorPais() == true) {
builder.and(qtransportista.localidad.provincia.pais.eq(criteria.getPais()));
}
List<Transportista> list = new ArrayList<>();
transportistaRepository.findAll(builder, new Sort(Sort.Direction.ASC, "nombre")).iterator().forEachRemaining(list::add);
return list;
}
use of com.querydsl.core.BooleanBuilder in project sic by belluccifranco.
the class PedidoServiceImpl method buscarConCriteria.
@Override
public Page<Pedido> buscarConCriteria(BusquedaPedidoCriteria criteria) {
// Fecha
if (criteria.isBuscaPorFecha() == true & (criteria.getFechaDesde() == null | criteria.getFechaHasta() == null)) {
throw new BusinessServiceException(ResourceBundle.getBundle("Mensajes").getString("mensaje_pedido_fechas_busqueda_invalidas"));
}
if (criteria.isBuscaPorFecha() == true) {
Calendar cal = new GregorianCalendar();
cal.setTime(criteria.getFechaDesde());
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
criteria.setFechaDesde(cal.getTime());
cal.setTime(criteria.getFechaHasta());
cal.set(Calendar.HOUR_OF_DAY, 23);
cal.set(Calendar.MINUTE, 59);
cal.set(Calendar.SECOND, 59);
criteria.setFechaHasta(cal.getTime());
}
// Empresa
if (criteria.getEmpresa() == null) {
throw new EntityNotFoundException(ResourceBundle.getBundle("Mensajes").getString("mensaje_empresa_no_existente"));
}
// Cliente
if (criteria.isBuscaCliente() == true && criteria.getCliente() == null) {
throw new BusinessServiceException(ResourceBundle.getBundle("Mensajes").getString("mensaje_cliente_vacio_razonSocial"));
}
// Usuario
if (criteria.isBuscaUsuario() == true && criteria.getUsuario() == null) {
throw new BusinessServiceException(ResourceBundle.getBundle("Mensajes").getString("mensaje_usuario_vacio_nombre"));
}
QPedido qpedido = QPedido.pedido;
BooleanBuilder builder = new BooleanBuilder();
builder.and(qpedido.empresa.eq(criteria.getEmpresa()).and(qpedido.eliminado.eq(false)));
if (criteria.isBuscaPorFecha() == true) {
FormatterFechaHora formateadorFecha = new FormatterFechaHora(FormatterFechaHora.FORMATO_FECHAHORA_INTERNACIONAL);
DateExpression<Date> fDesde = Expressions.dateTemplate(Date.class, "convert({0}, datetime)", formateadorFecha.format(criteria.getFechaDesde()));
DateExpression<Date> fHasta = Expressions.dateTemplate(Date.class, "convert({0}, datetime)", formateadorFecha.format(criteria.getFechaHasta()));
builder.and(qpedido.fecha.between(fDesde, fHasta));
}
if (criteria.isBuscaCliente() == true) {
builder.and(qpedido.cliente.eq(criteria.getCliente()));
}
if (criteria.isBuscaUsuario() == true) {
builder.and(qpedido.usuario.eq(criteria.getUsuario()));
}
if (criteria.isBuscaPorNroPedido() == true) {
builder.and(qpedido.nroPedido.eq(criteria.getNroPedido()));
}
Page<Pedido> pedidos = pedidoRepository.findAll(builder, criteria.getPageable());
this.calcularTotalActualDePedidos(pedidos.getContent());
return pedidos;
}
Aggregations