Subversion Repositories SmartDukaan

Rev

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

Rev 33696 Rev 33861
Line 10... Line 10...
10
import com.spice.profitmandi.dao.entity.transaction.*;
10
import com.spice.profitmandi.dao.entity.transaction.*;
11
import com.spice.profitmandi.dao.enumuration.fofo.Gateway;
11
import com.spice.profitmandi.dao.enumuration.fofo.Gateway;
12
import com.spice.profitmandi.dao.enumuration.transaction.AddWalletRequestStatus;
12
import com.spice.profitmandi.dao.enumuration.transaction.AddWalletRequestStatus;
13
import com.spice.profitmandi.dao.enumuration.transaction.TransactionType;
13
import com.spice.profitmandi.dao.enumuration.transaction.TransactionType;
14
import com.spice.profitmandi.dao.model.DateRangeModel;
14
import com.spice.profitmandi.dao.model.DateRangeModel;
-
 
15
import com.spice.profitmandi.dao.model.StoreTimelineModel;
15
import com.spice.profitmandi.dao.repository.catalog.AddWalletRequestRepository;
16
import com.spice.profitmandi.dao.repository.catalog.AddWalletRequestRepository;
16
import com.spice.profitmandi.dao.repository.catalog.ManualPaymentRequestRepository;
17
import com.spice.profitmandi.dao.repository.catalog.ManualPaymentRequestRepository;
17
import com.spice.profitmandi.dao.repository.catalog.UnsettledPaymentsRepository;
18
import com.spice.profitmandi.dao.repository.catalog.UnsettledPaymentsRepository;
18
import com.spice.profitmandi.dao.repository.dtr.CreditAccountRepository;
19
import com.spice.profitmandi.dao.repository.dtr.CreditAccountRepository;
19
import com.spice.profitmandi.dao.repository.dtr.FofoStoreRepository;
20
import com.spice.profitmandi.dao.repository.dtr.FofoStoreRepository;
-
 
21
import com.spice.profitmandi.dao.repository.dtr.PartnerOnBoardingPanelRepository;
20
import com.spice.profitmandi.dao.repository.dtr.UserAccountRepository;
22
import com.spice.profitmandi.dao.repository.dtr.UserAccountRepository;
21
import com.spice.profitmandi.dao.repository.transaction.*;
23
import com.spice.profitmandi.dao.repository.transaction.*;
-
 
24
import com.spice.profitmandi.dao.repository.user.LoiFormRepository;
22
import com.spice.profitmandi.dao.service.SidbiService;
25
import com.spice.profitmandi.dao.service.SidbiService;
23
import com.spice.profitmandi.service.NotificationService;
26
import com.spice.profitmandi.service.NotificationService;
24
import com.spice.profitmandi.service.authentication.RoleManager;
27
import com.spice.profitmandi.service.authentication.RoleManager;
25
import com.spice.profitmandi.service.transaction.TransactionService;
28
import com.spice.profitmandi.service.transaction.TransactionService;
26
import com.spice.profitmandi.service.user.RetailerService;
29
import com.spice.profitmandi.service.user.RetailerService;
-
 
30
import com.spice.profitmandi.service.user.StoreTimelineTatService;
27
import com.spice.profitmandi.service.wallet.WalletService;
31
import com.spice.profitmandi.service.wallet.WalletService;
28
import com.spice.profitmandi.web.model.LoginDetails;
32
import com.spice.profitmandi.web.model.LoginDetails;
29
import com.spice.profitmandi.web.util.CookiesProcessor;
33
import com.spice.profitmandi.web.util.CookiesProcessor;
30
import com.spice.profitmandi.web.util.MVCResponseSender;
34
import com.spice.profitmandi.web.util.MVCResponseSender;
31
import in.shop2020.model.v1.order.WalletReferenceType;
35
import in.shop2020.model.v1.order.WalletReferenceType;
Line 148... Line 152...
148
    LoanRepository loanRepository;
152
    LoanRepository loanRepository;
149
    @Autowired
153
    @Autowired
150
    private LoanStatementRepository loanStatementRepository;
154
    private LoanStatementRepository loanStatementRepository;
151
    @Autowired
155
    @Autowired
152
    SDCreditRequirementRepository sdCreditRequirementRepository;
156
    SDCreditRequirementRepository sdCreditRequirementRepository;
-
 
157
    @Autowired
-
 
158
    LoiFormRepository loiFormRepository;
-
 
159
    @Autowired
-
 
160
    PartnerOnBoardingPanelRepository partnerOnBoardingPanelRepository;
-
 
161
    @Autowired
-
 
162
    StoreTimelineTatService storeTimelineTatService;
-
 
163
 
153
 
164
 
154
 
165
 
155
    @PostMapping(value = "/wallet/upload")
166
    @PostMapping(value = "/wallet/upload")
156
    public String uploadWalletBulk(HttpServletRequest request, @RequestPart("file") MultipartFile file, Model model) throws Exception {
167
    public String uploadWalletBulk(HttpServletRequest request, @RequestPart("file") MultipartFile file, Model model) throws Exception {
157
        List<WalletHistoryModel> walletHistoryModelList = ExcelUtils.parseWalletBulkCredit(file.getInputStream());
168
        List<WalletHistoryModel> walletHistoryModelList = ExcelUtils.parseWalletBulkCredit(file.getInputStream());
Line 435... Line 446...
435
            walletService.addAmountToWallet(addWalletRequest.getRetailerId(), walletRequestid, WalletReferenceType.ADVANCE_AMOUNT, "ntfs/rgfs", addWalletRequest.getAmount(), addWalletRequest.getCreateTimestamp());
446
            walletService.addAmountToWallet(addWalletRequest.getRetailerId(), walletRequestid, WalletReferenceType.ADVANCE_AMOUNT, "ntfs/rgfs", addWalletRequest.getAmount(), addWalletRequest.getCreateTimestamp());
436
            addWalletRequest.setStatus(AddWalletRequestStatus.approved);
447
            addWalletRequest.setStatus(AddWalletRequestStatus.approved);
437
            addWalletRequest.setUpdateTimestamp(LocalDateTime.now());
448
            addWalletRequest.setUpdateTimestamp(LocalDateTime.now());
438
            addWalletRequestRepository.persist(addWalletRequest);
449
            addWalletRequestRepository.persist(addWalletRequest);
439
            unsettledPaymentsRepository.deleteById(id);
450
            unsettledPaymentsRepository.deleteById(id);
-
 
451
 
-
 
452
            // check full stock payment if partner comes from Loi process
-
 
453
            String code = fofoStoreRepository.selectByRetailerId(addWalletRequest.getRetailerId()).getCode();
-
 
454
            StoreTimelineModel storeTimelineModel = partnerOnBoardingPanelRepository.selectStoreTimeLine(code);
-
 
455
            if (storeTimelineModel != null && storeTimelineModel.getFullStockTimestamp() == null) {
-
 
456
                UserWallet userWallet = userWalletRepository.selectByRetailerId(addWalletRequest.getRetailerId());
-
 
457
                List<UserWalletHistory> userWalletHistories = userWalletHistoryRepository.selectByWalletIdAndReferenceType(userWallet.getId(), WalletReferenceType.ADVANCE_AMOUNT);
-
 
458
                long totalAdvanceAmount = userWalletHistories.stream().mapToLong(x -> x.getAmount()).sum();
-
 
459
                LOGGER.info("totalAdvanceAmount - " + totalAdvanceAmount);
-
 
460
                if (totalAdvanceAmount >= ProfitMandiConstants.MIN_FULL_STOCK_PAYMENT) {
-
 
461
                    storeTimelineTatService.onFullPaymentReceived(storeTimelineModel.getOnboardingId());
-
 
462
                }
-
 
463
            }
-
 
464
 
440
            model.addAttribute("response1", mvcResponseSender.createResponseString(true));
465
            model.addAttribute("response1", mvcResponseSender.createResponseString(true));
441
            CustomRetailer customRetailer = retailerService.getFofoRetailer(addWalletRequest.getRetailerId());
466
            CustomRetailer customRetailer = retailerService.getFofoRetailer(addWalletRequest.getRetailerId());
442
            String subject = "Request Approved for " + customRetailer.getBusinessName() + " of Rs." + addWalletRequest.getAmount();
467
            String subject = "Request Approved for " + customRetailer.getBusinessName() + " of Rs." + addWalletRequest.getAmount();
443
            String messageText = MessageFormat.format("User Id - {0}\n Name -{1}\n Email -{2}\n mobile -{3}\n Reference - {4}\n Amount - Rs.{5}", new Integer(addWalletRequest.getRetailerId()), customRetailer.getBusinessName(), customRetailer.getEmail(), customRetailer.getMobileNumber(), addWalletRequest.getTransaction_reference(), new Float(addWalletRequest.getAmount()));
468
            String messageText = MessageFormat.format("User Id - {0}\n Name -{1}\n Email -{2}\n mobile -{3}\n Reference - {4}\n Amount - Rs.{5}", new Integer(addWalletRequest.getRetailerId()), customRetailer.getBusinessName(), customRetailer.getEmail(), customRetailer.getMobileNumber(), addWalletRequest.getTransaction_reference(), new Float(addWalletRequest.getAmount()));
444
 
469