List of usage examples for org.springframework.data.mongodb.core.query Criteria and
public Criteria and(String key)
From source file:com.epam.ta.reportportal.database.dao.TestItemRepositoryCustomImpl.java
/** * Create {@link Criteria} object for items history selecting Define name * type conditions./*ww w. j a v a 2 s. co m*/ * * @param testItems * @return */ private Criteria getItemsHistoryCriteria(List<TestItem> testItems) { Criteria criteria = new Criteria(); Criteria[] itemCriteries = new Criteria[testItems.size()]; for (int i = 0; i < testItems.size(); i++) { TestItem testItem = testItems.get(i); Criteria one = where("name").is(testItem.getName()).and("type").is(testItem.getType().toString()); if (null != testItem.getItemDescription()) one.and("itemDescription").is(testItem.getItemDescription()); if (null != testItem.getTags()) one.and("tags").is(testItem.getTags()); itemCriteries[i] = one; } criteria.orOperator(itemCriteries); return criteria; }
From source file:com.gongpingjia.carplay.official.service.impl.OfficialApproveServiceImpl.java
/** * ?//w w w. j av a2s . c o m * * @param type * @param status * @param start * @param end * @return */ private Query buildQueryParam(String type, String status, Long start, Long end, String applyUserId) { Criteria criteria = new Criteria(); if (!StringUtils.isEmpty(applyUserId)) { criteria.and("applyUserId").is(applyUserId); } if (StringUtils.isNotEmpty(type)) { criteria.and("type").is(type); } if (StringUtils.isNotEmpty(status)) { criteria.and("status").is(status); } if (start != null && end != null) { criteria.and("applyTime").gte(start).lt(end + Constants.DAY_MILLISECONDS); } else if (end != null) { criteria.and("applyTime").lt(end + Constants.DAY_MILLISECONDS); } else if (start != null) { criteria.and("applyTime").gte(start); } Query query = Query.query(criteria); // query.with(new Sort(new Sort.Order(Sort.Direction.ASC, "status"))); query.with(new Sort(new Sort.Order(Sort.Direction.ASC, "applyTime"))); return query; }
From source file:eu.trentorise.smartcampus.mobility.service.SmartPlannerService.java
private Map<String, PlanningPolicy> getStoredPolicies(Boolean draft) { Map<String, PlanningPolicy> result = Maps.newTreeMap(); Criteria criteria = new Criteria(); if (draft != null) { criteria.and("draft").is(draft); }/*w w w .j av a 2s. c om*/ List<CompilablePolicyData> compilable = storage.searchDomainObjects(criteria, CompilablePolicyData.class); for (CompilablePolicyData policy : compilable) { result.put(policy.getPolicyId(), new CompilablePolicy(policy)); } return result; }
From source file:com.gongpingjia.carplay.official.service.impl.OfficialApproveServiceImpl.java
@Override public ResponseDo getUserUncheckedPhotos(String phone, Long start, Long end, Integer limit, int checked) { LOG.debug("Begin build query criteria, find unchecked photos"); Criteria criteria = Criteria.where("uploadTime").gte(start).lt(end + Constants.DAY_MILLISECONDS) .and("checked").is(checked).and("type").is(Constants.PhotoType.USER_ALBUM); if (!StringUtils.isEmpty(phone)) { User user = userDao.findOne(Query.query(Criteria.where("phone").is(phone))); if (user == null) { LOG.info("User is not exist with phone:{}", phone); return ResponseDo.buildSuccessResponse(new ArrayList<>(0)); }/* w w w .j av a 2 s .c o m*/ criteria.and("userId").is(user.getUserId()); } LOG.debug("Query photos from database"); List<Photo> photos = photoDao.find(Query.query(criteria).limit(limit)); List<Map<String, Object>> photoList = new ArrayList<>(photos.size()); for (Photo item : photos) { photoList.add(item.buildBaseInfo()); } return ResponseDo.buildSuccessResponse(photoList); }
From source file:se.inera.axel.shs.broker.messagestore.internal.MongoMessageLogService.java
@Override public Iterable<ShsMessageEntry> listMessages(String shsTo, Filter filter) { Criteria criteria = Criteria.where("label.to.value").is(shsTo).and("label.transferType") .is(TransferType.ASYNCH).and("state").is(MessageState.RECEIVED).and("archived").in(null, false); if (filter.getProductIds() != null && !filter.getProductIds().isEmpty()) { criteria = criteria.and("label.product.value").in(filter.getProductIds()); }//from ww w. j a v a 2s . c om if (filter.getNoAck() == true) { criteria = criteria.and("acknowledged").in(false, null); } if (filter.getStatus() != null) { criteria = criteria.and("label.status").is(filter.getStatus()); } if (filter.getEndRecipient() != null) { criteria = criteria.and("label.endRecipient.value").is(filter.getEndRecipient()); } if (filter.getOriginator() != null) { criteria = criteria.and("label.originatorOrFrom.value").is(filter.getOriginator()); } if (filter.getCorrId() != null) { criteria = criteria.and("label.corrId").is(filter.getCorrId()); } if (filter.getContentId() != null) { criteria = criteria.and("label.content.contentId").is(filter.getContentId()); } if (filter.getMetaName() != null) { criteria = criteria.and("label.meta.name").is(filter.getMetaName()); } if (filter.getMetaValue() != null) { criteria = criteria.and("label.meta.value").is(filter.getMetaValue()); } if (filter.getSince() != null) { criteria = criteria.and("stateTimeStamp").gte(filter.getSince()); } Query query = Query.query(criteria); Sort sort = createAttributeSort(filter); Sort arrivalOrderSort = createArrivalOrderSort(filter); if (sort != null) sort.and(arrivalOrderSort); else sort = arrivalOrderSort; query.with(sort); if (filter.getMaxHits() != null && filter.getMaxHits() > 0) query = query.limit(filter.getMaxHits()); else query = query.limit(200); return mongoTemplate.find(query, ShsMessageEntry.class); }
From source file:br.com.ezequieljuliano.argos.persistence.LoggerDAO.java
private List<Logger> findByTermsAndCriteria(List<UserTerm> terms, Criteria criteria, long limit) { List<Logger> loggers = new ArrayList<Logger>(); if (!terms.isEmpty()) { String searchString = ""; for (UserTerm userTerm : terms) { if (userTerm.getTerm() == Term.fullText) { searchString = searchString + userTerm.getValue() + " "; } else { switch (userTerm.getFilterMatchMode()) { case contains: if (userTerm.getLogicalOperator() == LogicalOperator.orOperator) { criteria.orOperator( Criteria.where(userTerm.getTerm().getField()).regex(userTerm.getValue(), "i")); } else { criteria.and(userTerm.getTerm().getField()).regex(userTerm.getValue(), "i"); }/*w w w.ja v a2 s . c o m*/ break; case startsWith: if (userTerm.getLogicalOperator() == LogicalOperator.orOperator) { criteria.orOperator(Criteria.where(userTerm.getTerm().getField()) .regex('^' + userTerm.getValue(), "i")); } else { criteria.and(userTerm.getTerm().getField()).regex('^' + userTerm.getValue(), "i"); } break; case equal: if (userTerm.getLogicalOperator() == LogicalOperator.orOperator) { if (userTerm.getTerm().isObjId()) { criteria.orOperator(Criteria.where(userTerm.getTerm().getField()) .is(new ObjectId(userTerm.getValue()))); } else { criteria.orOperator( Criteria.where(userTerm.getTerm().getField()).is(userTerm.getValue())); } } else { if (userTerm.getTerm().isObjId()) { criteria.and(userTerm.getTerm().getField()).is(new ObjectId(userTerm.getValue())); } else { criteria.and(userTerm.getTerm().getField()).is(userTerm.getValue()); } } break; case endsWith: if (userTerm.getLogicalOperator() == LogicalOperator.orOperator) { criteria.orOperator(Criteria.where(userTerm.getTerm().getField()) .regex(userTerm.getValue() + '$', "i")); } else { criteria.and(userTerm.getTerm().getField()).regex(userTerm.getValue() + '$', "i"); } break; } } } if (Strings.isEmpty(searchString)) { loggers = getMongoOperations().find(Query.query(criteria).limit((int) limit), Logger.class); } else { loggers = findByFullText(Logger.COLLECTION_NAME, searchString, criteria, limit); } } return loggers; }
From source file:com.gongpingjia.carplay.service.impl.ActivityServiceImpl.java
@Override public ResponseDo viewUserActivity(String activityId) throws ApiException { Activity activity = activityDao.findById(activityId); if (null == activity) { throw new ApiException("?"); }// ww w . j a v a 2s. com User organizer = userDao.findById(activity.getUserId()); if (null == organizer || StringUtils.isEmpty(organizer.getUserId())) { throw new ApiException(""); } activity.setOrganizer(organizer.buildCommonUserMap()); Criteria criteria = new Criteria(); criteria.and("activityId").is(activity.getActivityId()); Query query = Query.query(criteria); query.with(new Sort(new Sort.Order(Sort.Direction.DESC, "createTime"))); List<Appointment> appointmentList = appointmentDao.find(query); if (null != appointmentList && !appointmentList.isEmpty()) { activity.setAppointmentList(appointmentList); } return ResponseDo.buildSuccessResponse(activity); }
From source file:com.gongpingjia.carplay.service.impl.ActivityServiceImpl.java
@Override public ResponseDo getActivityInfo(String userId, String activityId, Landmark landmark) throws ApiException { LOG.debug("getActivityInfo"); Criteria criteria = Criteria.where("activityId").is(activityId); criteria.and("deleteFlag").is(false); Activity activity = activityDao.findOne(Query.query(criteria)); if (null == activity) { LOG.warn("activity not exist"); throw new ApiException("id ?"); }//from www.j av a 2s .com User organizer = userDao.findById(activity.getUserId()); if (null == organizer) { LOG.error("the activity {} cannot found the organizer user {}", activityId, userId); throw new ApiException("? User"); } Map<String, Object> map = organizer.buildCommonUserMap(); User.appendCover(map, userDao.getCover(activity.getCover(), organizer.getUserId())); activity.setOrganizer(map); if (landmark.getLatitude() != null && landmark.getLongitude() != null) { activity.setDistance(DistanceUtil.getDistance(landmark, activity.getEstabPoint())); } return ResponseDo.buildSuccessResponse(activity); }
From source file:com.gongpingjia.carplay.service.impl.UserServiceImpl.java
private Map<String, Appointment> buildActivityIdToAppointmentMap(String userId, Map<String, Activity> activityMap) { Criteria criteria = Criteria.where("applyUserId").is(userId); criteria.and("activityId").in(activityMap.keySet()); List<Appointment> appointmentList = appointmentDao.find(Query.query(criteria)); Map<String, Appointment> appointmentMap = new HashMap<>(appointmentList.size(), 1); for (Appointment appointment : appointmentList) { //? key activityId appointmentMap.put(appointment.getActivityId(), appointment); }//from ww w . ja v a 2 s . c om return appointmentMap; }