/** {@inheritDoc} */
 public long totalLeafDoneStoryPoints(Project project) {
   Criteria projectCrit = getCurrentSession().createCriteria(Story.class);
   Criteria iterationCrit = getCurrentSession().createCriteria(Story.class);
   this.attachLeafFilters(projectCrit, iterationCrit, project);
   projectCrit.setProjection(Projections.projectionList().add(Projections.sum("storyPoints")));
   iterationCrit.setProjection(Projections.projectionList().add(Projections.sum("storyPoints")));
   projectCrit.add(Restrictions.eq("state", StoryState.DONE));
   iterationCrit.add(Restrictions.eq("state", StoryState.DONE));
   return sum((Long) projectCrit.uniqueResult(), (Long) iterationCrit.uniqueResult());
 }
 @Override
 public UserAct getActById(int logId) {
   Session session = HibernateUtil.currentSession();
   Criteria c = session.createCriteria(UserAct.class);
   c.add(Restrictions.eq("logId", logId));
   return (UserAct) c.uniqueResult();
 }
 @Override
 public VerifyPO get(long uid, int type) {
   Criteria c = createCriteria();
   c.add(Restrictions.eq("uid", uid));
   c.add(Restrictions.eq("type", type));
   return (VerifyPO) c.uniqueResult();
 }
Exemple #4
0
 public static Group findByOrgAndName(Organisation org, String name, Session session) {
   Criteria crit = session.createCriteria(Group.class);
   crit.setCacheable(true);
   crit.add(Restrictions.eq("organisation", org));
   crit.add(Restrictions.eq("name", name));
   return (Group) crit.uniqueResult();
 }
Exemple #5
0
  /**
   * 查询一个对象的属性值在数据库中是不是唯一
   *
   * @param entity 实体对象
   * @param propertyNames 属性的名称,可多个 如:"prop1,prop2"
   * @return 针对 编辑 对象保存时 如果和其它 对象 属性名称相同 抛出异常问题 重写此方法
   */
  public boolean isUnique(Object entity, String propertyNames) {
    Class<?> clazz = getTrueClass(entity);
    Criteria criteria = createCriteria(clazz).setProjection(Projections.rowCount());
    String[] nameList = propertyNames.split(",");
    try {
      boolean isQuery = false;
      for (String name : nameList) {
        Object obj = PropertyUtils.getProperty(entity, name);
        if (obj != null) {
          criteria.add(Restrictions.eq(name, obj));
          isQuery = true;
        } else {
          isQuery = false;
        }
      }
      if (!isQuery) {
        return true;
      }

      String idName = getIdName(clazz);
      Serializable id = getId(clazz, entity);
      if (id != null) {
        criteria.add(Restrictions.not(Restrictions.eq(idName, id)));
      }
    } catch (Exception e) {
      ReflectionUtils.handleReflectionException(e);
    }
    this.getSession().evict(entity);
    return (Integer) criteria.uniqueResult() == 0;
  }
Exemple #6
0
 @Override
 public Long getTotal(CommentBo bo) {
   Criteria criteria = createRowCountsCriteria(Comment.class);
   initCriteria(criteria, bo);
   criteria.addOrder(Order.desc("createdDatetime"));
   return (Long) criteria.uniqueResult();
 }
 public StorageDevice findDeviceById(final Integer datacenterId, final String managementIp) {
   Criteria criteria =
       createCriteria(Restrictions.eq("datacenter.id", datacenterId))
           .add(Restrictions.eq("managementIp", managementIp));
   Object obj = criteria.uniqueResult();
   return (StorageDevice) obj;
 }
 // TODO add fromData-toDate
 public IncomeBalance findAccountPeriod(Account account, Date date) {
   Criteria criteria = sessionFactory.getCurrentSession().createCriteria(IncomeBalance.class);
   criteria.add(Restrictions.eq("account", account));
   criteria.add(
       Restrictions.and(Restrictions.ge("startDate", date), Restrictions.le("endDate", date)));
   return (IncomeBalance) criteria.uniqueResult();
 }
 public BudgetItem getBudgetItem(Date date, Account account) {
   Criteria criteria = sessionFactory.getCurrentSession().createCriteria(BudgetItem.class);
   criteria.add(Restrictions.eq("account", account));
   criteria.add(
       Restrictions.and(Restrictions.le("startDate", date), Restrictions.ge("endDate", date)));
   return (BudgetItem) criteria.uniqueResult();
 }
  public DmFolder getByName(String folderName, String accountId, String folderIdParent) {
    DmFolder folderParent = null;
    if ((folderIdParent != null) && (!folderIdParent.isEmpty())) {
      folderParent = new DmFolder();
      folderParent.setId(folderIdParent);
    }

    DmAccount accountOwner = null;
    if (folderParent == null) {
      if ((accountId != null) && (!accountId.isEmpty())) {
        accountOwner = new DmAccount();
        accountOwner.setId(accountId);
      }
    }

    Criteria crit = getSession().createCriteria(DmFolder.class);
    crit.add(Restrictions.eq("name", folderName).ignoreCase());
    if (accountOwner != null) {
      crit.add(Restrictions.eq("owner", accountOwner));
    }
    if (folderParent != null) {
      crit.add(Restrictions.eq("parent", folderParent));
    } else {
      crit.add(Restrictions.isNull("parent"));
    }
    return (DmFolder) crit.uniqueResult();
  }
Exemple #11
0
 public PriceBlockHeaderVO getpriceBlck(int blckId) {
   /**
    * Requires - Modifies - Effects -
    *
    * @throws -
    */
   Criteria objCriteria = null;
   Session objSession = null;
   PriceBlockHeaderVO objPriceBlockHeaderVO = null;
   try {
     logger.info("GETTING PRICE BLOCK FOR BLOCK ID");
     objSession = HibernateUtil.getSession();
     objCriteria =
         objSession
             .createCriteria(PriceBlockHeaderVO.class)
             .add(Restrictions.eq("priceBlockIdentifier", new Integer(blckId)));
     objPriceBlockHeaderVO = (PriceBlockHeaderVO) objCriteria.uniqueResult();
     logger.info("GOT PRICE BLOCK FOR BLOCK");
   } catch (HibernateException e) {
     logger.error("HIBERNATE EXCEPTION DURING GET PRICE BLOCK FOR BLOCK", e);
     e.printStackTrace();
   } finally {
     if (objSession != null) {
       objSession.close();
     }
   }
   return objPriceBlockHeaderVO;
 }
Exemple #12
0
  @Override
  public Long getTotalCount(Reply model) {
    Criteria criteria = getCurrentSession().createCriteria(Reply.class);

    criteria.createAlias("potential", "potential", CriteriaSpecification.LEFT_JOIN);
    criteria.createAlias(
        "potentialStuStatus", "potentialStuStatus", CriteriaSpecification.LEFT_JOIN);
    criteria.createAlias("user", "user", CriteriaSpecification.LEFT_JOIN);
    if (model != null && model.getPotential().getPotentialId() != null) {
      criteria.add(Restrictions.eq("potential.potentialId", model.getPotential().getPotentialId()));
    }
    if (model != null
        && model.getPotentialStuStatus() != null
        && model.getPotentialStuStatus().getPotentialStuStatusId() != null) {
      criteria.add(
          Restrictions.eq(
              "potentialStuStatus.potentialStuStatusId",
              model.getPotentialStuStatus().getPotentialStuStatusId()));
    }
    if (model != null && model.getReplyDate() != null) {
      criteria.add(Restrictions.eq("replyDate", model.getReplyDate()));
    }
    if (model != null && model.getNextReplyDate() != null) {
      criteria.add(Restrictions.eq("nextReplyDate", model.getNextReplyDate()));
    }
    criteria.setProjection(Projections.rowCount());
    return new Long(criteria.uniqueResult().toString());
  }
  // sets the order item to a particular book present in the book database
  public boolean setOrderItem(int id, int productId) {
    Boolean flag = false;
    try {

      Session session = HibernateUtil.getSessionFactory().openSession();
      Criteria cr1 = session.createCriteria(Book.class);
      cr1.add(Restrictions.eq("productId", id));
      Object result1 = cr1.uniqueResult();
      if (result1 != null) {
        Book book = (Book) result1;
        Session session1 = HibernateUtil.getSessionFactory().openSession();
        Transaction tx1 = session1.beginTransaction();
        OrderItem oi1 = (OrderItem) session1.get(OrderItem.class, productId);
        oi1.setBook(book);
        session1.update(oi1);
        tx1.commit();
        close();
        flag = true;
      }
    } catch (Exception e) {
      e.printStackTrace();
    }

    return flag;
  }
Exemple #14
0
  public AccountEntity findByUsername(String username) {
    Criteria criteria = this.getSession().createCriteria(AccountEntity.class);

    criteria.add(Restrictions.eq("username", username));

    return (AccountEntity) criteria.uniqueResult();
  }
Exemple #15
0
 public static User getUserDatas(Integer id) {
   Criteria criteria = getSession().createCriteria(User.class);
   criteria.add(Restrictions.eq("userId", id));
   User user = (User) criteria.uniqueResult();
   closeSession();
   return user;
 }
 public IncomeReceiptItem getIncomeReceiptItemByAccountAndReceipt(
     Account acc, IncomeReceipt receipt) {
   Criteria criteria = sessionFactory.getCurrentSession().createCriteria(IncomeReceiptItem.class);
   criteria.add(Restrictions.eq("account", acc));
   criteria.add(Restrictions.eq("receipt", receipt));
   return (IncomeReceiptItem) criteria.uniqueResult();
 }
Exemple #17
0
 public StoragePool findPoolById(final Integer deviceId, final String poolId) {
   Criteria criteria =
       createCriteria(Restrictions.eq("device.id", deviceId))
           .add(Restrictions.eq("idStorage", poolId));
   Object obj = criteria.uniqueResult();
   return (StoragePool) obj;
 }
 public ExpenseBalance getExpenseBalanceByAccountAndPeriod(Account account, FiscalPeriod period) {
   Criteria criteria = sessionFactory.getCurrentSession().createCriteria(ExpenseBalance.class);
   criteria.add(Restrictions.eq("account", account));
   criteria.add(Restrictions.eq("period", period));
   //		criteria.add(Restrictions.eq("status", BalanceStatus.ACTIVE));
   return (ExpenseBalance) criteria.uniqueResult();
 }
 public StorageDevice getDeviceById(final Integer datacenterId, final Integer deviceId) {
   Criteria criteria =
       createCriteria(Restrictions.eq("datacenter.id", datacenterId))
           .add(Restrictions.eq("id", deviceId));
   Object obj = criteria.uniqueResult();
   return (StorageDevice) obj;
 }
 @Override
 public void DeletebyCodigo(Long codigo) {
   Criteria crit = createEntityCriteria();
   crit.add(Restrictions.eq("codigo", codigo));
   Contacto contacto = (Contacto) crit.uniqueResult();
   delete(contacto);
 }
Exemple #21
0
  public Application getByIdWithCourses(Long id) {
    Criteria c = createCriteria();
    c.add(Restrictions.idEq(id));
    c.setFetchMode("courses", FetchMode.JOIN);

    return (Application) c.uniqueResult();
  }
 @Override
 public Contrat getContratById(Long uidContrat) {
   final Criteria crit = createCriteria(Contrat.class);
   crit.add(Restrictions.eq("id", uidContrat));
   crit.add(Restrictions.eq("isVisible", true));
   return (Contrat) crit.uniqueResult();
 }
  @Override
  @SuppressWarnings({"unchecked"})
  public Set<Pair<String, Class>> findEntityTypes(Number revision)
      throws IllegalStateException, IllegalArgumentException {
    checkNotNull(revision, "Entity revision");
    checkPositive(revision, "Entity revision");
    checkSession();

    final Session session = auditReaderImplementor.getSession();
    final SessionImplementor sessionImplementor = auditReaderImplementor.getSessionImplementor();

    final Set<Number> revisions = new HashSet<Number>(1);
    revisions.add(revision);
    final Criteria query =
        verCfg.getRevisionInfoQueryCreator().getRevisionsQuery(session, revisions);
    final Object revisionInfo = query.uniqueResult();

    if (revisionInfo != null) {
      // If revision exists.
      final Set<String> entityNames =
          verCfg.getModifiedEntityNamesReader().getModifiedEntityNames(revisionInfo);
      if (entityNames != null) {
        // Generate result that contains entity names and corresponding Java classes.
        final Set<Pair<String, Class>> result = new HashSet<Pair<String, Class>>();
        for (String entityName : entityNames) {
          result.add(
              Pair.make(
                  entityName, EntityTools.getEntityClass(sessionImplementor, session, entityName)));
        }
        return result;
      }
    }

    return Collections.EMPTY_SET;
  }
  @Override
  public Notice findById(int noticeId) throws OperationalException {
    Session session = null;
    Notice notice = null;
    try {
      session = parkingSessionFactory.getSessionFactory().openSession();
      session.beginTransaction();

      Criteria criteria = session.createCriteria(Notice.class);
      criteria.add(Restrictions.eq(NOTICEID, noticeId));
      criteria.add(Restrictions.ne(STATUS, NoticeStatus.DELETED.name()));
      criteria.setMaxResults(1);
      notice = (Notice) criteria.uniqueResult();
      return notice;
    } catch (Exception e) {
      LOGGER.error("findById: Exception ", e);
      throw new OperationalException(
          HttpConstants.INTERNAL_SERVER_ERROR,
          ResponseConstants.ERROR_FETCHING_FROM_DB,
          HttpStatus.INTERNAL_SERVER_ERROR);
    } finally {
      if (session != null) {
        session.close();
      }
    }
  }
Exemple #25
0
 public Consulta pesquisarConsultaPorId(long id) throws Exception {
   Consulta c = new Consulta();
   Criteria cr = session.createCriteria(Consulta.class).add(Restrictions.eq("idConsulta", id));
   c = (Consulta) cr.uniqueResult();
   closeSession();
   return c;
 }
 @Override
 public long standbyCount() throws OperationalException {
   Session session = null;
   long count = 0;
   try {
     session = parkingSessionFactory.getSessionFactory().openSession();
     Criteria criteria = session.createCriteria(Notice.class);
     User user = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
     String role = user.getRole();
     criteria.add(Restrictions.eq("author", user));
     criteria.add(Restrictions.ne(STATUS, NoticeStatus.DELETED.name()));
     criteria.setProjection(Projections.rowCount());
     count = (long) criteria.uniqueResult();
   } catch (Exception e) {
     LOGGER.error("unreadCount: error in unreadCount notfication", e);
     throw new OperationalException(
         HttpConstants.INTERNAL_SERVER_ERROR,
         ResponseConstants.ERROR_FETCHING_FROM_DB,
         HttpStatus.INTERNAL_SERVER_ERROR);
   } finally {
     if (session != null) {
       session.close();
     }
   }
   return count;
 }
Exemple #27
0
  public User getDetail(String login, Session session) {
    Criteria criteria = session.createCriteria(User.class);
    criteria.add(Restrictions.eq("login", login));

    User user = (User) criteria.uniqueResult();
    return user;
  }
Exemple #28
0
  public Filme buscaFilme(Integer codigo) {
    Filme filme = null;

    try {
      sessao = HibernateUtil.getSessionFactory().getCurrentSession();
      transacao = sessao.beginTransaction();
      Criteria filtro = sessao.createCriteria(Filme.class);
      filtro.add(Restrictions.eq("filme", codigo));
      filme = (Filme) filtro.uniqueResult();
      transacao.commit();
    } catch (Throwable e) {
      if (transacao.isActive()) {
        transacao.rollback();
      }
    } finally {
      try {
        if (sessao.isOpen()) {
          sessao.close();
        }
      } catch (Throwable e) {
        System.out.println("Erro ao fechar operação de busca. Mensagem: " + e.getMessage());
      }
    }

    return filme;
  }
Exemple #29
0
 /**
  * 使用检索标准对象查询记录数
  *
  * @param detachedCriteria
  * @return
  */
 @SuppressWarnings("rawtypes")
 public long count(DetachedCriteria detachedCriteria) {
   Criteria criteria = detachedCriteria.getExecutableCriteria(getSession());
   long totalCount = 0;
   try {
     // Get orders
     Field field = CriteriaImpl.class.getDeclaredField("orderEntries");
     field.setAccessible(true);
     List orderEntrys = (List) field.get(criteria);
     // Remove orders
     field.set(criteria, new ArrayList());
     // Get count
     criteria.setProjection(Projections.rowCount());
     totalCount = Long.valueOf(criteria.uniqueResult().toString());
     // Clean count
     criteria.setProjection(null);
     // Restore orders
     field.set(criteria, orderEntrys);
   } catch (NoSuchFieldException e) {
     e.printStackTrace();
   } catch (IllegalAccessException e) {
     e.printStackTrace();
   }
   return totalCount;
 }
 /**
  * 判断对象某些属性的值在数据库中不存在重复.
  *
  * @param entityClass 类型
  * @param entity 指定的实体
  * @param names 在POJO里不能重复的属性列表,以逗号分割 如"name,loginid,password"
  * @return 包含重复的内容返回true,否则返回false
  */
 public boolean isGenericNotUnique(Class entityClass, Object entity, String names) {
   Assert.hasText(names);
   Criteria criteria = getEntityCriteria(entityClass).setProjection(Projections.rowCount());
   String[] nameList = names.split(",");
   try {
     // 循环加入
     for (String name : nameList) {
       criteria.add(Restrictions.eq(name, PropertyUtils.getProperty(entity, name)));
     }
     // 以下代码为了如果是update的情况,排除entity自身.
     // 通过Hibernate的MetaData接口取得主键名
     String idPropertyName =
         getSessionFactory().getClassMetadata(entity.getClass()).getIdentifierPropertyName();
     if (idPropertyName != null) {
       // 通过反射取得entity的主键值
       Object id = PropertyUtils.getProperty(entity, idPropertyName);
       // 如果id!=null,说明对象已存在,该操作为update,加入排除自身的判断
       if (id != null) criteria.add(Restrictions.not(Restrictions.eq(idPropertyName, id)));
     }
   } catch (IllegalAccessException e) {
     logger.error("Error when reflection on entity", e);
     return false;
   } catch (InvocationTargetException e) {
     logger.error("Error when reflection on entity", e);
     return false;
   } catch (NoSuchMethodException e) {
     logger.error("Error when reflection on entity", e);
     return false;
   }
   return (Integer) criteria.uniqueResult() > 0;
 }