Subversion Repositories SmartDukaan

Rev

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

Rev 32299 Rev 32331
Line 31... Line 31...
31
import com.spice.profitmandi.dao.repository.transaction.TransactionRepository;
31
import com.spice.profitmandi.dao.repository.transaction.TransactionRepository;
32
import com.spice.profitmandi.service.authentication.RoleManager;
32
import com.spice.profitmandi.service.authentication.RoleManager;
33
import com.spice.profitmandi.service.inventory.InventoryService;
33
import com.spice.profitmandi.service.inventory.InventoryService;
34
import com.spice.profitmandi.service.offers.OfferService;
34
import com.spice.profitmandi.service.offers.OfferService;
35
import com.spice.profitmandi.service.offers.PartnerCriteria;
35
import com.spice.profitmandi.service.offers.PartnerCriteria;
-
 
36
import com.spice.profitmandi.service.pricecircular.PriceCircularModel;
36
import com.spice.profitmandi.service.pricecircular.PriceCircularService;
37
import com.spice.profitmandi.service.pricecircular.PriceCircularService;
37
import com.spice.profitmandi.service.scheme.SchemeService;
38
import com.spice.profitmandi.service.scheme.SchemeService;
38
import com.spice.profitmandi.service.user.RetailerService;
39
import com.spice.profitmandi.service.user.RetailerService;
39
import com.spice.profitmandi.service.wallet.WalletService;
40
import com.spice.profitmandi.service.wallet.WalletService;
40
import com.spice.profitmandi.web.model.LoginDetails;
41
import com.spice.profitmandi.web.model.LoginDetails;
Line 655... Line 656...
655
                model.addAttribute("offerRequestMap", offerRequestMap);
656
                model.addAttribute("offerRequestMap", offerRequestMap);
656
                model.addAttribute("inventoryItem", inventoryItem);
657
                model.addAttribute("inventoryItem", inventoryItem);
657
                model.addAttribute("inventoryItem", inventoryItem);
658
                model.addAttribute("inventoryItem", inventoryItem);
658
 
659
 
659
            }
660
            }
-
 
661
            LOGGER.info("Net Earnings {}", netEarnings);
660
            model.addAttribute("netEarnings", netEarnings);
662
            model.addAttribute("netEarnings", netEarnings);
661
            model.addAttribute("fofoId", fofoId);
663
            model.addAttribute("fofoId", fofoId);
662
            model.addAttribute("schemeMap", schemeMap);
664
            model.addAttribute("schemeMap", schemeMap);
663
            model.addAttribute("item", item);
665
            model.addAttribute("item", item);
664
            model.addAttribute("schemeInOut", schemeInOuts);
666
            model.addAttribute("schemeInOut", schemeInOuts);
Line 716... Line 718...
716
                throw new ProfitMandiBusinessException("SchemeId", searchScheme, "SchemeId Not Found");
718
                throw new ProfitMandiBusinessException("SchemeId", searchScheme, "SchemeId Not Found");
717
            }
719
            }
718
        } else if (searchModel > 0) {
720
        } else if (searchModel > 0) {
719
            Item item = itemRepository.selectAllByCatalogItemId(searchModel).get(0);
721
            Item item = itemRepository.selectAllByCatalogItemId(searchModel).get(0);
720
            TagListing tagListing = tagListingRepository.selectByItemId(item.getId());
722
            TagListing tagListing = tagListingRepository.selectByItemId(item.getId());
-
 
723
            LOGGER.info("tagListing {}", tagListing);
721
            if (tagListing != null) {
724
            if (tagListing != null) {
722
                model.addAttribute("dp", tagListing.getSellingPrice());
725
                model.addAttribute("dp", tagListing.getSellingPrice());
723
                model.addAttribute("mop", tagListing.getMop());
726
                model.addAttribute("mop", tagListing.getMop());
724
            }
727
            }
725
            model.addAttribute("modelName", item.getItemDescriptionNoColor());
728
            model.addAttribute("modelName", item.getItemDescriptionNoColor());
Line 732... Line 735...
732
                List<SchemeRegion> schemeRegionList = schemeRegionRepository.selectAllBySchemeIds(schemes.stream().map(x -> x.getId()).collect(Collectors.toList()));
735
                List<SchemeRegion> schemeRegionList = schemeRegionRepository.selectAllBySchemeIds(schemes.stream().map(x -> x.getId()).collect(Collectors.toList()));
733
                Map<Integer, String> schemeRegionMap = schemeRegionList.stream().collect(Collectors.groupingBy(x -> x.getSchemeId(), Collectors.mapping(y -> regionRepository.selectById(y.getRegionId()).getName(), Collectors.joining(" ,"))));
736
                Map<Integer, String> schemeRegionMap = schemeRegionList.stream().collect(Collectors.groupingBy(x -> x.getSchemeId(), Collectors.mapping(y -> regionRepository.selectById(y.getRegionId()).getName(), Collectors.joining(" ,"))));
734
                model.addAttribute("schemeRegionMap", schemeRegionMap);
737
                model.addAttribute("schemeRegionMap", schemeRegionMap);
735
                return "schemes";
738
                return "schemes";
736
            } else {
739
            } else {
737
                partnerType = partnerTypeChangeService.getTypeOnDate(loginDetails.getFofoId(), date);
-
 
738
                schemes = schemeService
-
 
739
                        .selectSchemeByPartnerTypeFofoId(partnerType, date, searchModel, loginDetails.getFofoId(), offset, limit).stream()
740
                PriceCircularModel priceCircularModel = priceCircularService.getPriceCircularByOffer(loginDetails.getFofoId(), Arrays.asList(searchModel), date);
740
                        .filter(x -> (x.getId() != 411 && x.getId() != 612) || date1.isBefore(LocalDate.of(2021, 12, 1))).collect(Collectors.toList());
-
 
741
                // Remove 411 and 612
-
 
742
                // this.setSchemeAmountModel(schemes);
-
 
743
                int nlc = this.getNlc(item, loginDetails.getFofoId(), schemes, tagListing);
-
 
744
                // For 7720(HR) remove investment
-
 
745
                model.addAttribute("schemes", schemes);
-
 
746
                model.addAttribute("nlc", Math.round(nlc));
-
 
747
 
-
 
748
                Map<Integer, Map<Integer, Long>> offerSlabPayoutMap = new HashMap<>();
-
 
749
                List<CreateOfferRequest> offers = offerService.getPublishedOffers(date, loginDetails.getFofoId(),
-
 
750
                        searchModel);
-
 
751
                if (offers.size() > 0) {
-
 
752
                    for (CreateOfferRequest createOfferRequest : offers) {
741
                priceDropController.getPriceCircularView(priceCircularModel, model);
753
                        Map<Integer, Map<Integer, Long>> catalogSlabPayoutMap = offerService
-
 
754
                                .getSlabPayoutMap(createOfferRequest);
-
 
755
                        Map<Integer, Long> slabPayoutMap = catalogSlabPayoutMap.get(searchModel);
-
 
756
                        offerSlabPayoutMap.put(createOfferRequest.getId(), slabPayoutMap);
-
 
757
                    }
-
 
758
                    model.addAttribute("offers", offers);
-
 
759
                    model.addAttribute("offerSlabPayoutMap", offerSlabPayoutMap);
-
 
760
 
-
 
761
                    LOGGER.info("offer");
-
 
762
                }
-
 
763
                FofoStore fs = fofoStoreRepository.selectByRetailerId(loginDetails.getFofoId());
-
 
764
                model.addAttribute("partnerCode", fs.getCode());
-
 
765
                model.addAttribute("fofoId", fs.getId());
-
 
766
 
-
 
767
                return "schemes-partner";
-
 
768
 
-
 
769
            }
742
            }
770
 
743
 
771
        } else if (org.apache.commons.lang3.StringUtils.isNotEmpty(searchImei)) {
744
        } else if (org.apache.commons.lang3.StringUtils.isNotEmpty(searchImei)) {
772
 
745
 
773
            LOGGER.info("searchImei" + searchImei);
746
            LOGGER.info("searchImei" + searchImei);
Line 776... Line 749...
776
                    loginDetails.getFofoId());
749
                    loginDetails.getFofoId());
777
            Item item = itemRepository.selectById(inventoryItem.getItemId());
750
            Item item = itemRepository.selectById(inventoryItem.getItemId());
778
            Map<Integer, Scheme> schemeMap = new HashMap<>();
751
            Map<Integer, Scheme> schemeMap = new HashMap<>();
779
            double netEarnings = 0;
752
            double netEarnings = 0;
780
            if (inventoryItem != null) {
753
            if (inventoryItem != null) {
-
 
754
                /*date = inventoryItem.getCreateTimestamp().toLocalDate();
-
 
755
                PriceCircularModel priceCircularModel = priceCircularService.getPriceCircularByOffer(loginDetails.getFofoId(), Arrays.asList(item.getCatalogItemId()), date);
-
 
756
                priceDropController.getPriceCircularView(priceCircularModel, model);*/
781
                // Offer payout
757
                // Offer payout
782
                List<OfferPayout> offerPayouts = offerPayoutRepository.selectAllBySerialNumber(loginDetails.getFofoId(),
758
                List<OfferPayout> offerPayouts = offerPayoutRepository.selectAllBySerialNumber(loginDetails.getFofoId(),
783
                        searchImei);
759
                        searchImei);
784
                Map<Integer, CreateOfferRequest> offerRequestMap = offerPayouts.stream()
760
                Map<Integer, CreateOfferRequest> offerRequestMap = offerPayouts.stream()
785
                        .map(x -> offerService.getOffer(loginDetails.getFofoId(), (int) x.getOfferId()))
761
                        .map(x -> offerService.getOffer(loginDetails.getFofoId(), (int) x.getOfferId()))
Line 803... Line 779...
803
                        }
779
                        }
804
                    }
780
                    }
805
 
781
 
806
                    schemeMap = schemes.stream().collect(Collectors.toMap(x -> x.getId(), x -> x));
782
                    schemeMap = schemes.stream().collect(Collectors.toMap(x -> x.getId(), x -> x));
807
                }
783
                }
-
 
784
                netEarnings += offerPayouts.stream().collect(Collectors.summingDouble(x -> x.getAmount()));
-
 
785
 
808
                List<PriceDropIMEI> priceDropImeis = priceDropIMEIRepository
786
                List<PriceDropIMEI> priceDropImeis = priceDropIMEIRepository
809
                        .selectByFofoIdImei(loginDetails.getFofoId(), searchImei);
787
                        .selectByFofoIdImei(loginDetails.getFofoId(), searchImei);
810
                if (priceDropImeis.size() > 0) {
788
                if (priceDropImeis.size() > 0) {
811
 
789
 
812
                    for (PriceDropIMEI priceDropIMEI : priceDropImeis) {
790
                    for (PriceDropIMEI priceDropIMEI : priceDropImeis) {
Line 814... Line 792...
814
                        PriceDrop pd = priceDropRepository.selectById(priceDropId);
792
                        PriceDrop pd = priceDropRepository.selectById(priceDropId);
815
                        priceDropIMEI.setPriceDrop(pd);
793
                        priceDropIMEI.setPriceDrop(pd);
816
                    }
794
                    }
817
                    model.addAttribute("priceDropImeis", priceDropImeis);
795
                    model.addAttribute("priceDropImeis", priceDropImeis);
818
                }
796
                }
819
                netEarnings += offerPayouts.stream().collect(Collectors.summingDouble(x -> x.getAmount()));
-
 
-
 
797
 
820
                model.addAttribute("offerPayouts", offerPayouts);
798
                model.addAttribute("offerPayouts", offerPayouts);
821
                model.addAttribute("offerRequestMap", offerRequestMap);
799
                model.addAttribute("offerRequestMap", offerRequestMap);
822
                model.addAttribute("inventoryItem", inventoryItem);
800
                model.addAttribute("inventoryItem", inventoryItem);
823
                model.addAttribute("inventoryItem", inventoryItem);
-
 
824
 
801
 
825
            }
802
            }
826
            model.addAttribute("fofoId", loginDetails.getFofoId());
803
            model.addAttribute("netEarnings", netEarnings);
827
            model.addAttribute("schemeMap", schemeMap);
804
            model.addAttribute("schemeMap", schemeMap);
828
            model.addAttribute("item", item);
805
            model.addAttribute("item", item);
829
            model.addAttribute("schemeInOut", schemeInOuts);
806
            model.addAttribute("schemeInOut", schemeInOuts);
830
            return "schemes-partner";
-
 
831
        }
807
        }
832
 
808
 
833
        if (isAdmin) {
809
        if (isAdmin) {
834
            schemes = schemeRepository.selectAll(0, 100);
810
            schemes = schemeRepository.selectAll(0, 100);
835
            this.setSchemeAmountModel(schemes);
811
            this.setSchemeAmountModel(schemes);
Line 838... Line 814...
838
            model.addAttribute("schemes", schemes);
814
            model.addAttribute("schemes", schemes);
839
            model.addAttribute("schemeRegionMap", schemeRegionMap);
815
            model.addAttribute("schemeRegionMap", schemeRegionMap);
840
 
816
 
841
            return "schemes";
817
            return "schemes";
842
        } else {
818
        } else {
843
            if (org.apache.commons.lang3.StringUtils.isNotEmpty(searchImei)) {
-
 
844
                InventoryItem inventoryItem = inventoryItemRepository.selectBySerialNumberFofoId(searchImei,
-
 
845
                        loginDetails.getFofoId());
-
 
846
                List<PriceDropIMEI> priceDropImeis = priceDropIMEIRepository
-
 
847
                        .selectByFofoIdImei(loginDetails.getFofoId(), searchImei);
-
 
848
                if (priceDropImeis.size() > 0) {
-
 
849
 
-
 
850
                    for (PriceDropIMEI priceDropIMEI : priceDropImeis) {
-
 
851
                        int priceDropId = priceDropIMEI.getPriceDropId();
-
 
852
                        PriceDrop pd = priceDropRepository.selectById(priceDropId);
-
 
853
                        priceDropIMEI.setPriceDrop(pd);
-
 
854
                    }
-
 
855
                    model.addAttribute("priceDropImeis", priceDropImeis);
-
 
856
                }
-
 
857
            }
-
 
858
            FofoStore fs = fofoStoreRepository.selectByRetailerId(loginDetails.getFofoId());
819
            FofoStore fs = fofoStoreRepository.selectByRetailerId(loginDetails.getFofoId());
859
            model.addAttribute("partnerCode", fs.getCode());
820
            model.addAttribute("partnerCode", fs.getCode());
860
            model.addAttribute("fofoId", fs.getId());
821
            model.addAttribute("fofoId", fs.getId());
861
            return "schemes-partner";
822
            return "schemes-partner";
862
        }
823
        }