Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
26010 amit.gupta 1
<!DOCTYPE html>
2
<html lang="en">
28451 tejbeer 3
<head>
30017 amit.gupta 4
    <meta charset="utf-8">
5
    <meta name="viewport"
6
          content="width=device-width, initial-scale=1, maximum-scale=1">
36080 aman 7
    <meta name="description" content="Smart Dukaan Partner Dashboard">
30017 amit.gupta 8
    <meta name="author" content="smartdukaan">
33061 ranu 9
    <meta name="google-signin-client_id"
33063 ranu 10
          content="$googleApiKey">
31786 tejbeer 11
    <meta name="referrer" content="no-referrer">
30017 amit.gupta 12
    <link rel="shortcut icon" href="assets/images/icons/favicon.png">
26010 amit.gupta 13
 
36080 aman 14
    <title>Smart Dukaan - Partner Dashboard</title>
26010 amit.gupta 15
 
36566 amit 16
    <!-- vendor css -->
17
    <link href="resources/css/elegant-icons-style.css" rel="stylesheet">
18
    <link href="resources/css/font-awesome.min.css" rel="stylesheet">
19
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.7.0/css/all.css"
20
          integrity="sha384-lZN37f5QGtY3VHgisS14W3ExzMWZxybE1SJSEsQp9S+oqd12jhcu+A56Ebc1zFSJ"
21
          crossorigin="anonymous">
22
    <link href="resources/css/bootstrap.css" rel="stylesheet">
23
    <link href="resources/css/bootstrap-theme.min.css" rel="stylesheet">
24
    <link href="resources/css/jquery-ui-1.10.4.min.css" rel="stylesheet">
25
    <link href="resources/css/owl.carousel.css" rel="stylesheet">
30017 amit.gupta 26
    <link href="resources/css/jquery-jvectormap-1.2.2.css" rel="stylesheet">
36566 amit 27
    <link href="resources/css/datatables.bootstrap.min.css" rel="stylesheet">
28
    <link href="resources/css/bootstrap-multiselect.css" rel="stylesheet">
29
    <link href="resources/css/bootstrap-duallistbox.css" rel="stylesheet">
30
    <link href="resources/css/bootstrap-tagsinput.css" rel="stylesheet">
31
    <link href="resources/js/daterangepicker/daterangepicker.css" rel="stylesheet">
32
    <link href="resources/js/chosen.min.css" rel="stylesheet">
33
    <link href="resources/css/multi.min.css?v=${cssVersion}" rel="stylesheet">
34
    <link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet">
35
 
36
    <!-- app css -->
30017 amit.gupta 37
    <link href="resources/css/widgets.css" rel="stylesheet">
38
    <link href="resources/css/style.css?v=${cssVersion}" rel="stylesheet">
39
    <link href="resources/css/card.css?v=${cssVersion}" rel="stylesheet">
36566 amit 40
    <link href="resources/css/style-responsive.css?v=${cssVersion}" rel="stylesheet">
41
    <script src="https://apis.google.com/js/platform.js?onload=onLoad" async defer></script>
33061 ranu 42
    <script>
43
        function signOut() {
44
            var auth2 = gapi.auth2.getAuthInstance();
45
            auth2.signOut().then(function () {
46
                window.location.href = "${rc.contextPath}/logout";
47
                console.log('User signed out.');
28451 tejbeer 48
 
33061 ranu 49
            });
50
        }
51
 
52
        function onLoad() {
53
            gapi.load('auth2', function () {
54
                gapi.auth2.init();
55
            });
56
        }
57
    </script>
58
 
35396 amit 59
 
30017 amit.gupta 60
    <script type="text/javascript">
36194 vikas 61
        const isRBM = $isRBM;
30017 amit.gupta 62
        isAdmin = true;
36195 vikas 63
        function injectSmartChatScript(email, token) {
36194 vikas 64
            if (document.querySelector('script[src="https://chat.smartdukaan.com/embed.js"]')) {
65
                return;
66
            }
28451 tejbeer 67
 
36194 vikas 68
            const script = document.createElement('script');
69
            script.src = "https://chat.smartdukaan.com/embed.js";
70
            script.setAttribute("data-role", "INTERNAL");
71
            script.setAttribute("data-token", token);
36195 vikas 72
            if (email) script.setAttribute("data-email", email);
36194 vikas 73
            script.async = true;
74
 
75
            document.body.appendChild(script);
76
        }
77
 
78
        document.addEventListener("DOMContentLoaded", () => {
79
            if (isRBM) {
36201 vikas 80
                injectSmartChatScript("$authEmail", "eyJhbGciOiJIUzI1NiJ9.eyJyb2xlSWRzIjpbIjEiLCIyIiwiMyJdLCJpc3MiOiJwcm9maXRtYW5kaSIsImV4cCI6MTc3Nzg5OTk3MywicmV0YWlsZXJJZCI6MTc1MTM5Mjg3LCJpYXQiOjE3NzI3MTU5NzMsInVzZXJJZCI6NDAyMjJ9.aeUDKRtsemF4y1mLdWQBaWUBV2HFxoHARbc2JAZwc3U");
36194 vikas 81
            }
82
        });
83
 
30017 amit.gupta 84
        function getWarehousePartners(warehouseId) {
85
            doGetAjaxRequestHandler(context + "/getWarehousePartners?warehouseId=" + warehouseId,
36566 amit 86
                function (response) { $('#main-content').html(response); });
30017 amit.gupta 87
        }
26418 tejbeer 88
 
30017 amit.gupta 89
        function getWarehouseBrandStock(warehouseId) {
32177 amit.gupta 90
            doGetAjaxRequestHandler(context + "/getWarehouseWiseBrandStock?warehouseId=" + warehouseId,
36566 amit 91
                function (response) { $('#main-content').html(response); });
30017 amit.gupta 92
        }
27529 tejbeer 93
 
30017 amit.gupta 94
        function getWarehouseWiseBrandPartnerSale(brand) {
95
            doGetAjaxRequestHandler(context + "/getWarehouseWiseBrandPartnerSale?brand=" + brand,
36566 amit 96
                function (response) { $('#main-content').html(response); });
30017 amit.gupta 97
        }
98
 
99
        function getWarehouseWiseBrandActivatedModel(brand) {
100
            doGetAjaxRequestHandler(context + "/getActivatedModelWarehouseWise?brand=" + brand,
36566 amit 101
                function (response) { $('#main-content').html(response); });
30017 amit.gupta 102
        }
103
 
104
        function getWarehouseWiseAccessoriesBrandPartnerSale(brand) {
105
            doGetAjaxRequestHandler(context + "/getWarehouseWiseAccesoriesBrandPartnerSale?brand=" + brand,
36566 amit 106
                function (response) { $('#main-content').html(response); });
30017 amit.gupta 107
        }
108
 
109
        function getWarehouseWiseData() {
110
            doGetAjaxRequestHandler(context + "/getWarehouseWiseData",
36195 vikas 111
                function (response) {
36566 amit 112
                    $('#main-content').html(response);
36195 vikas 113
                    if (response == 'true') {
114
                        window.location.href = $('.dashboardload').attr('href');
115
                    }
116
                });
30017 amit.gupta 117
        }
118
 
119
        function getPartnersStat() {
120
            doGetAjaxRequestHandler(context + "/getPartnersStatData",
36566 amit 121
                function (response) {
122
                    if (response == 'true') {
123
                        window.location.href = $('.dashboardload').attr('href');
124
                    }
125
                });
30017 amit.gupta 126
        }
127
    </script>
128
 
129
 
28451 tejbeer 130
</head>
26010 amit.gupta 131
 
36566 amit 132
<body>
32798 shampa 133
<div class="loading"><img src="resources/images/icons/loading.gif"></div>
30017 amit.gupta 134
<!-- container section start -->
135
<section id="container">
28451 tejbeer 136
 
137
 
30017 amit.gupta 138
    <header class="header dark-bg">
139
        <div class="toggle-nav">
140
            <div class="icon-reorder tooltips"
141
                 data-original-title="Toggle Navigation" data-placement="bottom">
142
                <i class="icon_menu"></i>
143
            </div>
144
        </div>
145
        <div class="top-nav notification-row">
32886 shampa 146
            <!-- notification dropdown start-->
30017 amit.gupta 147
            <ul class="nav pull-right top-menu">
148
                <!-- user login dropdown start-->
149
                <li class="dropdown"><a data-toggle="dropdown"
150
                                        class="dropdown-toggle" href="#"> <span class="profile-ava">
28451 tejbeer 151
								<img class="avatar-custom" id="photo" alt="" src="">
152
						</span> <span class="username" id="fofo_name"></span> <b class="caret"></b>
30017 amit.gupta 153
                </a>
154
                    <ul class="dropdown-menu extended logout">
155
                        <li class="eborder-top"><a class="change-auth-user-password"
36566 amit 156
                                                   href="javascript:void(0);">Change Password</a></li>
157
                        <li><a href="${rc.contextPath}/mobileapp"><i class="icon_key_alt"></i>SD Mobile App</a></li>
37006 ranu 158
                        <li><a href="${rc.contextPath}/mobileapp?appType=react"><i class="icon_key_alt"></i>SD Mobile
159
                            App V2</a></li>
33061 ranu 160
                        <li><a href="javascript:void(0);" onclick="signOut();"><i
36566 amit 161
                                class="icon_key_alt"></i> Log Out</a></li>
30017 amit.gupta 162
                    </ul>
163
                </li>
164
                <!-- user login dropdown end -->
165
            </ul>
166
            <!-- notificatoin dropdown end-->
167
        </div>
168
    </header>
169
    <!--header end-->
28451 tejbeer 170
 
33731 tejus.loha 171
    <!--sidebar start this-->
30017 amit.gupta 172
    <aside>
173
        <div id="sidebar" class="nav-collapse ">
174
            <!-- sidebar menu start-->
36681 ranu 175
            <ul class="sidebar-menu" style="padding-bottom:80px;">
36597 amit 176
                <li>
177
                    <a href="${rc.contextPath}/dashboard">
178
                        <i class="fa fa-home"></i>
179
                        <span>HOME</span>
180
                    </a>
181
                </li>
30017 amit.gupta 182
                #foreach($menuItem in $menu)
183
                    <li class="sub-menu"><a href="javascript:;" class=""> <i
36566 amit 184
                            class="#if($menuItem.getIconClass() && $menuItem.getIconClass() != '')$menuItem.getIconClass()#else icon_document_alt#end"></i> <span>$menuItem.getDisplayText()</span>
30017 amit.gupta 185
                        <span class="menu-arrow arrow_carrot-right"></span>
186
                    </a>
187
                        <ul class="sub">
188
                            #foreach($subMenu in $menuItem.getSubMenus())
189
                                <li><a class="$subMenu.getActionClass()"
190
                                       href="javascript:void(0);">$subMenu.getDisplayText()</a></li> #end
191
                        </ul>
192
                    </li> #end
37331 amit 193
                ## Offer Circular Review: visibility is per-email, which auth.menu
194
                ## cannot express (it is role-driven), so this entry is gated here.
195
                ## The controller enforces the same allowlist server-side.
196
                #if($loginEmail && ($loginEmail == "tarun.verma@smartdukaan.com" || $loginEmail == "amit.gupta@smartdukaan.com" || $loginEmail == "alok.divedi@smartdukaan.com"))
197
                    <li class="sub-menu">
198
                        <a href="javascript:;"><i class="fa fa-tags"></i> <span>OFFER CIRCULAR</span>
199
                            <span class="menu-arrow arrow_carrot-right"></span>
200
                        </a>
201
                        <ul class="sub">
202
                            <li><a class="offer-circular-review" href="javascript:void(0);">Circular Review</a></li>
203
                        </ul>
204
                    </li>
205
                #end
30017 amit.gupta 206
            </ul>
207
            <!-- sidebar menu end-->
208
        </div>
209
    </aside>
210
    <!--sidebar end-->
26010 amit.gupta 211
 
30017 amit.gupta 212
    <!--main content start-->
213
    <section id="main-content">
214
        <section class="wrapper">
215
            <!--overview start-->
216
            <div class="row">
217
                <div class="col-lg-12">
218
                    <h3 class="page-header">
32771 raveendra. 219
                        <i class="fa fa-laptop"></i>
220
                        #springMessage("app.title")
30017 amit.gupta 221
                    </h3>
222
                    <ol class="breadcrumb">
36566 amit 223
                        <li><i class="fa fa-home"></i><a
33087 amit.gupta 224
                                href="${rc.contextPath}/dashboard">#springMessage("home.home")</a></li>
30017 amit.gupta 225
                        <li><i class="fa fa-laptop"></i>Dashboard</li>
226
                    </ol>
227
                </div>
228
            </div>
229
            <!-- overview end -->
28451 tejbeer 230
 
30017 amit.gupta 231
            #if($warehousePartnerDetailMap)
232
                <div class="row">
28451 tejbeer 233
 
30017 amit.gupta 234
                    <div class="col-lg-6">
28451 tejbeer 235
 
35560 ranu 236
                        <div class="row">
237
                            <div class="col-lg-7">
36566 amit 238
                                <h3 class="section-title mb-lg">
35560 ranu 239
                                    <strong>Partner Wise Report</strong>
240
                                </h3>
241
                            </div>
242
                            <div class="col-lg-5">
243
                                <span style="margin-right: 10px">Last Fetch :-  $rctPartneStat.getLastCreatedTimestamp().format($dateTimeFormatter)</span>
244
                            </div>
30017 amit.gupta 245
                        </div>
35560 ranu 246
 
30017 amit.gupta 247
                        <table class="table table-striped table-advance table-hover">
248
                            <tbody>
249
                            <tr>
250
                                <th>W/H Location</th>
251
                                <th>Partners</th>
252
                                <th>LMS</th>
253
                                <th>LMTD</th>
254
                                <th>MTD</th>
255
                                <th>Today Tertiary</th>
256
                                <th>Tickets</th>
257
                            </tr>
258
                                #foreach($name in $warehousePartnerDetailMap.keySet())
259
                                <tr onclick="getWarehousePartners($name)">
260
                                    <td>$warehouseMap.get($name)</td>
261
                                    <td>$warehousePartnerDetailMap.get($name).getCount()</td>
262
                                    <td class="currency">$warehousePartnerDetailMap.get($name).getLms()</td>
263
                                    <td class="currency">$warehousePartnerDetailMap.get($name).getLmtd()</td>
264
                                    <td class="currency">$warehousePartnerDetailMap.get($name).getMtd()</td>
265
                                    <td class="currency">$warehousePartnerDetailMap.get($name).getTodayTertiary()</td>
28451 tejbeer 266
 
30017 amit.gupta 267
                                    <td>$warehousePartnerDetailMap.get($name).getTicket()</td>
28451 tejbeer 268
 
30017 amit.gupta 269
                                </tr>
270
                                #end
28451 tejbeer 271
 
30017 amit.gupta 272
                            </tbody>
273
                        </table>
274
                    </div>
28451 tejbeer 275
 
35549 ranu 276
                    <div class="col-lg-6">
35560 ranu 277
                        <div class="row">
278
                            <div class="col-lg-7">
36566 amit 279
                                <h3 class="section-title mb-lg">
35560 ranu 280
                                    <strong>Warehouse Wise Report</strong>
281
                                </h3>
282
                            </div>
36566 amit 283
                            <div class="col-lg-5" class="pl-0">
35560 ranu 284
							<span>Last fetch :-
285
                                $reporticoDate.getLastCreatedTimestamp().format($dateTimeFormatter)</span>
286
                                <button class="btn btn-sm btn-primary fetchWarehouseData"
287
                                        onclick="getWarehouseWiseData()" type="button"><i class="fa fa-refresh"></i>
288
 
289
                                </button>
290
                            </div>
30017 amit.gupta 291
                        </div>
28451 tejbeer 292
 
35560 ranu 293
 
30017 amit.gupta 294
                        <table class="table table-striped table-advance table-hover">
295
                            <tbody>
296
                            <tr>
297
                                <th>W/H Location</th>
298
                                <th>Total Stock</th>
299
                                <th>Total Value</th>
300
                                <th>Pending Indent</th>
301
                                <th>Tertiary</th>
302
                            </tr>
303
                                #foreach($key in $warehouseStockMap.keySet())
304
                                <tr
33087 amit.gupta 305
                                        onclick="getWarehouseBrandStock($warehouseStockMap.get($key).getWarehouseId())">
30017 amit.gupta 306
                                    <td>$warehouseMap.get($key)</td>
307
                                    #if($warehouseStockMap.get($key).getStockQty())
308
                                        <td>$warehouseStockMap.get($key).getStockQty()</td>
309
                                        <td class="currency">$warehouseStockMap.get($key).getStockValue()</td>
310
                                    #else
311
                                        <td>0</td>
312
                                        <td>0</td> #end
313
                                    #if($warehouseStockMap.get($key).getPendingIndent())
314
                                        <td>$warehouseStockMap.get($key).getPendingIndent()</td> #else
315
                                        <td>0</td> #end
316
                                    <td>$warehouseStockMap.get($key).getTertiary()</td>
317
                                </tr>
318
                                #end
319
                            </tbody>
320
                        </table>
321
                    </div>
322
                </div>
323
            #end
28451 tejbeer 324
 
36566 amit 325
 
30017 amit.gupta 326
            <div class="row">
28451 tejbeer 327
 
328
 
35549 ranu 329
                <div class="col-lg-6">
28451 tejbeer 330
 
35583 ranu 331
 
35549 ranu 332
                    <div class="team-messages">
35583 ranu 333
                        <h3 class="tm-title">Bulletin <span class="tm-subtitle"> (Today Important Updates)</span> <input
334
                                type="date" id="bulletinDate" style="float:right;"></h3>
335
 
36566 amit 336
                        <hr class="divider">
35583 ranu 337
                        <div id="bulletin-list-container">
338
                            #parse("bulletin-list.vm")
35549 ranu 339
                        </div>
29137 manish 340
                    </div>
35549 ranu 341
                </div>
342
 
343
 
30017 amit.gupta 344
                #if($warehousePartnerDetailMap)
345
                    <div class="col-lg-6">
36566 amit 346
                        <ul class="nav nav-tabs" class="m-sm">
30017 amit.gupta 347
                            <li class="mobile_based"><a class="ba">Mobile</a></li>
348
                            <li class="accessories_based"><a class="la">Accessories</a></li>
349
                            <li class="activation_summary"><a class="as">Activation Summary</a></li>
350
                            <li class="activation_updation"><a class="au">Activation Updation</a></li>
28461 tejbeer 351
 
352
 
30017 amit.gupta 353
                        </ul>
28461 tejbeer 354
 
355
 
36566 amit 356
                        <div class="row reportContainer" class="m-sm"></div>
28451 tejbeer 357
 
30017 amit.gupta 358
                    </div>
28451 tejbeer 359
 
360
 
361
 
30017 amit.gupta 362
                #end
28451 tejbeer 363
 
30017 amit.gupta 364
            </div>
32177 amit.gupta 365
 
33087 amit.gupta 366
            <div class="row">
31259 tejbeer 367
 
368
 
33087 amit.gupta 369
                <div class="col-lg-6">
31259 tejbeer 370
 
32177 amit.gupta 371
 
36566 amit 372
                    <div class="row" class="ml-sm">
373
                        <h3 class="section-title mb-sm">
33087 amit.gupta 374
                            <strong>Sale MileStone</strong>
375
                        </h3>
376
                    </div>
31268 tejbeer 377
 
36566 amit 378
                    <div class="row saleMilestoneContainer" class="m-sm"></div>
31259 tejbeer 379
 
380
 
33087 amit.gupta 381
                </div>
31273 tejbeer 382
 
383
 
33087 amit.gupta 384
                <div class="col-lg-6">
31259 tejbeer 385
 
386
 
36566 amit 387
                    <div class="row" class="ml-sm">
388
                        <h3 class="section-title mb-sm">
33087 amit.gupta 389
                            <strong>Purchase MileStone</strong>
390
                        </h3>
391
                    </div>
31273 tejbeer 392
 
36566 amit 393
                    <div class="row purchaseMilestoneContainer" class="m-sm"></div>
32177 amit.gupta 394
 
395
 
33087 amit.gupta 396
                </div>
31273 tejbeer 397
 
398
 
33087 amit.gupta 399
            </div>
32177 amit.gupta 400
 
401
 
30017 amit.gupta 402
            <div class="row">
403
                #if($authUserTicketCount)
29137 manish 404
 
30017 amit.gupta 405
                    <div class="col-lg-6">
406
                        <div class="row col-lg-8">
36566 amit 407
                            <h3 class="section-title mb-lg">
30017 amit.gupta 408
                                <strong>Auth User Tickets</strong>
409
                            </h3>
410
                        </div>
28451 tejbeer 411
 
30017 amit.gupta 412
                        <table class="table table-striped table-advance table-hover"
413
                               style="width: 65%">
414
                            <tbody>
415
                            <tr>
416
                                <th>Auth User</th>
417
                                <th>Tickets</th>
418
                            </tr>
419
                                #foreach($authUserTicket in $authUserTicketCount.entrySet())
420
                                <tr>
421
                                    <td>$authUserTicket.getKey().getName()</td>
422
                                    <td>$authUserTicket.getValue()</td>
423
                                </tr>
424
                                #end
425
                            </tbody>
426
                        </table>
28451 tejbeer 427
 
30017 amit.gupta 428
                    </div>
429
                #end
35320 ranu 430
                <div class="col-lg-6">
36566 amit 431
                    <h3 class="section-title mb-lg">
33087 amit.gupta 432
                        <strong>Loan Summary</strong>
433
                    </h3>
32172 jai.hind 434
 
33087 amit.gupta 435
                    <table class="table table-striped table-advance table-hover loan-summary-table"
436
                           style="width: 50%">
437
                        <tbody>
438
                        <thead>
439
                        <tr>
440
                            <th></th>
35335 ranu 441
                            <th>Count</th>
442
                            <th>Value</th>
33087 amit.gupta 443
                        </tr>
32197 jai.hind 444
 
33087 amit.gupta 445
                        </thead>
446
                        <tr>
32197 jai.hind 447
 
33087 amit.gupta 448
                            <th>Total Loan</th>
449
                            <td class="loan" data-type="TOTAL_LOAN" data-toggle="modal"
450
                                data-target="#loanSummaryModal">$loanSummary.getPendingLoansLoanAggregation().getPartnerCount()</td>
451
                            <td class="currency">$loanSummary.getPendingLoansLoanAggregation().getTotalValue()</td>
32197 jai.hind 452
 
33087 amit.gupta 453
                        </tr>
32197 jai.hind 454
 
33087 amit.gupta 455
                        <tr>
456
                            <th>Default Loan</th>
457
                            <td class="loan" data-type="DEFAULT_LOAN" data-toggle="modal"
458
                                data-target="#loanSummaryModal">$loanSummary.getDefaultLoansAggregation().getPartnerCount()</td>
459
                            <td class="currency">$loanSummary.getDefaultLoansAggregation().getTotalValue()</td>
460
                        </tr>
461
                        <tr>
462
                            <th>Due Loan</th>
463
                            <td class="loan" data-type="DUE_LOAN" data-toggle="modal"
464
                                data-target="#loanSummaryModal">$loanSummary.getDueLoansAggregation().getPartnerCount()</td>
465
                            <td class="currency">$loanSummary.getDueLoansAggregation().getTotalValue()</td>
466
                        </tr>
32197 jai.hind 467
 
33087 amit.gupta 468
                        </tbody>
469
                    </table>
35320 ranu 470
                </div>
35316 ranu 471
 
472
                <div class="col-lg-12">
473
                    <h3><strong>State wise loan summary</strong></h3>
474
                    <select id="stateDropdown" class="form-control" style="width:200px;">
475
                        <option value="">Select State</option>
476
                        #foreach($entry in $stateWiseLoanSummaryMap.entrySet())
477
                            <option value="$entry.key">$entry.key</option>
478
                        #end
479
                    </select>
480
                    <br/>
33087 amit.gupta 481
                </div>
35335 ranu 482
 
483
                <!-- ================= OVERALL SUMMARY ================= -->
35316 ranu 484
                <div class="col-lg-3">
35335 ranu 485
                    <div id="overallSummaryView" style="display:none;">
486
                        <table class="table table-striped table-hover loan-summary-table">
487
                            <thead>
488
                            <tr>
489
                                <th>Category</th>
490
                                <th>Count</th>
491
                                <th>Value</th>
492
                            </tr>
493
                            </thead>
494
                            <tbody>
495
                            <tr>
496
                                <th colspan="3">Overall
497
                                    <button class="btn btn-sm btn-primary pull-right" id="btnShow15"
498
                                            style="padding: 2px 4px;">Show 15-29
499
                                    </button>
500
                                </th>
501
                            </tr>
35316 ranu 502
 
35335 ranu 503
                            <tr>
504
                                <td>Pending</td>
505
                                <td id="total-pending-count"
506
                                    class="state-wise-loan"
507
                                    data-fromdays=""
508
                                    data-todays=""
509
                                    data-statename=""
510
                                    data-type="TOTAL_LOAN"
511
                                    data-toggle="modal"
512
                                    data-target="#loanSummaryModal"></td>
513
                                <td id="total-pending-value"></td>
514
                            </tr>
35316 ranu 515
 
35335 ranu 516
                            <tr>
517
                                <td>Default</td>
518
                                <td id="total-default-count"
519
                                    class="state-wise-loan"
520
                                    data-fromdays=""
521
                                    data-todays=""
522
                                    data-statename=""
523
                                    data-type="DEFAULT_LOAN"
524
                                    data-toggle="modal"
525
                                    data-target="#loanSummaryModal"></td>
526
                                <td id="total-default-value"></td>
527
                            </tr>
528
 
529
                            <tr>
530
                                <td>Due</td>
531
                                <td id="total-due-count"
532
                                    class="state-wise-loan"
533
                                    data-fromdays=""
534
                                    data-todays=""
535
                                    data-statename=""
536
                                    data-type="DUE_LOAN"
537
                                    data-toggle="modal"
538
                                    data-target="#loanSummaryModal"></td>
539
                                <td id="total-due-value"></td>
540
                            </tr>
541
 
542
                            </tbody>
543
                        </table>
544
                    </div>
545
 
546
                    <!-- ================= 15–29 DAYS ================= -->
547
                    <div id="days15View">
548
                        <table class="table table-striped table-hover loan-summary-table">
549
                            <thead>
550
                            <tr>
551
                                <th>Category</th>
552
                                <th>Count</th>
553
                                <th>Value</th>
554
                            </tr>
555
                            </thead>
556
 
557
                            <tbody>
558
                            <tr>
559
                                <th colspan="3">15-29 days
560
                                    <button class="btn btn-sm btn-primary pull-right" id="btnShowOverall"
561
                                            style="padding: 2px 4px;">Show Overall
562
                                    </button>
563
                                </th>
564
                            </tr>
565
 
566
                            <tr>
567
                                <td>Pending</td>
568
                                <td id="days15-pending-count"
569
                                    class="state-wise-loan"
570
                                    data-fromdays="15"
571
                                    data-todays="29"
572
                                    data-statename=""
573
                                    data-type="TOTAL_LOAN"
574
                                    data-toggle="modal"
575
                                    data-target="#loanSummaryModal"></td>
576
                                <td id="days15-pending-value"></td>
577
                            </tr>
578
 
579
                            <tr>
580
                                <td>Default</td>
581
                                <td id="days15-default-count"
582
                                    class="state-wise-loan"
583
                                    data-fromdays="15"
584
                                    data-todays="29"
585
                                    data-statename=""
586
                                    data-type="DEFAULT_LOAN"
587
                                    data-toggle="modal"
588
                                    data-target="#loanSummaryModal"></td>
589
                                <td id="days15-default-value"></td>
590
                            </tr>
591
 
592
                            <tr>
593
                                <td>Due</td>
594
                                <td id="days15-due-count"
595
                                    class="state-wise-loan"
596
                                    data-fromdays="15"
597
                                    data-todays="29"
598
                                    data-statename=""
599
                                    data-type="DUE_LOAN"
600
                                    data-toggle="modal"
601
                                    data-target="#loanSummaryModal"></td>
602
                                <td id="days15-due-value"></td>
603
                            </tr>
604
 
605
                            </tbody>
606
                        </table>
607
                    </div>
35316 ranu 608
                </div>
35335 ranu 609
 
610
 
611
                <!-- ================= 30–59 DAYS ================= -->
35316 ranu 612
                <div class="col-lg-3">
613
                    <table class="table table-striped table-hover loan-summary-table">
614
                        <thead>
615
                        <tr>
616
                            <th>Category</th>
35335 ranu 617
                            <th>Count</th>
618
                            <th>Value</th>
35316 ranu 619
                        </tr>
620
                        </thead>
621
 
622
                        <tbody>
623
                        <tr>
35335 ranu 624
                            <th colspan="3">30-59 days</th>
35316 ranu 625
                        </tr>
35335 ranu 626
 
35316 ranu 627
                        <tr>
628
                            <td>Pending</td>
35335 ranu 629
                            <td id="days30-pending-count"
630
                                class="state-wise-loan"
631
                                data-fromdays="30"
632
                                data-todays="59"
633
                                data-statename=""
634
                                data-type="TOTAL_LOAN"
635
                                data-toggle="modal"
35320 ranu 636
                                data-target="#loanSummaryModal"></td>
35316 ranu 637
                            <td id="days30-pending-value"></td>
638
                        </tr>
35335 ranu 639
 
35316 ranu 640
                        <tr>
641
                            <td>Default</td>
35335 ranu 642
                            <td id="days30-default-count"
643
                                class="state-wise-loan"
644
                                data-fromdays="30"
645
                                data-todays="59"
646
                                data-statename=""
647
                                data-type="DEFAULT_LOAN"
648
                                data-toggle="modal"
35320 ranu 649
                                data-target="#loanSummaryModal"></td>
35316 ranu 650
                            <td id="days30-default-value"></td>
651
                        </tr>
35335 ranu 652
 
35316 ranu 653
                        <tr>
654
                            <td>Due</td>
35335 ranu 655
                            <td id="days30-due-count"
656
                                class="state-wise-loan"
657
                                data-fromdays="30"
658
                                data-todays="59"
659
                                data-statename=""
660
                                data-type="DUE_LOAN"
661
                                data-toggle="modal"
35320 ranu 662
                                data-target="#loanSummaryModal"></td>
35316 ranu 663
                            <td id="days30-due-value"></td>
664
                        </tr>
35335 ranu 665
 
35316 ranu 666
                        </tbody>
667
                    </table>
668
                </div>
35335 ranu 669
 
670
                <!-- ================= 60–179 DAYS ================= -->
35316 ranu 671
                <div class="col-lg-3">
672
                    <table class="table table-striped table-hover loan-summary-table">
673
                        <thead>
674
                        <tr>
675
                            <th>Category</th>
35335 ranu 676
                            <th>Count</th>
677
                            <th>Value</th>
35316 ranu 678
                        </tr>
679
                        </thead>
680
 
681
                        <tbody>
682
                        <tr>
35335 ranu 683
                            <th colspan="3">60-179 days</th>
35316 ranu 684
                        </tr>
35335 ranu 685
 
35316 ranu 686
                        <tr>
687
                            <td>Pending</td>
35335 ranu 688
                            <td id="days60-pending-count"
689
                                class="state-wise-loan"
690
                                data-fromdays="60"
691
                                data-todays="179"
692
                                data-statename=""
693
                                data-type="TOTAL_LOAN"
694
                                data-toggle="modal"
35320 ranu 695
                                data-target="#loanSummaryModal"></td>
35316 ranu 696
                            <td id="days60-pending-value"></td>
697
                        </tr>
35335 ranu 698
 
35316 ranu 699
                        <tr>
700
                            <td>Default</td>
35335 ranu 701
                            <td id="days60-default-count"
702
                                class="state-wise-loan"
703
                                data-fromdays="60"
704
                                data-todays="179"
705
                                data-statename=""
706
                                data-type="DEFAULT_LOAN"
707
                                data-toggle="modal"
35320 ranu 708
                                data-target="#loanSummaryModal"></td>
35316 ranu 709
                            <td id="days60-default-value"></td>
710
                        </tr>
35335 ranu 711
 
35316 ranu 712
                        <tr>
713
                            <td>Due</td>
35335 ranu 714
                            <td id="days60-due-count"
715
                                class="state-wise-loan"
716
                                data-fromdays="60"
717
                                data-todays="179"
718
                                data-statename=""
719
                                data-type="DUE_LOAN"
720
                                data-toggle="modal"
35320 ranu 721
                                data-target="#loanSummaryModal"></td>
35316 ranu 722
                            <td id="days60-due-value"></td>
723
                        </tr>
35335 ranu 724
 
35316 ranu 725
                        </tbody>
726
                    </table>
727
                </div>
35335 ranu 728
 
729
                <!-- ================= 180+ DAYS ================= -->
35316 ranu 730
                <div class="col-lg-3">
731
                    <table class="table table-striped table-hover loan-summary-table">
732
                        <thead>
733
                        <tr>
734
                            <th>Category</th>
35335 ranu 735
                            <th>Count</th>
736
                            <th>Value</th>
35316 ranu 737
                        </tr>
738
                        </thead>
739
 
740
                        <tbody>
741
                        <tr>
35335 ranu 742
                            <th colspan="3">Above 180 days</th>
35316 ranu 743
                        </tr>
35335 ranu 744
 
35316 ranu 745
                        <tr>
746
                            <td>Pending</td>
35335 ranu 747
                            <td id="days180-pending-count"
748
                                class="state-wise-loan"
749
                                data-fromdays="180"
750
                                data-todays=""
751
                                data-statename=""
752
                                data-type="TOTAL_LOAN"
753
                                data-toggle="modal"
35320 ranu 754
                                data-target="#loanSummaryModal"></td>
35316 ranu 755
                            <td id="days180-pending-value"></td>
756
                        </tr>
35335 ranu 757
 
35316 ranu 758
                        <tr>
759
                            <td>Default</td>
35335 ranu 760
                            <td id="days180-default-count"
761
                                class="state-wise-loan"
762
                                data-fromdays="180"
763
                                data-todays=""
764
                                data-statename=""
765
                                data-type="DEFAULT_LOAN"
766
                                data-toggle="modal"
35320 ranu 767
                                data-target="#loanSummaryModal"></td>
35316 ranu 768
                            <td id="days180-default-value"></td>
769
                        </tr>
35335 ranu 770
 
35316 ranu 771
                        <tr>
772
                            <td>Due</td>
35335 ranu 773
                            <td id="days180-due-count"
774
                                class="state-wise-loan"
775
                                data-fromdays="180"
776
                                data-todays=""
777
                                data-statename=""
778
                                data-type="DUE_LOAN"
779
                                data-toggle="modal"
35320 ranu 780
                                data-target="#loanSummaryModal"></td>
35316 ranu 781
                            <td id="days180-due-value"></td>
782
                        </tr>
783
 
784
                        </tbody>
785
                    </table>
786
                </div>
35335 ranu 787
 
30017 amit.gupta 788
            </div>
789
            #if($authUserTicketCount)
790
                <div class="row">
791
                    <div class="col-lg-6">
28451 tejbeer 792
 
793
 
35560 ranu 794
                        <div class="row col-lg-12">
36566 amit 795
                            <h3 class="section-title">
30017 amit.gupta 796
                                <strong>Reports</strong>
797
                            </h3>
798
                        </div>
799
                        <div class="row col-lg-12 info-box white-bg">
36566 amit 800
                            <div class="list-group reports-table">
801
                                #foreach($reporticoProjectEntry in
802
                                    $reporticoProjectMap.entrySet()) #foreach($reporticoUrlInfo in
803
                                    $reporticoProjectEntry.getValue()) <a
804
                                        href="${rc.contextPath}/reports/${reporticoProjectEntry.getKey()}${reporticoUrlInfo.getUrl()}"
805
                                        class="list-group-item"
806
                                    #if($reporticoUrlInfo.getParamsList())
807
                                        data-paramslist="$vmUtils.htmlJson($reporticoUrlInfo.getParamsList())"
808
                                    #end>
809
                                    <h4 class="list-group-item-heading">$reporticoUrlInfo.getTitle()</h4>
810
                                    <p class="list-group-item-text">$reporticoUrlInfo.getDescription()</p>
811
                                </a> #end #end
812
                            </div>
28461 tejbeer 813
 
30017 amit.gupta 814
                        </div>
815
                    </div>
816
                    <div class="col-lg-6">
28451 tejbeer 817
 
818
 
35560 ranu 819
                        <div class="row info-box white-bg">
820
                            <div class="col-lg-7">
36566 amit 821
                                <h3 class="section-title">
30017 amit.gupta 822
                                    <strong>My Messages</strong>
823
                                </h3>
824
                            </div>
35560 ranu 825
                            <div class="col-lg-5">
36566 amit 826
                                <div class="btn-group message-filter" class="pull-right">
30017 amit.gupta 827
                                    <button data-messagetype="notification" type="button"
828
                                            class="btn btn-default" aria-label="Notifications"
829
                                            title="Notifications">
830
                                        <span class="glyphicon glyphicon-bell" aria-hidden="true"></span>
831
                                    </button>
832
                                    <button data-messagetype="announcement" type="button"
833
                                            class="btn btn-default" aria-label="Announcements"
834
                                            title="Announcements">
835
                                        <span class="glyphicon glyphicon-bullhorn" aria-hidden="true"></span>
836
                                    </button>
837
                                    <button data-messagetype="scheme" type="button"
838
                                            class="btn btn-default" aria-label="SmartDukaan Schemes"
839
                                            title="SmartDukaan Schemes">
840
                                        <span class="glyphicon glyphicon-tags" aria-hidden="true"></span>
841
                                    </button>
842
                                    <button data-messagetype="marketing" type="button"
843
                                            class="btn btn-default" aria-label="SmartDukaan Schemes"
844
                                            title="SmartDukaan Schemes">
845
                                        <span class="glyphicon glyphicon-picture" aria-hidden="true"></span>
846
                                    </button>
847
                                </div>
848
                            </div>
849
                            <div class="col-lg-12 row notification-container"
850
                                 style="max-height: 500px; overflow-y: scroll;"></div>
851
                        </div>
852
                    </div>
28461 tejbeer 853
 
30017 amit.gupta 854
                </div>
28461 tejbeer 855
 
856
 
30017 amit.gupta 857
            #end #if(!$authUserTicketCount)
28461 tejbeer 858
 
30017 amit.gupta 859
            <div class="row">
860
                <div class="col-lg-6">
861
                    <div class="row col-lg-4">
36566 amit 862
                        <h3 class="section-title">
30017 amit.gupta 863
                            <strong>Reports</strong>
864
                        </h3>
865
                    </div>
866
                    <div class="row col-lg-12 info-box white-bg">
867
                        <table class="table table-striped reports-table"
868
                               style="display: none">
869
                            <tbody>
870
                            <div class="list-group">
871
                                #foreach($reporticoProjectEntry in
872
                                    $reporticoProjectMap.entrySet()) #foreach($reporticoUrlInfo in
873
                                    $reporticoProjectEntry.getValue()) <a
874
                                        href="${rc.contextPath}/reports/${reporticoProjectEntry.getKey()}${reporticoUrlInfo.getUrl()}"
875
                                        class="list-group-item"
876
                                    #if($reporticoUrlInfo.getParamsList())
877
                                        data-paramslist="$vmUtils.htmlJson($reporticoUrlInfo.getParamsList())"
878
                                    #end>
879
                                    <h4 class="list-group-item-heading">$reporticoUrlInfo.getTitle()</h4>
880
                                    <p class="list-group-item-text">$reporticoUrlInfo.getDescription()</p>
881
                                </a> #end #end
882
                            </div>
883
                            </tbody>
884
                        </table>
28461 tejbeer 885
 
30017 amit.gupta 886
                    </div>
28461 tejbeer 887
 
30017 amit.gupta 888
                </div>
889
                <div class="col-lg-6">
890
                    <div class="col-lg-12">
891
                        <div class="row col-lg-12 info-box white-bg">
35560 ranu 892
                            <div class="col-lg-7">
36566 amit 893
                                <h3 class="section-title">
30017 amit.gupta 894
                                    <strong>My Messages</strong>
895
                                </h3>
896
                            </div>
35560 ranu 897
                            <div class="col-lg-5">
36566 amit 898
                                <div class="btn-group message-filter" class="pull-right">
30017 amit.gupta 899
                                    <button data-messagetype="notification" type="button"
900
                                            class="btn btn-default" aria-label="Notifications"
901
                                            title="Notifications">
902
                                        <span class="glyphicon glyphicon-bell" aria-hidden="true"></span>
903
                                    </button>
904
                                    <button data-messagetype="announcement" type="button"
905
                                            class="btn btn-default" aria-label="Announcements"
906
                                            title="Announcements">
907
                                        <span class="glyphicon glyphicon-bullhorn" aria-hidden="true"></span>
908
                                    </button>
909
                                    <button data-messagetype="scheme" type="button"
910
                                            class="btn btn-default" aria-label="SmartDukaan Schemes"
911
                                            title="SmartDukaan Schemes">
912
                                        <span class="glyphicon glyphicon-tags" aria-hidden="true"></span>
913
                                    </button>
914
                                    <button data-messagetype="marketing" type="button"
915
                                            class="btn btn-default" aria-label="SmartDukaan Schemes"
916
                                            title="SmartDukaan Schemes">
917
                                        <span class="glyphicon glyphicon-picture" aria-hidden="true"></span>
918
                                    </button>
919
                                </div>
920
                            </div>
921
                            <div class="col-lg-12 row notification-container"
922
                                 style="max-height: 500px; overflow-y: scroll;"></div>
923
                        </div>
924
                    </div>
925
                </div>
926
            </div>
28461 tejbeer 927
 
30017 amit.gupta 928
        #end
929
        </section>
930
        <div class="text-center">
931
            <div class="credits">
36566 amit 932
                <p>All rights reserved. &copy; Smart Dukaan</p>
30017 amit.gupta 933
            </div>
934
        </div>
935
    </section>
26010 amit.gupta 936
 
30017 amit.gupta 937
    <script type="text/javascript">
938
        context = "${rc.contextPath}";
939
        webApiScheme = "$webApiScheme";
940
        webApiRoot = "$webApiRoot";
941
        webApiHost = "$webApiHost";
942
        webApiPort = "$webApiPort";
35606 amit 943
        #if($retailers)
944
        retailers = $retailers;
945
        #end
946
        #if($warehouses)
947
        warehouses = $warehouses;
948
        #end
949
        #if($authId)
950
        authId = $authId;
951
        #end
30017 amit.gupta 952
    </script>
953
    #parse("include-scripts.vm")
28451 tejbeer 954
 
35396 amit 955
        <script>
956
            $(function () {
36566 amit 957
                $.fn.dataTable.moment('DD/MM/YYYY');
958
                $.fn.dataTable.moment('DD/MM/YYYY hh:mm');
959
                $('.currency').each(function (index, ele) {
960
                    if (!isNaN(parseInt($(ele).html()))) {
961
                        $(ele).html(numberToComma($(ele).html()));
962
                    }
963
                });
28461 tejbeer 964
 
36566 amit 965
                var profile = localStorage.getItem('profile');
966
                if (profile) {
967
                    $("#photo").attr("src", JSON.parse(profile).image_url);
968
                    $("#fofo_name").text(JSON.parse(profile).name);
969
                } else {
970
                    $("#photo").attr("src", "");
971
                    $("#fofo_name").text("Welcome, User");
972
                }
28461 tejbeer 973
 
36566 amit 974
                loaderDialogObj = bootbox.dialog({
975
                    message: '<div class="container text-center"><i class="fa fa-spin fa-spinner"></i>Loading...</div>',
976
                    show: false
977
                });
30017 amit.gupta 978
            });
29137 manish 979
 
35396 amit 980
            $(document).ready(function () {
29137 manish 981
 
30017 amit.gupta 982
            $(".mobile_based").click();
29137 manish 983
 
30017 amit.gupta 984
            $('div.message-filter').on('click', 'button', function () {
35396 amit 985
            messageType = $(this).data("messagetype");
986
            if ($(this).hasClass('btn-pressed')) {
987
            messageType = "";
988
            $('div.message-filter').find('button').removeClass('btn-pressed').addClass('btn-default');
989
        } else {
990
            $('div.message-filter').find('button').removeClass('btn-pressed').addClass('btn-default');
991
            $(this).addClass('btn-pressed').removeClass('btn-default');
992
        }
993
            notifyTypeChange(messageType);
994
        });
30017 amit.gupta 995
            notifyTypeChange("");
996
        });
28451 tejbeer 997
 
30017 amit.gupta 998
 
35396 amit 999
            $(document).on("click", ".mobile_based",
1000
            function () {
30017 amit.gupta 1001
 
35396 amit 1002
            $(".ba").css("color", "blue");
1003
            $(".ba").css("background-color", "white");
1004
            $(".la").css("color", "white");
1005
            $(".la").css("background-color", "#C0C0C0");
1006
            $(".as").css("color", "white");
1007
            $(".as").css("background-color", "#C0C0C0");
30017 amit.gupta 1008
 
35396 amit 1009
            $(".au").css("color", "white");
1010
            $(".au").css("background-color", "#C0C0C0");
30017 amit.gupta 1011
 
35396 amit 1012
            doGetAjaxRequestHandler(context + "/getMobileBrandWise", function (response) {
1013
            $('.reportContainer').html(response);
1014
        });
1015
        });
30017 amit.gupta 1016
 
35396 amit 1017
            $(document).on("click", ".accessories_based",
1018
            function () {
30017 amit.gupta 1019
 
35396 amit 1020
            $(".ba").css("color", "white");
1021
            $(".ba").css("background-color", "#C0C0C0");
1022
            $(".la").css("color", "blue");
1023
            $(".la").css("background-color", "white");
1024
            $(".as").css("color", "white");
1025
            $(".as").css("background-color", "#C0C0C0");
30017 amit.gupta 1026
 
35396 amit 1027
            $(".au").css("color", "white");
1028
            $(".au").css("background-color", "#C0C0C0");
1029
            doGetAjaxRequestHandler(context + "/getAccessoriesBrandWise", function (response) {
1030
            $('.reportContainer').html(response);
1031
        });
1032
        });
30017 amit.gupta 1033
 
1034
 
35396 amit 1035
            $(document).on("click", ".activation_summary",
1036
            function () {
30017 amit.gupta 1037
 
35396 amit 1038
            $(".as").css("color", "blue");
1039
            $(".as").css("background-color", "white");
1040
            $(".ba").css("color", "white");
1041
            $(".ba").css("background-color", "#C0C0C0");
1042
            $(".la").css("color", "white");
1043
            $(".la").css("background-color", "#C0C0C0");
30017 amit.gupta 1044
 
35396 amit 1045
            $(".au").css("color", "white");
1046
            $(".au").css("background-color", "#C0C0C0");
1047
            doGetAjaxRequestHandler(context + "/getActivatedModelByBrand", function (response) {
1048
            $('.reportContainer').html(response);
1049
        });
1050
        });
30017 amit.gupta 1051
 
1052
 
35396 amit 1053
            $(document).on("click", ".activation_updation",
1054
            function () {
30017 amit.gupta 1055
 
35396 amit 1056
            $(".as").css("color", "white");
1057
            $(".as").css("background-color", "#C0C0C0");
1058
            $(".au").css("color", "blue");
1059
            $(".au").css("background-color", "white");
1060
            $(".ba").css("color", "white");
1061
            $(".ba").css("background-color", "#C0C0C0");
30017 amit.gupta 1062
 
35396 amit 1063
            $(".la").css("color", "white");
1064
            $(".la").css("background-color", "#C0C0C0");
1065
            doGetAjaxRequestHandler(context + "/getActivatedImeiUpdationDate", function (response) {
1066
            $('.reportContainer').html(response);
1067
        });
1068
        });
30017 amit.gupta 1069
 
1070
 
35396 amit 1071
            doGetAjaxRequestHandler(context + "/getSaleCountByMilestone", function (response) {
31259 tejbeer 1072
            $('.saleMilestoneContainer').html(response);
1073
        });
33087 amit.gupta 1074
 
35396 amit 1075
            doGetAjaxRequestHandler(context + "/getPurchaseCountByMileStone", function (response) {
31273 tejbeer 1076
            $('.purchaseMilestoneContainer').html(response);
1077
        });
35396 amit 1078
            doGetAjaxRequestHandler(context + "/getMobileLMSFilter", function (response) {
30601 amit.gupta 1079
            $('.chartfilterlmsContainer').html(response);
1080
        });
30017 amit.gupta 1081
 
1082
 
35396 amit 1083
            $('.loan-summary-table').on('click', '.loan', function () {
32197 jai.hind 1084
            console.log($(this));
1085
            let loanSummaryType = $(this).data("type");
1086
            doGetAjaxRequestHandler(`${context}/getPartnerWiseLoanSummary?loanSummaryType=${loanSummaryType}`, function (response) {
35396 amit 1087
            $('#loanSummaryModal .modal-content').html(response);
32197 jai.hind 1088
        });
35396 amit 1089
        });
32197 jai.hind 1090
 
35396 amit 1091
            $(document).on('click', ".brand_month_sales", function () {
30601 amit.gupta 1092
            $(".bms").css("color", "blue");
1093
            $(".bms").css("background-color", "white");
1094
            $(".bmp").css("color", "white");
1095
            $(".bmp").css("background-color", "#C0C0C0");
1096
            var warehouseId = $('#warehouseMap').val();
1097
            var filterType = $('#monthDateFilter').val();
30017 amit.gupta 1098
 
30601 amit.gupta 1099
            var fofoIds = $('#fofo-users').val();
34973 aman 1100
            if (typeof fofoIds === 'string') {
35396 amit 1101
            fofoIds = fofoIds.split(',').map(id => parseInt(id.trim()));
1102
        }
34973 aman 1103
            const data = {
35396 amit 1104
            warehouseId: warehouseId,
1105
            date: getDatesFromPicker($('input[name="dateRange"]')).startDate,
1106
            endDate: getDatesFromPicker($('input[name="dateRange"]')).endDate,
1107
            fofoIds: fofoIds,
1108
            filterType: filterType
1109
        };
30017 amit.gupta 1110
 
34973 aman 1111
            doPostAjaxRequestWithJsonHandler(context + "/getMobileLMSGraph", JSON.stringify(data), function (response) {
35396 amit 1112
            $('.chartLmsContainer').html(response);
30601 amit.gupta 1113
        });
35396 amit 1114
        });
30017 amit.gupta 1115
 
35396 amit 1116
            $('#fofo-users').multiselect({
30017 amit.gupta 1117
            includeSelectAllOption: true,
1118
            multiple: true,
1119
            maxHeight: 200,
1120
            buttonWidth: '180px',
1121
            numberDisplayed: 1,
1122
            nonSelectedText: 'Users',
1123
            nSelectedText: ' - Users Selected',
1124
            allSelectedText: 'All Users Selected',
1125
            enableFiltering: true,
1126
            enableCaseInsensitiveFiltering: true
1127
        });
1128
 
35396 amit 1129
            function changelanguage(val) {
33087 amit.gupta 1130
            console.log(val);
1131
            document.documentElement.setAttribute('lang', val)
1132
            var url = window.location.host;
1133
            alert(url);
1134
            //var path = window.location.path;
1135
            alert(path);
1136
            //window.location.href =url+"/dashboard?lang="+val;
1137
            window.open(url + "/dashboard?lang=" + val, "_self");
32771 raveendra. 1138
        }
1139
 
30017 amit.gupta 1140
    </script>
35316 ranu 1141
 
1142
    <script>
1143
        var stateLoanData = {
1144
            #foreach($entry in $stateWiseLoanSummaryMap.entrySet())
1145
                "$entry.key": {
1146
 
35335 ranu 1147
                    // ------------------- Main Summary -------------------
35316 ranu 1148
                    pendingLoans: {
1149
                        partnerCount: $entry.value.pendingLoansLoanAggregation.partnerCount,
1150
                        totalValue: $entry.value.pendingLoansLoanAggregation.totalValue
1151
                    },
1152
                    defaultLoans: {
1153
                        partnerCount: $entry.value.defaultLoansAggregation.partnerCount,
1154
                        totalValue: $entry.value.defaultLoansAggregation.totalValue
1155
                    },
1156
                    dueLoans: {
1157
                        partnerCount: $entry.value.dueLoansAggregation.partnerCount,
1158
                        totalValue: $entry.value.dueLoansAggregation.totalValue
1159
                    },
1160
 
35335 ranu 1161
                    // ------------------ 15–29 Days -------------------
1162
                    range15to29: {
35316 ranu 1163
                        pending: {
35335 ranu 1164
                            partnerCount: $entry.value.range15to29.pending.partnerCount,
1165
                            totalValue: $entry.value.range15to29.pending.totalValue
35316 ranu 1166
                        },
1167
                        defaults: {
35335 ranu 1168
                            partnerCount: $entry.value.range15to29.defaults.partnerCount,
1169
                            totalValue: $entry.value.range15to29.defaults.totalValue
35316 ranu 1170
                        },
1171
                        dues: {
35335 ranu 1172
                            partnerCount: $entry.value.range15to29.dues.partnerCount,
1173
                            totalValue: $entry.value.range15to29.dues.totalValue
35316 ranu 1174
                        }
1175
                    },
1176
 
35335 ranu 1177
                    // ------------------ 30–59 Days -------------------
1178
                    range30to59: {
35316 ranu 1179
                        pending: {
35335 ranu 1180
                            partnerCount: $entry.value.range30to59.pending.partnerCount,
1181
                            totalValue: $entry.value.range30to59.pending.totalValue
35316 ranu 1182
                        },
1183
                        defaults: {
35335 ranu 1184
                            partnerCount: $entry.value.range30to59.defaults.partnerCount,
1185
                            totalValue: $entry.value.range30to59.defaults.totalValue
35316 ranu 1186
                        },
1187
                        dues: {
35335 ranu 1188
                            partnerCount: $entry.value.range30to59.dues.partnerCount,
1189
                            totalValue: $entry.value.range30to59.dues.totalValue
35316 ranu 1190
                        }
1191
                    },
1192
 
35335 ranu 1193
                    // ------------------ 60–179 Days -------------------
1194
                    range60to179: {
35316 ranu 1195
                        pending: {
35335 ranu 1196
                            partnerCount: $entry.value.range60to179.pending.partnerCount,
1197
                            totalValue: $entry.value.range60to179.pending.totalValue
35316 ranu 1198
                        },
1199
                        defaults: {
35335 ranu 1200
                            partnerCount: $entry.value.range60to179.defaults.partnerCount,
1201
                            totalValue: $entry.value.range60to179.defaults.totalValue
35316 ranu 1202
                        },
1203
                        dues: {
35335 ranu 1204
                            partnerCount: $entry.value.range60to179.dues.partnerCount,
1205
                            totalValue: $entry.value.range60to179.dues.totalValue
35316 ranu 1206
                        }
35335 ranu 1207
                    },
1208
 
1209
                    // ------------------ 180+ Days -------------------
1210
                    range180Plus: {
1211
                        pending: {
1212
                            partnerCount: $entry.value.range180Plus.pending.partnerCount,
1213
                            totalValue: $entry.value.range180Plus.pending.totalValue
1214
                        },
1215
                        defaults: {
1216
                            partnerCount: $entry.value.range180Plus.defaults.partnerCount,
1217
                            totalValue: $entry.value.range180Plus.defaults.totalValue
1218
                        },
1219
                        dues: {
1220
                            partnerCount: $entry.value.range180Plus.dues.partnerCount,
1221
                            totalValue: $entry.value.range180Plus.dues.totalValue
1222
                        }
35316 ranu 1223
                    }
1224
 
1225
                }#if($foreach.hasNext),#end
1226
            #end
1227
        };
1228
 
1229
        $(document).ready(function () {
1230
 
1231
            var defaultState = "Delhi";
1232
 
1233
            setTimeout(function () {
1234
                if (stateLoanData[defaultState]) {
1235
                    $("#stateDropdown").val(defaultState);
1236
                    $("#stateDropdown").trigger("change");
1237
                }
1238
            }, 100);
1239
 
1240
            $("#stateDropdown").on("change", function () {
1241
 
1242
                var selectedState = $(this).val();
1243
 
1244
                if (!selectedState) {
1245
                    $("td[id]").text("");
1246
                    return;
1247
                }
1248
 
1249
                var data = stateLoanData[selectedState];
1250
 
35320 ranu 1251
                $(".state-wise-loan").attr("data-statename", selectedState);
1252
 
35335 ranu 1253
                // ---------------- Main Summary ----------------
35316 ranu 1254
                $("#total-pending-count").text(data.pendingLoans.partnerCount);
1255
                $("#total-pending-value").text(Number(data.pendingLoans.totalValue).toFixed(2));
1256
 
1257
                $("#total-default-count").text(data.defaultLoans.partnerCount);
1258
                $("#total-default-value").text(Number(data.defaultLoans.totalValue).toFixed(2));
1259
 
1260
                $("#total-due-count").text(data.dueLoans.partnerCount);
1261
                $("#total-due-value").text(Number(data.dueLoans.totalValue).toFixed(2));
1262
 
35335 ranu 1263
                // ---------------- 15–29 Days ----------------
1264
                $("#days15-pending-count").text(data.range15to29.pending.partnerCount);
1265
                $("#days15-pending-value").text(Number(data.range15to29.pending.totalValue).toFixed(2));
35316 ranu 1266
 
35335 ranu 1267
                $("#days15-default-count").text(data.range15to29.defaults.partnerCount);
1268
                $("#days15-default-value").text(Number(data.range15to29.defaults.totalValue).toFixed(2));
35316 ranu 1269
 
35335 ranu 1270
                $("#days15-due-count").text(data.range15to29.dues.partnerCount);
1271
                $("#days15-due-value").text(Number(data.range15to29.dues.totalValue).toFixed(2));
35316 ranu 1272
 
35335 ranu 1273
                // ---------------- 30–59 Days ----------------
1274
                $("#days30-pending-count").text(data.range30to59.pending.partnerCount);
1275
                $("#days30-pending-value").text(Number(data.range30to59.pending.totalValue).toFixed(2));
35316 ranu 1276
 
35335 ranu 1277
                $("#days30-default-count").text(data.range30to59.defaults.partnerCount);
1278
                $("#days30-default-value").text(Number(data.range30to59.defaults.totalValue).toFixed(2));
35316 ranu 1279
 
35335 ranu 1280
                $("#days30-due-count").text(data.range30to59.dues.partnerCount);
1281
                $("#days30-due-value").text(Number(data.range30to59.dues.totalValue).toFixed(2));
35316 ranu 1282
 
35335 ranu 1283
                // ---------------- 60–179 Days ----------------
1284
                $("#days60-pending-count").text(data.range60to179.pending.partnerCount);
1285
                $("#days60-pending-value").text(Number(data.range60to179.pending.totalValue).toFixed(2));
35316 ranu 1286
 
35335 ranu 1287
                $("#days60-default-count").text(data.range60to179.defaults.partnerCount);
1288
                $("#days60-default-value").text(Number(data.range60to179.defaults.totalValue).toFixed(2));
35316 ranu 1289
 
35335 ranu 1290
                $("#days60-due-count").text(data.range60to179.dues.partnerCount);
1291
                $("#days60-due-value").text(Number(data.range60to179.dues.totalValue).toFixed(2));
1292
 
1293
                // ---------------- 180+ Days ----------------
1294
                $("#days180-pending-count").text(data.range180Plus.pending.partnerCount);
1295
                $("#days180-pending-value").text(Number(data.range180Plus.pending.totalValue).toFixed(2));
1296
 
1297
                $("#days180-default-count").text(data.range180Plus.defaults.partnerCount);
1298
                $("#days180-default-value").text(Number(data.range180Plus.defaults.totalValue).toFixed(2));
1299
 
1300
                $("#days180-due-count").text(data.range180Plus.dues.partnerCount);
1301
                $("#days180-due-value").text(Number(data.range180Plus.dues.totalValue).toFixed(2));
1302
 
35316 ranu 1303
            });
1304
 
1305
        });
1306
 
1307
 
35320 ranu 1308
        $('.loan-summary-table').on('click', '.state-wise-loan', function () {
1309
            console.log($(this));
1310
            let loanSummaryType = $(this).data("type");
35324 ranu 1311
            let stateName = $("#stateDropdown").val();
35335 ranu 1312
            let fromDays = $(this).data("fromdays");
1313
            let toDays = $(this).data("todays");
1314
            doGetAjaxRequestHandler(`${context}/getPartnerStateWiseLoanSummary?loanSummaryType=${loanSummaryType}&stateName=${stateName}&fromDays=${fromDays}&toDays=${toDays}`, function (response) {
35320 ranu 1315
                $('#loanSummaryModal .modal-content').html(response);
1316
            });
1317
        });
35335 ranu 1318
        // Show 15–29 days view
1319
        $("#btnShow15").click(function () {
1320
            $("#overallSummaryView").hide();
1321
            $("#days15View").show();
1322
        });
35320 ranu 1323
 
35335 ranu 1324
        // Show overall view
1325
        $("#btnShowOverall").click(function () {
1326
            $("#days15View").hide();
1327
            $("#overallSummaryView").show();
1328
        });
35320 ranu 1329
 
35335 ranu 1330
 
35316 ranu 1331
    </script>
1332
 
30017 amit.gupta 1333
    <div id="report-modal" class="modal" role="dialog"
1334
         data-backdrop="static" data-keyboard="false">
1335
        <div class="modal-dialog">
1336
 
1337
            <!-- Modal content-->
1338
            <div class="modal-content">
1339
                <div class="modal-header">
1340
                    <button type="button" class="close" data-dismiss="modal">&times;</button>
1341
                    <h4 class="modal-title"></h4>
1342
                </div>
1343
                <div class="modal-body"></div>
1344
                <div class="modal-footer">
1345
                    <button type="button" data-dismiss="modal"
1346
                            class="btn btn-default download-report">Download
1347
                    </button>
1348
                </div>
1349
            </div>
1350
        </div>
1351
    </div>
30601 amit.gupta 1352
</section>
32197 jai.hind 1353
 
33087 amit.gupta 1354
<div id="loanSummaryModal" class="modal" role="dialog">
1355
    <div class="modal-dialog modal-lg">
1356
        <div class="modal-content"></div>
32197 jai.hind 1357
 
1358
    </div>
33087 amit.gupta 1359
</div>
35549 ranu 1360
 
1361
<div class="modal" id="todayBulletinOfferDescription">
1362
    <div class="modal-dialog modal-lg">
1363
        <div class="modal-content">
1364
        </div>
1365
    </div>
1366
</div>
1367
 
35583 ranu 1368
<script>
1369
    function refreshBulletinsList() {
1370
        var selectedDate = $('#bulletinDate').val();
1371
        $.ajax({
1372
            url: context + "/dasboard/getDateWiseBulletins",
1373
            type: "GET",
1374
            data: {date: selectedDate},
1375
            success: function (response) {
1376
                $('#bulletin-list-container').fadeOut(200, function () {
1377
                    $(this).html(response).fadeIn(200);
1378
                });
1379
            },
1380
            error: function () {
1381
                alert("Failed to load bulletins");
1382
            }
1383
        });
1384
    }
1385
    $('#bulletinDate').on('change', refreshBulletinsList);
1386
    $(document).ready(function () {
1387
        let today = new Date().toISOString().split('T')[0];
1388
        $('#bulletinDate').val(today);
1389
        refreshBulletinsList();
1390
    });
36566 amit 1391
</script>
35583 ranu 1392
 
36566 amit 1393
</body>
1394
</html>