Subversion Repositories SmartDukaan

Rev

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

Rev 33999 Rev 34072
Line 852... Line 852...
852
    public void processSellin(CreateOfferRequest createOfferRequest) throws Exception {
852
    public void processSellin(CreateOfferRequest createOfferRequest) throws Exception {
853
 
853
 
854
        //List<OfferRowModel> offerRowModels = new ArrayList<>();
854
        //List<OfferRowModel> offerRowModels = new ArrayList<>();
855
        List<OfferPayout> offerPayouts = offerPayoutRepository.selectAllByOfferId(createOfferRequest.getId());
855
        List<OfferPayout> offerPayouts = offerPayoutRepository.selectAllByOfferId(createOfferRequest.getId());
856
        Map<String, Double> serialNumberPaid = offerPayouts.stream().filter(x -> x.getRejectTimestamp() == null).collect(Collectors.groupingBy(x -> x.getSerialNumber(), Collectors.summingDouble(x -> x.getSlabAmount())));
856
        Map<String, Double> serialNumberPaid = offerPayouts.stream().filter(x -> x.getRejectTimestamp() == null).collect(Collectors.groupingBy(x -> x.getSerialNumber(), Collectors.summingDouble(x -> x.getSlabAmount())));
857
 
-
 
-
 
857
        LOGGER.info("serialNumberPaid {}", serialNumberPaid);
858
        List<ItemCriteriaPayout> itemCriteriaPayouts = createOfferRequest.getTargetSlabs().get(0).getItemCriteriaPayouts();
858
        List<ItemCriteriaPayout> itemCriteriaPayouts = createOfferRequest.getTargetSlabs().get(0).getItemCriteriaPayouts();
859
        Map<Integer, ItemCriteriaPayout> itemCriteriaPayoutMap = itemCriteriaPayouts.stream().collect(Collectors.toMap(x -> x.getItemCriteria().getId(), x -> x));
859
        Map<Integer, ItemCriteriaPayout> itemCriteriaPayoutMap = itemCriteriaPayouts.stream().collect(Collectors.toMap(x -> x.getItemCriteria().getId(), x -> x));
860
        Map<Integer, Map<Integer, Double>> fixedSlabCriteriaPartnerMap = offerPayouts.stream().filter(x -> itemCriteriaPayoutMap.get((int) x.getCriteriaId()).getAmountType().equals(AmountType.SLAB_FIXED))
860
        Map<Integer, Map<Integer, Double>> fixedSlabCriteriaPartnerMap = offerPayouts.stream().filter(x -> itemCriteriaPayoutMap.get((int) x.getCriteriaId()).getAmountType().equals(AmountType.SLAB_FIXED))
861
                .collect(Collectors.groupingBy(x -> (int) x.getCriteriaId(), Collectors.groupingBy(x -> (int) x.getFofoId(), Collectors.summingDouble(x -> x.getSlabAmount()))));
861
                .collect(Collectors.groupingBy(x -> (int) x.getCriteriaId(), Collectors.groupingBy(x -> (int) x.getFofoId(), Collectors.summingDouble(x -> x.getSlabAmount()))));
862
        Set<Long> fofoIds = offerPayouts.stream().map(x -> x.getFofoId()).collect(Collectors.toSet());
862
        Set<Long> fofoIds = offerPayouts.stream().map(x -> x.getFofoId()).collect(Collectors.toSet());
Line 996... Line 996...
996
                            amount = (eligiblePayoutValue * serialNumberInventoryItemEntry.getValue().getUnitPrice()) / totalDpValue;
996
                            amount = (eligiblePayoutValue * serialNumberInventoryItemEntry.getValue().getUnitPrice()) / totalDpValue;
997
                            LOGGER.info("Amount - {}", amount);
997
                            LOGGER.info("Amount - {}", amount);
998
                        } else {
998
                        } else {
999
                            amount = eligiblePayoutValue;
999
                            amount = eligiblePayoutValue;
1000
                            if (serialNumberPaid.containsKey(serialNumberInventoryItemEntry.getKey())) {
1000
                            if (serialNumberPaid.containsKey(serialNumberInventoryItemEntry.getKey())) {
-
 
1001
                                LOGGER.info("serial number slab amount", serialNumberPaid.get(serialNumberInventoryItemEntry.getKey()));
1001
                                amount = amount - serialNumberPaid.get(serialNumberInventoryItemEntry.getKey());
1002
                                amount = amount - serialNumberPaid.get(serialNumberInventoryItemEntry.getKey());
1002
                            }
1003
                            }
1003
                        }
1004
                        }
1004
                        LOGGER.info("Amount - {}", amount);
1005
                        LOGGER.info("Amount - {}", amount);
1005
                        //ignore reasonably small
1006
                        //ignore reasonably small