Subversion Repositories SmartDukaan

Rev

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

Rev 33806 Rev 33812
Line 16... Line 16...
16
import com.spice.profitmandi.dao.entity.catalog.TagListing;
16
import com.spice.profitmandi.dao.entity.catalog.TagListing;
17
import com.spice.profitmandi.dao.entity.cs.Region;
17
import com.spice.profitmandi.dao.entity.cs.Region;
18
import com.spice.profitmandi.dao.entity.fofo.*;
18
import com.spice.profitmandi.dao.entity.fofo.*;
19
import com.spice.profitmandi.dao.entity.inventory.SaholicCISTable;
19
import com.spice.profitmandi.dao.entity.inventory.SaholicCISTable;
20
import com.spice.profitmandi.dao.entity.inventory.SaholicPOItem;
20
import com.spice.profitmandi.dao.entity.inventory.SaholicPOItem;
-
 
21
import com.spice.profitmandi.dao.entity.transaction.Loan;
21
import com.spice.profitmandi.dao.entity.transaction.Order;
22
import com.spice.profitmandi.dao.entity.transaction.Order;
22
import com.spice.profitmandi.dao.entity.transaction.UserWallet;
23
import com.spice.profitmandi.dao.entity.transaction.UserWallet;
23
import com.spice.profitmandi.dao.entity.user.User;
24
import com.spice.profitmandi.dao.entity.user.User;
24
import com.spice.profitmandi.dao.entity.warehouse.BrandRegionMapping;
25
import com.spice.profitmandi.dao.entity.warehouse.BrandRegionMapping;
25
import com.spice.profitmandi.dao.enumuration.cs.EscalationType;
26
import com.spice.profitmandi.dao.enumuration.cs.EscalationType;
Line 38... Line 39...
38
import com.spice.profitmandi.dao.repository.dtr.UserAccountRepository;
39
import com.spice.profitmandi.dao.repository.dtr.UserAccountRepository;
39
import com.spice.profitmandi.dao.repository.fofo.*;
40
import com.spice.profitmandi.dao.repository.fofo.*;
40
import com.spice.profitmandi.dao.repository.inventory.SaholicCISTableRepository;
41
import com.spice.profitmandi.dao.repository.inventory.SaholicCISTableRepository;
41
import com.spice.profitmandi.dao.repository.inventory.SaholicInventoryCISRepository;
42
import com.spice.profitmandi.dao.repository.inventory.SaholicInventoryCISRepository;
42
import com.spice.profitmandi.dao.repository.inventory.WarehouseRepository;
43
import com.spice.profitmandi.dao.repository.inventory.WarehouseRepository;
-
 
44
import com.spice.profitmandi.dao.repository.transaction.LoanRepository;
43
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
45
import com.spice.profitmandi.dao.repository.transaction.OrderRepository;
44
import com.spice.profitmandi.dao.repository.transaction.UserWalletRepository;
46
import com.spice.profitmandi.dao.repository.transaction.UserWalletRepository;
45
import com.spice.profitmandi.dao.repository.user.UserRepository;
47
import com.spice.profitmandi.dao.repository.user.UserRepository;
46
import com.spice.profitmandi.dao.repository.warehouse.BrandRegionMappingRepository;
48
import com.spice.profitmandi.dao.repository.warehouse.BrandRegionMappingRepository;
47
import com.spice.profitmandi.service.NotificationService;
49
import com.spice.profitmandi.service.NotificationService;
Line 84... Line 86...
84
import org.springframework.web.bind.annotation.RequestMapping;
86
import org.springframework.web.bind.annotation.RequestMapping;
85
import org.springframework.web.bind.annotation.RequestMethod;
87
import org.springframework.web.bind.annotation.RequestMethod;
86
import org.springframework.web.bind.annotation.RequestParam;
88
import org.springframework.web.bind.annotation.RequestParam;
87
 
89
 
88
import javax.servlet.http.HttpServletRequest;
90
import javax.servlet.http.HttpServletRequest;
-
 
91
import java.math.BigDecimal;
89
import java.time.LocalDate;
92
import java.time.LocalDate;
90
import java.time.LocalDateTime;
93
import java.time.LocalDateTime;
91
import java.time.LocalTime;
94
import java.time.LocalTime;
92
import java.time.YearMonth;
95
import java.time.YearMonth;
93
import java.util.*;
96
import java.util.*;
Line 222... Line 225...
222
    private SuggestedPoDetailRepository suggestedPoDetailRepository;
225
    private SuggestedPoDetailRepository suggestedPoDetailRepository;
223
 
226
 
224
    @Autowired
227
    @Autowired
225
    SaholicCISTableRepository saholicCISTableRepository;
228
    SaholicCISTableRepository saholicCISTableRepository;
226
 
229
 
-
 
230
    @Autowired
-
 
231
    MonthlyTargetRepository monthlyTargetRepository;
-
 
232
 
-
 
233
    @Autowired
-
 
234
    LoanRepository loanRepository;
-
 
235
 
227
    @RequestMapping(value = "/open-indent/save", method = RequestMethod.POST)
236
    @RequestMapping(value = "/open-indent/save", method = RequestMethod.POST)
228
    public String saveOpenIndent(HttpServletRequest request, Model model, @RequestParam int catalogId,
237
    public String saveOpenIndent(HttpServletRequest request, Model model, @RequestParam int catalogId,
229
                                 @RequestParam int itemQty, @RequestParam int fofoId) throws Exception {
238
                                 @RequestParam int itemQty, @RequestParam int fofoId) throws Exception {
230
        if (fofoId == 0) {
239
        if (fofoId == 0) {
231
 
240
 
Line 1706... Line 1715...
1706
 
1715
 
1707
        Brand_Amount_Limit.put("accessories", 10000.00);
1716
        Brand_Amount_Limit.put("accessories", 10000.00);
1708
        Brand_Amount_Limit.put("TV", 27000.00);
1717
        Brand_Amount_Limit.put("TV", 27000.00);
1709
    }
1718
    }
1710
 
1719
 
1711
    @Autowired
-
 
1712
    MonthlyTargetRepository monthlyTargetRepository;
-
 
1713
 
1720
 
1714
    @RequestMapping(value = "/getPartnersBrandWiseDetail", method = RequestMethod.GET)
1721
    @RequestMapping(value = "/getPartnersBrandWiseDetail", method = RequestMethod.GET)
1715
    public String getPartnersBrandWiseDetail(HttpServletRequest request, Model model) throws Exception {
1722
    public String getPartnersBrandWiseDetail(HttpServletRequest request, Model model) throws Exception {
1716
 
1723
 
1717
        LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
1724
        LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
Line 1852... Line 1859...
1852
 
1859
 
1853
        Map<Integer, Double> currentMonthTillDateRetailerPOValueMap = orderRepository.selectOrderValueBetweenDatesGroupByFofoId(new ArrayList<>(fofoIds),
1860
        Map<Integer, Double> currentMonthTillDateRetailerPOValueMap = orderRepository.selectOrderValueBetweenDatesGroupByFofoId(new ArrayList<>(fofoIds),
1854
                Arrays.asList(OrderStatus.BILLED, OrderStatus.SHIPPED_FROM_WH, OrderStatus.SHIPPED_TO_LOGST, OrderStatus.DELIVERY_SUCCESS, OrderStatus.ACCEPTED, OrderStatus.SUBMITTED_FOR_PROCESSING),
1861
                Arrays.asList(OrderStatus.BILLED, OrderStatus.SHIPPED_FROM_WH, OrderStatus.SHIPPED_TO_LOGST, OrderStatus.DELIVERY_SUCCESS, OrderStatus.ACCEPTED, OrderStatus.SUBMITTED_FOR_PROCESSING),
1855
                YearMonth.now().atDay(1).atStartOfDay(), LocalDateTime.now()).stream().collect(Collectors.toMap(x -> x.getId(), x -> x.getAmount()));
1862
                YearMonth.now().atDay(1).atStartOfDay(), LocalDateTime.now()).stream().collect(Collectors.toMap(x -> x.getId(), x -> x.getAmount()));
1856
 
1863
 
-
 
1864
        List<Loan> loans = loanRepository.selectAllActiveLoan().stream().filter(x -> fofoIds.contains(x.getFofoId())).collect(Collectors.toList());
-
 
1865
        Map<Integer, List<Loan>> loanMap = loans.stream().collect(Collectors.groupingBy(x -> x.getFofoId(), Collectors.toList()));
-
 
1866
        Map<Integer, BigDecimal> totalDueMap = new HashMap<>();
-
 
1867
        for (Entry<Integer, List<Loan>> fofoIdLoanEntry : loanMap.entrySet()) {
-
 
1868
            List<Loan> Loans = fofoIdLoanEntry.getValue();
-
 
1869
            int fofoId = fofoIdLoanEntry.getKey();
-
 
1870
            BigDecimal totalDue = new BigDecimal(0);
-
 
1871
            for (Loan loan : Loans) {
-
 
1872
                BigDecimal pendingAmount = loan.getPendingAmount();
-
 
1873
                BigDecimal interestAccrued = loan.getInterestAccrued();
-
 
1874
                BigDecimal interestPaid = loan.getInterestPaid();
-
 
1875
                totalDue = totalDue.add(interestAccrued.subtract(interestPaid).add(pendingAmount));
-
 
1876
            }
-
 
1877
            totalDueMap.put(fofoId, totalDue);
-
 
1878
        }
-
 
1879
 
1857
        //Only L3 and above can change the activationType
1880
        //Only L3 and above can change the activationType
1858
 
1881
 
1859
        model.addAttribute("customRetailers", customRetailers);
1882
        model.addAttribute("customRetailers", customRetailers);
-
 
1883
        model.addAttribute("totalDueMap", totalDueMap);
1860
        model.addAttribute("fofoMTDSaleMap", fofoMTDSaleMap);
1884
        model.addAttribute("fofoMTDSaleMap", fofoMTDSaleMap);
1861
        model.addAttribute("fofoIdMonthlyTargetMap", fofoIdMonthlyTargetMap);
1885
        model.addAttribute("fofoIdMonthlyTargetMap", fofoIdMonthlyTargetMap);
1862
        model.addAttribute("currentMonthTillDateRetailerPOValueMap", currentMonthTillDateRetailerPOValueMap);
1886
        model.addAttribute("currentMonthTillDateRetailerPOValueMap", currentMonthTillDateRetailerPOValueMap);
1863
 
1887
 
1864
        LOGGER.info("fofoIdBrandAmountMap" + fofoIdBrandAmountMap);
1888
        LOGGER.info("fofoIdBrandAmountMap" + fofoIdBrandAmountMap);