Subversion Repositories SmartDukaan

Rev

Rev 30426 | Rev 30527 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 30426 Rev 30449
Line 1914... Line 1914...
1914
		schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, SchemeService.OUT_SCHEME_TYPES);
1914
		schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason, SchemeService.OUT_SCHEME_TYPES);
1915
		schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason,
1915
		schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason,
1916
				Arrays.asList(SchemeType.INVESTMENT));
1916
				Arrays.asList(SchemeType.INVESTMENT));
1917
		schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason,
1917
		schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason,
1918
				Arrays.asList(SchemeType.ACTIVATION));
1918
				Arrays.asList(SchemeType.ACTIVATION));
-
 
1919
		schemeService.reverseSchemes(inventoryItems, fofoOrder.getId(), reversalReason,
-
 
1920
				Arrays.asList(SchemeType.SPECIAL_SUPPORT));
1919
 
1921
 
1920
	}
1922
	}
1921
 
1923
 
1922
	@Override
1924
	@Override
1923
	public float getSales(int fofoId, LocalDateTime startDate, LocalDateTime endDate) {
1925
	public float getSales(int fofoId, LocalDateTime startDate, LocalDateTime endDate) {
Line 1986... Line 1988...
1986
		 * fofoOrderRepository.selectByFofoIdBetweenCreatedTimeStamp(fofoId,
1988
		 * fofoOrderRepository.selectByFofoIdBetweenCreatedTimeStamp(fofoId,
1987
		 * lastCredit.atStartOfDay(), LocalDate.now().plusDays(1).atStartOfDay()); for
1989
		 * lastCredit.atStartOfDay(), LocalDate.now().plusDays(1).atStartOfDay()); for
1988
		 * (FofoOrder fo : fofoOrders) { carryBagCount +=
1990
		 * (FofoOrder fo : fofoOrders) { carryBagCount +=
1989
		 * fofoOrderItemRepository.selectByOrderId(fo.getId()).stream() .filter(x ->
1991
		 * fofoOrderItemRepository.selectByOrderId(fo.getId()).stream() .filter(x ->
1990
		 * x.getSellingPrice() >= 12000).count();
1992
		 * x.getSellingPrice() >= 12000).count();
1991
		 * 
1993
		 *
1992
		 * }
1994
		 * }
1993
		 */
1995
		 */
1994
 
1996
 
1995
		Session session = sessionFactory.getCurrentSession();
1997
		Session session = sessionFactory.getCurrentSession();
1996
		CriteriaBuilder cb = session.getCriteriaBuilder();
1998
		CriteriaBuilder cb = session.getCriteriaBuilder();
1997
 
1999
 
1998
		CriteriaQuery<SimpleEntry> query = cb.createQuery(SimpleEntry.class);
2000
		CriteriaQuery<SimpleEntry> query = cb.createQuery(SimpleEntry.class);
1999
		Root<FofoOrder> fofoOrder = query.from(FofoOrder.class);
2001
		Root<FofoOrder> fofoOrder = query.from(FofoOrder.class);
2000
		Root<FofoOrderItem> fofoOrderItem = query.from(FofoOrderItem.class);
2002
		Root<FofoOrderItem> fofoOrderItem = query.from(FofoOrderItem.class);
-
 
2003
		Root<TagListing> tagListingRoot = query.from(TagListing.class);
-
 
2004
		Root<Item> itemRoot = query.from(Item.class);
-
 
2005
 
2001
 
2006
 
2002
		Predicate p2 = cb.between(fofoOrder.get(ProfitMandiConstants.CREATE_TIMESTAMP), lastCredit,
2007
		Predicate p2 = cb.between(fofoOrder.get(ProfitMandiConstants.CREATE_TIMESTAMP), lastCredit,
2003
				LocalDate.now().atStartOfDay());
2008
				LocalDate.now().atStartOfDay());
2004
		Predicate p3 = cb.isNull(fofoOrder.get("cancelledTimestamp"));
2009
		Predicate p3 = cb.isNull(fofoOrder.get("cancelledTimestamp"));
-
 
2010
		Predicate joinPredicate = cb.and(
2005
		Predicate p4 = cb.equal(fofoOrder.get(ProfitMandiConstants.ID),
2011
				cb.equal(fofoOrder.get(ProfitMandiConstants.ID), fofoOrderItem.get(ProfitMandiConstants.ORDER_ID)),
2006
				fofoOrderItem.get(ProfitMandiConstants.ORDER_ID));
2012
				cb.equal(fofoOrderItem.get("itemId"), tagListingRoot.get("itemId")),
-
 
2013
				cb.equal(itemRoot.get("id"), tagListingRoot.get("itemId")),
2007
		Predicate p5 = cb.equal(fofoOrder.get(ProfitMandiConstants.FOFO_ID), fofoId);
2014
				cb.equal(fofoOrder.get(ProfitMandiConstants.FOFO_ID), fofoId)
-
 
2015
		);
2008
		ItemCriteria itemCriteria = new ItemCriteria();
2016
		ItemCriteria itemCriteria = new ItemCriteria();
2009
		itemCriteria.setBrands(mongoClient.getMongoBrands(fofoId, null, 3).stream().map(x -> (String) x.get("name"))
2017
		itemCriteria.setBrands(mongoClient.getMongoBrands(fofoId, null, 3).stream().map(x -> (String) x.get("name"))
2010
				.collect(Collectors.toList()));
2018
				.collect(Collectors.toList()));
2011
		float startValue = 12000;
2019
		float startValue = 12000;
2012
		itemCriteria.setStartPrice(startValue);
2020
		itemCriteria.setStartPrice(startValue);
2013
		itemCriteria.setEndPrice(0);
2021
		itemCriteria.setEndPrice(0);
2014
		itemCriteria.setFeaturedPhone(false);
2022
		itemCriteria.setFeaturedPhone(false);
2015
		itemCriteria.setSmartPhone(true);
2023
		itemCriteria.setSmartPhone(true);
2016
		itemCriteria.setCatalogIds(new ArrayList<>());
2024
		itemCriteria.setCatalogIds(new ArrayList<>());
2017
		itemCriteria.setExcludeCatalogIds(new ArrayList<>());
2025
		itemCriteria.setExcludeCatalogIds(new ArrayList<>());
2018
		Predicate itemPredicate = itemRepository.getItemPredicate(itemCriteria, query, cb, fofoOrderItem);
2026
		Predicate itemPredicate = itemRepository.getItemPredicate(itemCriteria, cb, itemRoot, tagListingRoot);
2019
		Predicate finalPredicate = cb.and(itemPredicate, p2, p3, p4, p5);
2027
		Predicate finalPredicate = cb.and(itemPredicate, p2, p3, joinPredicate);
2020
		query = query.multiselect(fofoOrder.get(ProfitMandiConstants.FOFO_ID), cb.count(fofoOrder))
2028
		query = query.multiselect(fofoOrder.get(ProfitMandiConstants.FOFO_ID), cb.count(fofoOrder))
2021
				.where(finalPredicate).groupBy(fofoOrder.get(ProfitMandiConstants.FOFO_ID));
2029
				.where(finalPredicate).groupBy(fofoOrder.get(ProfitMandiConstants.FOFO_ID));
2022
		List<SimpleEntry> simpleEntries = session.createQuery(query).getResultList();
2030
		List<SimpleEntry> simpleEntries = session.createQuery(query).getResultList();
2023
		Map<Integer, Long> returnMap = new HashMap<>();
2031
		Map<Integer, Long> returnMap = new HashMap<>();
2024
 
2032