Subversion Repositories SmartDukaan

Rev

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

Rev 27416 Rev 27424
Line 305... Line 305...
305
			@RequestParam(name = "partnerType", required = false, defaultValue = "") PartnerType partnerType,
305
			@RequestParam(name = "partnerType", required = false, defaultValue = "") PartnerType partnerType,
306
			Model model) throws ProfitMandiBusinessException {
306
			Model model) throws ProfitMandiBusinessException {
307
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
307
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
308
		boolean isAdmin = roleManager.isAdmin(loginDetails.getRoleIds());
308
		boolean isAdmin = roleManager.isAdmin(loginDetails.getRoleIds());
309
 
309
 
-
 
310
		model.addAttribute("searchItem", searchItem);
-
 
311
		model.addAttribute("searchTerm", searchTerm);
-
 
312
		model.addAttribute("partnerType", partnerType);
-
 
313
		model.addAttribute("roleType", isAdmin);
-
 
314
 
310
		LOGGER.info("isAdmin" + isAdmin);
315
		LOGGER.info("isAdmin" + isAdmin);
311
		List<Scheme> schemes = null;
316
		List<Scheme> schemes = null;
312
		long size = 0;
317
		long size = 0;
313
		LOGGER.info("partnerType" + partnerType);
318
		LOGGER.info("partnerType" + partnerType);
314
		if (partnerType == null) {
319
		if (partnerType == null) {
Line 328... Line 333...
328
				size = schemeRepository.selectAllCount();
333
				size = schemeRepository.selectAllCount();
329
				LOGGER.info("schemes" + schemes);
334
				LOGGER.info("schemes" + schemes);
330
				model.addAttribute("schemes", schemes);
335
				model.addAttribute("schemes", schemes);
331
				model.addAttribute("start", offset + 1);
336
				model.addAttribute("start", offset + 1);
332
				model.addAttribute("size", size);
337
				model.addAttribute("size", size);
333
				model.addAttribute("searchTerm", searchTerm);
-
 
334
				model.addAttribute("searchItem", searchItem);
-
 
335
				model.addAttribute("partnerType", partnerType);
-
 
336
				model.addAttribute("roleType", roleManager.isAdmin(loginDetails.getRoleIds()));
-
 
337
				if (schemes.size() < limit) {
338
				if (schemes.size() < limit) {
338
					model.addAttribute("end", offset + schemes.size());
339
					model.addAttribute("end", offset + schemes.size());
339
				} else {
340
				} else {
340
					model.addAttribute("end", offset + limit);
341
					model.addAttribute("end", offset + limit);
341
				}
342
				}
Line 346... Line 347...
346
			int itemId = 0;
347
			int itemId = 0;
347
			TagListing tagListing = null;
348
			TagListing tagListing = null;
348
			if (!searchItem.equals("")) {
349
			if (!searchItem.equals("")) {
349
				itemId = Integer.parseInt(searchItem);
350
				itemId = Integer.parseInt(searchItem);
350
				tagListing = tagListingRepository.selectByItemId(itemId);
351
				tagListing = tagListingRepository.selectByItemId(itemId);
351
				if(tagListing==null) {
352
				if(tagListing!=null) {
352
					Item item = itemRepository.selectById(itemId);
353
					model.addAttribute("dp", tagListing.getSellingPrice());
353
					throw new ProfitMandiBusinessException(item.getItemDescription(), "Could not find scheme", "Could not find scheme");
354
					model.addAttribute("mop", tagListing.getMop());
354
				}
355
				}
355
				model.addAttribute("dp", tagListing.getSellingPrice());
-
 
356
				model.addAttribute("mop", tagListing.getMop());
-
 
357
			}
356
			}
358
			schemes = schemeService.selectSchemeByPartnerType(partnerType, itemId, isAdmin, offset, limit);
357
			schemes = schemeService.selectSchemeByPartnerType(partnerType, itemId, isAdmin, offset, limit);
-
 
358
			model.addAttribute("schemes", schemes);
-
 
359
			if(schemes.size()==0) {
-
 
360
				return "schemes";
-
 
361
			}
-
 
362
			
359
			for(Scheme scheme  : schemes) {
363
			for(Scheme scheme  : schemes) {
360
				if(scheme.getAmountType().equals(AmountType.PERCENTAGE)) {
364
				if(scheme.getAmountType().equals(AmountType.PERCENTAGE)) {
361
					if(tagListing != null) {
365
					if(tagListing != null) {
362
						float taxRate = stateGstRateRepository.getIgstTaxRate(Arrays.asList(itemId)).get(itemId);
366
						float taxRate = stateGstRateRepository.getIgstTaxRate(Arrays.asList(itemId)).get(itemId);
363
						float taxableSellingPrice = tagListing.getSellingPrice() / (1 + taxRate / 100);
367
						float taxableSellingPrice = tagListing.getSellingPrice() / (1 + taxRate / 100);
364
						float amount = taxableSellingPrice * scheme.getAmount() / 100;
368
						float amount = taxableSellingPrice * scheme.getAmount() / 100;
365
						scheme.setAmountModel(FormattingUtils.formatDecimalTwoDigits(amount) +" ("+ scheme.getAmount() + "%)");
369
						scheme.setAmountModel(FormattingUtils.formatDecimalTwoDigits(amount) +" ("+ scheme.getAmount() + "%)");
-
 
370
					}
-
 
371
					
366
					} else {
372
					else {
367
						scheme.setAmountModel(scheme.getAmount() + "%");
373
						scheme.setAmountModel(scheme.getAmount() + "%");
368
					}
374
					}
369
				} else {
375
				} else {
370
					scheme.setAmountModel(scheme.getAmount() + "");
376
					scheme.setAmountModel(scheme.getAmount() + "");
371
				}
377
				}
-
 
378
				
-
 
379
				
372
			}
380
			}
373
			size = schemeService.selectSchemeCount(partnerType, itemId, isAdmin);
381
			size = schemeService.selectSchemeCount(partnerType, itemId, isAdmin);
374
			model.addAttribute("schemes", schemes);
-
 
375
			model.addAttribute("start", offset + 1);
382
			model.addAttribute("start", offset + 1);
376
			model.addAttribute("size", size);
383
			model.addAttribute("size", size);
377
			model.addAttribute("searchItem", searchItem);
-
 
378
			model.addAttribute("searchTerm", searchTerm);
-
 
379
			model.addAttribute("partnerType", partnerType);
-
 
380
			model.addAttribute("roleType", roleManager.isAdmin(loginDetails.getRoleIds()));
-
 
381
			if (schemes.size() < limit) {
384
			if (schemes.size() < limit) {
382
				model.addAttribute("end", offset + schemes.size());
385
				model.addAttribute("end", offset + schemes.size());
383
			} else {
386
			} else {
384
				model.addAttribute("end", offset + limit);
387
				model.addAttribute("end", offset + limit);
385
			}
388
			}