Subversion Repositories SmartDukaan

Rev

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

Rev 26344 Rev 26376
Line 705... Line 705...
705
		Map<Integer, CustomRetailer> customRetailerMap = retailerService
705
		Map<Integer, CustomRetailer> customRetailerMap = retailerService
706
				.getFofoRetailers(fofoStores.stream().map(x -> x.getId()).collect(Collectors.toList()));
706
				.getFofoRetailers(fofoStores.stream().map(x -> x.getId()).collect(Collectors.toList()));
707
 
707
 
708
		List<String> headers = Arrays.asList("Code", "Firm Name", "Store Name", "State Manager", "Teritory/Team Lead",
708
		List<String> headers = Arrays.asList("Code", "Firm Name", "Store Name", "State Manager", "Teritory/Team Lead",
709
				"Wallet Amount", "In Stock Amount", "Activated Stock", "Return In Transit Stock", "Unbilled Amount", "Grn Pending Amount",
709
				"Wallet Amount", "In Stock Amount", "Activated Stock", "Return In Transit Stock", "Unbilled Amount", "Grn Pending Amount",
710
				"Min Investment", "Investment Amount", "Investment Short", "Unbilled Qty");
710
				"Min Investment", "Investment Amount", "Investment Short", "Unbilled Qty", "Short Days");
711
		List<List<?>> rows = new ArrayList<>();
711
		List<List<?>> rows = new ArrayList<>();
712
		Map<Integer, List<?>> partnerRowsMap = new HashMap<>();
712
		Map<Integer, List<?>> partnerRowsMap = new HashMap<>();
713
 
713
 
714
		Map<Integer, List<Serializable>> partnerIdSalesHeaderMap = this.getPartnerIdSalesHeaders();
714
		Map<Integer, List<Serializable>> partnerIdSalesHeaderMap = this.getPartnerIdSalesHeaders();
-
 
715
		
-
 
716
		Map<Integer, Integer> shortDaysMap = partnerDailyInvestmentRepository.selectAll(LocalDate.now().withDayOfMonth(1), LocalDate.now())
-
 
717
		.stream().collect(Collectors.groupingBy(x->x.getFofoId(), 
-
 
718
				Collectors.summingInt(x-> x.getShortPercentage() > 10 ? 1 : 0)));
715
 
719
 
716
		for (FofoStore fofoStore : fofoStores) {
720
		for (FofoStore fofoStore : fofoStores) {
-
 
721
			int fofoId = fofoStore.getId();
717
			PartnerDailyInvestment partnerDailyInvestment = partnerInvestmentService.getInvestment(fofoStore.getId(),
722
			PartnerDailyInvestment partnerDailyInvestment = partnerInvestmentService.getInvestment(fofoId,1);
718
					1);
-
 
719
			partnerDailyInvestment.setDate(yesterDay);
723
			partnerDailyInvestment.setDate(yesterDay);
-
 
724
			
720
			try {
725
			try {
721
				partnerDailyInvestmentRepository.persist(partnerDailyInvestment);
726
				partnerDailyInvestmentRepository.persist(partnerDailyInvestment);
-
 
727
				shortDaysMap.put(fofoId, shortDaysMap.get(fofoId) + (partnerDailyInvestment.getShortPercentage() > 10 ? 1 : 0));
722
			} catch (Exception e) {
728
			} catch (Exception e) {
723
				// ignore the exceptions during persist
729
				// ignore the exceptions during persist
724
			}
730
			}
725
 
731
 
726
			CustomRetailer retailer = customRetailerMap.get(fofoStore.getId());
732
			CustomRetailer retailer = customRetailerMap.get(fofoStore.getId());
Line 732... Line 738...
732
			row.addAll(
738
			row.addAll(
733
					Arrays.asList(partnerDailyInvestment.getWalletAmount(), partnerDailyInvestment.getInStockAmount(),
739
					Arrays.asList(partnerDailyInvestment.getWalletAmount(), partnerDailyInvestment.getInStockAmount(),
734
							partnerDailyInvestment.getActivatedStockAmount() == 0 ? "-":"("+partnerDailyInvestment.getActivatedStockAmount()+")",
740
							partnerDailyInvestment.getActivatedStockAmount() == 0 ? "-":"("+partnerDailyInvestment.getActivatedStockAmount()+")",
735
							0, partnerDailyInvestment.getUnbilledAmount(), partnerDailyInvestment.getGrnPendingAmount(),
741
							0, partnerDailyInvestment.getUnbilledAmount(), partnerDailyInvestment.getGrnPendingAmount(),
736
							partnerDailyInvestment.getMinInvestment(), partnerDailyInvestment.getTotalInvestment(),
742
							partnerDailyInvestment.getMinInvestment(), partnerDailyInvestment.getTotalInvestment(),
737
							partnerDailyInvestment.getShortInvestment(), partnerDailyInvestment.getUnbilledQty()));
743
							partnerDailyInvestment.getShortInvestment(), partnerDailyInvestment.getUnbilledQty(),shortDaysMap.get(fofoId)));
738
			partnerRowsMap.put(fofoStore.getId(), row);
744
			partnerRowsMap.put(fofoStore.getId(), row);
739
			rows.add(row);
745
			rows.add(row);
740
 
746
 
741
		}
747
		}
742
 
748
 
Line 750... Line 756...
750
				String[] sendToArray = new String[] { storeGuyEntry.getKey() };
756
				String[] sendToArray = new String[] { storeGuyEntry.getKey() };
751
				Utils.sendMailWithAttachment(googleMailSender, sendToArray, null, "Franchise Investment Summary", "PFA",
757
				Utils.sendMailWithAttachment(googleMailSender, sendToArray, null, "Franchise Investment Summary", "PFA",
752
						fileName, new ByteArrayResource(baos.toByteArray()));
758
						fileName, new ByteArrayResource(baos.toByteArray()));
753
			}
759
			}
754
			sendTo = Arrays.asList("tarun.verma@smartdukaan.com", "kamini.sharma@smartdukaan.com",
760
			sendTo = Arrays.asList("tarun.verma@smartdukaan.com", "kamini.sharma@smartdukaan.com",
755
					"prakash.rai@smartdukaan.com", "amit.gupta@shop2020.in", "amod.sen@smartdukaan.com");
761
					"prakash.rai@smartdukaan.com", "amit.gupta@shop2020.in");
756
		}
762
		}
757
 
763
 
758
		ByteArrayOutputStream baos = FileUtil.getCSVByteStream(headers, rows);
764
		ByteArrayOutputStream baos = FileUtil.getCSVByteStream(headers, rows);
759
		String[] sendToArray = sendTo.toArray(new String[sendTo.size()]);
765
		String[] sendToArray = sendTo.toArray(new String[sendTo.size()]);
760
		Utils.sendMailWithAttachment(googleMailSender, sendToArray, null, "Franchise Investment Summary", "PFA",
766
		Utils.sendMailWithAttachment(googleMailSender, sendToArray, null, "Franchise Investment Summary", "PFA",