List of usage examples for com.liferay.portal.kernel.dao.orm OrderFactoryUtil asc
public static Order asc(String propertyName)
From source file:at.graz.meduni.liferay.portlet.bibbox.service.impl.OrganizationSearchIndexLocalServiceImpl.java
License:Open Source License
/** * //from w ww .j a v a 2 s. c o m */ public List<Long> getOrganizationIdByKeywordAndValue(String key, String value) { value = value.trim(); List<Long> returnvalue = new ArrayList<Long>(); try { DynamicQuery dynamicQuery = DynamicQueryFactoryUtil.forClass(OrganizationSearchIndex.class); Criterion criterion = RestrictionsFactoryUtil.ilike("searchvalue", StringPool.PERCENT + value + StringPool.PERCENT); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.ilike("key", key)); dynamicQuery.add(criterion); Order order_organisationid = OrderFactoryUtil.asc("organisationid"); dynamicQuery.addOrder(order_organisationid); List<OrganizationSearchIndex> serachresults = OrganizationSearchIndexLocalServiceUtil .dynamicQuery(dynamicQuery); for (OrganizationSearchIndex serachresult : serachresults) { if (!returnvalue.contains(serachresult.getOrganisationid())) { returnvalue.add(serachresult.getOrganisationid()); } } } catch (SystemException e) { // TODO Auto-generated catch block e.printStackTrace(); } return returnvalue; }
From source file:at.meduni.liferay.portlet.rdconnect.service.impl.MasterCandidateLocalServiceImpl.java
License:Open Source License
public List<MasterCandidate> getFilterdCandidates(String searchstring, String country, String type, String state, String source) throws SystemException { if (country.equals("all")) { country = ""; }/*w w w .j av a 2 s. co m*/ if (type.equals("all")) { type = ""; } else { if (type.equals("Registry")) type = "Registr"; } if (state.equals("all")) { state = ""; } if (source.equals("all")) { source = ""; } List<MasterCandidate> mastercandidate = null; try { // Dynamic Query for search DynamicQuery dynamicQuery = DynamicQueryFactoryUtil.forClass(MasterCandidateImpl.class); Criterion criterion = null; Criterion criterion_stringsearch_grouped = null; String[] searchstringarray = searchstring.split(" "); for (String searchstringsplit : searchstringarray) { Criterion criterion_stringsearch = RestrictionsFactoryUtil.ilike("diseasesfreetext", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("diseasescodes", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("name", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("candidatesubtype", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("country", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("candidatetype", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("url", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("contactperson", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("comment", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("address", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("mail", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil .ilike("head", StringPool.PERCENT + searchstringsplit + StringPool.PERCENT)); try { long searchlong = Long.valueOf(searchstringsplit); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil.eq("masterCandidateId", searchlong)); criterion_stringsearch = RestrictionsFactoryUtil.or(criterion_stringsearch, RestrictionsFactoryUtil.eq("organisationid", searchlong)); } catch (Exception e) { } if (criterion_stringsearch_grouped == null) { criterion_stringsearch_grouped = criterion_stringsearch; } else { criterion_stringsearch_grouped = RestrictionsFactoryUtil.or(criterion_stringsearch_grouped, criterion_stringsearch); } } criterion = RestrictionsFactoryUtil.ilike("country", StringPool.PERCENT + country + StringPool.PERCENT); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.ilike("candidatetype", StringPool.PERCENT + type + StringPool.PERCENT)); criterion = RestrictionsFactoryUtil.and(criterion, criterion_stringsearch_grouped); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.ilike("state", StringPool.PERCENT + state + StringPool.PERCENT)); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.sqlRestriction("state_ NOT ILIKE 'x'")); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.sqlRestriction("state_ NOT ILIKE '0'")); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.ilike("source", StringPool.PERCENT + source + StringPool.PERCENT)); dynamicQuery.add(criterion); Order countryOrder = OrderFactoryUtil.asc("country"); Order joinIdOrder = OrderFactoryUtil.asc("joinId"); Order nameOrder = OrderFactoryUtil.asc("name"); dynamicQuery.addOrder(countryOrder); dynamicQuery.addOrder(joinIdOrder); dynamicQuery.addOrder(nameOrder); mastercandidate = MasterCandidateLocalServiceUtil.dynamicQuery(dynamicQuery); } catch (Exception e) { e.printStackTrace(); } return mastercandidate; }
From source file:at.meduni.liferay.portlet.rdconnect.service.impl.SearchIndexLocalServiceImpl.java
License:Open Source License
/** * //from w w w . ja v a2 s .c om */ public List<Long> getOrganizationIdByKeywordAndValue(String key, String value) { value = value.trim(); List<Long> returnvalue = new ArrayList<Long>(); //System.out.println("value for search: " + value); try { DynamicQuery dynamicQuery = DynamicQueryFactoryUtil.forClass(SearchIndex.class); Criterion criterion = RestrictionsFactoryUtil.ilike("value", StringPool.PERCENT + value + StringPool.PERCENT); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.ilike("key", key)); dynamicQuery.add(criterion); Order order_organisationid = OrderFactoryUtil.asc("organisationid"); dynamicQuery.addOrder(order_organisationid); List<SearchIndex> serachresults = SearchIndexLocalServiceUtil.dynamicQuery(dynamicQuery); for (SearchIndex serachresult : serachresults) { if (!returnvalue.contains(serachresult.getOrganisationid())) { returnvalue.add(serachresult.getOrganisationid()); } } } catch (SystemException e) { // TODO Auto-generated catch block e.printStackTrace(); } return returnvalue; }
From source file:at.meduni.liferay.portlet.rdconnect.service.impl.SearchIndexLocalServiceImpl.java
License:Open Source License
/** * //from w ww. j av a2s . co m * @param organizationId * @param key * @param value * @return */ public List<SearchIndex> getSearchIndexByOrganizationKeyValue(long organizationId, String key, String value) { try { DynamicQuery dynamicQuery = DynamicQueryFactoryUtil.forClass(SearchIndex.class); Criterion criterion = RestrictionsFactoryUtil.ilike("value", StringPool.PERCENT + value + StringPool.PERCENT); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.ilike("key", key)); criterion = RestrictionsFactoryUtil.and(criterion, RestrictionsFactoryUtil.eq("organisationid", organizationId)); dynamicQuery.add(criterion); Order order_organisationid = OrderFactoryUtil.asc("organisationid"); dynamicQuery.addOrder(order_organisationid); List<SearchIndex> serachresults = SearchIndexLocalServiceUtil.dynamicQuery(dynamicQuery); return serachresults; } catch (SystemException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; }
From source file:at.meduni.liferay.portlet.rdconnect.service.impl.SearchIndexLocalServiceImpl.java
License:Open Source License
/** * Search index for normal Search// w w w . j av a 2 s .com */ public String getSearchIndexByKeyword(String keyword, ThemeDisplay themeDisplay, String contextpath) { keyword = keyword.trim(); String searchresultstring = ""; try { DynamicQuery dynamicQuery = DynamicQueryFactoryUtil.forClass(SearchIndex.class); Criterion criterion = RestrictionsFactoryUtil.ilike("value", StringPool.PERCENT + keyword + StringPool.PERCENT); dynamicQuery.add(criterion); Order order_organisationid = OrderFactoryUtil.asc("organisationid"); Order order_location = OrderFactoryUtil.asc("location"); Order order_locationid = OrderFactoryUtil.asc("locationid"); dynamicQuery.addOrder(order_organisationid); dynamicQuery.addOrder(order_location); dynamicQuery.addOrder(order_locationid); List<SearchIndex> serachresults = SearchIndexLocalServiceUtil.dynamicQuery(dynamicQuery); // Format the result long oldorganizationid = 0; Organization organization = null; int regcount = 0; int bbcount = 0; SearchIndex oldsearchindex = null; String organizationline = ""; String maincontactline = ""; String organizationurl = ""; HashMap<String, String> hits = null; for (SearchIndex serachresult : serachresults) { try { if (oldorganizationid == 0 || oldorganizationid != serachresult.getOrganisationid()) { if (hits != null) { // Generate previous entry searchresultstring += "<table class=\"rdc_coreinformation_organisation-table-images\">"; searchresultstring += organizationline + maincontactline + organizationurl; for (String key : hits.keySet()) { searchresultstring += hits.get(key) + "</td></tr>"; } searchresultstring += "<tr><td class=\"rdc_coreinformation_organisation-table-images-bottomborder\"> </td><td class=\"rdc_coreinformation_organisation-table-images-bottomborder\"> </td></tr>"; searchresultstring += "</table><br />"; } // Reset all variables organizationline = ""; maincontactline = ""; organizationurl = ""; hits = new HashMap<String, String>(); // New Hit oldorganizationid = serachresult.getOrganisationid(); // Get Organization Data organization = OrganizationLocalServiceUtil .getOrganization(serachresult.getOrganisationid()); long organizationId = organization.getOrganizationId(); String organisationtype = ""; String imgPath = themeDisplay.getPathImage() + "/layout_set_logo?img_id=" + organization.getLogoId(); String orgPath = themeDisplay.getURLPortal() + "/web" + organization.getGroup().getFriendlyURL(); String orgPathdiseases = themeDisplay.getURLPortal() + "/web" + organization.getGroup().getFriendlyURL(); if (organization.getExpandoBridge().getAttribute("Organization Type").toString() .equals("Biobank")) { bbcount++; if (organization.getLogoId() == 0) { imgPath = contextpath + "/images/Biobank.png"; } orgPath = orgPath + "/bb_home"; orgPathdiseases = orgPathdiseases + "/bb_diseases"; organisationtype = "Biobank"; } if (organization.getExpandoBridge().getAttribute("Organization Type").toString() .equals("Registry")) { regcount++; if (organization.getLogoId() == 0) { imgPath = contextpath + "/images/Registry.png"; } orgPath = orgPath + "/reg_home"; orgPathdiseases = orgPathdiseases + "/reg_diseases"; organisationtype = "Registry"; } // Organization Line organizationline = "<tr><td rowspan=\"3\" width=\"80px\"><a href=\"" + orgPath + "\"><img alt=\"logo\" src=\"" + imgPath + "\" width=\"60px\" /></a></td>"; organizationline += "<td><a href=\"" + orgPath + "\">" + highlightResult(organization.getName(), keyword) + "</a></td></tr>"; // Organization Main Contact long maincontactrole = 13320; User maincontact = null; List<User> userlist = UserLocalServiceUtil .getOrganizationUsers(organization.getOrganizationId()); for (User usertmp : userlist) { List<UserGroupRole> usergrouprolles = UserGroupRoleLocalServiceUtil .getUserGroupRoles(usertmp.getUserId(), organization.getGroup().getGroupId()); for (UserGroupRole ugr : usergrouprolles) { if (ugr.getRoleId() == maincontactrole) { maincontact = usertmp; } } } if (maincontact != null) { maincontactline += "<tr><td><a href=\"mailto:" + maincontact.getEmailAddress() + "\">" + highlightResult(maincontact.getFullName(), keyword) + "</a></td></tr>"; } else { } // Organization URL organizationurl = "<tr><td>"; boolean first = true; for (com.liferay.portal.model.Website website : WebsiteLocalServiceUtil.getWebsites( organization.getCompanyId(), Organization.class.getName(), organization.getOrganizationId())) { if (!first) { organizationurl += "<br />"; first = false; } organizationurl += "<a href=\"" + website.getUrl() + "\">" + highlightResult(website.getUrl(), keyword) + "</a>"; } organizationurl += "</td></tr>"; // First Hit if (!serachresult.getLocation().equalsIgnoreCase("OrganizationName")) { if (serachresult.getLocation().equalsIgnoreCase("Diseases")) { DiseaseMatrix diseasematrix = DiseaseMatrixLocalServiceUtil .getDiseaseMatrix(serachresult.getLocationid()); hits.put(serachresult.getLocation() + serachresult.getLocationid(), "<tr><td>" + serachresult.getLocation() + "</td><td>" + highlightResult(diseasematrix.getDiseasename(), keyword) + ": Number of Patients, Donors " + highlightResult(diseasematrix.getPatientcount(), keyword) + "<br />" + highlightResult(serachresult.getKey(), keyword) + ": " + highlightResult(serachresult.getValue(), keyword)); } else { hits.put(serachresult.getLocation() + serachresult.getLocationid(), "<tr><td>" + serachresult.getLocation() + "</td><td>" + highlightResult(serachresult.getKey(), keyword) + ": " + highlightResult(serachresult.getValue(), keyword)); } } } else { if (hits.containsKey(serachresult.getLocation() + serachresult.getLocationid())) { if (serachresult.getLocation().equalsIgnoreCase("Diseases")) { hits.put(serachresult.getLocation() + serachresult.getLocationid(), hits.get(serachresult.getLocation() + serachresult.getLocationid()) + "<br />" + " " + highlightResult(serachresult.getKey(), keyword) + ": " + highlightResult(serachresult.getValue(), keyword)); } else { hits.put(serachresult.getLocation() + serachresult.getLocationid(), hits.get(serachresult.getLocation() + serachresult.getLocationid()) + "<br />" + highlightResult(serachresult.getKey(), keyword) + ": " + highlightResult(serachresult.getValue(), keyword)); } } else { if (serachresult.getLocation().equalsIgnoreCase("Diseases")) { DiseaseMatrix diseasematrix = DiseaseMatrixLocalServiceUtil .getDiseaseMatrix(serachresult.getLocationid()); hits.put(serachresult.getLocation() + serachresult.getLocationid(), "<tr><td>" + serachresult.getLocation() + "</td><td>" + highlightResult(diseasematrix.getDiseasename(), keyword) + ": Number of Patients, Donors " + highlightResult(diseasematrix.getPatientcount(), keyword) + "<br />" + highlightResult(serachresult.getKey(), keyword) + ": " + highlightResult(serachresult.getValue(), keyword)); } else { hits.put(serachresult.getLocation() + serachresult.getLocationid(), "<tr><td>" + serachresult.getLocation() + "</td><td>" + highlightResult(serachresult.getKey(), keyword) + ": " + highlightResult(serachresult.getValue(), keyword)); } } } } catch (Exception ex) { //TODO add msg System.err.println("TODO add msg"); ex.printStackTrace(); } } // Add the last entry searchresultstring += "<table class=\"rdc_coreinformation_organisation-table-images\">"; searchresultstring += organizationline + maincontactline + organizationurl; for (String key : hits.keySet()) { searchresultstring += hits.get(key) + "</td></tr>"; } searchresultstring += "</table>"; // Add the number of Results searchresultstring = "<h4>Search returned " + serachresults.size() + " hits (Registries:" + regcount + " /Biobanks:" + bbcount + ")</h4><br /><br />" + searchresultstring; } catch (Exception e) { e.printStackTrace(); } if (searchresultstring.length() == 0) { searchresultstring = "No Results for the query."; } return searchresultstring; }
From source file:at.meduni.liferay.portlet.rdconnect.service.impl.SearchIndexLocalServiceImpl.java
License:Open Source License
/** * Search for Reporting system for general user * /*from www . ja va2 s . c o m*/ * @param keyword * @param type * @return */ public String getSearchIndexByKeyword(String keyword, String type, ThemeDisplay themeDisplay, String contextpath, long maincontactrole) { keyword = keyword.trim(); type = type.trim(); String searchresultstring = ""; try { DynamicQuery dynamicQuery = null; if (type.equalsIgnoreCase("all")) { dynamicQuery = DynamicQueryFactoryUtil.forClass(SearchIndex.class); Criterion criterion = RestrictionsFactoryUtil.ilike("value", StringPool.PERCENT + keyword + StringPool.PERCENT); //if(!type.equalsIgnoreCase("all")) { //Criterion criterion_type = RestrictionsFactoryUtil.ilike("value", type); //criterion_type = RestrictionsFactoryUtil.and(criterion_type, RestrictionsFactoryUtil.ilike("key", StringPool.PERCENT + "Type" + StringPool.PERCENT)); //criterion = RestrictionsFactoryUtil.and(criterion, criterion_type); dynamicQuery.add(criterion); } else { DynamicQuery subQuery = DynamicQueryFactoryUtil.forClass(SearchIndex.class) .add(PropertyFactoryUtil.forName("value").eq(type)); subQuery.setProjection(ProjectionFactoryUtil.property("organisationid")); dynamicQuery = DynamicQueryFactoryUtil.forClass(SearchIndex.class) .add(PropertyFactoryUtil.forName("value") .like(StringPool.PERCENT + keyword + StringPool.PERCENT)) .add(PropertyFactoryUtil.forName("organisationid").in(subQuery)); } Order order_organisationid = OrderFactoryUtil.asc("organisationid"); Order order_location = OrderFactoryUtil.asc("location"); Order order_locationid = OrderFactoryUtil.asc("locationid"); dynamicQuery.addOrder(order_organisationid); dynamicQuery.addOrder(order_location); dynamicQuery.addOrder(order_locationid); List<SearchIndex> serachresults = SearchIndexLocalServiceUtil.dynamicQuery(dynamicQuery); // Format the result long oldorganizationid = 0; Organization organization = null; int regcount = 0; int bbcount = 0; SearchIndex oldsearchindex = null; String organizationline = ""; String maincontactline = ""; String organizationurl = ""; HashMap<String, String> hits = null; boolean first = true; for (SearchIndex serachresult : serachresults) { try { if (oldorganizationid == 0 || oldorganizationid != serachresult.getOrganisationid()) { if (!first) { searchresultstring += ","; } first = false; organization = OrganizationLocalServiceUtil .getOrganization(serachresult.getOrganisationid()); // Disease Matrix List<DiseaseMatrix> diseasematrixes = DiseaseMatrixLocalServiceUtil .getDiseaseMatrixs(organization.getOrganizationId(), -1, -1); long diseascount = 0; Date tmp_lastupdated = null; for (DiseaseMatrix diseasematrix : diseasematrixes) { try { if (tmp_lastupdated == null) { tmp_lastupdated = diseasematrix.getModifieddate(); } if (tmp_lastupdated.before(diseasematrix.getModifieddate())) { tmp_lastupdated = diseasematrix.getModifieddate(); } diseascount += Long.parseLong(diseasematrix.getPatientcount()); } catch (Exception ex) { } } String lastupdated = ""; if (tmp_lastupdated != null) { String date_format_pattern = "yyyy/MM"; SimpleDateFormat date_format = new SimpleDateFormat(date_format_pattern); lastupdated = date_format.format(tmp_lastupdated); } String organizationtype = organization.getExpandoBridge().getAttribute("Organization Type") .toString(); String orgPath = themeDisplay.getURLPortal() + "/web" + organization.getGroup().getFriendlyURL(); String imgPath = themeDisplay.getPathImage() + "/layout_set_logo?img_id=" + organization.getLogoId(); int numberofacces = RDCOrganizationUserAccessLocalServiceUtil .countRDCOrganizationUserAccess(organization.getOrganizationId()); if (organizationtype.equalsIgnoreCase("Biobank")) { if (organization.getLogoId() == 0) { imgPath = "/BiBBoxCommonServices-portlet/images/Biobank.png"; } orgPath = orgPath + "/bb_home"; } else { if (organization.getLogoId() == 0) { imgPath = "/BiBBoxCommonServices-portlet/images/Registry.png"; } orgPath = orgPath + "/reg_home"; } // Data in DDL String core_name = "core"; String countryCode_value = "countryCode"; if (organizationtype.equalsIgnoreCase("Biobank")) { core_name = "bb_core"; } String countryCode = "not specified"; List<DDLRecordSet> rdc_recordlist = DDLRecordSetLocalServiceUtil .getRecordSets(organization.getGroupId()); for (DDLRecordSet rdc_rs : rdc_recordlist) { String rdc_rsname = String.valueOf(rdc_rs.getNameCurrentValue()); if (rdc_rsname.equals(core_name)) { List<DDLRecord> records = rdc_rs.getRecords(); for (DDLRecord record : records) { try { countryCode = record.getFieldValue(countryCode_value).toString() .replaceAll("\"\\]|\\[\"", ""); } catch (Exception ex) { } } } } String maincontactmail = ""; User maincontact = null; List<User> userlist = UserLocalServiceUtil .getOrganizationUsers(organization.getOrganizationId()); for (User usertmp : userlist) { List<UserGroupRole> usergrouprolles = UserGroupRoleLocalServiceUtil .getUserGroupRoles(usertmp.getUserId(), organization.getGroup().getGroupId()); for (UserGroupRole ugr : usergrouprolles) { if (ugr.getRoleId() == maincontactrole) { maincontact = usertmp; } } } if (maincontact != null) { maincontactmail = maincontact.getEmailAddress(); } searchresultstring += "{Name: '" + organization.getName().replaceAll("'", "‘") + "', " + "OrganizationLink: '" + orgPath + "'," + "OrganizationImageLink: '" + imgPath + "'," + "Type: '" + organization.getExpandoBridge().getAttribute("Organization Type").toString() + "'," + "'NumberofCases': " + diseascount + "," + "'CountryCode': '" + countryCode + "'," + "'Request data': '" + maincontactmail + "', " + "'lastupdated': '" + lastupdated + "', " + "'Number of access': " + numberofacces + "}"; // New Hit oldorganizationid = serachresult.getOrganisationid(); } } catch (Exception e) { e.printStackTrace(); } } } catch (Exception e) { e.printStackTrace(); } if (searchresultstring.length() == 0) { searchresultstring = "No Results for the query."; } return searchresultstring; }
From source file:com.commsen.liferay.multidevice.rules.service.impl.RuleLocalServiceImpl.java
License:Open Source License
/** * Returns list of rules matching the company, group, layout and user's device. * // ww w. jav a 2 s . com * @param companyId company (instance) id * @param groupId group (community/organization) id * @param layoutId layout (page) id * @param device user's device * @action the rule action type (change theme, redirect) * @return list of rules matching the company, group, layout and user's device. */ public List<Rule> getMatchingRules(long companyId, long groupId, long layoutId, Device device) { List<Rule> result = Collections.emptyList(); // Brand and model query part Junction modelMatchesOrNull = RestrictionsFactoryUtil.disjunction(); modelMatchesOrNull.add(PropertyFactoryUtil.forName("model").eq(device.getModel())); modelMatchesOrNull.add(PropertyFactoryUtil.forName("model").isNull()); Junction brandMatchesAndModelMatchesOrNull = RestrictionsFactoryUtil.conjunction(); brandMatchesAndModelMatchesOrNull.add(PropertyFactoryUtil.forName("brand").eq(device.getBrand())); brandMatchesAndModelMatchesOrNull.add(modelMatchesOrNull); Junction brandNullOrMatchesWithModelMatchesOrNull = RestrictionsFactoryUtil.disjunction(); brandNullOrMatchesWithModelMatchesOrNull.add(PropertyFactoryUtil.forName("brand").isNull()); brandNullOrMatchesWithModelMatchesOrNull.add(brandMatchesAndModelMatchesOrNull); // Operating system query part Junction osVersionMatchesOrNull = RestrictionsFactoryUtil.disjunction(); osVersionMatchesOrNull.add(PropertyFactoryUtil.forName("osVersion").eq(device.getOSVersion())); osVersionMatchesOrNull.add(PropertyFactoryUtil.forName("osVersion").isNull()); Junction osNameMatchesAndOsVersionMathcesOrNull = RestrictionsFactoryUtil.conjunction(); osNameMatchesAndOsVersionMathcesOrNull.add(PropertyFactoryUtil.forName("os").eq(device.getOS())); osNameMatchesAndOsVersionMathcesOrNull.add(osVersionMatchesOrNull); Junction osNameNullOrMatchesWithOsVersionMathcesOrNull = RestrictionsFactoryUtil.disjunction(); osNameNullOrMatchesWithOsVersionMathcesOrNull.add(PropertyFactoryUtil.forName("os").isNull()); osNameNullOrMatchesWithOsVersionMathcesOrNull.add(osNameMatchesAndOsVersionMathcesOrNull); // Browser query part Junction browserVersionMatchesOrNull = RestrictionsFactoryUtil.disjunction(); browserVersionMatchesOrNull .add(PropertyFactoryUtil.forName("browserVersion").eq(device.getBrowserVersion())); browserVersionMatchesOrNull.add(PropertyFactoryUtil.forName("browserVersion").isNull()); Junction browserNameMatchesAndBrowserVersionMathcesOrNull = RestrictionsFactoryUtil.conjunction(); browserNameMatchesAndBrowserVersionMathcesOrNull .add(PropertyFactoryUtil.forName("browser").eq(device.getBrowser())); browserNameMatchesAndBrowserVersionMathcesOrNull.add(browserVersionMatchesOrNull); Junction browserNameNullOrMatchesWithBrowserVersionMatchesOrNull = RestrictionsFactoryUtil.disjunction(); browserNameNullOrMatchesWithBrowserVersionMatchesOrNull .add(PropertyFactoryUtil.forName("browser").isNull()); browserNameNullOrMatchesWithBrowserVersionMatchesOrNull .add(browserNameMatchesAndBrowserVersionMathcesOrNull); // Pointing device query part Junction pointingMethodMatchesOrNull = RestrictionsFactoryUtil.disjunction(); pointingMethodMatchesOrNull .add(PropertyFactoryUtil.forName("pointingMethod").eq(device.getPointingMethod())); pointingMethodMatchesOrNull.add(PropertyFactoryUtil.forName("pointingMethod").isNull()); // Is tablet query part Junction tabletMatchesOrNull = RestrictionsFactoryUtil.disjunction(); tabletMatchesOrNull.add(PropertyFactoryUtil.forName("tablet").eq(Boolean.toString(device.isTablet()))); tabletMatchesOrNull.add(PropertyFactoryUtil.forName("tablet").isNull()); // Has qwerty keyboard query part Junction qwertyKeyboardMatchesOrNull = RestrictionsFactoryUtil.disjunction(); qwertyKeyboardMatchesOrNull .add(PropertyFactoryUtil.forName("qwertyKeyboad").eq(Boolean.toString(device.hasQwertyKeyboard()))); qwertyKeyboardMatchesOrNull.add(PropertyFactoryUtil.forName("qwertyKeyboad").isNull()); // Page query part Junction pageMatchesOrNull = RestrictionsFactoryUtil.disjunction(); pageMatchesOrNull.add(PropertyFactoryUtil.forName("layoutId").eq(0l)); pageMatchesOrNull.add(PropertyFactoryUtil.forName("layoutId").eq(layoutId)); DynamicQuery dynamicQuery = DynamicQueryFactoryUtil.forClass(Rule.class); dynamicQuery.add(PropertyFactoryUtil.forName("companyId").eq(companyId)); dynamicQuery.add(PropertyFactoryUtil.forName("groupId").eq(groupId)); dynamicQuery.add(pageMatchesOrNull); dynamicQuery.add(brandNullOrMatchesWithModelMatchesOrNull); dynamicQuery.add(osNameNullOrMatchesWithOsVersionMathcesOrNull); dynamicQuery.add(browserNameNullOrMatchesWithBrowserVersionMatchesOrNull); dynamicQuery.add(pointingMethodMatchesOrNull); dynamicQuery.add(tabletMatchesOrNull); dynamicQuery.add(qwertyKeyboardMatchesOrNull); dynamicQuery.addOrder(OrderFactoryUtil.desc("layoutId")); dynamicQuery.addOrder(OrderFactoryUtil.asc("priority")); try { result = RuleUtil.findWithDynamicQuery(dynamicQuery); } catch (SystemException e) { _log.error("Failed to find theme rules matching " + device, e); } return result; }
From source file:com.crm.product.service.impl.ProductRouteLocalServiceImpl.java
License:Open Source License
public ProductRoute getRoute(String channel, String serviceAddress, String keyword) throws PortalException, SystemException { Date now = new Date(); DynamicQuery query = DynamicQueryFactoryUtil.forClass(ProductRoute.class); DynamicSQLUtil.addCriterion(query, "channel", channel); DynamicSQLUtil.addCriterion(query, "serviceAddress", serviceAddress); DynamicSQLUtil.addCriterion(query, "keyword", keyword); DynamicSQLUtil.addRangeCriterion(query, "startDate", now, now); query.addOrder(OrderFactoryUtil.asc("startDate")); @SuppressWarnings("unchecked") List<ProductRoute> routes = dynamicQuery(query, QueryUtil.ALL_POS, QueryUtil.ALL_POS); if (routes.isEmpty()) { return null; } else {//from w w w . j a va2s. c om return routes.get(0); } }
From source file:com.ext.portlet.halcon.service.impl.UbigeoLocalServiceImpl.java
License:Open Source License
public Ubigeo obtenerUbigeoPorCodigo(String codigo) throws BusinessException { ClassLoader classLoader = (ClassLoader) PortletBeanLocatorUtil.locate(ClpSerializer.getServletContextName(), "portletClassLoader"); DynamicQuery consultaUbigeo = DynamicQueryFactoryUtil.forClass(Ubigeo.class, classLoader) .add(PropertyFactoryUtil.forName("codigo").eq(codigo)); consultaUbigeo.addOrder(OrderFactoryUtil.asc("nombre")); try {// w w w. j a va2 s .c o m List<Ubigeo> ubigeos = CargaTiendaLocalServiceUtil.dynamicQuery(consultaUbigeo); if (ubigeos != null && ubigeos.size() > 0) { return ubigeos.get(0); } } catch (Exception e) { throw new BusinessException(nameClase + " - obtenerUbigeoPorCodigo", e.toString()); } return null; }
From source file:com.fingence.slayer.service.impl.AssetServiceImpl.java
License:Open Source License
@SuppressWarnings("unchecked") public List<Asset> getAssets(String pattern, boolean ticker) { List<Asset> results = new ArrayList<Asset>(); DynamicQuery dynamicQuery = DynamicQueryFactoryUtil.forClass(AssetImpl.class); dynamicQuery.add(RestrictionsFactoryUtil.like(ticker ? "security_ticker" : "id_isin", StringPool.PERCENT + pattern + StringPool.PERCENT)); dynamicQuery.addOrder(OrderFactoryUtil.asc(ticker ? "security_ticker" : "id_isin")); try {//from w ww . j av a 2 s. co m results = assetLocalService.dynamicQuery(dynamicQuery); } catch (SystemException e) { e.printStackTrace(); } return results; }