List of usage examples for org.springframework.data.mongodb.core.query Criteria Criteria
public Criteria()
From source file:org.springframework.data.mongodb.core.mapping.MappingTests.java
@Test public void testOrQuery() { PersonWithObjectId p1 = new PersonWithObjectId(1, "first", ""); template.save(p1);//w w w . j a va 2s. c om PersonWithObjectId p2 = new PersonWithObjectId(2, "second", ""); template.save(p2); List<PersonWithObjectId> results = template.find( new Query(new Criteria().orOperator(where("ssn").is(1), where("ssn").is(2))), PersonWithObjectId.class); assertNotNull(results); assertThat(results.size(), is(2)); assertThat(results.get(1).getSsn(), is(2)); }
From source file:org.springframework.data.mongodb.repository.query.MongoQueryCreator.java
@Override protected Criteria and(Part part, Criteria base, Iterator<Object> iterator) { if (base == null) { return create(part, iterator); }//w w w. jav a2 s . com PersistentPropertyPath<MongoPersistentProperty> path = context .getPersistentPropertyPath(part.getProperty()); return new Criteria().andOperator(base, from(part.getType(), where(path.toDotPath(MongoPersistentProperty.PropertyToFieldNameConverter.INSTANCE)), (PotentiallyConvertingIterator) iterator)); }
From source file:org.springframework.data.mongodb.repository.query.MongoQueryCreator.java
@Override protected Criteria or(Criteria base, Criteria criteria) { Criteria result = new Criteria(); return result.orOperator(base, criteria); }
From source file:vn.chodientu.service.ItemCrawlLogService.java
public DataPage<ItemCrawlLog> search(ItemCrawlLogSearch logSearch) { String itemId = logSearch.getItemId(); String sellerId = logSearch.getSellerId(); long timeFrom = logSearch.getTimeFrom(); long timeTo = logSearch.getTimeTo(); int status = logSearch.getStatus(); String imgStatus = logSearch.getImageStatus(); String type = logSearch.getType(); int pageIndex = logSearch.getPageIndex(); int pageSize = logSearch.getPageSize(); Criteria cri = new Criteria(); if (itemId != null && !itemId.equals("")) { cri.and("itemId").is(itemId); }//from w ww . ja v a2s . c o m if (sellerId != null && !sellerId.equals("")) { cri.and("sellerId").is(sellerId); } if (imgStatus != null && !imgStatus.equals("")) { switch (imgStatus) { case "NO_IMAGE": cri.and("imageStatus").is(CrawlImageStatus.NO_IMAGE); break; case "WAIT_DOWNLOAD": cri.and("imageStatus").is(CrawlImageStatus.WAIT_DOWNLOAD); break; case "DOWNLOAD_SUCCESS": cri.and("imageStatus").is(CrawlImageStatus.DOWNLOAD_SUCCESS); break; case "DOWNLOAD_FAIL": cri.and("imageStatus").is(CrawlImageStatus.DOWNLOAD_FAIL); break; case "SMALL_IMAGE": cri.and("imageStatus").is(CrawlImageStatus.SMALL_IMAGE); break; default: break; } } if (type != null && !type.equals("")) { switch (type) { case "ADD": cri.and("type").is(CrawlType.ADD); break; case "EDIT": cri.and("type").is(CrawlType.ADD); break; default: break; } } switch (status) { case 0: //everrun cri.and("status").is(false); break; case 1: //running cri.and("status").is(true); break; default: break; } if (timeFrom > 0 && timeTo > 0) { cri.and("time").gte(timeFrom).lt(timeTo); } else if (timeFrom > 0) { cri.and("time").gte(timeFrom); } else if (timeTo > 0) { cri.and("time").lt(timeTo); } if (pageIndex <= 0) { pageIndex = 0; } if (pageSize <= 0) { pageSize = 50; } Query query = new Query(cri); query.skip(pageIndex * pageSize).limit(pageSize); query.with(new Sort(Sort.Direction.DESC, "time")); // DataPage<ItemCrawlLog> dataPage = new DataPage<>(); dataPage.setData(crawlLogRepository.find(query)); dataPage.setPageIndex(pageIndex); dataPage.setPageSize(pageSize); dataPage.setDataCount(crawlLogRepository.count(query)); dataPage.setPageCount(dataPage.getDataCount() / pageSize); try { List<String> listItemIds = new ArrayList<>(); for (ItemCrawlLog crawlLog : dataPage.getData()) { if (crawlLog.getItemId() != null && !crawlLog.getItemId().equals("")) { listItemIds.add(crawlLog.getItemId()); } List<String> errMsg = new ArrayList<>(); List<String> alertMsg = new ArrayList<>(); for (String errcode : crawlLog.getErrorCode()) { errMsg.add(ErrorUtils.getErrorMessage(errcode)); } for (String alertCode : crawlLog.getAlertCode()) { alertMsg.add(ErrorUtils.getAlertMessage(alertCode)); } crawlLog.setErrorMessage(errMsg); crawlLog.setAlertMessage(alertMsg); } List<Item> listItems = itemService.list(listItemIds); for (ItemCrawlLog crawlLog : dataPage.getData()) { for (Item item : listItems) { if (item.getId().equals(crawlLog.getItemId())) { crawlLog.setItem(item); } } for (KeyVal64 keyval : crawlLog.getRequest()) { String value = StringUtils.newStringUtf8(Base64.decodeBase64(keyval.getValue())); if (value != null && !value.equals("")) { value = value.trim(); } keyval.setValue(value); } } } catch (Exception ex) { return dataPage; } return dataPage; }