Subversion Repositories SmartDukaan

Rev

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

Rev 30441 Rev 30445
Line 8... Line 8...
8
import java.util.Arrays;
8
import java.util.Arrays;
9
import java.util.HashMap;
9
import java.util.HashMap;
10
import java.util.HashSet;
10
import java.util.HashSet;
11
import java.util.List;
11
import java.util.List;
12
import java.util.Map;
12
import java.util.Map;
-
 
13
import java.util.Map.Entry;
13
import java.util.Set;
14
import java.util.Set;
14
import java.util.TreeMap;
15
import java.util.TreeMap;
-
 
16
import java.util.function.Predicate;
15
import java.util.stream.Collectors;
17
import java.util.stream.Collectors;
16
 
18
 
17
import javax.servlet.http.HttpServletRequest;
19
import javax.servlet.http.HttpServletRequest;
18
import javax.servlet.http.HttpServletResponse;
20
import javax.servlet.http.HttpServletResponse;
19
import javax.transaction.Transactional;
21
import javax.transaction.Transactional;
Line 56... Line 58...
56
import com.spice.profitmandi.dao.model.ChartLeadModel;
58
import com.spice.profitmandi.dao.model.ChartLeadModel;
57
import com.spice.profitmandi.dao.model.CreateLeacdActivityRequest;
59
import com.spice.profitmandi.dao.model.CreateLeacdActivityRequest;
58
import com.spice.profitmandi.dao.model.CreateRefferalRequest;
60
import com.spice.profitmandi.dao.model.CreateRefferalRequest;
59
import com.spice.profitmandi.dao.model.DataLeadModel;
61
import com.spice.profitmandi.dao.model.DataLeadModel;
60
import com.spice.profitmandi.dao.model.LeadStatusData;
62
import com.spice.profitmandi.dao.model.LeadStatusData;
-
 
63
import com.spice.profitmandi.dao.model.PartnerCollectionAchievementModel;
61
import com.spice.profitmandi.dao.model.PartnerCollectionPlanModel;
64
import com.spice.profitmandi.dao.model.PartnerCollectionPlanModel;
62
import com.spice.profitmandi.dao.model.TeamCommitmentModel;
65
import com.spice.profitmandi.dao.model.TeamCommitmentModel;
63
import com.spice.profitmandi.dao.repository.auth.AuthRepository;
66
import com.spice.profitmandi.dao.repository.auth.AuthRepository;
64
import com.spice.profitmandi.dao.repository.auth.PartnerCollectionPlanRepository;
67
import com.spice.profitmandi.dao.repository.auth.PartnerCollectionPlanRepository;
65
import com.spice.profitmandi.dao.repository.auth.PartnerCollectionRemarkRepository;
68
import com.spice.profitmandi.dao.repository.auth.PartnerCollectionRemarkRepository;
Line 68... Line 71...
68
import com.spice.profitmandi.dao.repository.dtr.FofoStoreRepository;
71
import com.spice.profitmandi.dao.repository.dtr.FofoStoreRepository;
69
import com.spice.profitmandi.dao.repository.dtr.LeadActivityRepository;
72
import com.spice.profitmandi.dao.repository.dtr.LeadActivityRepository;
70
import com.spice.profitmandi.dao.repository.dtr.LeadRepository;
73
import com.spice.profitmandi.dao.repository.dtr.LeadRepository;
71
import com.spice.profitmandi.dao.repository.fofo.PartnerDailyInvestmentRepository;
74
import com.spice.profitmandi.dao.repository.fofo.PartnerDailyInvestmentRepository;
72
import com.spice.profitmandi.dao.repository.inventory.StateRepository;
75
import com.spice.profitmandi.dao.repository.inventory.StateRepository;
-
 
76
import com.spice.profitmandi.dao.repository.transaction.UserWalletRepository;
73
import com.spice.profitmandi.service.AuthService;
77
import com.spice.profitmandi.service.AuthService;
74
import com.spice.profitmandi.service.PartnerCollectionService;
78
import com.spice.profitmandi.service.PartnerCollectionService;
75
import com.spice.profitmandi.service.user.RetailerService;
79
import com.spice.profitmandi.service.user.RetailerService;
76
import com.spice.profitmandi.web.model.LoginDetails;
80
import com.spice.profitmandi.web.model.LoginDetails;
77
import com.spice.profitmandi.web.util.CookiesProcessor;
81
import com.spice.profitmandi.web.util.CookiesProcessor;
Line 127... Line 131...
127
	@Autowired
131
	@Autowired
128
	private PartnerCollectionRemarkRepository partnerCollectionRemarkRepository;
132
	private PartnerCollectionRemarkRepository partnerCollectionRemarkRepository;
129
 
133
 
130
	@Autowired
134
	@Autowired
131
	private PartnerDailyInvestmentRepository partnerDailyInvestmentRepository;
135
	private PartnerDailyInvestmentRepository partnerDailyInvestmentRepository;
-
 
136
 
-
 
137
	@Autowired
-
 
138
	private UserWalletRepository userWalletRepository;
-
 
139
 
132
	List<LeadStatus> status = Arrays.asList(LeadStatus.notInterested, LeadStatus.finalized);
140
	List<LeadStatus> status = Arrays.asList(LeadStatus.notInterested, LeadStatus.finalized);
133
 
141
 
134
	@RequestMapping(value = "/getOpenLead", method = RequestMethod.GET)
142
	@RequestMapping(value = "/getOpenLead", method = RequestMethod.GET)
135
	public String getOpenLead(HttpServletRequest request,
143
	public String getOpenLead(HttpServletRequest request,
136
			@RequestParam(name = "leadStatus", required = false, defaultValue = "All") List<LeadStatus> leadStatus,
144
			@RequestParam(name = "leadStatus", required = false, defaultValue = "All") List<LeadStatus> leadStatus,
Line 896... Line 904...
896
				pcpmMap.put(startDate.minusDays(i).toLocalDate(), collectionMap);
904
				pcpmMap.put(startDate.minusDays(i).toLocalDate(), collectionMap);
897
			}
905
			}
898
 
906
 
899
			Map<Integer, PartnerCollectionPlanModel> todayPcpmMap = pcpmMap.get(startDate.toLocalDate());
907
			Map<Integer, PartnerCollectionPlanModel> todayPcpmMap = pcpmMap.get(startDate.toLocalDate());
900
			model.addAttribute("todayPcpmMap", todayPcpmMap);
908
			model.addAttribute("todayPcpmMap", todayPcpmMap);
-
 
909
 
-
 
910
			int totalPartnerTargetCollection = 0;
-
 
911
 
-
 
912
			long totalPartnerAchievement = 0;
-
 
913
 
-
 
914
			for (Entry<Integer, PartnerCollectionPlanModel> todayPcpmMapEntry : todayPcpmMap.entrySet()) {
-
 
915
				PartnerCollectionPlanModel collectionPlan = todayPcpmMapEntry.getValue();
-
 
916
				if (collectionPlan.getTargetPlan() != null && collectionPlan.getCommittedDate() != null) {
-
 
917
					float targetCollection = 0;
-
 
918
 
-
 
919
					if (collectionPlan.getRank() == 2) {
-
 
920
						targetCollection = collectionPlan.getTargetPlan() - collectionPlan.getAchievementPlan();
-
 
921
					} else {
-
 
922
						targetCollection = collectionPlan.getTargetPlan();
-
 
923
					}
-
 
924
 
-
 
925
					if (!collectionPlan.getCommittedDate().isAfter(startDate)) {
-
 
926
						totalPartnerTargetCollection += targetCollection;
-
 
927
					}
-
 
928
 
-
 
929
				}
-
 
930
			}
-
 
931
			model.addAttribute("totalPartnerTargetCollection", totalPartnerTargetCollection);
-
 
932
			Map<Integer, PartnerCollectionAchievementModel> collectionAchievementMap = userWalletRepository
-
 
933
					.getPartnerWiseCollectionAchievement(fofoIdList, startDate).stream()
-
 
934
					.collect(Collectors.toMap(x -> x.getFofoId(), x -> x));
-
 
935
 
-
 
936
			totalPartnerAchievement = collectionAchievementMap.entrySet().stream()
-
 
937
					.filter(x -> x.getValue().getAmount() != null)
-
 
938
					.collect(Collectors.summingLong(x -> x.getValue().getAmount()));
-
 
939
 
-
 
940
			model.addAttribute("totalPartnerAchievement", totalPartnerAchievement);
-
 
941
 
901
			Map<Integer, CustomRetailer> customRetailerMap = retailerService.getAllFofoRetailers();
942
			Map<Integer, CustomRetailer> customRetailerMap = retailerService.getAllFofoRetailers();
902
			Map<Integer, CustomRetailer> customRetailers = fofoIdList.stream().map(x -> customRetailerMap.get(x))
943
			Map<Integer, CustomRetailer> customRetailers = fofoIdList.stream().map(x -> customRetailerMap.get(x))
903
					.filter(x -> x != null).collect(Collectors.toList()).stream()
944
					.filter(x -> x != null).collect(Collectors.toList()).stream()
904
					.collect(Collectors.toMap(x -> x.getPartnerId(), x -> x));
945
					.collect(Collectors.toMap(x -> x.getPartnerId(), x -> x));
905
			List<Integer> allReportees = authService.getAllReportees(authUser.getId());
946
			List<Integer> allReportees = authService.getAllReportees(authUser.getId());