Subversion Repositories SmartDukaan

Rev

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

Rev 30017 Rev 30426
Line 127... Line 127...
127
				.collect(Collectors.toList());
127
				.collect(Collectors.toList());
128
 
128
 
129
		Set<String> brands = mongoClient.getMongoBrands(loginDetails.getFofoId(), null, 3).stream()
129
		Set<String> brands = mongoClient.getMongoBrands(loginDetails.getFofoId(), null, 3).stream()
130
				.map(x -> (String) x.get("name")).collect(Collectors.toSet());
130
				.map(x -> (String) x.get("name")).collect(Collectors.toSet());
131
 
131
 
132
		Map<Integer, CustomRetailer> customRetailersMap = retailerService.getFofoRetailers(fofoIds);
132
		Map<Integer, CustomRetailer> customRetailerMap = retailerService.getAllFofoRetailers();
-
 
133
 
-
 
134
		Map<Integer, CustomRetailer> customRetailersMap = fofoIds.stream().map(x -> customRetailerMap.get(x))
-
 
135
				.filter(x -> x != null).collect(Collectors.toList()).stream()
-
 
136
				.collect(Collectors.toMap(x -> x.getPartnerId(), x -> x));
133
 
137
 
134
		model.addAttribute("customRetailersMap", customRetailersMap);
138
		model.addAttribute("customRetailersMap", customRetailersMap);
135
		model.addAttribute("itemCriteriaType", ItemCriteriaType.values());
139
		model.addAttribute("itemCriteriaType", ItemCriteriaType.values());
136
		model.addAttribute("brands", brands);
140
		model.addAttribute("brands", brands);
137
		model.addAttribute("partnerCategories", PartnerType.values());
141
		model.addAttribute("partnerCategories", PartnerType.values());
Line 140... Line 144...
140
 
144
 
141
	}
145
	}
142
 
146
 
143
	@RequestMapping(value = "/createOffer", method = RequestMethod.POST)
147
	@RequestMapping(value = "/createOffer", method = RequestMethod.POST)
144
	public String createOffer(HttpServletRequest request, @RequestBody CreateOfferRequest createOfferRequest,
148
	public String createOffer(HttpServletRequest request, @RequestBody CreateOfferRequest createOfferRequest,
145
							  Model model) throws Exception {
149
			Model model) throws Exception {
146
		LOGGER.info("createOfferRequest [{}]", createOfferRequest);
150
		LOGGER.info("createOfferRequest [{}]", createOfferRequest);
147
		offerService.addOfferService(createOfferRequest);
151
		offerService.addOfferService(createOfferRequest);
148
		thirtyMinsTimeOutCacheManager.getCache("allOffers").evict(YearMonth.now());
152
		thirtyMinsTimeOutCacheManager.getCache("allOffers").evict(YearMonth.now());
149
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
153
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
150
		return "response";
154
		return "response";
Line 159... Line 163...
159
		return "scheme_offer/published";
163
		return "scheme_offer/published";
160
 
164
 
161
	}
165
	}
162
 
166
 
163
	@RequestMapping(value = "/offer/active/{offerId}", method = RequestMethod.GET)
167
	@RequestMapping(value = "/offer/active/{offerId}", method = RequestMethod.GET)
164
	public String activateOffer(HttpServletRequest request, @PathVariable(name = "offerId") String offerIdsString, Model model,
168
	public String activateOffer(HttpServletRequest request, @PathVariable(name = "offerId") String offerIdsString,
165
								@RequestParam(defaultValue = "true") boolean active) throws ProfitMandiBusinessException, Exception {
169
			Model model, @RequestParam(defaultValue = "true") boolean active)
-
 
170
			throws ProfitMandiBusinessException, Exception {
166
		List<Integer> offerIds = Arrays.stream(offerIdsString.split(",")).map(x -> Integer.parseInt(x)).collect(Collectors.toList());
171
		List<Integer> offerIds = Arrays.stream(offerIdsString.split(",")).map(x -> Integer.parseInt(x))
-
 
172
				.collect(Collectors.toList());
167
		List<Offer> offers = offerRepository.selectAllByIds(offerIds);
173
		List<Offer> offers = offerRepository.selectAllByIds(offerIds);
168
		boolean shouldEvict = false;
174
		boolean shouldEvict = false;
169
		for (Offer offer : offers) {
175
		for (Offer offer : offers) {
170
			offer.setAlreadyActive(offer.isActive());
176
			offer.setAlreadyActive(offer.isActive());
171
			if (offer.isActive() != active) {
177
			if (offer.isActive() != active) {
Line 189... Line 195...
189
		// return "offer_margin_detail_partner2";
195
		// return "offer_margin_detail_partner2";
190
	}
196
	}
191
 
197
 
192
	@RequestMapping(value = "/offer/testimage/{offerId}", method = RequestMethod.GET)
198
	@RequestMapping(value = "/offer/testimage/{offerId}", method = RequestMethod.GET)
193
	public String testOffer(HttpServletRequest request, @PathVariable int offerId, Model model,
199
	public String testOffer(HttpServletRequest request, @PathVariable int offerId, Model model,
194
							@RequestParam(defaultValue = "true") boolean active) throws ProfitMandiBusinessException, Exception {
200
			@RequestParam(defaultValue = "true") boolean active) throws ProfitMandiBusinessException, Exception {
195
		Offer offer = offerRepository.selectById(offerId);
201
		Offer offer = offerRepository.selectById(offerId);
196
		// model.addAttribute("response", mvcResponseSender.createResponseString(true));
202
		// model.addAttribute("response", mvcResponseSender.createResponseString(true));
197
		// return "response";
203
		// return "response";
198
		CreateOfferRequest createOfferRequest = offerService.getCreateOfferRequest(offer);
204
		CreateOfferRequest createOfferRequest = offerService.getCreateOfferRequest(offer);
199
		model.addAttribute("offer", createOfferRequest);
205
		model.addAttribute("offer", createOfferRequest);
Line 203... Line 209...
203
	@Autowired
209
	@Autowired
204
	private com.spice.profitmandi.dao.repository.dtr.UserRepository dtrUserRepository;
210
	private com.spice.profitmandi.dao.repository.dtr.UserRepository dtrUserRepository;
205
 
211
 
206
	@RequestMapping(value = "/offer/active/fofo/{fofoId}", method = RequestMethod.GET)
212
	@RequestMapping(value = "/offer/active/fofo/{fofoId}", method = RequestMethod.GET)
207
	public String sendOfferNotification(HttpServletRequest request, @PathVariable int fofoId, Model model,
213
	public String sendOfferNotification(HttpServletRequest request, @PathVariable int fofoId, Model model,
208
										@RequestParam(defaultValue = "true") boolean active) throws ProfitMandiBusinessException, Exception {
214
			@RequestParam(defaultValue = "true") boolean active) throws ProfitMandiBusinessException, Exception {
209
		List<Offer> offers = offerRepository.selectAllPublishedMapByPartner(YearMonth.now()).get(fofoId);
215
		List<Offer> offers = offerRepository.selectAllPublishedMapByPartner(YearMonth.now()).get(fofoId);
210
		for (Offer offer : offers) {
216
		for (Offer offer : offers) {
211
			this.sendNotification(offer);
217
			this.sendNotification(offer);
212
		}
218
		}
213
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
219
		model.addAttribute("response", mvcResponseSender.createResponseString(true));
Line 238... Line 244...
238
		Map<String, Object> model = new HashMap<>();
244
		Map<String, Object> model = new HashMap<>();
239
		model.put("offer", createOfferRequest);
245
		model.put("offer", createOfferRequest);
240
		String htmlContent = this.getContentFromTemplate("offer_margin_detail_partner.vm", model);
246
		String htmlContent = this.getContentFromTemplate("offer_margin_detail_partner.vm", model);
241
		LOGGER.info("this.getContentFromTemplate {}", htmlContent);
247
		LOGGER.info("this.getContentFromTemplate {}", htmlContent);
242
		fileStreamsMap.put(fileName, this.getImageBuffer(htmlContent));
248
		fileStreamsMap.put(fileName, this.getImageBuffer(htmlContent));
-
 
249
		// fileStreamsMap.put(htmlFileName, new
243
		//fileStreamsMap.put(htmlFileName, new ByteArrayInputStream(htmlContent.getBytes()));
250
		// ByteArrayInputStream(htmlContent.getBytes()));
244
 
251
 
245
		this.uploadFile(fileStreamsMap);
252
		this.uploadFile(fileStreamsMap);
246
		if (createOfferRequest.getPartnerCriteria().getRegionIds().size() > 0
253
		if (createOfferRequest.getPartnerCriteria().getRegionIds().size() > 0
247
				|| createOfferRequest.getPartnerCriteria().getFofoIds().size() > 0
254
				|| createOfferRequest.getPartnerCriteria().getFofoIds().size() > 0
248
				|| createOfferRequest.getPartnerCriteria().getRegionIds().size() > 0) {
255
				|| createOfferRequest.getPartnerCriteria().getRegionIds().size() > 0) {
249
			List<Integer> fofoIds = offersMap.entrySet().stream().filter(x -> x.getValue().contains(offer))
256
			List<Integer> fofoIds = offersMap.entrySet().stream().filter(x -> x.getValue().contains(offer))
250
					.map(x -> x.getKey()).collect(Collectors.toList());
257
					.map(x -> x.getKey()).collect(Collectors.toList());
251
			List<Integer> userIds = userAccountRepository.selectUserIdsByRetailerIds(fofoIds);
258
			List<Integer> userIds = userAccountRepository.selectUserIdsByRetailerIds(fofoIds);
252
			sendNotificationModel.setUserIds(userIds);
259
			sendNotificationModel.setUserIds(userIds);
-
 
260
			/*
253
			/*if(createOfferRequest.getPartnerCriteria().getRegionIds().size() > 0) {
261
			 * if(createOfferRequest.getPartnerCriteria().getRegionIds().size() > 0) {
-
 
262
			 * List<Integer> regionIds =
254
				List<Integer> regionIds = createOfferRequest.getPartnerCriteria().getRegionIds();
263
			 * createOfferRequest.getPartnerCriteria().getRegionIds(); }
255
			}*/
264
			 */
256
			notificationService.sendNotification(sendNotificationModel);
265
			notificationService.sendNotification(sendNotificationModel);
257
		} else {
266
		} else {
258
			notificationService.sendNotificationToAll(sendNotificationModel);
267
			notificationService.sendNotificationToAll(sendNotificationModel);
259
		}
268
		}
260
 
269
 
Line 397... Line 406...
397
				Arrays.asList("Id", "Name", "Target Type", "Scheme Type", "Brand %", "Sellin %", "Partner Criteria",
406
				Arrays.asList("Id", "Name", "Target Type", "Scheme Type", "Brand %", "Sellin %", "Partner Criteria",
398
						"Item Criteria", "Start", "End", "Created", "Partner Id", "Partner Name", "Partner Code",
407
						"Item Criteria", "Start", "End", "Created", "Partner Id", "Partner Name", "Partner Code",
399
						"Total Sale", "Eligible Sale", "Achieved Target", "Next Target", "Eligible Sale DP",
408
						"Total Sale", "Eligible Sale", "Achieved Target", "Next Target", "Eligible Sale DP",
400
						"Total Purchase DP", "Current Payout Target", "Payout Target Achieved", "Payout Amount Type",
409
						"Total Purchase DP", "Current Payout Target", "Payout Target Achieved", "Payout Amount Type",
401
						"Payout Value", "Payout Value DP", "Amount to be credited", "IMEIs pending for Activation"
410
						"Payout Value", "Payout Value DP", "Amount to be credited", "IMEIs pending for Activation"
402
						// "Payout Sale Qty", "Activated Value", "Activated Qty",
411
				// "Payout Sale Qty", "Activated Value", "Activated Qty",
403
				), listOfRows);
412
				), listOfRows);
404
		final InputStream inputStream = new ByteArrayInputStream(baos.toByteArray());
413
		final InputStream inputStream = new ByteArrayInputStream(baos.toByteArray());
405
		final InputStreamResource inputStreamResource = new InputStreamResource(inputStream);
414
		final InputStreamResource inputStreamResource = new InputStreamResource(inputStream);
406
		return new ResponseEntity<>(inputStreamResource, headers, HttpStatus.OK);
415
		return new ResponseEntity<>(inputStreamResource, headers, HttpStatus.OK);
407
	}
416
	}
Line 440... Line 449...
440
	@Autowired
449
	@Autowired
441
	RoleManager roleManager;
450
	RoleManager roleManager;
442
 
451
 
443
	@RequestMapping(value = "/getOfferMargins", method = RequestMethod.GET)
452
	@RequestMapping(value = "/getOfferMargins", method = RequestMethod.GET)
444
	public String getOfferMargins(HttpServletRequest request,
453
	public String getOfferMargins(HttpServletRequest request,
445
								  @RequestParam(name = "offerId", defaultValue = "0") int offerId, Model model) throws Exception {
454
			@RequestParam(name = "offerId", defaultValue = "0") int offerId, Model model) throws Exception {
446
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
455
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
447
		boolean isAdmin = roleManager.isAdmin(loginDetails.getRoleIds());
456
		boolean isAdmin = roleManager.isAdmin(loginDetails.getRoleIds());
448
		CreateOfferRequest createOfferRequest = offerService.getOffer(isAdmin ? 0 : loginDetails.getFofoId(), offerId);
457
		CreateOfferRequest createOfferRequest = offerService.getOffer(isAdmin ? 0 : loginDetails.getFofoId(), offerId);
449
 
458
 
450
		model.addAttribute("offer", createOfferRequest);
459
		model.addAttribute("offer", createOfferRequest);