Example usage for org.hibernate.criterion DetachedCriteria createAlias

List of usage examples for org.hibernate.criterion DetachedCriteria createAlias

Introduction

In this page you can find the example usage for org.hibernate.criterion DetachedCriteria createAlias.

Prototype

public DetachedCriteria createAlias(String associationPath, String alias) 

Source Link

Document

Creates an association path alias within this DetachedCriteria.

Usage

From source file:com.isdemu.dao.impl.TBR_MovimientoInventarioDaoImp.java

@Override
public List findByInv(Serializable id) {
    DetachedCriteria dc = DetachedCriteria.forClass(TbrMovimientoInventario.class, "movimientoInventario");

    dc.createAlias("movimientoInventario.tbInventario", "inv");
    dc.add(Restrictions.eq("inv.idInventario", id));

    return dc.getExecutableCriteria(sessionFactory.getCurrentSession()).list();
}

From source file:com.isdemu.dao.impl.TB_ControlDaoImpl.java

@Override
public List getConInv(Serializable id) {

    System.out.println("Entra actualiza3");
    DetachedCriteria dc = DetachedCriteria.forClass(TbrControlSalidaInventario.class, "controlInventario");

    dc.createAlias("controlInventario.tbControlSalida", "cont");
    dc.add(Restrictions.eq("cont.idControlSalida", id));
    System.out.println("Entra actualiza4");
    return dc.getExecutableCriteria(sessionFactory.getCurrentSession()).list();

}

From source file:com.isdemu.dao.impl.TB_InventarioDaoImpl.java

@Override
public List LastCodInventario(Serializable id) {
    DetachedCriteria dc = DetachedCriteria.forClass(TbInventario.class, "inv");
    dc.createAlias("inv.tbcClaseActivo", "clase");
    dc.add(Restrictions.eq("clase.idClaseActivo", id));
    dc.addOrder(Order.desc("idInventario"));

    return dc.getExecutableCriteria(sessionFactory.getCurrentSession()).list();
}

From source file:com.isdemu.dao.impl.TB_MovimientoDaoImp.java

@Override
public List getMovInv(Serializable id) {

    DetachedCriteria dc = DetachedCriteria.forClass(TbrMovimientoInventario.class, "movimientoInventario");

    dc.createAlias("movimientoInventario.tbMovimiento", "movi");
    dc.add(Restrictions.eq("movi.idMovimiento", id));

    return dc.getExecutableCriteria(sessionFactory.getCurrentSession()).list();

}

From source file:com.isdemu.dao.impl.TB_Ubicacion_PersonaDaoImpl.java

@Override
public List getAllidUbicacion(Serializable id) {

    DetachedCriteria dc = DetachedCriteria.forClass(TbUbicacionPersona.class, "ubicacionpersona");

    dc.createAlias("ubicacionpersona.tbcUbicacion", "ubicacion");
    dc.add(Restrictions.eq("ubicacion.idUbicacion", id));

    return dc.getExecutableCriteria(sessionFactory.getCurrentSession()).list();
}

From source file:com.isdemu.dao.impl.TB_Ubicacion_PersonaDaoImpl.java

@Override
public List getAllidPersona(Serializable id) {

    DetachedCriteria dc = DetachedCriteria.forClass(TbUbicacionPersona.class, "ubicacionpersona");

    dc.createAlias("ubicacionpersona.tbcPersona", "persona");
    dc.add(Restrictions.eq("persona.idPersona", id));

    return dc.getExecutableCriteria(sessionFactory.getCurrentSession()).list();
}

From source file:com.itrus.ca.modules.cms.service.ArticleService.java

License:Open Source License

public Page<Article> find(Page<Article> page, Article article, boolean isDataScopeFilter) {
    // ??6??/* w  ww.  j  a  va  2s .c  om*/
    Date updateExpiredWeightDate = (Date) CacheUtils.get("updateExpiredWeightDateByArticle");
    if (updateExpiredWeightDate == null
            || (updateExpiredWeightDate != null && updateExpiredWeightDate.getTime() < new Date().getTime())) {
        articleDao.updateExpiredWeight();
        CacheUtils.put("updateExpiredWeightDateByArticle", DateUtils.addHours(new Date(), 6));
    }
    DetachedCriteria dc = articleDao.createDetachedCriteria();
    dc.createAlias("category", "category");
    dc.createAlias("category.site", "category.site");
    if (article.getCategory() != null && article.getCategory().getId() != null
            && !Category.isRoot(article.getCategory().getId())) {
        Category category = categoryDao.findOne(article.getCategory().getId());
        if (category != null) {
            dc.add(Restrictions.or(Restrictions.eq("category.id", category.getId()),
                    Restrictions.like("category.parentIds", "%," + category.getId() + ",%")));
            dc.add(Restrictions.eq("category.site.id", category.getSite().getId()));
            article.setCategory(category);
        } else {
            dc.add(Restrictions.eq("category.site.id", Site.getCurrentSiteId()));
        }
    } else {
        dc.add(Restrictions.eq("category.site.id", Site.getCurrentSiteId()));
    }
    if (StringUtils.isNotEmpty(article.getTitle())) {
        dc.add(Restrictions.like("title", "%" + EscapeUtil.escapeLike(article.getTitle()) + "%"));
    }
    if (StringUtils.isNotEmpty(article.getPosid())) {
        dc.add(Restrictions.like("posid", "%," + article.getPosid() + ",%"));
    }
    if (StringUtils.isNotEmpty(article.getImage()) && Article.YES.equals(article.getImage())) {
        dc.add(Restrictions.and(Restrictions.isNotNull("image"), Restrictions.ne("image", "")));
    }
    if (article.getCreateBy() != null && article.getCreateBy().getId() > 0) {
        dc.add(Restrictions.eq("createBy.id", article.getCreateBy().getId()));
    }
    if (isDataScopeFilter) {
        dc.createAlias("category.office", "categoryOffice").createAlias("createBy", "createBy");
        dc.add(dataScopeFilter(UserUtils.getUser(), "categoryOffice", "createBy"));
    }
    dc.add(Restrictions.eq(Article.DEL_FLAG, article.getDelFlag()));
    if (StringUtils.isBlank(page.getOrderBy())) {
        dc.addOrder(Order.desc("weight"));
        dc.addOrder(Order.desc("updateDate"));
    }
    return articleDao.find(page, dc);
}

From source file:com.itrus.ca.modules.cms.service.LinkService.java

License:Open Source License

public Page<Link> find(Page<Link> page, Link link, boolean isDataScopeFilter) {
    // ??6??//from  www.j  a va2 s  .  c o  m
    Date updateExpiredWeightDate = (Date) CacheUtils.get("updateExpiredWeightDateByLink");
    if (updateExpiredWeightDate == null
            || (updateExpiredWeightDate != null && updateExpiredWeightDate.getTime() < new Date().getTime())) {
        linkDao.updateExpiredWeight();
        CacheUtils.put("updateExpiredWeightDateByLink", DateUtils.addHours(new Date(), 6));
    }
    DetachedCriteria dc = linkDao.createDetachedCriteria();
    dc.createAlias("category", "category");
    dc.createAlias("category.site", "category.site");
    if (link.getCategory() != null && link.getCategory().getId() != null
            && !Category.isRoot(link.getCategory().getId())) {
        Category category = categoryDao.findOne(link.getCategory().getId());
        if (category != null) {
            dc.add(Restrictions.or(Restrictions.eq("category.id", category.getId()),
                    Restrictions.like("category.parentIds", "%," + category.getId() + ",%")));
            dc.add(Restrictions.eq("category.site.id", category.getSite().getId()));
            link.setCategory(category);
        } else {
            dc.add(Restrictions.eq("category.site.id", Site.getCurrentSiteId()));
        }
    } else {
        dc.add(Restrictions.eq("category.site.id", Site.getCurrentSiteId()));
    }
    if (StringUtils.isNotEmpty(link.getTitle())) {
        dc.add(Restrictions.like("title", "%" + EscapeUtil.escapeLike(link.getTitle()) + "%"));
    }
    if (link.getCreateBy() != null && link.getCreateBy().getId() > 0) {
        dc.add(Restrictions.eq("createBy.id", link.getCreateBy().getId()));
    }
    if (isDataScopeFilter) {
        dc.createAlias("category.office", "categoryOffice").createAlias("createBy", "createBy");
        dc.add(dataScopeFilter(UserUtils.getUser(), "categoryOffice", "createBy"));
    }
    dc.add(Restrictions.eq(Link.DEL_FLAG, link.getDelFlag()));
    dc.addOrder(Order.desc("weight"));
    dc.addOrder(Order.desc("updateDate"));
    return linkDao.find(page, dc);
}

From source file:com.itrus.ca.modules.sys.service.SystemService.java

License:Open Source License

public Page<User> findUser(Page<User> page, User user) {
    DetachedCriteria dc = userDao.createDetachedCriteria();
    User currentUser = UserUtils.getUser();
    dc.createAlias("company", "company");
    if (user.getCompany() != null && user.getCompany().getId() != null) {
        dc.add(Restrictions.or(Restrictions.eq("company.id", user.getCompany().getId()),
                Restrictions.like("company.parentIds", "%," + user.getCompany().getId() + ",%")));
    }//from   w  w  w  .ja  va2 s . c  o  m
    dc.createAlias("office", "office");
    if (user.getOffice() != null && user.getOffice().getId() != null) {
        dc.add(Restrictions.or(Restrictions.eq("office.id", user.getOffice().getId()),
                Restrictions.like("office.parentIds", "%," + user.getOffice().getId() + ",%")));
    }
    // ????
    if (!currentUser.isAdmin()) {
        dc.add(Restrictions.ne("id", 1L));
    }
    dc.add(dataScopeFilter(currentUser, "office", ""));
    //System.out.println(dataScopeFilterString(currentUser, "office", ""));
    if (StringUtils.isNotEmpty(user.getLoginName())) {
        dc.add(Restrictions.like("loginName", "%" + EscapeUtil.escapeLike(user.getLoginName()) + "%"));
    }
    if (StringUtils.isNotEmpty(user.getName())) {
        dc.add(Restrictions.like("name", "%" + EscapeUtil.escapeLike(user.getName()) + "%"));
    }
    dc.add(Restrictions.eq(User.DEL_FLAG, User.DEL_FLAG_NORMAL));
    //      if (!StringUtils.isNotEmpty(page.getOrderBy())){
    //         dc.addOrder(Order.asc("company.code")).addOrder(Order.asc("office.code")).addOrder(Order.desc("id"));
    //      }
    return userDao.find(page, dc);
}

From source file:com.jaspersoft.jasperserver.api.engine.scheduling.hibernate.HibernateReportJobsPersistenceService.java

License:Open Source License

protected List getReportUnitJobs(final ReportJobModel criteriaReportJob, ExecutionContext context) {
    if (criteriaReportJob == null)
        return getAllJobs();
    boolean requireDetailSearch = false;
    HibernateTemplate hibernateTemplate = getHibernateTemplate();
    DetachedCriteria crit = DetachedCriteria.forClass(PersistentReportJob.class);
    // REPORT JOB (MAIN CLASS)
    if (criteriaReportJob.isBaseOutputFileNameModified())
        addLikeRestriction(crit, "baseOutputFilename", criteriaReportJob.getBaseOutputFilename());
    if (criteriaReportJob.isCreationDateModified() && criteriaReportJob.getCreationDate() != null)
        requireDetailSearch = true;/*from w  w w  .  j av  a  2  s . c o m*/
    if (criteriaReportJob.isLabelModified())
        addLikeRestriction(crit, "label", criteriaReportJob.getLabel());
    if (criteriaReportJob.isDescriptionModified())
        addLikeRestriction(crit, "description", criteriaReportJob.getDescription());
    if (criteriaReportJob.isOutputLocaleModified())
        addEqualRestriction(crit, "outputLocale", criteriaReportJob.getOutputLocale());
    // USER REPO
    final String username = criteriaReportJob.getUsername();
    if (criteriaReportJob.isUsernameModified() && username != null) {
        String[] nameTenant = username.split("\\|");
        crit.createAlias("owner", "owner");
        addEqualRestriction(crit, "owner.username", nameTenant[0]);
        crit.createAlias("owner.tenant", "tenant");
        addEqualRestriction(crit, "tenant.tenantId",
                nameTenant.length > 1 ? nameTenant[1] : TenantService.ORGANIZATIONS);
    }
    if (criteriaReportJob.isOutputFormatsModified() && criteriaReportJob.getOutputFormatsSet() != null)
        requireDetailSearch = true;
    // REPORT TRIGGER
    if (criteriaReportJob.isTriggerModified() && criteriaReportJob.getTriggerModel() != null)
        requireDetailSearch = true;
    // REPORT JOB SOURCE
    if (criteriaReportJob.isSourceModified() && criteriaReportJob.getSourceModel() != null) {
        ReportJobSourceModel des = criteriaReportJob.getSourceModel();
        if (des.isParametersMapModified())
            addEqualRestriction(crit, "source.parametersMap", des.getParametersMap());
        if (des.isReportUnitURIModified())
            addLikeRestriction(crit, "source.reportUnitURI", des.getReportUnitURI());
    }
    // REPORTJOBREPOSITORYDESTINATION
    if (criteriaReportJob.isContentRespositoryDestinationModified()
            && criteriaReportJob.getContentRepositoryDestinationModel() != null) {
        crit.createAlias("contentRepositoryDestination", "contentRepositoryDestination");
        ReportJobRepositoryDestinationModel des = criteriaReportJob.getContentRepositoryDestinationModel();
        if (des.isFolderURIModified())
            addLikeRestriction(crit, "contentRepositoryDestination.folderURI", des.getFolderURI());
        if (des.isOutputDescriptionsModified())
            addLikeRestriction(crit, "contentRepositoryDestination.outputDescription",
                    des.getOutputDescription());
        if (des.isTimestampPatternModified())
            addEqualRestriction(crit, "contentRepositoryDestination.timestampPattern",
                    des.getTimestampPattern());
        if (des.isOverwriteFilesModified())
            addEqualRestriction(crit, "contentRepositoryDestination.overwriteFiles", des.isOverwriteFiles());
        if (des.isSaveToRepositoryModified())
            addEqualRestriction(crit, "contentRepositoryDestination.saveToRepository",
                    des.isSaveToRepository());
        if (des.isSequentialFilenamesModified())
            addEqualRestriction(crit, "contentRepositoryDestination.sequentialFilenames",
                    des.isSequentialFilenames());
        if (des.isDefaultReportOutputFolderURIModified())
            requireDetailSearch = true;
        if (des.isUsingDefaultReportOutputFolderURIModified()) {
            addEqualRestriction(crit, "contentRepositoryDestination.usingDefaultReportOutputFolderURI",
                    des.isUsingDefaultReportOutputFolderURI());
        }
        if (des.isOutputLocalFolderModified())
            addEqualRestriction(crit, "contentRepositoryDestination.outputLocalFolder",
                    des.getOutputLocalFolder());

        // FTP INFO
        if (des.isOutputFTPInfoModified() && des.getOutputFTPInfoModel() != null) {
            FTPInfoModel ftpInfoModel = des.getOutputFTPInfoModel();
            if (ftpInfoModel.isUserNameModified())
                addLikeRestriction(crit, "contentRepositoryDestination.outputFTPInfo.userName",
                        ftpInfoModel.getUserName());
            if (ftpInfoModel.isPasswordModified())
                addEqualRestriction(crit, "contentRepositoryDestination.outputFTPInfo.password",
                        ftpInfoModel.getPassword());
            if (ftpInfoModel.isServerNameModified())
                addLikeRestriction(crit, "contentRepositoryDestination.outputFTPInfo.server_name",
                        ftpInfoModel.getUserName());
            if (ftpInfoModel.isFolderPathModified())
                addLikeRestriction(crit, "contentRepositoryDestination.outputFTPInfo.folder_path",
                        ftpInfoModel.getPassword());
            if (ftpInfoModel.isPropertiesMapModified())
                addEqualRestriction(crit, "contentRepositoryDestination.outputFTPInfo.propertiesMap",
                        ftpInfoModel.getPropertiesMap());
        }
    }
    // MAILNOTIFICATION
    if (criteriaReportJob.isMailNotificationModified()
            && criteriaReportJob.getMailNotificationModel() != null) {
        crit.createAlias("mailNotification", "mailNotification");
        ReportJobMailNotificationModel des = criteriaReportJob.getMailNotificationModel();
        if (des.isSubjectModified())
            addLikeRestriction(crit, "mailNotification.subject", des.getSubject());
        if (des.isMessageTextModified())
            addLikeRestriction(crit, "mailNotification.messageText", des.getMessageText());
        if (des.isMessageTextWhenJobFailsModified())
            addLikeRestriction(crit, "mailNotification.messageTextWhenJobFails",
                    des.getMessageTextWhenJobFails());
        if (des.isIncludingStackTraceWhenJobFailsModified())
            addEqualRestriction(crit, "mailNotification.includingStackTraceWhenJobFails",
                    des.isIncludingStackTraceWhenJobFails());
        if (des.isSkipNotificationWhenJobFailsModified())
            addEqualRestriction(crit, "mailNotification.skipNotificationWhenJobFails",
                    des.isSkipNotificationWhenJobFails());
        if (des.isResultSendTypeModified())
            addEqualRestriction(crit, "mailNotification.resultSendType", des.getResultSendTypeCode());
        if (des.isSkipEmptyReportsModified())
            addEqualRestriction(crit, "mailNotification.skipEmptyReports", des.isSkipEmptyReports());
        if (((des.isToAddressesModified()) && (des.getToAddresses() != null)
                && (des.getToAddresses().size() > 0))
                || ((des.isCcAddressesModified()) && (des.getCcAddresses() != null)
                        && (des.getCcAddresses().size() > 0))
                || ((des.isBccAddressesModified()) && (des.getBccAddresses() != null)
                        && (des.getBccAddresses().size() > 0)))
            requireDetailSearch = true;
    }
    // ALERT
    if (criteriaReportJob.isAlertModified() && criteriaReportJob.getAlertModel() != null) {
        crit.createAlias("alert", "alert");
        ReportJobAlertModel des = criteriaReportJob.getAlertModel();
        if (des.isMessageTextModified())
            addLikeRestriction(crit, "alert.messageText", des.getMessageText());
        if (des.isMessageTextWhenJobFailsModified())
            addLikeRestriction(crit, "alert.messageTextWhenJobFails", des.getMessageTextWhenJobFails());
        if (des.isSubjectModified())
            addLikeRestriction(crit, "alert.subject", des.getSubject());
        if (des.isIncludingStackTraceModified())
            addEqualRestriction(crit, "alert.includingStackTrace", des.isIncludingStackTrace());
        if (des.isIncludingReportJobInfoModified())
            addEqualRestriction(crit, "alert.includingReportJobInfo", des.isIncludingReportJobInfo());
        if (des.isJobStateModified())
            addEqualRestriction(crit, "alert.jobState", des.getJobState());
        if (des.isRecipientModified())
            addEqualRestriction(crit, "alert.recipient", des.getRecipient());
        if (des.isToAddressesModified())
            requireDetailSearch = true;
    }
    List persistentJobs = hibernateTemplate.findByCriteria(crit);
    if (requireDetailSearch && (persistentJobs != null)) {
        for (int i = persistentJobs.size() - 1; i >= 0; i--) {
            if (!detailCriteriaMatch((PersistentReportJob) persistentJobs.get(i), criteriaReportJob, context)) {
                persistentJobs.remove(i);
            }
        }
    }
    return persistentJobs;
}