List of usage examples for org.hibernate.criterion Restrictions sqlRestriction
public static Criterion sqlRestriction(String sql)
From source file:com.viettel.vsaadmin.database.DAOHibernate.DepartmentDAOHE.java
License:Open Source License
/** * * @return//from www . j ava 2 s . com */ public List<Department> getParentDeptForTree(List<Long> listDeptId, String... type) { Criterion[] criterion = new Criterion[4]; criterion[0] = Restrictions.isNull("parentId"); criterion[1] = Restrictions.in("deptId", listDeptId); criterion[2] = Restrictions.eq("status", (short) 1); criterion[3] = Restrictions .sqlRestriction(" 1 = 1 order by nlssort(lower({alias}.DEPT_NAME),'nls_sort = Vietnamese') "); return this.findByCriteria(0, -1, criterion); }
From source file:com.viettel.vsaadmin.database.DAOHibernate.DepartmentDAOHE.java
License:Open Source License
/** * * @return/*from w w w . jav a 2 s .c o m*/ */ public List<Department> getDeptListByParentId(Long parentId, Boolean isCheckStatus) { Criterion[] criterion = new Criterion[3]; criterion[0] = Restrictions.eq("parentId", parentId); if (isCheckStatus) { criterion[1] = Restrictions.eq("status", 1L); } else { criterion[1] = Restrictions.isNotNull("deptId"); } // criterion[1] = Restrictions.ne(idField, entityId); //criteria.addOrder(Order.asc("name")); criterion[2] = Restrictions .sqlRestriction(" 1 = 1 order by nlssort(lower({alias}.DEPT_NAME),'nls_sort = Vietnamese') "); return this.findByCriteria(0, -1, criterion); }
From source file:com.viettel.vsaadmin.database.DAOHibernate.UsersDAOHE.java
License:Open Source License
/** * lay danh sach user cua don vi// w w w .ja v a 2 s . co m * * @param deptId * @return */ public List getListUserOfDept(Long deptId) throws Exception { Criterion[] criterion = new Criterion[2]; criterion[0] = Restrictions.eq("deptId", deptId); criterion[1] = Restrictions.sqlRestriction(" 1 = 1 order by {alias}.USER_NAME "); return this.findByCriteria(0, -1, criterion); }
From source file:com.wavemaker.runtime.data.task.SearchTask.java
License:Open Source License
protected Criteria getCritieria(Session session, Object rootSearchObject, final QueryOptions options, String dbName) {//from w w w . j a v a 2s.c om final DataServiceMetaData metaData = getMetaData(dbName); Criteria rootCriteria = null; final Map<String, Criteria> criterias = new ImmutableEntryMap<String, Criteria>(); if (rootSearchObject instanceof Class) { rootCriteria = initCriteriasMap(criterias, (Class<?>) rootSearchObject, session); } else { rootCriteria = initCriteriasMap(criterias, rootSearchObject.getClass(), session); addExample(rootSearchObject, rootCriteria, options); handleIdInSearch(rootSearchObject, rootCriteria, options, metaData); ObjectGraphTraversal.ObjectVisitor ov = new ObjectGraphTraversal.ObjectVisitor() { @Override public void cycle(Object o, Context ctx) { } @Override public void visit(Object queryInstance, Context ctx) { String propertyName = ctx.getProperties().get(0); if (DataServiceLoggers.taskLogger.isDebugEnabled()) { DataServiceLoggers.taskLogger.debug("Adding criteria on property " + propertyName); } Criteria parentCriteria = (Criteria) ctx.getValues().get(1); if (DataServiceLoggers.taskLogger.isDebugEnabled()) { DataServiceLoggers.taskLogger.debug("Parent criteria is " + parentCriteria); } Criteria c = parentCriteria.createCriteria(propertyName); String k = ObjectUtils.toString(ctx.getProperties(), ServiceConstants.PROPERTY_SEP); criterias.put(k, c); ctx.getValues().set(0, c); addExample(queryInstance, c, options); handleIdInSearch(queryInstance, c, options, metaData); } }; ObjectGraphTraversal tr = DataServiceUtils.getRelatedTraversal(ov, getObjectAccess(), metaData, false); tr.traverse(rootSearchObject, rootCriteria); } if (addOrder()) { applyOrderBy(options, criterias); } for (String s : options.getSqlRestrictions()) { rootCriteria.add(Restrictions.sqlRestriction(s)); } return rootCriteria; }
From source file:com.yahoo.elide.datastores.hibernate3.filter.CriterionFilterOperation.java
License:Apache License
@Override public Criterion apply(FilterPredicate filterPredicate) { List<FilterPredicate.PathElement> path = filterPredicate.getPath(); /* If the predicate refers to a nested association, the restriction should be 'alias.fieldName' */ String alias;/*from w ww .j a va2 s . c o m*/ if (path.size() > 1) { alias = getAlias(path); alias = alias + "." + path.get(path.size() - 1).getFieldName(); /* If the predicate refers to the root entity, the restriction should be 'fieldName' */ } else { alias = path.get(0).getFieldName(); } switch (filterPredicate.getOperator()) { case IN: if (filterPredicate.getValues().isEmpty()) { return Restrictions.sqlRestriction("(false)"); } return Restrictions.in(alias, filterPredicate.getValues()); case NOT: if (filterPredicate.getValues().isEmpty()) { return Restrictions.sqlRestriction("(true)"); } return Restrictions.not(Restrictions.in(alias, filterPredicate.getValues())); case PREFIX: return Restrictions.like(alias, filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER) + MATCHALL_CHARACTER); case PREFIX_CASE_INSENSITIVE: return Restrictions.ilike(alias, filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER) + MATCHALL_CHARACTER); case POSTFIX: return Restrictions.like(alias, MATCHALL_CHARACTER + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER)); case POSTFIX_CASE_INSENSITIVE: return Restrictions.ilike(alias, MATCHALL_CHARACTER + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER)); case INFIX: return Restrictions.like(alias, MATCHALL_CHARACTER + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER) + MATCHALL_CHARACTER); case INFIX_CASE_INSENSITIVE: return Restrictions.ilike(alias, MATCHALL_CHARACTER + filterPredicate.getStringValueEscaped(SPECIAL_CHARACTER, ESCAPE_CHARACTER) + MATCHALL_CHARACTER); case ISNULL: return Restrictions.isNull(alias); case NOTNULL: return Restrictions.isNotNull(alias); case LT: return Restrictions.lt(alias, filterPredicate.getValues().get(0)); case LE: return Restrictions.le(alias, filterPredicate.getValues().get(0)); case GT: return Restrictions.gt(alias, filterPredicate.getValues().get(0)); case GE: return Restrictions.ge(alias, filterPredicate.getValues().get(0)); case TRUE: return Restrictions.sqlRestriction("(true)"); case FALSE: return Restrictions.sqlRestriction("(false)"); default: throw new InvalidPredicateException("Operator not implemented: " + filterPredicate.getOperator()); } }
From source file:Contabilidad.RCuentas.java
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed // TODO add your handling code here: Session session = HibernateUtil.getSessionFactory().openSession(); try {//from w w w.j a va 2 s . c o m valores = lista.getSelectedValues(); session.beginTransaction(); if (cb.getSelectedItem().toString().compareTo("FACTURA") == 0) { Criteria consulta = session.createCriteria(Factura.class); if (valores.length > 0) consulta.add(Restrictions.in("estatus", valores)); String campo = "fecha"; if (cb_fecha.getSelectedItem().toString().compareToIgnoreCase("Estatus") == 0) campo = "f_estatus"; if (t_fecha3.getText().compareTo("AAAA-MM-DD") != 0) { consulta.add(Restrictions.sqlRestriction( "STR_TO_DATE(" + campo + ", '%Y-%m-%d') >= '" + t_fecha3.getText() + "'")); } if (t_fecha4.getText().compareTo("AAAA-MM-DD") != 0) { consulta.add(Restrictions.sqlRestriction( "STR_TO_DATE(" + campo + ", '%Y-%m-%d') <= '" + t_fecha4.getText() + "'")); } Factura[] facturas = (Factura[]) consulta.list().toArray(new Factura[0]); model = (DefaultTableModel) t_datos.getModel(); if (facturas.length > 0) { model.getDataVector().removeAllElements(); for (int x = 0; x < facturas.length; x++) { Factura actor = (Factura) facturas[x]; Object[] renglon = new Object[11]; //"ID", "FECHA", "RFC", "R. SOCIAL", "F. FISCAL", "SERIE", "FOLIO", "MONTO", "ESTATUS", "F. ESTATUS", "NOTAS" renglon[0] = "" + actor.getIdFactura(); if (actor.getFechaFiscal() != null) renglon[1] = actor.getFechaFiscal(); else renglon[1] = ""; renglon[2] = actor.getRfcReceptor(); renglon[3] = actor.getNombreReceptor(); renglon[4] = actor.getFFiscal(); renglon[5] = actor.getSerie(); renglon[6] = actor.getFolio(); Concepto[] ren = (Concepto[]) actor.getConceptos().toArray(new Concepto[0]); BigDecimal total = new BigDecimal("0.0"); for (int w = 0; w < actor.getConceptos().size(); w++) { BigDecimal cantidad = new BigDecimal("" + ren[w].getCantidad()); BigDecimal precio = new BigDecimal("" + ren[w].getPrecio()); BigDecimal descuento = new BigDecimal("" + ren[w].getDescuento()); descuento = descuento.divide(new BigDecimal("100")); BigDecimal subtotal = cantidad.multiply(precio).setScale(2, BigDecimal.ROUND_HALF_UP); BigDecimal resta = subtotal.multiply(descuento).setScale(2, BigDecimal.ROUND_HALF_UP); total = total.add(subtotal.subtract(resta)).setScale(2, BigDecimal.ROUND_HALF_UP); } BigDecimal iva = new BigDecimal("" + actor.getIva()); iva = iva.divide(new BigDecimal("100")); total = total.add(total.multiply(iva)); //Double.parseDouble(total.setScale(2, BigDecimal.ROUND_HALF_UP).toString()); renglon[7] = total.setScale(2, RoundingMode.HALF_UP).doubleValue(); renglon[8] = actor.getEstatus(); if (actor.getfEstatus() != null) renglon[9] = actor.getfEstatus().toString(); else renglon[9] = ""; renglon[10] = actor.getTexto(); model.addRow(renglon); } } else model.getDataVector().removeAllElements(); } else { Criteria consulta = session.createCriteria(Nota.class); if (valores.length > 0) consulta.add(Restrictions.in("estatus", valores)); String campo = "fecha"; if (cb_fecha.getSelectedItem().toString().compareToIgnoreCase("Estatus") == 0) campo = "f_estatus"; if (t_fecha3.getText().compareTo("AAAA-MM-DD") != 0) { consulta.add(Restrictions.sqlRestriction( "STR_TO_DATE(" + campo + ", '%Y-%m-%d') >= '" + t_fecha3.getText() + "'")); } if (t_fecha4.getText().compareTo("AAAA-MM-DD") != 0) { consulta.add(Restrictions.sqlRestriction( "STR_TO_DATE(" + campo + ", '%Y-%m-%d') <= '" + t_fecha4.getText() + "'")); } Nota[] nota = (Nota[]) consulta.list().toArray(new Nota[0]); model = (DefaultTableModel) t_datos.getModel(); if (nota.length > 0) { model.getDataVector().removeAllElements(); for (int x = 0; x < nota.length; x++) { Nota actor = (Nota) nota[x]; Object[] renglon = new Object[11]; //"ID", "FECHA", "RFC", "R. SOCIAL", "F. FISCAL", "SERIE", "FOLIO", "MONTO", "ESTATUS", "F. ESTATUS", "NOTAS" renglon[0] = "" + actor.getIdNota(); if (actor.getFechaFiscal() != null) renglon[1] = actor.getFechaFiscal(); else renglon[1] = ""; renglon[2] = actor.getRfcReceptor(); renglon[3] = actor.getNombreReceptor(); renglon[4] = actor.getFFiscal(); renglon[5] = actor.getSerie(); renglon[6] = actor.getFolio(); Concepto[] ren = (Concepto[]) actor.getConceptos().toArray(new Concepto[0]); BigDecimal total = new BigDecimal("0.0"); for (int w = 0; w < actor.getConceptos().size(); w++) { BigDecimal cantidad = new BigDecimal("" + ren[w].getCantidad()); BigDecimal precio = new BigDecimal("" + ren[w].getPrecio()); BigDecimal descuento = new BigDecimal("" + ren[w].getDescuento()); descuento = descuento.divide(new BigDecimal("100")); BigDecimal subtotal = cantidad.multiply(precio).setScale(2, BigDecimal.ROUND_HALF_UP); BigDecimal resta = subtotal.multiply(descuento).setScale(2, BigDecimal.ROUND_HALF_UP); total = total.add(subtotal.subtract(resta)).setScale(2, BigDecimal.ROUND_HALF_UP); } BigDecimal iva = new BigDecimal("" + actor.getIva()); iva = iva.divide(new BigDecimal("100")); total = total.add(total.multiply(iva)); //Double.parseDouble(total.setScale(2, BigDecimal.ROUND_HALF_UP).toString()); renglon[7] = total.setScale(2, RoundingMode.HALF_UP).doubleValue(); renglon[8] = actor.getEstatus(); if (actor.getfEstatus() != null) renglon[9] = actor.getfEstatus().toString(); else renglon[9] = ""; renglon[10] = actor.getTexto(); model.addRow(renglon); } } else model.getDataVector().removeAllElements(); } t_datos.revalidate(); } catch (Exception e) { e.printStackTrace(); } if (session != null) if (session.isOpen()) session.close(); }
From source file:controller.CategoriaEmpresaController.java
public void buscar() { SessionFactory sf = HibernateUtil.getSessionFactory(); Session s = sf.openSession();/*from w ww .j a v a2s. co m*/ Criteria c = s.createCriteria(CategoriaEmpresa.class); c.addOrder(Order.desc("idCategoriaEmpresa")); c.add(Restrictions.sqlRestriction("limit 1")); }
From source file:cruds.PortofolioforuserCrudImplementation.java
@Override public ArrayList<Portofolioforuser> selectPortofolios(Category cat) { List<Portofolioforuser> portofolios = new ArrayList<>(); try {/* ww w . j a v a2 s .c o m*/ sc.beginTransaction(); Criteria cr = sc.createCriteria(Portofolioforuser.class); cr.add(Restrictions.eq("category.categoryId", cat.getCategoryId())); cr.add(Restrictions.sqlRestriction("1=1 order by rand()")); portofolios = cr.list(); sc.getTransaction().commit(); } catch (HibernateException e) { e.printStackTrace(); } finally { sc.close(); } return (ArrayList<Portofolioforuser>) portofolios; }
From source file:cruds.ProjectCrudImplementation.java
@Override public ArrayList<Projectsforusers> selectProjects(int id) { List<Projectsforusers> projects = new ArrayList<>(); Criteria criteria = sc.createCriteria(Projectsforusers.class); criteria.add(Restrictions.eq("users.userId", id)); criteria.add(Restrictions.sqlRestriction("1=1 order by rand()")); projects = criteria.list();// w w w.j av a 2 s .c om return (ArrayList<Projectsforusers>) projects; }
From source file:cruds.ProjectCrudImplementation.java
@Override public ArrayList<Projectsforusers> selectLastInterd() { System.out.println("in crud mona"); List<Projectsforusers> projects = new ArrayList<>(); Session session = SessionCreation.getSessionFactory().openSession(); int n = 2;//from w w w. jav a2 s . c om Criteria count = session.createCriteria(Projectsforusers.class); count.setProjection(Projections.rowCount()); Long total = (Long) count.uniqueResult(); Criteria criteria = session.createCriteria(Projectsforusers.class); criteria.setFirstResult((int) (total - n)); criteria.add(Restrictions.sqlRestriction("1=1 order by rand()")); criteria.setMaxResults(n); projects = criteria.list(); return (ArrayList<Projectsforusers>) projects; }