Subversion Repositories SmartDukaan

Rev

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

Rev 24433 Rev 24564
Line 167... Line 167...
167
	}
167
	}
168
 
168
 
169
	@RequestMapping(value = "/item", method = RequestMethod.GET)
169
	@RequestMapping(value = "/item", method = RequestMethod.GET)
170
	public String getItemPricing(HttpServletRequest request, Model model, @RequestParam String query) throws Throwable {
170
	public String getItemPricing(HttpServletRequest request, Model model, @RequestParam String query) throws Throwable {
171
		String query1 = query.toLowerCase();
171
		String query1 = query.toLowerCase();
172
		List<ItemDescriptionModel> partnersItemDescription = this.getAllPartnerItemStringDescription()
172
		List<ItemDescriptionModel> partnersItemDescription = this.getAllPartnerItemStringDescription().parallelStream()
173
				.parallelStream().filter(x -> x.getItemDescription().toLowerCase().matches(".*?" + query1 +".*?")).collect(Collectors.toList());
173
				.filter(x -> x.getItemDescription().toLowerCase().matches(".*?" + query1 + ".*?"))
-
 
174
				.collect(Collectors.toList());
174
 
175
 
175
		model.addAttribute("response", mvcResponseSender.createResponseString(partnersItemDescription));
176
		model.addAttribute("response", mvcResponseSender.createResponseString(partnersItemDescription));
176
		return "response";
177
		return "response";
177
	}
178
	}
178
 
179
 
Line 264... Line 265...
264
	@RequestMapping(value = "/priceDropImeis/{priceDropId}", method = RequestMethod.GET)
265
	@RequestMapping(value = "/priceDropImeis/{priceDropId}", method = RequestMethod.GET)
265
	public String priceDropStatus(HttpServletRequest request, @PathVariable int priceDropId, Model model)
266
	public String priceDropStatus(HttpServletRequest request, @PathVariable int priceDropId, Model model)
266
			throws Exception {
267
			throws Exception {
267
 
268
 
268
		PriceDropImeisModel priceDropImeisModel = new PriceDropImeisModel();
269
		PriceDropImeisModel priceDropImeisModel = new PriceDropImeisModel();
269
		
270
 
270
		//This call is used to persit imeis to pricedrop imeis in case its not there.
271
		// This call is used to persit imeis to pricedrop imeis in case its not there.
271
		priceDropService.priceDropStatus(priceDropId);
272
		priceDropService.priceDropStatus(priceDropId);
272
		
273
 
273
		List<String> pendingImeis = new ArrayList<>();
274
		List<String> pendingImeis = new ArrayList<>();
274
		List<String> approvedImeis = new ArrayList<>();
275
		List<String> approvedImeis = new ArrayList<>();
275
		List<String> rejectedImeis = new ArrayList<>();
276
		List<String> rejectedImeis = new ArrayList<>();
276
		List<PriceDropIMEI> priceDropImeis = priceDropIMEIRepository.selectByPriceDropId(priceDropId);
277
		List<PriceDropIMEI> priceDropImeis = priceDropIMEIRepository.selectByPriceDropId(priceDropId);
277
		for (PriceDropIMEI priceDropIMEI : priceDropImeis) {
278
		for (PriceDropIMEI priceDropIMEI : priceDropImeis) {
Line 315... Line 316...
315
			TagListing tagListing = tagListingRepository.selectByItemId(priceDropModel.getItemId());
316
			TagListing tagListing = tagListingRepository.selectByItemId(priceDropModel.getItemId());
316
			float oldDp = tagListing.getSellingPrice();
317
			float oldDp = tagListing.getSellingPrice();
317
			float oldMop = tagListing.getMop();
318
			float oldMop = tagListing.getMop();
318
			float oldTp = 0;
319
			float oldTp = 0;
319
			float newDp = priceDropModel.getDp();
320
			float newDp = priceDropModel.getDp();
320
			
321
 
321
			if (newDp != oldDp) {
322
			if (newDp != oldDp) {
322
				List<Item> allItems = null;
323
				List<Item> allItems = null;
323
				Item currentItem = itemRepository.selectById(priceDropModel.getItemId());
324
				Item currentItem = itemRepository.selectById(priceDropModel.getItemId());
324
				if (priceDropModel.isAllColors()) {
325
				if (priceDropModel.isAllColors()) {
325
					allItems = itemRepository.selectAllByCatalogItemId(currentItem.getCatalogItemId());
326
					allItems = itemRepository.selectAllByCatalogItemId(currentItem.getCatalogItemId());
Line 426... Line 427...
426
		}
427
		}
427
		PriceDrop priceDrop = priceDropRepository.selectById(priceDropImeisModel.getPriceDropId());
428
		PriceDrop priceDrop = priceDropRepository.selectById(priceDropImeisModel.getPriceDropId());
428
		Item item = itemRepository.selectAllByCatalogItemId(priceDrop.getCatalogItemId()).get(0);
429
		Item item = itemRepository.selectAllByCatalogItemId(priceDrop.getCatalogItemId()).get(0);
429
		String description = item.getItemDescriptionNoColor();
430
		String description = item.getItemDescriptionNoColor();
430
		if (priceDropIMEIsToProcess.size() > 0) {
431
		if (priceDropIMEIsToProcess.size() > 0) {
431
			List<String> serialNumbers = priceDropIMEIsToProcess.stream().map(x -> x.getImei())
-
 
432
					.collect(Collectors.toList());
432
			
433
			List<LineItemImei> lineItemImeis = lineItemImeisRepository.selectByIMEI(serialNumbers);
-
 
434
			Map<Integer, List<InventoryItem>> pendingPartnerInventoryMap = priceDropService
433
			Map<Integer, List<InventoryItem>> pendingPartnerInventoryMap = priceDropService
435
					.getInventoryForPriceDrop(lineItemImeis, priceDrop).stream()
434
					.getInventoryForPriceDrop(priceDropIMEIsToProcess, priceDrop).stream()
436
					.collect(Collectors.groupingBy(InventoryItem::getFofoId));
435
					.collect(Collectors.groupingBy(InventoryItem::getFofoId));
437
 
436
 
438
			for (Map.Entry<Integer, List<InventoryItem>> pendingPartnerInventory : pendingPartnerInventoryMap
437
			for (Map.Entry<Integer, List<InventoryItem>> pendingPartnerInventory : pendingPartnerInventoryMap
439
					.entrySet()) {
438
					.entrySet()) {
440
				List<InventoryItem> fofoInventoryList = pendingPartnerInventory.getValue();
439
				List<InventoryItem> fofoInventoryList = pendingPartnerInventory.getValue();
Line 463... Line 462...
463
 
462
 
464
	}
463
	}
465
 
464
 
466
	private ByteArrayOutputStream getByteArrayOutputStream(LocalDateTime affectedOn, Integer catalogItemId)
465
	private ByteArrayOutputStream getByteArrayOutputStream(LocalDateTime affectedOn, Integer catalogItemId)
467
			throws Exception {
466
			throws Exception {
468
		List<ImeiDropSummaryModel> imeiDropSummaryModelList = priceDropService.getAllSerialNumbersByAffectedDate(affectedOn,
467
		List<ImeiDropSummaryModel> imeiDropSummaryModelList = priceDropService
469
				catalogItemId);
468
				.getAllSerialNumbersByAffectedDate(affectedOn, catalogItemId);
470
		List<List<Object>> rows = new ArrayList<>();
469
		List<List<Object>> rows = new ArrayList<>();
471
		for (ImeiDropSummaryModel imeiDropSummaryModel : imeiDropSummaryModelList) {
470
		for (ImeiDropSummaryModel imeiDropSummaryModel : imeiDropSummaryModelList) {
472
			rows.add(this.getRow(imeiDropSummaryModel));
471
			rows.add(this.getRow(imeiDropSummaryModel));
473
		}
472
		}
474
		return FileUtil.getCSVByteStream(Arrays.asList("IMEI Number", "Store Name", "Store Code", "Item ID", "Brand",
473
		return FileUtil.getCSVByteStream(Arrays.asList("IMEI Number", "Store Name", "Store Code", "Item ID", "Brand",
Line 487... Line 486...
487
		row.add(imeiDropSummaryModel.getColor());
486
		row.add(imeiDropSummaryModel.getColor());
488
		row.add(FormattingUtils.formatReporitcoDate(imeiDropSummaryModel.getLastScanned()));
487
		row.add(FormattingUtils.formatReporitcoDate(imeiDropSummaryModel.getLastScanned()));
489
		return row;
488
		return row;
490
	}
489
	}
491
 
490
 
492
 
-
 
493
 
-
 
494
	private boolean validatePriceDrop(PriceDropModel priceDropModel) throws ProfitMandiBusinessException {
491
	private boolean validatePriceDrop(PriceDropModel priceDropModel) throws ProfitMandiBusinessException {
495
		if (priceDropModel.getMop() > 0 && priceDropModel.getDp() > 0
492
		if (priceDropModel.getMop() > 0 && priceDropModel.getDp() > 0 && priceDropModel.getTp() > 0) {
496
				&& priceDropModel.getTp() > 0) {
-
 
497
			return true;
493
			return true;
498
		}
494
		}
499
		return false;
495
		return false;
500
	}
496
	}
501
 
497