Subversion Repositories SmartDukaan

Rev

Rev 36248 | Rev 36306 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
23755 amit.gupta 1
package com.smartdukaan.cron;
23723 amit.gupta 2
 
32782 raveendra. 3
import com.smartdukaan.cron.migrations.RunOnceTasks;
4
import com.smartdukaan.cron.scheduled.*;
5
import com.smartdukaan.cron.scheduled.b2b.Listing;
6
import com.smartdukaan.cron.scheduled.leadsync.LeadSyncRunner;
32831 amit.gupta 7
import com.smartdukaan.cron.scheduled.ordertracking.OrderTrackingService;
33274 amit.gupta 8
import com.smartdukaan.cron.scheduled.purchaseorder.POScheduler;
34860 ranu 9
import com.smartdukaan.cron.scheduled.razorpay.FetchPartnersDisbursementTask;
36058 ranu 10
import com.smartdukaan.cron.scheduled.knowlarity.KnowlarityCallMonitorScheduler;
11
import com.spice.profitmandi.common.model.InvoicePdfModel;
34443 vikas.jang 12
import com.spice.profitmandi.common.model.ProfitMandiConstants;
32782 raveendra. 13
import com.spice.profitmandi.dao.enumuration.cs.EscalationType;
14
import com.spice.profitmandi.dao.repository.cs.CsService;
15
import com.spice.profitmandi.dao.repository.fofo.FofoOrderItemRepository;
36035 amit 16
import com.spice.profitmandi.dao.service.shopify.ShopifyProductSyncService;
32782 raveendra. 17
import com.spice.profitmandi.dao.util.ContentPojoPopulator;
18
import com.spice.profitmandi.service.integrations.samsung.upgradeoffer.UpgradeOfferService;
36063 ranu 19
import com.spice.profitmandi.service.mail.MailOutboxService;
23723 amit.gupta 20
import org.apache.logging.log4j.LogManager;
21
import org.apache.logging.log4j.Logger;
28389 amit.gupta 22
import org.apache.velocity.app.VelocityEngine;
23
import org.apache.velocity.exception.VelocityException;
23898 amit.gupta 24
import org.springframework.beans.factory.annotation.Autowired;
25
import org.springframework.boot.ApplicationArguments;
26
import org.springframework.boot.ApplicationRunner;
23723 amit.gupta 27
import org.springframework.boot.WebApplicationType;
28
import org.springframework.boot.autoconfigure.SpringBootApplication;
29
import org.springframework.boot.builder.SpringApplicationBuilder;
30
import org.springframework.context.annotation.Bean;
31
import org.springframework.context.annotation.ComponentScan;
34554 tejus.loha 32
import org.springframework.context.annotation.EnableAspectJAutoProxy;
23935 amit.gupta 33
import org.springframework.context.annotation.Primary;
23723 amit.gupta 34
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
35
import org.springframework.core.io.ClassPathResource;
35393 amit 36
import org.springframework.core.io.Resource;
23906 amit.gupta 37
import org.springframework.mail.javamail.JavaMailSender;
38
import org.springframework.mail.javamail.JavaMailSenderImpl;
28389 amit.gupta 39
import org.springframework.ui.velocity.VelocityEngineFactoryBean;
23723 amit.gupta 40
 
32782 raveendra. 41
import java.io.FileInputStream;
42
import java.io.IOException;
43
import java.time.LocalDate;
44
import java.time.YearMonth;
45
import java.util.ArrayList;
46
import java.util.Arrays;
47
import java.util.List;
48
import java.util.Properties;
49
import java.util.stream.Collectors;
23724 amit.gupta 50
 
23723 amit.gupta 51
@SpringBootApplication
34554 tejus.loha 52
@EnableAspectJAutoProxy
23755 amit.gupta 53
@ComponentScan("com.smartdukaan.cron.*, com.spice.profitmandi.common.*")
24122 govind 54
public class Application implements ApplicationRunner {
55
 
31753 tejbeer 56
    private static final Logger LOGGER = LogManager.getLogger(Application.class);
24122 govind 57
 
31753 tejbeer 58
    @Autowired
59
    LeadSyncRunner leadSyncRunner;
30120 amit.gupta 60
 
31753 tejbeer 61
    @Autowired
62
    StandAlone standAlone;
30209 amit.gupta 63
 
31753 tejbeer 64
    @Autowired
65
    UpgradeOfferService upgradeOfferService;
27392 amit.gupta 66
 
31753 tejbeer 67
    @Autowired
68
    private TicketRelatedScheduledTask ticketRelatedScheduledTask;
28368 tejbeer 69
 
31753 tejbeer 70
    @Autowired
71
    private OnBoardingRelatedSchelduleTask onBoardingRelatedSchelduleTask;
28921 tejbeer 72
 
31753 tejbeer 73
    @Autowired
74
    private InvestmentRelatedTasks investmentRelatedTasks;
27392 amit.gupta 75
 
31753 tejbeer 76
    @Autowired
77
    private CsService csService;
29814 tejbeer 78
 
31753 tejbeer 79
    @Autowired
80
    private FofoOrderItemRepository fofoOrderItemRepository;
24603 amit.gupta 81
 
31753 tejbeer 82
    @Autowired
83
    private ContentPojoPopulator contentPojoPopulator;
29361 tejbeer 84
 
31753 tejbeer 85
    @Autowired
86
    private Listing listing;
24122 govind 87
 
32831 amit.gupta 88
    @Autowired
89
    OrderTrackingService orderTrackingService;
90
 
31753 tejbeer 91
    public static void main(String[] args) throws Throwable {
92
        try {
35803 amit 93
            WebApplicationType webType = WebApplicationType.SERVLET;
94
            for (String arg : args) {
95
                if (arg.contains("spring.main.web-application-type=none")) {
96
                    webType = WebApplicationType.NONE;
97
                    break;
98
                }
99
            }
100
            new SpringApplicationBuilder(Application.class)
101
                    .web(webType)
102
                    .run(args);
31753 tejbeer 103
        } catch (Throwable t) {
104
            t.printStackTrace();
105
        }
106
    }
28389 amit.gupta 107
 
31753 tejbeer 108
    @Bean
109
    public static PropertySourcesPlaceholderConfigurer propertyConfigurer1() {
110
        LOGGER.info("Called Configuration");
111
        PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer = new PropertySourcesPlaceholderConfigurer();
35393 amit 112
 
35832 amit 113
        String activeProfile;
114
        Properties properties = new Properties();
115
        try {
116
            properties.load(Application.class.getClassLoader().getResourceAsStream("META-INF/env.property"));
117
        } catch (IOException e) {
118
            LOGGER.error("Error reading env.property, defaulting to dev: " + e);
119
            properties.put("profile", "dev");
120
        }
121
        activeProfile = (String) properties.get("profile");
35393 amit 122
 
35832 amit 123
        Resource appResource;
124
        Resource sharedResource;
125
 
126
        if ("prod".equals(activeProfile)) {
127
            appResource = new ClassPathResource("/META-INF/prod.properties");
128
            sharedResource = new ClassPathResource("/shared-prod.properties");
129
        } else if ("staging".equals(activeProfile)) {
130
            appResource = new ClassPathResource("/META-INF/staging.properties");
131
            sharedResource = new ClassPathResource("/shared-staging.properties");
132
        } else {
133
            appResource = new ClassPathResource("/META-INF/dev.properties");
134
            sharedResource = new ClassPathResource("/shared-dev.properties");
135
        }
136
 
137
        LOGGER.info("Cron loading profile: " + activeProfile);
138
        propertySourcesPlaceholderConfigurer.setLocations(sharedResource, appResource);
35393 amit 139
        propertySourcesPlaceholderConfigurer.setIgnoreResourceNotFound(true);
140
 
31753 tejbeer 141
        return propertySourcesPlaceholderConfigurer;
142
    }
28389 amit.gupta 143
 
31753 tejbeer 144
    @Bean(name = "veloctyEngine")
145
    public VelocityEngine velocityEngine() throws VelocityException, IOException {
146
        VelocityEngineFactoryBean factory = new VelocityEngineFactoryBean();
28389 amit.gupta 147
 
31753 tejbeer 148
        Properties velocityProperties = new Properties();
149
        velocityProperties.put("resource.loader", "class");
150
        velocityProperties.put("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
151
        velocityProperties.put("file.resource.loader.cache", true);
152
        velocityProperties.put("file.resource.loader.unicode", true);
153
        velocityProperties.put("input.encoding", "UTF-8");
154
        velocityProperties.put("output.encoding", "UTF-8");
155
        velocityProperties.put("response.encoding", "UTF-8");
156
        velocityProperties.put("overrideLogging", true);
28389 amit.gupta 157
 
31753 tejbeer 158
        // velocityProperties.put("file.resource.loader.path", ".");
28389 amit.gupta 159
 
31753 tejbeer 160
        factory.setVelocityProperties(velocityProperties);
28389 amit.gupta 161
 
31753 tejbeer 162
        return factory.createVelocityEngine();
23723 amit.gupta 163
 
31753 tejbeer 164
    }
24122 govind 165
 
34668 amit.gupta 166
    @Bean(name = "mailSender")
31753 tejbeer 167
    @Primary
168
    public JavaMailSender sendGridMailSender() {
169
        JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
24122 govind 170
 
31753 tejbeer 171
        // Using gmail
172
        mailSender.setHost("smtp.sendgrid.net");
173
        mailSender.setPort(587);
174
        mailSender.setUsername("apikey");
34668 amit.gupta 175
        mailSender.setPassword("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");
24122 govind 176
 
31753 tejbeer 177
        Properties javaMailProperties = new Properties();
178
        javaMailProperties.put("mail.smtp.starttls.enable", "false");
179
        javaMailProperties.put("mail.smtp.auth", "true");
180
        javaMailProperties.put("mail.transport.protocol", "smtp");
36060 amit 181
        javaMailProperties.put("mail.smtp.connectiontimeout", "10000");
182
        javaMailProperties.put("mail.smtp.timeout", "10000");
183
        javaMailProperties.put("mail.smtp.writetimeout", "10000");
24122 govind 184
 
31753 tejbeer 185
        mailSender.setJavaMailProperties(javaMailProperties);
186
        return mailSender;
34632 ranu 187
    }
23935 amit.gupta 188
 
31753 tejbeer 189
    @Bean
190
    public JavaMailSender googleMailSender() {
191
        JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
34612 ranu 192
        mailSender.setHost("smtp.gmail.com");
193
        mailSender.setPort(465);
194
        mailSender.setUsername("sdtech@smartdukaan.com");
195
        mailSender.setPassword("gpdschroalhhirox"); // App Password
196
 
197
        Properties props = mailSender.getJavaMailProperties();
198
        props.put("mail.smtp.auth", "true");
199
        props.put("mail.smtp.ssl.enable", "true");
200
        props.put("mail.smtp.ssl.trust", "smtp.gmail.com");
201
        props.put("mail.smtp.socketFactory.port", "465");
202
        props.put("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");
36060 amit 203
        props.put("mail.smtp.connectiontimeout", "10000");
204
        props.put("mail.smtp.timeout", "10000");
205
        props.put("mail.smtp.writetimeout", "10000");
34612 ranu 206
 
207
        return mailSender;
208
    }
209
 
36248 amit 210
    @Bean(name = "gmailRelaySender")
211
    public JavaMailSender getGmailRelaySender() {
212
        JavaMailSenderImpl mailSender = new JavaMailSenderImpl();
213
        mailSender.setHost("smtp-relay.gmail.com");
214
        mailSender.setPort(587);
215
 
216
        Properties props = mailSender.getJavaMailProperties();
217
        props.put("mail.smtp.starttls.enable", "true");
218
        props.put("mail.smtp.auth", "false");
219
        props.put("mail.smtp.localhost", "smartdukaan.com");
220
        props.put("mail.smtp.ssl.protocols", "TLSv1.2");
221
        props.put("mail.smtp.ssl.trust", "smtp-relay.gmail.com");
222
        props.put("mail.transport.protocol", "smtp");
223
        props.put("mail.smtp.connectiontimeout", "10000");
224
        props.put("mail.smtp.timeout", "10000");
225
        props.put("mail.smtp.writetimeout", "10000");
226
 
227
        return mailSender;
228
    }
229
 
31753 tejbeer 230
    @Autowired
231
    private RunOnceTasks runOnceTasks;
24122 govind 232
 
31753 tejbeer 233
    @Autowired
234
    private ScheduledTasks scheduledTasks;
30335 amit.gupta 235
 
31753 tejbeer 236
    @Autowired
34306 ranu 237
    private ScheduledTasksTest scheduledTasksTest;
238
 
239
    @Autowired
34860 ranu 240
    private FetchPartnersDisbursementTask fetchPartnersDisbursementTask;
241
 
242
    @Autowired
31753 tejbeer 243
    private Reconciliation reconciliation;
30309 amit.gupta 244
 
31753 tejbeer 245
    @Autowired
35250 amit 246
    private Migrations migrations;
247
 
248
    @Autowired
31753 tejbeer 249
    CaptchaService captchaService;
28921 tejbeer 250
 
33274 amit.gupta 251
    @Autowired
252
    POScheduler poScheduler;
32878 amit.gupta 253
 
35929 vikas 254
    @Autowired
255
    ShopifyProductSyncService shopifyProductSyncService;
33274 amit.gupta 256
 
36058 ranu 257
    @Autowired
258
    KnowlarityCallMonitorScheduler knowlarityCallMonitorScheduler;
35929 vikas 259
 
36063 ranu 260
    @Autowired
261
    MailOutboxService mailOutboxService;
262
 
31753 tejbeer 263
    @Override
264
    public void run(ApplicationArguments args) throws Exception {
32008 amit.gupta 265
        //scheduledTasks.test();
266
        //System.exit();
31753 tejbeer 267
        LOGGER.info("Called run method");
36058 ranu 268
 
269
        // Knowlarity Call Monitor - Manual trigger (if 10 AM scheduled start was missed)
270
        // This just starts the monitor; scheduled healthCheck and stopMonitoring will still work
271
        if (args.containsOption("startKnowlarityMonitor")) {
272
            LOGGER.info("Starting Knowlarity Call Monitor manually...");
273
            knowlarityCallMonitorScheduler.startMonitoring();
274
            LOGGER.info("Knowlarity Call Monitor started. Scheduled tasks will handle health checks and 10 PM stop.");
275
            // No sleep needed - Spring scheduler keeps app running and handles 10 PM stop
276
        }
277
        if (args.containsOption("stopKnowlarityMonitor")) {
278
            LOGGER.info("Stopping Knowlarity Call Monitor...");
279
            knowlarityCallMonitorScheduler.stopMonitoring();
280
        }
36115 ranu 281
        // Knowlarity - Request fresh snapshot manually (when status not updating)
282
        if (args.containsOption("refreshKnowlaritySnapshot")) {
283
            LOGGER.info("Requesting Knowlarity snapshot manually...");
284
            knowlarityCallMonitorScheduler.healthCheck();
285
            LOGGER.info("Knowlarity snapshot requested.");
286
            System.exit(0);
287
        }
36058 ranu 288
 
33260 amit.gupta 289
        if (args.containsOption("removePartialBillingForTransaction")) {
290
            if (args.containsOption("trId")) {
33051 amit.gupta 291
                int transactionId = Integer.parseInt(args.getOptionValues("trId").get(0));
33054 amit.gupta 292
                scheduledTasks.removePartialBillingForTransaction(transactionId);
33051 amit.gupta 293
            }
294
            System.exit(0);
295
        }
34523 ranu 296
        if (args.containsOption("createOpeningStockPartyWise")) {
297
            scheduledTasks.createOpeningStockPartyWise();
298
            System.exit(0);
299
        }
31753 tejbeer 300
        if (args.containsOption("tc")) {
301
            System.out.println("Toffee service called");
302
            scheduledTasks.toffeeRollback();
303
            System.exit(0);
304
        }
305
        if (args.containsOption("bag")) {
306
            System.out.println("Bag service called");
307
            runOnceTasks.testBag();
308
            System.exit(0);
309
        }
29814 tejbeer 310
 
31753 tejbeer 311
        if (args.containsOption("rw")) {
312
            System.out.println("Reverse wallet");
313
            scheduledTasks.reverseWallet();
314
            System.exit(0);
315
        }
316
        if (args.containsOption("sendIndentTertiary")) {
317
            System.out.println("sendIndentTertiary");
318
            scheduledTasks.sendIndentTertiary();
319
            System.exit(0);
320
        }
321
        if (args.containsOption("checkPartnerActiveStore")) {
322
            System.out.println("checkPartnerActiveStore");
323
            scheduledTasks.checkPartnerActiveStore();
324
            System.exit(0);
325
        }
29800 manish 326
 
31753 tejbeer 327
        if (args.containsOption("selectFinServiceFollowUpDateByCurrDate")) {
328
            System.out.println("selectfinServiceFollowUpDateByCurrDate");
28368 tejbeer 329
 
31753 tejbeer 330
            scheduledTasks.selectFinServiceFollowUpDateByCurrDate(LocalDate.now());
331
            System.exit(0);
332
        }
25073 amit.gupta 333
 
31753 tejbeer 334
        if (args.containsOption("addHdfcPayment")) {
335
            runOnceTasks.addPayment();
336
            System.exit(0);
337
        }
35250 amit 338
        if (args.containsOption("migrateOriginalInventoryItemId")) {
339
            int batchSize = 10_000;
340
            if (args.containsOption("batchSize")) {
341
                try {
342
                    batchSize = Integer.parseInt(args.getOptionValues("batchSize").get(0));
343
                } catch (Exception e) {
344
                    LOGGER.warn("Invalid batchSize provided, defaulting to {}", batchSize);
345
                }
346
            }
347
            LOGGER.info("Starting migration for warehouse.inventoryItem.originalInventoryItemId with batchSize={}", batchSize);
36003 aman 348
            //migrations.migrateWarehouseOriginalInventoryItemId(batchSize);
35250 amit 349
            LOGGER.info("Migration completed.");
350
            System.exit(0);
351
        }
31753 tejbeer 352
        if (args.containsOption("processSchemeOut")) {
353
            System.out.println("Process schemeOut");
354
            int orderId = Integer.parseInt(args.getOptionValues("orderid").get(0));
355
            int fofoId = Integer.parseInt(args.getOptionValues("fofoid").get(0));
356
            runOnceTasks.processSchemeOut(fofoId, orderId);
357
            System.exit(0);
358
        }
359
        if (args.containsOption("at")) {
360
            System.out.println("Toffee service called");
361
            ticketRelatedScheduledTask.alertforTicket();
362
            System.exit(0);
363
        }
364
        if (args.containsOption("et")) {
365
            ticketRelatedScheduledTask.escalateTicket();
366
            ;
367
            System.exit(0);
368
        }
369
        if (args.containsOption("sr")) {
370
            List<String> schemeIds = args.getOptionValues("schemeId");
371
            System.out.println(schemeIds);
372
            scheduledTasks.schemeRollback(schemeIds);
373
            System.exit(0);
374
        }
375
        if (args.containsOption("processActivation")) {
376
            scheduledTasks.processActivation();
377
            System.exit(0);
378
        }
379
        if (args.containsOption("sendAttendanceMorningAlert")) {
380
            scheduledTasks.sendAttendanceMorningAlert();
381
            System.exit(0);
382
        }
383
        if (args.containsOption("sendAttendanceEveningAlert")) {
384
            scheduledTasks.sendAttendanceEveningAlert();
385
            System.exit(0);
386
        }
25721 tejbeer 387
 
31753 tejbeer 388
        if (args.containsOption("checkRazorPayPaymentStatus")) {
389
            scheduledTasks.checkRazorPayPaymentStatus();
390
            System.exit(0);
391
        }
392
        if (args.containsOption("grouping")) {
393
            scheduledTasks.grouping();
394
            System.exit(0);
395
        }
396
        if (args.containsOption("fixWallet")) {
397
            runOnceTasks.fixWallet();
398
            System.exit(0);
399
        }
400
        if (args.containsOption("reconcileExpiredFixedSchemes")) {
401
            reconciliation.reconcileExpiredFixedSchemes();
402
            System.exit(0);
403
        }
404
        if (args.containsOption("dailyReconciliation")) {
405
            if (args.containsOption("date")) {
406
                LocalDate date = LocalDate.parse(args.getOptionValues("date").get(0));
407
                reconciliation.dailyReconciliation(date);
408
            } else {
409
                reconciliation.dailyReconciliation(LocalDate.now().minusDays(1));
410
            }
411
            System.exit(0);
412
        }
413
        /*
414
         * if (args.containsOption("test")) { schemeService.processSchemeIn(9243,
415
         * 175138102); throw new Exception(); }
416
         */
28921 tejbeer 417
 
31753 tejbeer 418
        if (args.containsOption("sendNotification")) {
419
            scheduledTasks.sendNotification();
420
            System.exit(0);
421
        }
26291 tejbeer 422
 
36063 ranu 423
        if (args.containsOption("processPendingMails")) {
424
            System.out.println("Processing pending mails...");
425
            mailOutboxService.processPendingMails();
426
            System.exit(0);
427
        }
428
 
31753 tejbeer 429
        if (args.containsOption("ticketClosed")) {
35568 amit 430
            // Redirected to TicketRelatedScheduledTask which handles auto-close as part of escalateTicket
431
            ticketRelatedScheduledTask.escalateTicket();
31753 tejbeer 432
            System.exit(0);
433
        }
28207 tejbeer 434
 
31753 tejbeer 435
        if (args.containsOption("getVendorWarehouses")) {
436
            int warehouseId = Integer.parseInt(args.getOptionValues("warehouseId").get(0));
437
            scheduledTasks.getVendorWarehouses(warehouseId);
438
            System.exit(0);
439
        }
29776 tejbeer 440
 
31753 tejbeer 441
        if (args.containsOption("checkfocusedModelInPartnerStock")) {
34344 amit.gupta 442
            try {
443
                scheduledTasks.checkfocusedModelInPartnerStock();
444
            } finally {
445
                System.exit(0);
446
            }
31753 tejbeer 447
        }
29451 manish 448
 
31753 tejbeer 449
        if (args.containsOption("checkImeiActivation")) {
450
            scheduledTasks.checkImeiActivation();
451
            System.exit(0);
452
        }
29776 tejbeer 453
 
31753 tejbeer 454
        if (args.containsOption("checkTecnoImeiActivation")) {
29776 tejbeer 455
 
31753 tejbeer 456
            LocalDate dateTechno = LocalDate.now();
29532 manish 457
 
31753 tejbeer 458
            int days = 25;
459
            if (args.containsOption("days")) {
460
                days = Integer.parseInt(args.getOptionValues("days").get(0));
461
            }
462
            scheduledTasks.checkTecnoImeiActivation(dateTechno, days);
463
            System.exit(0);
464
        }
28921 tejbeer 465
 
31753 tejbeer 466
        if (args.containsOption("checkItelImeiActivation")) {
467
            LocalDate dateItel = LocalDate.now();
468
            int days = 25;
469
            if (args.containsOption("days")) {
470
                days = Integer.parseInt(args.getOptionValues("days").get(0));
471
            }
472
            scheduledTasks.checkItelImeiActivation(dateItel, days);
473
            System.exit(0);
474
        }
28921 tejbeer 475
 
31753 tejbeer 476
        if (args.containsOption("partnerProblemAlert")) {
477
            scheduledTasks.partnerProblemAlert();
478
            System.exit(0);
479
        }
480
        if (args.containsOption("notify")) {
481
            if (args.containsOption("fofoId")) {
482
                int fofoId = Integer.parseInt(args.getOptionValues("fofoId").get(0));
483
                scheduledTasks.sendDailySalesNotificationToPartner(fofoId);
484
            }
485
            System.exit(0);
486
        }
487
        if (args.containsOption("findMismatchesInIndent")) {
488
            runOnceTasks.findMismatchesInIndent();
489
            System.exit(0);
490
        }
29035 tejbeer 491
 
31753 tejbeer 492
        if (args.containsOption("onboardingEventDelays")) {
493
            onBoardingRelatedSchelduleTask.onboardingEventDelays();
494
            System.exit(0);
495
        }
28982 tejbeer 496
 
31753 tejbeer 497
        if (args.containsOption("onBoardingCompleteEventEmail")) {
498
            onBoardingRelatedSchelduleTask.onBoardingCompleteEventEmail();
499
            System.exit(0);
500
        }
28921 tejbeer 501
 
31753 tejbeer 502
        if (args.containsOption("onBoardingDocumentsPending")) {
503
            onBoardingRelatedSchelduleTask.onBoardingDocumentsPending();
504
            System.exit(0);
505
        }
506
        if (args.containsOption("onBoardingMigration")) {
507
            onBoardingRelatedSchelduleTask.onBoardingMigration();
508
            System.exit(0);
509
        }
28921 tejbeer 510
 
33859 tejus.loha 511
//        if (args.containsOption("advancePaymentPendingAlert")) {
512
//            onBoardingRelatedSchelduleTask.advancePaymentPendingAlert();
513
//            System.exit(0);
514
//        }
28963 tejbeer 515
 
31753 tejbeer 516
        if (args.containsOption("fullPaymentPendingAlert")) {
517
            onBoardingRelatedSchelduleTask.fullPaymentPendingAlert();
518
            System.exit(0);
519
        }
29308 tejbeer 520
 
33859 tejus.loha 521
//        if (args.containsOption("advancePaymentPendinglegalAlert")) {
522
//            onBoardingRelatedSchelduleTask.advancePaymentPendinglegalAlert();
523
//            System.exit(0);
524
//        }
31117 tejbeer 525
 
31753 tejbeer 526
        if (args.containsOption("markDelhiveryOrderDelivered")) {
32831 amit.gupta 527
            orderTrackingService.markDelhiveryOrderDelivered();
31753 tejbeer 528
            System.exit(0);
529
        }
32831 amit.gupta 530
 
31753 tejbeer 531
        if (args.containsOption("markBlueDartOrderDelivered")) {
32794 raveendra. 532
            System.out.println("Marking BlueDart Order Delivered...");
32831 amit.gupta 533
            orderTrackingService.markBlueDartOrderDelivered();
31753 tejbeer 534
            System.exit(0);
535
        }
536
        if (args.containsOption("mergingdata")) {
537
            onBoardingRelatedSchelduleTask.mergingdata();
538
            System.exit(0);
539
        }
540
        if (args.containsOption("brandingAlert")) {
541
            onBoardingRelatedSchelduleTask.brandingAlert();
542
            System.exit(0);
543
        }
31089 amit.gupta 544
 
33859 tejus.loha 545
//        if (args.containsOption("storeTimelinePromoterPending")) {
546
//            onBoardingRelatedSchelduleTask.storeTimelinePromoterPending();
547
//            System.exit(0);
548
//        }
31249 tejbeer 549
 
31753 tejbeer 550
        if (args.containsOption("ppl")) {
551
            runOnceTasks.printPendingLeads();
552
            System.exit(0);
553
        }
31249 tejbeer 554
 
31753 tejbeer 555
        if (args.containsOption("notifyAll")) {
556
            scheduledTasks.sendDailySalesNotificationToPartner(null);
557
            System.exit(0);
558
        }
31249 tejbeer 559
 
31753 tejbeer 560
        if (args.containsOption("monthlyTargetForInternalTeam")) {
561
            scheduledTasks.monthlyTargetForInternalTeam();
562
            System.exit(0);
563
        }
31249 tejbeer 564
 
31753 tejbeer 565
        if (args.containsOption("monthlyTargetForPartner")) {
566
            scheduledTasks.monthlyTargetForPartner();
567
            System.exit(0);
568
        }
33444 ranu 569
        if (args.containsOption("findAllLiveDemoBrandItemsByBillingDate")) {
570
            scheduledTasks.findAllLiveDemoBrandItemsByBillingDate();
571
            System.exit(0);
572
        }
33464 ranu 573
        if (args.containsOption("findTodayPocoBillingItems")) {
574
            scheduledTasks.findTodayPocoBillingItems();
575
            System.exit(0);
576
        }
28921 tejbeer 577
 
31753 tejbeer 578
        if (args.containsOption("hygineAlertForPartner")) {
579
            scheduledTasks.hygineAlertForPartner();
580
            System.exit(0);
581
        }
28921 tejbeer 582
 
31753 tejbeer 583
        if (args.containsOption("hygineAlertForInternalTeam")) {
584
            scheduledTasks.hygineAlertForInternalTeam();
585
            System.exit(0);
586
        }
587
 
32214 jai.hind 588
        if (args.containsOption("checkItelImeiActivationNew")) {
589
            scheduledTasks.checkItelImeiActivationNew(LocalDate.now(), 15);
590
            System.exit(0);
591
        }
31753 tejbeer 592
        if (args.containsOption("once")) {
33274 amit.gupta 593
 
594
            if (args.containsOption("autoClosePurchaseOrders")) {
595
                poScheduler.autoClosePurchaseOrders();
596
            }
31753 tejbeer 597
            if (args.containsOption("cancelOnceAssist")) {
598
                if (args.containsOption("invoiceNumber")) {
599
                    String oneAssistInvoiceNumber = args.getOptionValues("invoiceNumber").get(0);
600
                    runOnceTasks.cancelOnceAssist(oneAssistInvoiceNumber);
601
                }
602
 
35266 ranu 603
 
31753 tejbeer 604
            }
34208 ranu 605
            if (args.containsOption("cancelOnceAssist")) {
606
                if (args.containsOption("MemberShipNumber")) {
607
                    String applicationNo = args.getOptionValues("applicationNo").get(0);
608
                    String membershipId = args.getOptionValues("membershipId").get(0);
609
                    runOnceTasks.cancelOnceAssistByMemberShipNumber(applicationNo, membershipId);
610
                }
611
 
612
            }
33260 amit.gupta 613
            if (args.containsOption("changeFulfillmentWarehouse")) {
614
                if (args.containsOption("orderId") && args.containsOption("whId")) {
35277 amit 615
                    List<Integer> orderIds = Arrays.stream(args.getOptionValues("orderId").get(0).split(","))
616
                            .map(String::trim)
617
                            .map(Integer::parseInt)
618
                            .collect(Collectors.toList());
619
 
35276 amit 620
                    int warehouseId = Integer.parseInt(args.getOptionValues("whId").get(0));
621
                    for (Integer orderId : orderIds) {
622
                        runOnceTasks.changeFulfillmentWarehouse(orderId, warehouseId);
623
                    }
33260 amit.gupta 624
                }
625
                System.exit(0);
626
            }
31753 tejbeer 627
            if (args.containsOption("1")) {
628
                if (args.containsOption("test")) {
31618 amit.gupta 629
                    //scheduledTasks.sendPartnerInvestmentDetails(args.getOptionValues("email"));
31753 tejbeer 630
                    System.out.println("Calling test method");
36003 aman 631
                    try {
632
                        scheduledTasks.test();
633
                    } catch (Throwable e) {
634
                        throw new RuntimeException(e);
635
                    }
35165 amit 636
                    System.exit(0);
32083 tejbeer 637
 
638
                    if (args.containsOption("migrateVendorItemPricing")) {
639
                        scheduledTasks.migrateVendorItemPricing();
640
                        System.exit(0);
641
                    }
642
 
643
                    if (args.containsOption("approveVendorCatalogPricing")) {
644
                        scheduledTasks.approveVendorCatalogPricing();
645
                        System.exit(0);
646
                    }
32080 tejbeer 647
                } else if (args.containsOption("test1")) {
32008 amit.gupta 648
                    scheduledTasks.test1();
34845 ranu 649
                } else if (args.containsOption("scheduleTaskTest1")) {
650
 
651
                    scheduledTasksTest.test();
652
                }else if (args.containsOption("generateBiReport")) {
653
                    scheduledTasksTest.generateBiReport();
34945 ranu 654
                }else if (args.containsOption("abmSendertest")) {
34946 ranu 655
                    runOnceTasks.setAbmReportSender();
35788 vikas 656
                }else if (args.containsOption("syncProductsToShopify")) {
36058 ranu 657
                    shopifyProductSyncService.syncByWarehouse(ProfitMandiConstants.WAREHOUSE_NAME_MAP.get("UP-WEST/NOIDA"));
34321 ranu 658
                }
34860 ranu 659
                else if (args.containsOption("fetchPartnerDisburseMentTask")) {
660
                    if(args.containsOption("fetchDisbursements")){
661
                        fetchPartnersDisbursementTask.fetchDisbursementsTest();
662
                    }
663
                    else if(args.containsOption("creditAmountTest")){
664
                        fetchPartnersDisbursementTask.creditAmountTest();
665
                    }
666
                    else if(args.containsOption("createContactsAndFundsForFranchiseeTest")){
667
                        fetchPartnersDisbursementTask.createContactsAndFundsForFranchiseeTest();
668
                    }
669
                    else if(args.containsOption("rabbitTransactionProducertest")){
670
                        fetchPartnersDisbursementTask.rabbitTransactionProducertest();
671
                    }
34879 ranu 672
                    else if(args.containsOption("sendingDisbursementMail")){
673
                        fetchPartnersDisbursementTask.sendingDisbursementMail();
674
                    }
34860 ranu 675
                    else {
676
                        fetchPartnersDisbursementTask.test();
677
                    }
678
                }
34845 ranu 679
                else if (args.containsOption("testNew1")) {
34307 ranu 680
                    List<String> loanIdArgs = args.getOptionValues("loanIds");  // ["34833,36536,37151"]
681
                    List<Integer> loanIds = new ArrayList<>();
682
 
683
                    if (loanIdArgs != null && !loanIdArgs.isEmpty()) {
684
                        String csv = loanIdArgs.get(0);
685
                        loanIds = Arrays.stream(csv.split(","))
686
                                .map(String::trim)
687
                                .map(Integer::parseInt)
688
                                .collect(Collectors.toList());
689
                    }
34321 ranu 690
                    scheduledTasksTest.findLoanTransactionMapingAccordingLoan(loanIds);
34309 ranu 691
                } else if (args.containsOption("testNew2")) {
34308 ranu 692
                    if (args.containsOption("createLoan")) {
693
                        // Extract each parameter
694
                        int transactionId = 0;
695
                        double invoiceAmount = 0.0;
696
                        String invoiceNumber = "";
697
 
698
                        if (args.containsOption("transactionId")) {
699
                            transactionId = Integer.parseInt(args.getOptionValues("transactionId").get(0));
700
                        }
701
 
702
                        if (args.containsOption("invoiceAmount")) {
703
                            invoiceAmount = Double.parseDouble(args.getOptionValues("invoiceAmount").get(0));
704
                        }
705
 
706
                        if (args.containsOption("invoiceNumber")) {
707
                            invoiceNumber = args.getOptionValues("invoiceNumber").get(0);
708
                        }
709
 
710
                        // Call your method
711
                        scheduledTasksTest.createLoanForBillingByTransactionIdAndInvoiceNumber(transactionId, invoiceAmount, invoiceNumber);
712
                    }
713
 
32482 amit.gupta 714
                } else {
31753 tejbeer 715
                    System.out.println("Called sendPartnerInvestmentDetails");
716
                    scheduledTasks.sendPartnerInvestmentDetails();
717
                }
718
                System.exit(0);
719
            }
720
            if (args.containsOption("2")) {
721
                if (args.containsOption("test")) {
722
                    String[] emails = new String[args.getOptionValues("email").size()];
723
                    scheduledTasks.sendAgeingReport(args.getOptionValues("email").toArray(emails));
724
                } else {
725
                    scheduledTasks.sendAgeingReport();
726
                }
727
                System.exit(0);
728
            }
33457 amit.gupta 729
 
31753 tejbeer 730
            if (args.containsOption("cancelOrder")) {
731
                List<String> invoiceNumbers = args.getOptionValues("invoiceNumber");
732
                runOnceTasks.cancelOrder(invoiceNumbers);
733
            }
734
            if (args.containsOption("migratePurchase")) {
735
                runOnceTasks.migratePurchase();
736
            }
737
            if (args.containsOption("migratepd")) {
738
                scheduledTasks.moveImeisToPriceDropImeis();
739
            }
740
            if (args.containsOption("walletmismatch")) {
741
                scheduledTasks.walletmismatch();
742
            }
743
            if (args.containsOption("schemewalletmismatch")) {
744
                scheduledTasks.schemewalletmismatch();
745
            }
746
            if (args.containsOption("gst")) {
747
                scheduledTasks.gst();
748
            }
749
            if (args.containsOption("mailDashboardScreenshots")) {
750
                runOnceTasks.mailDashboardScreenshots();
751
            }
752
            if (args.containsOption("notifyLead")) {
753
                scheduledTasks.notifyLead();
754
                scheduledTasks.notifyVisits();
755
            }
756
            if (args.containsOption("fixgrn")) {
757
                runOnceTasks.fixGrn();
758
            }
759
            if (args.containsOption("pbfix")) {
760
                runOnceTasks.pbfix();
761
            }
762
            if (args.containsOption("mongom")) {
763
                runOnceTasks.mongom();
764
            }
765
            if (args.containsOption("processPd")) {
766
                int priceDropId = Integer.parseInt(args.getOptionValues("processPd").get(0));
767
                runOnceTasks.processPd(priceDropId);
768
            }
769
            if (args.containsOption("samsung")) {
770
                if (args.containsOption("ym")) {
771
                    int ym = Integer.parseInt(args.getOptionValues("ym").get(0));
772
                    runOnceTasks.fetchImeiActivation(ym);
773
                }
774
                runOnceTasks.fetchImeiActivation(0);
775
            }
776
            if (args.containsOption("fixdupimeigrn")) {
777
                runOnceTasks.fixDupGrns();
778
            }
779
            if (args.containsOption("cancel")) {
36053 amit 780
                boolean recreatePri = args.containsOption("recreatePri");
781
                runOnceTasks.cancelDn(args.getOptionValues("dn").get(0), recreatePri);
31753 tejbeer 782
            }
783
            if (args.containsOption("fixScheme")) {
784
                runOnceTasks.fixScheme();
785
            }
786
            if (args.containsOption("syncLeads")) {
787
                leadSyncRunner.syncLeads();
788
            }
789
            if (args.containsOption("testCs")) {
790
                int category = Integer.parseInt(args.getOptionValues("category").get(0));
791
                EscalationType escalationType = EscalationType.valueOf(args.getOptionValues("escalation").get(0));
792
                int fofoId = Integer.parseInt(args.getOptionValues("fofoid").get(0));
793
                csService.getAuthUserId(category, escalationType, fofoId);
794
            }
795
            if (args.containsOption("duporder")) {
796
                runOnceTasks.removeDuplicateOrders();
797
            }
798
            if (args.containsOption("createDummyInvoices")) {
799
                runOnceTasks.createDummyInvoices();
800
            }
28921 tejbeer 801
 
31753 tejbeer 802
            if (args.containsOption("createGeofence")) {
803
                runOnceTasks.createGeofence();
804
            }
805
            if (args.containsOption("getAllGeofences")) {
806
                runOnceTasks.getAllGeofences();
807
            }
808
            if (args.containsOption("payMonthlyInvestment")) {
809
                investmentRelatedTasks.payMonthlyInvestment();
810
            }
811
            if (args.containsOption("evaluateActualInvestmentPayout")) {
812
                investmentRelatedTasks.evaluateActualInvestmentPayout();
813
            }
814
            if (args.containsOption("deleteGeofences")) {
815
                List<String> geofenceIds = args.getOptionValues("geofenceId");
816
                runOnceTasks.deleteGeofences(geofenceIds);
817
            }
818
            if (args.containsOption("createOffers")) {
819
                if (args.containsOption("fileName")) {
820
                    String fileName = args.getOptionValues("fileName").get(0);
821
                    FileInputStream stream = new FileInputStream(fileName);
822
                    runOnceTasks.createOffers(stream);
823
                }
824
            }
825
            if (args.containsOption("schemeout")) {
826
                if (args.containsOption("invoices")) {
827
                    String invoicesString = args.getOptionValues("invoices").get(0);
828
                    List<String> invoices = Arrays.asList(invoicesString.split(","));
829
                    scheduledTasks.processSchemeOut(invoices);
830
                }
831
            }
832
            if (args.containsOption("schemein")) {
833
                if (args.containsOption("invoices")) {
834
                    String invoicesString = args.getOptionValues("invoices").get(0);
835
                    List<String> invoices = Arrays.asList(invoicesString.split(","));
836
                    scheduledTasks.processSchemeIn(invoices);
837
                }
838
            }
28921 tejbeer 839
 
31753 tejbeer 840
            if (args.containsOption("fixScans")) {
841
                runOnceTasks.fixScans();
842
            }
843
            if (args.containsOption("fixPrebookingOrderGrn")) {
844
                runOnceTasks.genericCreateCurrentInventorySnapshot();
845
            }
846
            if (args.containsOption("fixOurSerialized")) {
847
                if (args.containsOption("orderIds")) {
848
                    String orderIdsString = args.getOptionValues("orderIds").get(0);
849
                    List<Integer> orderIds = Arrays.asList(orderIdsString.split(",")).stream().map(x -> Integer.parseInt(x)).collect(Collectors.toList());
850
                    // runOnceTasks.fixOurSerialized(orderIds);
851
                }
852
            }
29776 tejbeer 853
 
31753 tejbeer 854
            if (args.containsOption("reverseMaa")) {
855
                runOnceTasks.reverseMaa();
856
            }
29776 tejbeer 857
 
31753 tejbeer 858
            if (args.containsOption("fixOffer")) {
859
                runOnceTasks.fixOffer();
860
            }
29794 tejbeer 861
 
31753 tejbeer 862
            if (args.containsOption("opporeno")) {
863
                runOnceTasks.opporeno();
864
            }
30309 amit.gupta 865
 
31753 tejbeer 866
            if (args.containsOption("fixorders")) {
867
                runOnceTasks.fixOrders();
868
            }
869
            if (args.containsOption("fixreservations")) {
870
                runOnceTasks.fixReservations();
871
            }
872
            if (args.containsOption("addinvestment")) {
873
                runOnceTasks.addInvestment();
874
            }
875
            if (args.containsOption("brandregion")) {
876
                runOnceTasks.brandRegion();
877
            }
878
            if (args.containsOption("rollOutUpgardedMargins")) {
35520 amit 879
                scheduledTasks.rollOutUpgardedMargins(Arrays.asList(175140172, 175140189));
31753 tejbeer 880
            }
34029 ranu 881
            if (args.containsOption("pushRbmTargets")) {
882
                scheduledTasks.persistRbmTodayTargets();
883
            }
31753 tejbeer 884
            if (args.containsOption("rollOutUpgardedMarginsNextMonth")) {
35524 amit 885
                System.out.println("In rollOutUpgardedMarginsNextMonth");
35532 amit 886
                scheduledTasks.rollOutUpgardedMarginsNextMonth(Arrays.asList(175140172, 175140189, 175138897));
31753 tejbeer 887
            }
888
            if (args.containsOption("checkCancellationMargin")) {
889
                scheduledTasks.checkCancellationMargin();
890
            }
891
            if (args.containsOption("reviewUncontactablePartner")) {
892
                scheduledTasks.reviewUncontactablePartner();
893
            }
33078 ranu 894
            if (args.containsOption("reviewNonSdBuyingBrand")) {
895
                scheduledTasks.reviewNonSdBuyingBrand();
896
            }
31753 tejbeer 897
            if (args.containsOption("sendWelcomeEmail")) {
898
                onBoardingRelatedSchelduleTask.sendWelcomeEmail();
899
            }
29814 tejbeer 900
 
31753 tejbeer 901
            if (args.containsOption("partnerOnboardingLegalMigration")) {
902
                onBoardingRelatedSchelduleTask.partnerOnboardingLegalMigration();
903
            }
31031 amit.gupta 904
 
33526 amit.gupta 905
            if(args.containsOption("moveOrders")) {
906
                runOnceTasks.moveOrders();
907
            }
908
 
31753 tejbeer 909
            if (args.containsOption("addKycLegalMigration")) {
910
                onBoardingRelatedSchelduleTask.addKycLegalMigration();
911
            }
29776 tejbeer 912
 
913
 
31753 tejbeer 914
            if (args.containsOption("pushDataToSolr")) {
915
                listing.pushDataToSolr();
916
            }
30120 amit.gupta 917
 
31753 tejbeer 918
            if (args.containsOption("testGstPro")) {
919
                System.out.println("TestGstProc called");
920
                try {
921
                    runOnceTasks.updateIrnsToInvoices();
922
                } catch (Exception e) {
923
                    e.printStackTrace();
924
                }
925
            }
29308 tejbeer 926
 
31753 tejbeer 927
            if (args.containsOption("reverseSchemeCancelInvoice")) {
928
                if (args.containsOption("invoice")) {
929
                    String invoice = args.getOptionValues("invoice").get(0);
930
                    runOnceTasks.reverseSchemes(invoice);
931
                }
932
            }
29863 tejbeer 933
 
31753 tejbeer 934
            if (args.containsOption("reverseInvalidActivation")) {
935
                if (args.containsOption("inventoryids")) {
936
                    String inventoryItemIdsString = args.getOptionValues("inventoryids").get(0);
937
                    List<Integer> inventoryItemIds = new ArrayList<>();
938
                    for (String inventoryItemIdString : inventoryItemIdsString.split(",")) {
939
                        int inventoryItemId = Integer.parseInt(inventoryItemIdString.trim());
940
                        inventoryItemIds.add(inventoryItemId);
941
                    }
942
                    runOnceTasks.reverseInvalidActivation(inventoryItemIds);
943
                }
944
            }
29863 tejbeer 945
 
31753 tejbeer 946
            if (args.containsOption("runme")) {
947
                runOnceTasks.runMe();
948
            }
949
            if (args.containsOption("" + "")) {
950
                upgradeOfferService.authenticateUser();
951
            }
952
            if (args.containsOption("mandiiUser")) {
953
                runOnceTasks.mandiiUser(args.getOptionValues("firstName").get(0), args.getOptionValues("lastName").get(0), args.getOptionValues("pan").get(0), args.getOptionValues("dob").get(0), args.getOptionValues("aadhaar").get(0), args.getOptionValues("gender").get(0), args.getOptionValues("father").get(0));
954
            }
30335 amit.gupta 955
 
31753 tejbeer 956
            if (args.containsOption("mandiiUsers")) {
957
                if (args.containsOption("pan")) {
958
                    runOnceTasks.mandiiUsers(args.getOptionValues("pan").get(0));
959
                } else {
960
                    runOnceTasks.mandiiUsers();
961
                }
962
            }
30576 amit.gupta 963
 
31753 tejbeer 964
            if (args.containsOption("checkOppoImeiStatus")) {
965
                try {
966
                    standAlone.checkOppoImeiStatus();
967
                } catch (Exception e) {
968
                    e.printStackTrace();
969
                }
970
            }
30616 amit.gupta 971
 
34417 amit.gupta 972
            if (args.containsOption("checkRealmeImeiStatus")) {
973
                try {
974
                    standAlone.checkRealmeImeiStatus();
975
                } catch (Exception e) {
976
                    e.printStackTrace();
977
                }
978
            }
979
 
31753 tejbeer 980
            /*
981
             * if (args.containsOption("checkRealmeImeiStatus")) { try {
982
             * standAlone.checkRealmeImeiStatus(); } catch (Exception e) {
983
             * e.printStackTrace(); } }
984
             */
30616 amit.gupta 985
 
31753 tejbeer 986
            if (args.containsOption("amazonPurchase")) {
987
                try {
988
                    runOnceTasks.amazonPurchase();
989
                } catch (Exception e) {
990
                    e.printStackTrace();
991
                }
992
            }
30641 amit.gupta 993
 
31753 tejbeer 994
            if (args.containsOption("getCaptchaCode")) {
995
                try {
996
                    captchaService.getCaptchaCode("/home/amit/Desktop/generatingCodes.jpg");
997
                } catch (Exception e) {
998
                    e.printStackTrace();
999
                }
1000
            }
30641 amit.gupta 1001
 
31753 tejbeer 1002
            if (args.containsOption("testIrnLive")) {
1003
                try {
1004
                    runOnceTasks.testIrnLive(args.getOptionValues("invoiceNumber").get(0));
1005
                } catch (Exception e) {
1006
                    e.printStackTrace();
1007
                }
1008
            }
30659 amit.gupta 1009
 
31753 tejbeer 1010
            if (args.containsOption("createoffercriteria")) {
1011
                try {
1012
                    runOnceTasks.createOfferCriteria();
1013
                } catch (Exception e) {
1014
                    e.printStackTrace();
1015
                }
1016
            }
30659 amit.gupta 1017
 
31753 tejbeer 1018
            if (args.containsOption("fix-price-drops")) {
1019
                runOnceTasks.fixPriceDrop();
1020
            }
29035 tejbeer 1021
 
31753 tejbeer 1022
            if (args.containsOption("processSchemeByIds")) {
1023
                List<String> schemeIds = Arrays.asList(args.getOptionValues("ids").get(0).split(","));
1024
                List<Integer> schemeIdsInt = schemeIds.stream().map(x -> Integer.parseInt(x)).collect(Collectors.toList());
1025
                runOnceTasks.processSchemeByIds(schemeIdsInt);
1026
            }
30859 tejbeer 1027
 
31753 tejbeer 1028
            if (args.containsOption("updateSaholicCISTable")) {
1029
                runOnceTasks.updateSaholicCISTable();
1030
            }
30859 tejbeer 1031
 
31753 tejbeer 1032
            if (args.containsOption("mapbag")) {
1033
                runOnceTasks.mapBag();
1034
            }
30859 tejbeer 1035
 
34579 vikas.jang 1036
            if (args.containsOption("todayBidPO")) {
34443 vikas.jang 1037
                runOnceTasks.processBids(ProfitMandiConstants.BID_CRON_ENUM.TODAY);
1038
            }
1039
 
34579 vikas.jang 1040
            if (args.containsOption("yesterdayBidPO")) {
1041
                runOnceTasks.processBids(ProfitMandiConstants.BID_CRON_ENUM.YESTERDAY);
1042
            }
1043
 
34547 vikas.jang 1044
            if (args.containsOption("biddingConsolidatedMessage")) {
1045
                runOnceTasks.consolidatedBiddingMessage();
1046
            }
1047
 
1048
            if (args.containsOption("sendMailWhatsAppAfterLoanDueDate")) {
1049
                scheduledTasks.sendMailWhatsAppAfterLoanDueDate();
1050
            }
1051
 
34836 vikas 1052
            if (args.containsOption("yesterdayTrackingReport")) {
1053
                runOnceTasks.yesterdayTrackingReport();
34770 vikas.jang 1054
            }
1055
 
31753 tejbeer 1056
            System.exit(0);
1057
        }
30859 tejbeer 1058
 
31753 tejbeer 1059
        if (args.containsOption("calculateInterestAccured")) {
30929 tejbeer 1060
 
31753 tejbeer 1061
            scheduledTasks.calculateInterestAccured();
1062
            System.exit(0);
1063
        }
30929 tejbeer 1064
 
31753 tejbeer 1065
        if (args.containsOption("loanSettlement")) {
30890 amit.gupta 1066
 
31753 tejbeer 1067
            scheduledTasks.loanSettlement();
1068
            System.exit(0);
1069
        }
30896 amit.gupta 1070
 
31753 tejbeer 1071
        if (args.containsOption("dailyLoanAlert")) {
30936 tejbeer 1072
 
31753 tejbeer 1073
            scheduledTasks.dailyLoanAlert();
1074
            System.exit(0);
1075
        }
30982 tejbeer 1076
 
31753 tejbeer 1077
        if (args.containsOption("updatePartnerLimit")) {
1078
            scheduledTasks.updatePartnerLimit();
1079
            System.exit(0);
1080
        }
30982 tejbeer 1081
 
31753 tejbeer 1082
        if (args.containsOption("notifyDefaultLoans")) {
1083
            scheduledTasks.notifyDefaultLoans();
1084
            System.exit(0);
1085
        }
31446 amit.gupta 1086
 
31753 tejbeer 1087
        if (args.containsOption("fixinsurance")) {
1088
            runOnceTasks.addMissingWalletDebitsForInsurance();
1089
            System.exit(0);
1090
        }
31604 tejbeer 1091
 
31753 tejbeer 1092
        if (args.containsOption("processActivatedImeisForSchemes")) {
1093
            scheduledTasks.processActivatedImeisForSchemes();
1094
            System.exit(0);
1095
        }
31604 tejbeer 1096
 
31753 tejbeer 1097
        if (args.containsOption("notifyLoanDueDateCross")) {
1098
            scheduledTasks.notifyLoanDueDateCross();
1099
            System.exit(0);
1100
        }
34275 tejus.loha 1101
        if (args.containsOption("sendTenOrMoreOrderStockReport")) {
1102
            scheduledTasks.send10OrMoreOlderStockReport();
1103
            System.exit(0);
1104
        }
31604 tejbeer 1105
 
31753 tejbeer 1106
        if (args.containsOption("alertForDueDate")) {
1107
            scheduledTasks.alertForDueDate();
1108
            System.exit(0);
1109
        }
31648 tejbeer 1110
 
31753 tejbeer 1111
        if (args.containsOption("userMobileNumberOptIn")) {
1112
            scheduledTasks.userMobileNumberOptIn();
1113
            System.exit(0);
1114
        }
1115
 
1116
        if (args.containsOption("fetchParnterStats")) {
1117
            scheduledTasks.fetchParnterStats();
1118
            System.exit(0);
1119
        }
1120
 
1121
        if (args.containsOption("authUserMobileNumberOptIn")) {
1122
            scheduledTasks.authUserMobileNumberOptIn();
1123
            System.exit(0);
1124
        }
1125
        if (args.containsOption("morning")) {
1126
            if (args.containsOption("0")) {
1127
                scheduledTasks.sendPartnerInvestmentDetails();
1128
            }
1129
            if (args.containsOption("1")) {
1130
                scheduledTasks.sendIndentTertiary();
1131
            }
1132
            // 0
1133
            if (args.containsOption("2")) {
1134
                scheduledTasks.calculateInterestAccured();
1135
            }
1136
            System.out.println("scheduledTasks.calculateInterestAccured()");
1137
            // 0
1138
            if (args.containsOption("3")) {
32831 amit.gupta 1139
                orderTrackingService.markDelhiveryOrderDelivered();
31753 tejbeer 1140
            }
1141
            System.out.println("scheduledTasks.markDelhiveryOrderDelivered()");
1142
            // 1
1143
            if (args.containsOption("4")) {
1144
                scheduledTasks.processActivatedImeisForSchemes();
1145
            }
1146
            System.out.println("scheduledTasks.processActivatedImeisForSchemes()");
1147
            // 2
1148
            if (args.containsOption("5")) {
1149
                scheduledTasks.processActivation();
1150
            }
1151
            System.out.println("scheduledTasks.processActivation()");
1152
            // 4
1153
            if (args.containsOption("6")) {
1154
                scheduledTasks.processPriceDrop();
1155
            }
1156
            System.out.println("scheduledTasks.processPriceDrop()");
1157
            // 5
1158
            if (args.containsOption("7")) {
1159
                scheduledTasks.loanSettlement();
1160
            }
1161
            System.out.println("scheduledTasks.loanSettlement()");
1162
            // 8
1163
            if (args.containsOption("8")) {
1164
                scheduledTasks.reviewUncontactablePartner();
1165
            }
1166
            // 9
33859 tejus.loha 1167
//            if (args.containsOption("9")) {
1168
//                onBoardingRelatedSchelduleTask.storeTimelinePromoterPending();
1169
//            }
1170
//            // 9
1171
//            if (args.containsOption("10")) {
1172
//                onBoardingRelatedSchelduleTask.advancePaymentPendinglegalAlert();
1173
//            }
31753 tejbeer 1174
            // sendPartnerInvestment
1175
            if (args.containsOption("11")) {
1176
                scheduledTasks.sendPartnerInvestmentDetails();
1177
            }
1178
            if (args.containsOption("sendCreditNote")) {
35520 amit 1179
                System.out.println("Calling sendCreditNote");
34029 ranu 1180
                YearMonth yearMonth = YearMonth.now().minusMonths(1);
31753 tejbeer 1181
                /*
1182
                 * if
1183
                 * (localDateTime.toLocalDate().equals(yearMonth.atEndOfMonth().getDayOfMonth())
1184
                 * && Arrays.asList(20,21,22,23).contains(localDateTime.getHour())) {
1185
                 * scheduledTasks.sendCreditNote(yearMonth); }
1186
                 */
1187
                scheduledTasks.sendCreditNote(yearMonth);
1188
            }
36197 amit 1189
            if (args.containsOption("recoverCreditNote")) {
1190
                System.out.println("Calling recoverCreditNote");
1191
                YearMonth yearMonth = YearMonth.of(2026, 3); // March 2026 margins
1192
                String logFilePath = "/var/log/services/cron.log";
1193
                scheduledTasks.recoverCreditNote(yearMonth, logFilePath);
1194
            }
1195
            if (args.containsOption("resendCNReport")) {
1196
                System.out.println("Calling resendCNReport");
1197
                YearMonth yearMonth = YearMonth.now().minusMonths(1);
1198
                scheduledTasks.resendCNReport(yearMonth);
1199
            }
36220 amit 1200
            if (args.containsOption("genDNs")) {
1201
                System.out.println("Calling genDNs");
36254 amit 1202
                try {
1203
                    String ymStr = args.getOptionValues("genDNs").isEmpty() ? null : args.getOptionValues("genDNs").get(0);
1204
                    YearMonth yearMonth = ymStr != null ? YearMonth.parse(ymStr) : YearMonth.now().minusMonths(1);
1205
                    System.out.println("genDNs for " + yearMonth);
1206
                    scheduledTasks.genDNs(yearMonth);
1207
                    System.out.println("genDNs completed successfully");
1208
                } catch (Exception e) {
1209
                    System.err.println("genDNs FAILED: " + e.getMessage());
1210
                    e.printStackTrace(System.err);
1211
                }
36220 amit 1212
            }
31753 tejbeer 1213
            System.exit(0);
1214
        }
1215
    }
24848 amit.gupta 1216
}