List of usage examples for org.hibernate.criterion Restrictions ne
public static SimpleExpression ne(String propertyName, Object value)
From source file:love.sola.netsupport.sql.TableTicket.java
License:Open Source License
public static Ticket latestOpen(User u) { try (Session s = SQLCore.sf.openSession()) { return (Ticket) s.createCriteria(Ticket.class).addOrder(Order.desc(Ticket.PROPERTY_SUBMIT_TIME)) .add(Restrictions.eq(Ticket.PROPERTY_USER, u)) .add(Restrictions.ne(Ticket.PROPERTY_STATUS, Status.SOLVED)).setMaxResults(1).uniqueResult(); }/*from w ww .ja va2 s .co m*/ }
From source file:love.sola.netsupport.sql.TableTicket.java
License:Open Source License
public static boolean hasOpen(User u) { try (Session s = SQLCore.sf.openSession()) { return (long) s.createCriteria(Ticket.class).add(Restrictions.eq(Ticket.PROPERTY_USER, u)) .add(Restrictions.ne(Ticket.PROPERTY_STATUS, Status.SOLVED)) .setProjection(Projections.rowCount()).uniqueResult() > 0; }/* w ww . j a v a 2s . c o m*/ }
From source file:love.sola.netsupport.sql.TableTicket.java
License:Open Source License
@SuppressWarnings("unchecked") public static List<Ticket> unsolvedByBlock(int b) { if (b == 0)//from ww w . j a v a 2 s . c o m return unsolved(); try (Session s = SQLCore.sf.openSession()) { return s.createCriteria(Ticket.class).addOrder(Order.desc(Ticket.PROPERTY_SUBMIT_TIME)) .add(Restrictions.ne(Ticket.PROPERTY_STATUS, Status.SOLVED)) .createCriteria(Ticket.PROPERTY_USER) .add(Restrictions.between(User.PROPERTY_BLOCK, b * 10, (b + 1) * 10 - 1)).list(); } }
From source file:love.sola.netsupport.sql.TableTicket.java
License:Open Source License
@SuppressWarnings("unchecked") public static List<Ticket> unsolved() { try (Session s = SQLCore.sf.openSession()) { return s.createCriteria(Ticket.class).createAlias(Ticket.PROPERTY_USER, "u") .addOrder(Order.asc("u." + User.PROPERTY_BLOCK)) .addOrder(Order.desc(Ticket.PROPERTY_SUBMIT_TIME)) .add(Restrictions.ne(Ticket.PROPERTY_STATUS, Status.SOLVED)).list(); }//from www . j ava2 s . co m }
From source file:modelo.dao.ExamenAsignadoDAO.java
License:Open Source License
/** * Obtiene una lista de examenes contestados de un alumno filtrandose por el * curso ingresado//from w w w .j a v a2 s. c o m * * @param alumno el objeto alumno que representa al alumno del cual se * quiere obtener los examenes contestados * @param curso el objeto curso el cual sera el filtro para obtener los * examenes contestados * @return lista de examenes contestados */ public List<ExamenAsignadoDTO> obtenerContestados(UsuarioDTO alumno, CursoDTO curso) { Session s = getSession(); Transaction tx = null; List<ExamenAsignadoDTO> examenes = null; if (s == null) { System.out.println("Session nula, regresando null...."); return null; } try { tx = s.beginTransaction(); //Obtener los exmenes contestados de un alumno en el curso ingresado Criteria c = s.createCriteria(ExamenAsignadoDTO.class, "examen") .createAlias("examen.examen.curso", "curso") .add(Restrictions.and(Restrictions.eq("examen.alumno", alumno), Restrictions.eq("curso.nombre", curso.getNombre()), Restrictions.ne("examen.calificacion", -1.0))); examenes = c.list(); tx.commit(); } catch (StaleStateException ex) { if (tx != null) { tx.rollback(); } } catch (Exception e) { if (tx != null) { tx.rollback(); } examenes = null; } finally { s.close(); System.out.println("Session cerrada"); } return examenes; }
From source file:net.firejack.platform.core.store.AbstractStore.java
License:Apache License
protected Criterion getRestrictions(SearchQuery query, Class<?> type) { Criterion criterion;//w w w .jav a 2s.co m Object value = query.getValue(); QueryOperation operation = query.getOperation(); if (value != null && !(QueryOperation.FIELDEQUALS.equals(operation) || QueryOperation.FIELDNOTEQUALS.equals(operation) || QueryOperation.FIELDGREATERTHAN.equals(operation) || QueryOperation.FIELDLESSTHAN.equals(operation))) { if (value instanceof Collection) { Collection values = (Collection) value; if (Integer.class.equals(type)) { List<Integer> list = new ArrayList<Integer>(); for (Object item : values) { list.add(Integer.parseInt(item.toString())); } value = list; } else if (Long.class.equals(type)) { List<Long> list = new ArrayList<Long>(); for (Object item : values) { list.add(Long.parseLong(item.toString())); } value = list; } else if (java.sql.Date.class.equals(type) || Date.class.equals(type)) { List<Date> list = new ArrayList<Date>(); for (Object item : values) { Tuple<Date, QueryOperation> tuple = convertToDate(item, operation); operation = tuple.getValue(); list.add(tuple.getKey()); } value = list; } else if (Enum.class.isAssignableFrom(type)) { List<Enum> enumValues = new ArrayList<Enum>(values.size()); for (Object item : values) { Enum enumItem = prepareEnumFromSearchCriteria((Class<? extends Enum>) type, item); enumValues.add(enumItem); } value = enumValues; } } else { if (Integer.class.equals(type)) { value = Integer.parseInt(value.toString()); } else if (Long.class.equals(type)) { value = Long.parseLong(value.toString()); } else if (Double.class.equals(type)) { value = Double.parseDouble(value.toString()); } else if (java.sql.Date.class.equals(type) || Date.class.equals(type)) { Tuple<Date, QueryOperation> tuple = convertToDate(value, operation); value = tuple.getKey(); operation = tuple.getValue(); } else if (Enum.class.isAssignableFrom(type)) { value = prepareEnumFromSearchCriteria((Class<? extends Enum>) type, value); } } } if (!String.class.equals(type) && (QueryOperation.LIKECS.equals(operation) || QueryOperation.LIKECSFIRST.equals(operation) || QueryOperation.LIKE.equals(operation) || QueryOperation.LIKEFIRST.equals(operation))) { operation = QueryOperation.EQUALS; } switch (operation) { case LIKECS: criterion = Restrictions.like(query.getField(), "%" + value + "%"); break; case LIKECSFIRST: criterion = Restrictions.like(query.getField(), value + "%"); break; case LIKE: criterion = Restrictions.ilike(query.getField(), "%" + value + "%"); break; case LIKEFIRST: criterion = Restrictions.ilike(query.getField(), value + "%"); break; case EQUALS: criterion = Restrictions.eq(query.getField(), value); break; case LESSTHAN: criterion = Restrictions.lt(query.getField(), value); break; case GREATERTHAN: criterion = Restrictions.gt(query.getField(), value); break; case ISNULL: criterion = Restrictions.isNull(query.getField()); break; case ISNOTNULL: criterion = Restrictions.isNotNull(query.getField()); break; case ISEMPTY: criterion = Restrictions.isEmpty(query.getField()); break; case ISNOTEMPTY: criterion = Restrictions.isNotEmpty(query.getField()); break; case NOTEQUALS: criterion = Restrictions.ne(query.getField(), value); break; case IN: criterion = generateInRestriction(query.getField(), (Collection) value); break; case NOTIN: criterion = Restrictions.not(generateInRestriction(query.getField(), (Collection) value)); break; case FIELDEQUALS: criterion = Restrictions.eqProperty(query.getField(), value != null ? value.toString() : ""); break; case FIELDNOTEQUALS: criterion = Restrictions.neProperty(query.getField(), value != null ? value.toString() : ""); break; case FIELDGREATERTHAN: criterion = Restrictions.gtProperty(query.getField(), value != null ? value.toString() : ""); break; case FIELDLESSTHAN: criterion = Restrictions.ltProperty(query.getField(), value != null ? value.toString() : ""); break; default: throw new RuntimeException("Operation " + query.getField() + " is not a valid operation"); } return criterion; }
From source file:net.firejack.platform.core.store.registry.EntityStore.java
License:Apache License
@Override @Transactional(readOnly = true)//from w w w . j av a2s . co m public List<EntityModel> findAllWithFilter(SpecifiedIdsFilter<Long> filter, Boolean isTypeEntity) { List<Criterion> criterions = new ArrayList<Criterion>(); Criterion typeEntityCriterion; if (isTypeEntity) { typeEntityCriterion = Restrictions.eq("typeEntity", true); } else { typeEntityCriterion = Restrictions.ne("typeEntity", true); } criterions.add(typeEntityCriterion); List<EntityModel> foundEntities = findAllWithFilter(criterions, filter); if (foundEntities != null) { for (EntityModel entity : foundEntities) { Hibernate.initialize(entity.getFields()); Hibernate.initialize(entity.getExtendedEntity()); initializeExtendedEntities(entity.getExtendedEntity()); } } return foundEntities; }
From source file:net.firejack.platform.core.store.registry.EntityStore.java
License:Apache License
private void checkUniqueEntity(EntityModel entity) { if (entity.getTypeEntity()) return;//from ww w. j a va 2s . c o m List<Criterion> criterions = new ArrayList<Criterion>(); criterions.add(Restrictions.eq("name", entity.getName())); criterions.add(Restrictions.eq("typeEntity", false)); criterions.add(Restrictions.like("lookup", StringUtils.getPackageLookup(entity.getLookup()) + ".%")); //all in the same package if (entity.getId() != null) { criterions.add(Restrictions.ne("id", entity.getId())); } List<EntityModel> list = findAllWithFilter(criterions, null, null, new Order[0]); if (list.isEmpty()) return; String tableName = generateEntityTableName(entity); for (EntityModel model : list) { String anotherTableName = generateEntityTableName(model); if (tableName.equals(anotherTableName)) { throw new BusinessFunctionException( "Unique Entity Name conflict. You try to save Entity which the same name like for Entity ['" + model.getLookup() + "']"); } } }
From source file:net.firejack.platform.core.store.registry.RoleStore.java
License:Apache License
@Override @SuppressWarnings("unchecked") @Transactional(readOnly = true)/* w w w.java 2 s.com*/ public List<RoleModel> findContextRoles(List<Long> exceptIds) { Criteria criteria = getSession().createCriteria(RoleModel.class); if (exceptIds != null && !exceptIds.isEmpty()) { criteria.add(Restrictions.not(Restrictions.in("id", exceptIds))); } criteria.createAlias("parent", "parent"); criteria.add(Restrictions.ne("parent.class", "PKG")); return (List<RoleModel>) criteria.list(); }
From source file:net.firejack.platform.core.store.registry.RoleStore.java
License:Apache License
@Override @SuppressWarnings("unchecked") @Transactional(readOnly = true)/* w w w . j av a 2 s . c o m*/ public List<RoleModel> findContextRolesByLookupList(List<String> lookupList) { List<RoleModel> contextRoles; if (lookupList == null || lookupList.isEmpty()) { contextRoles = new ArrayList<RoleModel>(); } else { Criteria criteria = getSession().createCriteria(RoleModel.class); criteria.add(Restrictions.in("lookup", lookupList)); criteria.createAlias("parent", "parent"); criteria.add(Restrictions.ne("parent.class", "PKG")); contextRoles = (List<RoleModel>) criteria.list(); } return contextRoles; }