Subversion Repositories SmartDukaan

Rev

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

Rev 24314 Rev 24337
Line 55... Line 55...
55
import com.spice.profitmandi.dao.entity.fofo.PartnerTargetDetails;
55
import com.spice.profitmandi.dao.entity.fofo.PartnerTargetDetails;
56
import com.spice.profitmandi.dao.entity.fofo.Purchase;
56
import com.spice.profitmandi.dao.entity.fofo.Purchase;
57
import com.spice.profitmandi.dao.entity.fofo.SaleHeadDetails;
57
import com.spice.profitmandi.dao.entity.fofo.SaleHeadDetails;
58
import com.spice.profitmandi.dao.entity.fofo.ScanRecord;
58
import com.spice.profitmandi.dao.entity.fofo.ScanRecord;
59
import com.spice.profitmandi.dao.entity.fofo.SchemeInOut;
59
import com.spice.profitmandi.dao.entity.fofo.SchemeInOut;
60
import com.spice.profitmandi.dao.entity.transaction.Order;
-
 
61
import com.spice.profitmandi.dao.enumuration.catalog.SchemeType;
60
import com.spice.profitmandi.dao.enumuration.catalog.SchemeType;
62
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
61
import com.spice.profitmandi.dao.enumuration.fofo.ScanType;
63
import com.spice.profitmandi.dao.repository.catalog.ItemRepository;
62
import com.spice.profitmandi.dao.repository.catalog.ItemRepository;
64
import com.spice.profitmandi.dao.repository.catalog.SchemeRepository;
63
import com.spice.profitmandi.dao.repository.catalog.SchemeRepository;
65
import com.spice.profitmandi.dao.repository.dtr.DailyRechargeRepository;
64
import com.spice.profitmandi.dao.repository.dtr.DailyRechargeRepository;
Line 73... Line 72...
73
import com.spice.profitmandi.dao.repository.fofo.PartnerTargetRepository;
72
import com.spice.profitmandi.dao.repository.fofo.PartnerTargetRepository;
74
import com.spice.profitmandi.dao.repository.fofo.PurchaseRepository;
73
import com.spice.profitmandi.dao.repository.fofo.PurchaseRepository;
75
import com.spice.profitmandi.dao.repository.fofo.ScanRecordRepository;
74
import com.spice.profitmandi.dao.repository.fofo.ScanRecordRepository;
76
import com.spice.profitmandi.dao.repository.fofo.SchemeInOutRepository;
75
import com.spice.profitmandi.dao.repository.fofo.SchemeInOutRepository;
77
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
76
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
-
 
77
import com.spice.profitmandi.service.PartnerInvestmentService;
78
import com.spice.profitmandi.service.inventory.InventoryService;
78
import com.spice.profitmandi.service.inventory.InventoryService;
79
import com.spice.profitmandi.service.order.OrderService;
79
import com.spice.profitmandi.service.order.OrderService;
80
import com.spice.profitmandi.service.recharge.provider.OxigenRechargeProviderService;
80
import com.spice.profitmandi.service.recharge.provider.OxigenRechargeProviderService;
81
import com.spice.profitmandi.service.recharge.provider.ThinkWalnutDigitalRechargeProviderService;
81
import com.spice.profitmandi.service.recharge.provider.ThinkWalnutDigitalRechargeProviderService;
82
import com.spice.profitmandi.service.scheme.SchemeService;
82
import com.spice.profitmandi.service.scheme.SchemeService;
Line 135... Line 135...
135
 
135
 
136
	@Autowired
136
	@Autowired
137
	private OrderService orderService;
137
	private OrderService orderService;
138
 
138
 
139
	@Autowired
139
	@Autowired
-
 
140
	private PartnerInvestmentService partnerInvestmentService;
-
 
141
 
-
 
142
	@Autowired
140
	private PartnerDailyInvestmentRepository partnerDailyInvestmentRepository;
143
	private PartnerDailyInvestmentRepository partnerDailyInvestmentRepository;
141
 
144
 
142
	@Autowired
145
	@Autowired
143
	private SchemeInOutRepository schemeInOutRepository;
146
	private SchemeInOutRepository schemeInOutRepository;
144
 
147
 
Line 481... Line 484...
481
			CustomRetailer retailer = customRetailerMap.get(fofoStore.getId());
484
			CustomRetailer retailer = customRetailerMap.get(fofoStore.getId());
482
			if (retailer == null) {
485
			if (retailer == null) {
483
				LOGGER.info("Could not find retailer with retailer Id {}", fofoStore.getId());
486
				LOGGER.info("Could not find retailer with retailer Id {}", fofoStore.getId());
484
				continue;
487
				continue;
485
			}
488
			}
486
			float walletAmount = walletService.getUserWallet(fofoStore.getId()).getAmount();
-
 
487
			float inStockAmount = inventoryService.getTotalAmountInStock(fofoStore.getId());
-
 
488
			float salesAmount = orderService.getSales(fofoStore.getId(), LocalDateTime.now().minusDays(1).with(LocalTime.MIDNIGHT), LocalDateTime.now());
-
 
489
			float returnInTransitAmount = 0;
-
 
490
			float unbilledStockAmount = 0;
-
 
491
			List<Order> unbilledOrders = transactionService.getInTransitOrders(fofoStore.getId());
489
			PartnerDailyInvestment partnerDailyInvestment = partnerInvestmentService
492
			for (Order unBilledOrder : unbilledOrders) {
-
 
493
				unbilledStockAmount += unBilledOrder.getTotalAmount();
-
 
494
			}
-
 
495
 
-
 
496
			float grnPendingStockAmount = 0;
490
					.getInvestment(fofoStore.getId(), 1);
497
			List<Order> grnPendingOrders = orderRepository.selectPendingGrnOrders(fofoStore.getId());
-
 
498
			for (Order grnPendingOrder : grnPendingOrders) {
-
 
499
				LOGGER.info("Grn pending for Order {} and partner {}", grnPendingOrder.getId(),
-
 
500
						grnPendingOrder.getRetailerEmailId());
491
			partnerDailyInvestment.setDate(yesterDay);
501
				grnPendingStockAmount += grnPendingOrder.getTotalAmount();
492
			partnerDailyInvestmentRepository.persist(partnerDailyInvestment);
502
			}
-
 
503
			float totalInvestedAmount = walletAmount + inStockAmount + unbilledStockAmount + grnPendingStockAmount + salesAmount;
-
 
504
			float shortValue = fofoStore.getMinimumInvestment() - totalInvestedAmount;
-
 
505
			
493
			
506
			List<Object> row = Arrays.asList(fofoStore.getCode(), retailer.getBusinessName(), retailer.getEmail(),
494
			List<Object> row = Arrays.asList(fofoStore.getCode(), retailer.getBusinessName(), retailer.getEmail(),
507
					retailer.getMobileNumber(), walletAmount, salesAmount, inStockAmount, 0, unbilledStockAmount,
495
					retailer.getMobileNumber(), partnerDailyInvestment.getWalletAmount(),
508
					grnPendingStockAmount, fofoStore.getMinimumInvestment(), totalInvestedAmount, shortValue);
-
 
509
			try {
-
 
510
				PartnerDailyInvestment partnerDailyInvestment = new PartnerDailyInvestment();
-
 
511
				partnerDailyInvestment.setDate(yesterDay);
-
 
512
				partnerDailyInvestment.setFofoId(fofoStore.getId());
-
 
513
				partnerDailyInvestment.setGrnPendingAmount(grnPendingStockAmount);
496
					partnerDailyInvestment.getSalesAmount(), partnerDailyInvestment.getInStockAmount(), 0,
514
				partnerDailyInvestment.setInStockAmount(inStockAmount);
497
					partnerDailyInvestment.getInStockAmount(), partnerDailyInvestment.getInStockAmount(),
515
				partnerDailyInvestment.setSalesAmount(salesAmount);
-
 
516
				partnerDailyInvestment.setReturnInTransitAmount(returnInTransitAmount);
-
 
517
				partnerDailyInvestment.setUnbilledAmount(unbilledStockAmount);
-
 
518
				partnerDailyInvestment.setWalletAmount(walletAmount);
-
 
519
				partnerDailyInvestment.setMinInvestment(fofoStore.getMinimumInvestment());
498
					partnerDailyInvestment.getMinInvestment(), partnerDailyInvestment.getTotalInvestment(), partnerDailyInvestment.getShortInvestment());
520
				partnerDailyInvestmentRepository.persist(partnerDailyInvestment);
-
 
521
			} catch(Exception e) {
-
 
522
				e.printStackTrace();
-
 
523
			}
-
 
524
			rows.add(row);
499
			rows.add(row);
525
 
500
 
526
		}
501
		}
527
		String fileName = "InvestmentSummary-" + FormattingUtils.formatDate(LocalDateTime.now()) + ".csv";
502
		String fileName = "InvestmentSummary-" + FormattingUtils.formatDate(LocalDateTime.now()) + ".csv";
528
		ByteArrayOutputStream baos = FileUtil.getCSVByteStream(headers, rows);
503
		ByteArrayOutputStream baos = FileUtil.getCSVByteStream(headers, rows);