Example usage for org.hibernate.criterion DetachedCriteria setFetchMode

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

Introduction

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

Prototype

public DetachedCriteria setFetchMode(String associationPath, FetchMode mode) 

Source Link

Document

Set the fetch mode for a given association

Usage

From source file:com.griffinslogistics.truckgroup.TruckGroupService.java

@Override
public Map<String, TruckGroupTotalsModel> getTruckGroupTotalsForTransport(Long transportId) {
    logger.log(Level.SEVERE, "{0}: getTruckGroupTotalsForTransport started", CLASS_NAME);

    Map<String, TruckGroupTotalsModel> resultModels = new HashMap<String, TruckGroupTotalsModel>();

    try {/*w  w  w .  j a  v  a  2s . co  m*/
        DetachedCriteria criteria = DetachedCriteria.forClass(Transport.class);
        criteria.add(Restrictions.eq("id", transportId));
        criteria.setFetchMode("bookspackages", FetchMode.JOIN);
        criteria.setFetchMode("bookspackages.truckGroup", FetchMode.JOIN);
        criteria.setFetchMode("bookspackages.books", FetchMode.JOIN);
        criteria.setFetchMode("bookspackages.books.boxes", FetchMode.JOIN);
        Transport transport = (Transport) this.dao.getByDetachedCriteria(criteria);

        Set<Bookspackage> bookspackages = transport.getBookspackages();

        for (Bookspackage bookspackage : bookspackages) {

            double totalWeightForTruckGroup = 0;
            double totalOrderedBooksWeight = 0;

            for (Book book : bookspackage.getBooks()) {
                double weightPerBook = book.getWeightPerBook();

                totalOrderedBooksWeight += book.getWeight();

                for (Box box : (Set<Box>) book.getBoxes()) {
                    totalWeightForTruckGroup += box.getBooksCount() * box.getBoxesCount() * weightPerBook;
                }
            }

            if (totalWeightForTruckGroup > 0) {

                TruckGroup truckGroup = bookspackage.getTruckGroup();

                if (truckGroup != null) {

                    TruckGroupTotalsModel model;

                    if (resultModels.containsKey(truckGroup.getName())) {
                        model = resultModels.get(truckGroup.getName());
                    } else {
                        model = new TruckGroupTotalsModel(truckGroup.getId(), truckGroup.getName(), 0, 0, 0d);
                    }

                    model.setPackagesCount(model.getPackagesCount() + 1);
                    model.setArrivedWeight(model.getArrivedWeight() + (int) totalWeightForTruckGroup);
                    double newTotalPrice = model.getTotalPrice()
                            + (totalOrderedBooksWeight * bookspackage.getPricePerKilogram().doubleValue());
                    model.setTotalPrice(newTotalPrice);

                    resultModels.put(truckGroup.getName(), model);
                }
            }
        }

    } catch (Exception e) {
        logger.log(Level.SEVERE, e.getMessage());
    } finally {
        logger.log(Level.SEVERE, "{0}: getTruckGroupTotalsForTransport finished", CLASS_NAME);
    }

    return resultModels;
}

From source file:com.perceptive.epm.perkolcentral.dataaccessor.EmployeeDataAccessor.java

public ArrayList<Employeegroupmap> getEmployeegroupmapByEmployeeID(String employeeId) throws ExceptionWrapper {
    ArrayList<Employeegroupmap> employeegroupmapArrayList = new ArrayList<Employeegroupmap>();
    try {//from   w w w.j a v a  2  s.  c om
        DetachedCriteria criteria = DetachedCriteria.forClass(Employeegroupmap.class);
        criteria.createAlias("employee", "emp");
        criteria.add(Restrictions.eq("emp.employeeId", Long.valueOf(employeeId)));
        criteria.setFetchMode("emp", FetchMode.JOIN);
        criteria.setFetchMode("groups", FetchMode.JOIN);
        for (Object item : hibernateTemplate.findByCriteria(criteria)) {
            employeegroupmapArrayList.add((Employeegroupmap) item);
        }
    } catch (Exception ex) {
        throw new ExceptionWrapper(ex);
    }
    return employeegroupmapArrayList;
}

From source file:com.perceptive.epm.perkolcentral.dataaccessor.EmployeeDataAccessor.java

public ArrayList<Employeelicensemapping> getEmployeeLicenseMapByEmployeeId(String employeeId)
        throws ExceptionWrapper {
    ArrayList<Employeelicensemapping> employeelicensemappingArrayList = new ArrayList<Employeelicensemapping>();
    try {//from  w ww. j a  va 2 s . co  m
        DetachedCriteria criteria = DetachedCriteria.forClass(Employeelicensemapping.class);
        criteria.createAlias("employee", "emp");
        criteria.add(Restrictions.eq("emp.employeeId", Long.valueOf(employeeId)));
        criteria.setFetchMode("emp", FetchMode.JOIN);
        criteria.setFetchMode("licensemaster", FetchMode.JOIN);
        for (Object item : hibernateTemplate.findByCriteria(criteria)) {
            employeelicensemappingArrayList.add((Employeelicensemapping) item);
        }
    } catch (Exception ex) {
        throw new ExceptionWrapper(ex);
    }
    return employeelicensemappingArrayList;
}

From source file:com.perceptive.epm.perkolcentral.dataaccessor.EmployeeDataAccessor.java

public void updateEmployee(EmployeeBO employeeBO) throws ExceptionWrapper {
    try {//from  w w w  . j  a v  a 2 s  . com
        DetachedCriteria criteria = DetachedCriteria.forClass(Employee.class);
        criteria.add(Restrictions.eq("employeeId", Long.parseLong(employeeBO.getEmployeeId())));
        criteria.setFetchMode("employeelicensemappings", FetchMode.JOIN);
        criteria.setFetchMode("employeegroupmaps", FetchMode.JOIN);
        criteria.setFetchMode("employeerolemappings", FetchMode.JOIN);

        Employee employee = (Employee) hibernateTemplate.findByCriteria(criteria).get(0);

        employee.setEmail(employeeBO.getEmail());
        employee.setEmployeeName(employeeBO.getEmployeeName());
        employee.setEmployeeUid(employeeBO.getEmployeeUid());
        employee.setJobTitle(employeeBO.getJobTitle());
        employee.setMobileNumber(employeeBO.getMobileNumber());
        employee.setManager(employeeBO.getManager());
        employee.setManagerEmail(employeeBO.getManagerEmail());
        //employee.setExtensionNum(employeeBO.getExtensionNum());
        //employee.setWorkspace(employeeBO.getWorkspace());
        employee.setIsActive(employeeBO.isActive());
        hibernateTemplate.update(employee);
    } catch (Exception ex) {
        throw new ExceptionWrapper(ex);
    }
}

From source file:com.perceptive.epm.perkolcentral.dataaccessor.ImageNowLicenseDataAccessor.java

public LinkedHashMap<String, Imagenowlicenses> getAllImageNowLicenses() throws ExceptionWrapper {
    LinkedHashMap<String, Imagenowlicenses> imagenowlicensesLinkedHashMap = new LinkedHashMap<String, Imagenowlicenses>();
    try {//from w  w w. jav a2  s .  com
        DetachedCriteria criteria = DetachedCriteria.forClass(Imagenowlicenses.class);
        criteria.createAlias("employeeByRequestedByEmployeeId", "emp");
        criteria.createAlias("groups", "group");
        criteria.addOrder(Order.asc("licenseRequestedOn"));
        criteria.setFetchMode("emp", FetchMode.JOIN);
        criteria.setFetchMode("group", FetchMode.JOIN);
        criteria.addOrder(Order.asc("licenseRequestedOn"));
        for (Object item : hibernateTemplate.findByCriteria(criteria)) {
            Imagenowlicenses imagenowlicenses = (Imagenowlicenses) item;
            imagenowlicensesLinkedHashMap.put(imagenowlicenses.getImageNowLicenseRequestId(), imagenowlicenses);
        }
    } catch (Exception ex) {
        throw new ExceptionWrapper(ex);
    }
    return imagenowlicensesLinkedHashMap;
}

From source file:com.perceptive.epm.perkolcentral.dataaccessor.ImageNowLicenseDataAccessor.java

public LinkedHashMap<String, Imagenowlicenses> getAllImageNowLicensesByRequestor(String employeeUID)
        throws ExceptionWrapper {
    LinkedHashMap<String, Imagenowlicenses> imagenowlicensesLinkedHashMap = new LinkedHashMap<String, Imagenowlicenses>();
    try {//from   w ww .  j a v  a 2s.  c  om
        DetachedCriteria criteria = DetachedCriteria.forClass(Imagenowlicenses.class);
        criteria.createAlias("employeeByRequestedByEmployeeId", "emp");
        criteria.createAlias("groups", "group");
        criteria.add(Restrictions.eq("emp.employeeUid", employeeUID));
        criteria.addOrder(Order.asc("licenseRequestedOn"));
        criteria.setFetchMode("emp", FetchMode.JOIN);
        criteria.setFetchMode("group", FetchMode.JOIN);
        for (Object item : hibernateTemplate.findByCriteria(criteria)) {
            Imagenowlicenses imagenowlicenses = (Imagenowlicenses) item;
            imagenowlicensesLinkedHashMap.put(imagenowlicenses.getImageNowLicenseRequestId(), imagenowlicenses);
        }
    } catch (Exception ex) {
        throw new ExceptionWrapper(ex);
    }
    return imagenowlicensesLinkedHashMap;
}

From source file:com.perceptive.epm.perkolcentral.dataaccessor.ImageNowLicenseDataAccessor.java

public Imagenowlicenses getAllImageNowLicensesByRequestId(String requestId) throws ExceptionWrapper {

    try {/*from  w  w  w.  j a v a  2  s.  c  om*/
        DetachedCriteria criteria = DetachedCriteria.forClass(Imagenowlicenses.class);
        criteria.createAlias("employeeByRequestedByEmployeeId", "emp");
        criteria.createAlias("groups", "group");
        criteria.add(Restrictions.eq("imageNowLicenseRequestId", requestId.trim()));
        criteria.setFetchMode("emp", FetchMode.JOIN);
        criteria.setFetchMode("group", FetchMode.JOIN);

        return (Imagenowlicenses) hibernateTemplate.findByCriteria(criteria).get(0);

    } catch (Exception ex) {
        throw new ExceptionWrapper(ex);
    }
}

From source file:com.selfsoft.baseinformation.service.impl.TbCustomerServiceImpl.java

public List<TbCustomer> findByTbCustomer(TbCustomer tbCustomer, String types) {
    DetachedCriteria detachedCriteria = DetachedCriteria.forClass(TbCustomer.class);

    if (null != tbCustomer) {
        if (null != tbCustomer.getId()) {
            detachedCriteria.add(Restrictions.eq("id", tbCustomer.getId()));
        }/*from   ww w  .  ja v a 2 s.  co m*/
        if (null != tbCustomer.getCustomerCode() && !"".equals(tbCustomer.getCustomerCode())) {
            detachedCriteria.add(Restrictions.like("customerCode", "%" + tbCustomer.getCustomerCode() + "%"));
        }
        if (null != tbCustomer.getCustomerName() && !"".equals(tbCustomer.getCustomerName())) {
            detachedCriteria.add(Restrictions.like("customerName", "%" + tbCustomer.getCustomerName() + "%"));
        }
        if (null != tbCustomer.getPinyinCode() && !"".equals(tbCustomer.getPinyinCode())) {
            detachedCriteria.add(Restrictions.like("pinyinCode", "%" + tbCustomer.getPinyinCode() + "%"));
        }
        if (null != tbCustomer.getTelephone() && !"".equals(tbCustomer.getTelephone())) {
            detachedCriteria.add(Restrictions.like("telephone", "%" + tbCustomer.getTelephone() + "%"));
        }
        if (null != tbCustomer.getCustomerProperty()) {
            detachedCriteria.add(Restrictions.eq("customerProperty", tbCustomer.getCustomerProperty()));
        }
        if (null != tbCustomer.getTmCustomerType()) {
            detachedCriteria.setFetchMode("tmCustomerType", FetchMode.JOIN);
            if (null != tbCustomer.getTmCustomerType().getId()) {
                detachedCriteria
                        .add(Restrictions.eq("tmCustomerType.id", tbCustomer.getTmCustomerType().getId()));
            }
        }

    }
    if (StringUtils.isNotBlank(types)) {
        List<Long> list = new ArrayList<Long>();
        for (String type : types.split(",")) {
            list.add(new Long(type));
        }

        detachedCriteria.add(Restrictions.in("customerProperty", list));
    }
    return tbCustomerDao.findByCriteria(detachedCriteria, tbCustomer);
}

From source file:com.selfsoft.baseinformation.service.impl.TbCustomerServiceImpl.java

public List<TbCustomer> findByTbCustomer(TbCustomer tbCustomer) {
    DetachedCriteria detachedCriteria = DetachedCriteria.forClass(TbCustomer.class);

    if (null != tbCustomer) {
        if (null != tbCustomer.getId()) {
            detachedCriteria.add(Restrictions.eq("id", tbCustomer.getId()));
        }//from  w  ww  .  j a va  2  s.  c o  m
        if (null != tbCustomer.getCustomerCode() && !"".equals(tbCustomer.getCustomerCode())) {
            detachedCriteria.add(Restrictions.like("customerCode", "%" + tbCustomer.getCustomerCode() + "%"));
        }
        if (null != tbCustomer.getCustomerName() && !"".equals(tbCustomer.getCustomerName())) {
            detachedCriteria.add(Restrictions.like("customerName", "%" + tbCustomer.getCustomerName() + "%"));
        }
        if (null != tbCustomer.getPinyinCode() && !"".equals(tbCustomer.getPinyinCode())) {
            detachedCriteria.add(Restrictions.like("pinyinCode", "%" + tbCustomer.getPinyinCode() + "%"));
        }
        if (null != tbCustomer.getTelephone() && !"".equals(tbCustomer.getTelephone())) {
            detachedCriteria.add(Restrictions.like("telephone", "%" + tbCustomer.getTelephone() + "%"));
        }
        if (null != tbCustomer.getCustomerProperty()) {
            detachedCriteria.add(Restrictions.eq("customerProperty", tbCustomer.getCustomerProperty()));
        }
        if (null != tbCustomer.getTmCustomerType()) {
            detachedCriteria.setFetchMode("tmCustomerType", FetchMode.JOIN);
            if (null != tbCustomer.getTmCustomerType().getId()) {
                detachedCriteria
                        .add(Restrictions.eq("tmCustomerType.id", tbCustomer.getTmCustomerType().getId()));
            }
        }
    }

    return tbCustomerDao.findByCriteria(detachedCriteria, tbCustomer);
}

From source file:de.forsthaus.backend.dao.impl.MyCalendarEventDAOImpl.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override/*from   w w  w . j a  v  a2 s. co  m*/
public List<MyCalendarEvent> getAllCalendarEventsByUserId(long usrId) {
    DetachedCriteria criteria = DetachedCriteria.forClass(MyCalendarEvent.class);
    criteria.add(Restrictions.eq("secUser.id", usrId));
    criteria.setFetchMode("secUser", FetchMode.JOIN);

    return getHibernateTemplate().findByCriteria(criteria);
}