Subversion Repositories SmartDukaan

Rev

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

Rev 24239 Rev 24240
Line 278... Line 278...
278
				LOGGER.info("Could not check status for Request {}", rechargeTransaction.getRequestId());
278
				LOGGER.info("Could not check status for Request {}", rechargeTransaction.getRequestId());
279
			}
279
			}
280
		}
280
		}
281
		LOGGER.info("Reconcile recharge ran successfully");
281
		LOGGER.info("Reconcile recharge ran successfully");
282
	}
282
	}
283
	
283
 
284
	//TemporaryMethod
284
	// TemporaryMethod
285
	public void migrateInvoice() {
285
	public void migrateInvoice() {
286
		List<FofoOrder> fofoOrders = fofoOrderRepository.selectFromSaleDate(LocalDateTime.now().minusDays(3));
286
		List<FofoOrder> fofoOrders = fofoOrderRepository.selectFromSaleDate(LocalDateTime.now().minusDays(3));
287
		Map<Integer, List<FofoOrder>> partnerOrdersMap = new HashMap<>();
287
		Map<Integer, List<FofoOrder>> partnerOrdersMap = new HashMap<>();
288
		partnerOrdersMap  = fofoOrders.stream().collect(Collectors.groupingBy(FofoOrder::getFofoId, Collectors.toList()));
288
		partnerOrdersMap  = fofoOrders.stream().collect(Collectors.groupingBy(FofoOrder::getFofoId, Collectors.toList()));
289
		for (List<FofoOrder> orderList : partnerOrdersMap.values()) {
289
		for (List<FofoOrder> orderList : partnerOrdersMap.values()) {
-
 
290
			int sequence = 0;
-
 
291
			String prefix = "";
-
 
292
			List<FofoOrder> sortedList = orderList.stream().sorted((x1,x2)->x1.getId()-x2.getId()).collect(Collectors.toList());
-
 
293
			for(FofoOrder order : sortedList) {
-
 
294
				
290
			orderList.stream().sorted((x1,x2)->x1.getId()-x2.getId()).forEach(x-> LOGGER.info("Order Id is {}, partner Id is {}", x.getId(), x.getFofoId()));
295
				LOGGER.info("Order Id is {}, partner Id is {}", order.getId(), order.getFofoId());
-
 
296
				if(!order.getInvoiceNumber().contains("SEC")) {
-
 
297
					sequence = Integer.parseInt(order.getInvoiceNumber().split("/")[1]);
-
 
298
					prefix = order.getInvoiceNumber().split("/")[0];
-
 
299
				} else {
-
 
300
					sequence += 1;
-
 
301
					String invoiceNumber = prefix + "/" + sequence; 
-
 
302
					order.setInvoiceNumber(invoiceNumber);
-
 
303
					fofoOrderRepository.persist(order);
-
 
304
				}
-
 
305
			}
-
 
306
				
291
		}
307
		}
292
	}
308
	}
293
 
309
 
294
	public void processScheme() throws Exception {
310
	public void processScheme() throws Exception {
295
		LocalDateTime fromDate = LocalDateTime.now().minusDays(15);
311
		LocalDateTime fromDate = LocalDateTime.now().minusDays(15);
Line 393... Line 409...
393
		helper.setSubject(subject);
409
		helper.setSubject(subject);
394
		helper.setText(body);
410
		helper.setText(body);
395
		if (ccEmails != null) {
411
		if (ccEmails != null) {
396
			helper.setCc(ccEmails);
412
			helper.setCc(ccEmails);
397
		}
413
		}
398
		for(String attachment:inputStreams.keySet())
414
		for (String attachment : inputStreams.keySet()) {
399
		{
-
 
-
 
415
			helper.addAttachment(attachment + "_" + LocalDate.now() + ".xls",
400
		helper.addAttachment(attachment+"_"+LocalDate.now()+".xls",new ByteArrayResource(IOUtils.toByteArray(inputStreams.get(attachment))));
416
					new ByteArrayResource(IOUtils.toByteArray(inputStreams.get(attachment))));
401
		}
417
		}
402
		helper.setTo(email);
418
		helper.setTo(email);
403
		InternetAddress senderAddress = new InternetAddress("noreply@smartdukaan.com", "Smart Dukaan");
419
		InternetAddress senderAddress = new InternetAddress("noreply@smartdukaan.com", "Smart Dukaan");
404
		helper.setFrom(senderAddress);
420
		helper.setFrom(senderAddress);
405
		mailSender.send(message);
421
		mailSender.send(message);
406
	}
422
	}
-
 
423
 
407
	private void sendMailWithAttachmentsForPartners(String email, String body, String subject,
424
	private void sendMailWithAttachmentsForPartners(String email, String body, String subject, InputStream is)
408
			InputStream is)
-
 
409
			throws MessagingException, ProfitMandiBusinessException, IOException {
425
			throws MessagingException, ProfitMandiBusinessException, IOException {
410
		MimeMessage message = mailSender.createMimeMessage();
426
		MimeMessage message = mailSender.createMimeMessage();
411
		MimeMessageHelper helper = new MimeMessageHelper(message, true, CharEncoding.UTF_8);
427
		MimeMessageHelper helper = new MimeMessageHelper(message, true, CharEncoding.UTF_8);
412
		helper.setSubject(subject);
428
		helper.setSubject(subject);
413
		helper.setText(body);
429
		helper.setText(body);
414
		helper.addAttachment("DailySaleTargetReports_"+LocalDate.now()+".xls",new ByteArrayResource(IOUtils.toByteArray(is)));
430
		helper.addAttachment("DailySaleTargetReports_" + LocalDate.now() + ".xls",
-
 
431
				new ByteArrayResource(IOUtils.toByteArray(is)));
415
		helper.setTo(email);
432
		helper.setTo(email);
416
		InternetAddress senderAddress = new InternetAddress("noreply@smartdukaan.com", "Smart Dukaan");
433
		InternetAddress senderAddress = new InternetAddress("noreply@smartdukaan.com", "Smart Dukaan");
417
		helper.setFrom(senderAddress);
434
		helper.setFrom(senderAddress);
418
		mailSender.send(message);
435
		mailSender.send(message);
419
	}
436
	}
Line 424... Line 441...
424
				.selectAllGeEqAndLeEqStartDateAndEndDate(LocalDateTime.now());
441
				.selectAllGeEqAndLeEqStartDateAndEndDate(LocalDateTime.now());
425
		Map<String, InputStream> inputStreams = new HashMap<>();
442
		Map<String, InputStream> inputStreams = new HashMap<>();
426
		for (PartnerTargetDetails partnerTargetDetail : partnerTargetDetails) {
443
		for (PartnerTargetDetails partnerTargetDetail : partnerTargetDetails) {
427
			InputStream is = targetService.getDailySaleReportVsTargetForSaleHead(partnerTargetDetail,
444
			InputStream is = targetService.getDailySaleReportVsTargetForSaleHead(partnerTargetDetail,
428
					salesHeadDetail.getName());
445
					salesHeadDetail.getName());
429
			
-
 
430
			
446
 
431
			inputStreams.put(partnerTargetDetail.getTargetName(), is);
447
			inputStreams.put(partnerTargetDetail.getTargetName(), is);
432
 
448
 
433
		}
449
		}
434
		//String[] ccEmails = null;
450
		// String[] ccEmails = null;
435
		String[] ccEmails={"Tarun.verma@smartdukaan.com","Kamini.sharma@smartdukaan.com","chaitnaya.vats@smartdukaan.com","dhruv.kathpal@smartdukaan.com"};
451
		String[] ccEmails = { "Tarun.verma@smartdukaan.com", "Kamini.sharma@smartdukaan.com",
-
 
452
				"chaitnaya.vats@smartdukaan.com", "dhruv.kathpal@smartdukaan.com" };
436
		String subject = "Daily Sales Report ";
453
		String subject = "Daily Sales Report ";
437
		String message = MessageFormat.format("Sale Target summary for {0}", LocalDate.now());
454
		String message = MessageFormat.format("Sale Target summary for {0}", LocalDate.now());
438
		LOGGER.info("message" + message);
455
		LOGGER.info("message" + message);
439
		if (salesHeadDetail.getName().equals("Kamal")) {
456
		if (salesHeadDetail.getName().equals("Kamal")) {
440
			LOGGER.info("salesHeadDetail.getName()" + salesHeadDetail.getName());
457
			LOGGER.info("salesHeadDetail.getName()" + salesHeadDetail.getName());
Line 447... Line 464...
447
			String[] to = { salesHeadDetail.getEmail() };
464
			String[] to = { salesHeadDetail.getEmail() };
448
			this.sendMailWithAttachments(to, ccEmails, message, subject, inputStreams);
465
			this.sendMailWithAttachments(to, ccEmails, message, subject, inputStreams);
449
		}
466
		}
450
	}
467
	}
451
 
468
 
452
	public void sendMailToPartnerAboutTargetAndSales()
469
	public void sendMailToPartnerAboutTargetAndSales() throws ProfitMandiBusinessException, MessagingException,
453
			throws ProfitMandiBusinessException, MessagingException, IOException, EncryptedDocumentException, InvalidFormatException {
470
			IOException, EncryptedDocumentException, InvalidFormatException {
454
		List<Integer> fofoIds = targetService.getfofoIdsFromfofoStore();
471
		List<Integer> fofoIds = targetService.getfofoIdsFromfofoStore();
455
		Map<Integer, CustomRetailer> fofoIdsAndCustomRetailer = retailerService
472
		Map<Integer, CustomRetailer> fofoIdsAndCustomRetailer = retailerService
456
				.getFofoRetailers(new ArrayList<>(fofoIds));
473
				.getFofoRetailers(new ArrayList<>(fofoIds));
457
		List<InputStream> input=new ArrayList<>();
474
		List<InputStream> input = new ArrayList<>();
458
		List<PartnerTargetDetails> partnerTargetDetails = partnerTargetRepository
475
		List<PartnerTargetDetails> partnerTargetDetails = partnerTargetRepository
459
				.selectAllGeEqAndLeEqStartDateAndEndDate(LocalDateTime.now());
476
				.selectAllGeEqAndLeEqStartDateAndEndDate(LocalDateTime.now());
460
		for (Integer fofoId : fofoIds) {
477
		for (Integer fofoId : fofoIds) {
461
			InputStream is=targetService.getDailySaleReportVsTargetForPartner(fofoId,partnerTargetDetails);
478
			InputStream is = targetService.getDailySaleReportVsTargetForPartner(fofoId, partnerTargetDetails);
462
			LOGGER.info("is"+is);
479
			LOGGER.info("is" + is);
463
			if(is==null)
480
			if (is == null) {
464
			{
-
 
465
				continue;
481
				continue;
466
			}
482
			}
467
			LOGGER.info("fofoId"+fofoId);
483
			LOGGER.info("fofoId" + fofoId);
468
			
484
 
469
			LOGGER.info(fofoIdsAndCustomRetailer.get(fofoId).getEmail());
485
			LOGGER.info(fofoIdsAndCustomRetailer.get(fofoId).getEmail());
470
			String subject="Daily Sales Report";
486
			String subject = "Daily Sales Report";
471
			String message = MessageFormat.format("Sale Target summary for {0}",LocalDate.now());
487
			String message = MessageFormat.format("Sale Target summary for {0}", LocalDate.now());
472
			LOGGER.info(message);
488
			LOGGER.info(message);
473
			this.sendMailWithAttachmentsForPartners(fofoIdsAndCustomRetailer.get(fofoId).getEmail(),message, subject, is);
489
			this.sendMailWithAttachmentsForPartners(fofoIdsAndCustomRetailer.get(fofoId).getEmail(), message, subject,
474
			
490
					is);
475
			
491
 
476
		}
492
		}
477
	}
493
	}
478
 
494
 
479
}
495
}