Subversion Repositories SmartDukaan

Rev

Rev 34671 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
28599 amit.gupta 1
<link href="https://cdn.datatables.net/fixedcolumns/3.3.0/css/fixedColumns.bootstrap.css" rel="stylesheet"/>
2
 
3
<section class="wrapper">
4
    <div class="row">
5
        <div class="col-lg-12">
6
            <h3 class="page-header"><i class="icon_document_alt"></i>DESIGN TAT</h3>
7
            <ol class="breadcrumb">
8
                <li><i class="fa fa-home"></i><a href="${rc.contextPath}/dashboard">Home</a></li>
9
                <li><i class="icon_document_alt"></i>Design TAT</li>
10
            </ol>
11
        </div>
12
    </div>
35971 aman 13
 
14
    ## Filter and Search
15
    <div class="col-lg-12" style="margin-bottom: 15px;">
16
        <div class="row">
17
            <div class="col-lg-3">
18
                <label style="margin-right: 10px;"><strong>Filter:</strong></label>
19
                <select id="holdFilterSelect" class="form-control" style="width: 150px; display: inline-block;">
20
                    <option value="pending" #if($holdFilter == "pending") selected #end>Pending</option>
21
                    <option value="hold" #if($holdFilter == "hold") selected #end>On Hold</option>
22
                    <option value="all" #if($holdFilter == "all") selected #end>All</option>
23
                </select>
24
            </div>
25
            <div class="col-lg-6">
26
                <label style="margin-right: 10px;"><strong>Search:</strong></label>
27
                <input type="text" id="designTatSearch" class="form-control"
28
                       style="width: 250px; display: inline-block;"
29
                       placeholder="Outlet, Phone, Code, City..." value="$!search">
30
                <button type="button" class="btn btn-primary" id="designTatSearchBtn" style="margin-left: 5px;">
31
                    <i class="fa fa-search"></i> Search
32
                </button>
33
                #if($search && $search != "")
34
                    <button type="button" class="btn btn-default" id="clearDesignTatSearchBtn"
35
                            style="margin-left: 5px;">
36
                        Clear
37
                    </button>
38
                #end
39
            </div>
40
        </div>
41
    </div>
42
 
28599 amit.gupta 43
    <div class="col-lg-12">
44
        <table class="table table-border table-condensed table-bordered" id="OnboardingDesign" style="width:100%">
45
 
46
            <thead class="row htable" style="background:#F5F5F5;">
47
 
48
            <tr style="color:black;">
49
                <th>Id</th>
50
                <th>Outlet Name(SM)</th>
51
                <th>Created On</th>
52
                <th>Acquired Date()</th>
35971 aman 53
 
28610 amit.gupta 54
                <th>Phone </br>Number(SM)</th>
35971 aman 55
 
28599 amit.gupta 56
                <th>City (SM)</th>
57
                <th>State Head(SM)</th>
58
                <th>BDM (SM)</th>
59
                <th>Agreed Brand fees(SM)</th>
35971 aman 60
 
28599 amit.gupta 61
                <th>Inauguration Date(SM)</th>
62
                <th>LOI(legal)</th>
28610 amit.gupta 63
                <th>Kyc</th>
28599 amit.gupta 64
                <th>Code(legal)</th>
35971 aman 65
                <th class="hidden-col">Recee Planed</th>
66
                <th>Recee Actual(Branding L1)</th>
67
                <th class="hidden-col">Stock Payment</th>
68
                <th class="hidden-col">2D with BOQ Planed</th>
69
                <th>BOQ Actual(Branding L1)</th>
70
                <th>BOQ Document(Branding L1)</th>
71
                <th class="hidden-col">3D with BOQ Planed</th>
72
                <th class="hidden-col">3D with BOQ Actual</th>
73
                <th class="hidden-col">3D with BOQ</th>
74
                <th class="hidden-col">PO To Vendor Planed</th>
75
                <th class="hidden-col">PO To Vendor Actual</th>
34671 aman.kumar 76
 
35971 aman 77
                <th class="hidden-col">Briefing Partner Date</th>
78
                <th class="hidden-col">Briefing Partner Actual Date</th>
79
                <th class="hidden-col">Deployment Planed</th>
80
                <th>Deployment Actual(Branding L1)</th>
81
                <th class="hidden-col">Final Pics Planed</th>
82
                <th>Final Pics Actual(Branding L1)</th>
83
                <th>Final Pics(Branding L1)</th>
84
                <th class="hidden-col">NOC Actual</th>
85
                <th class="hidden-col">NOC</th>
28599 amit.gupta 86
                <th>Submit</th>
87
                 <th>Designing Done</th>
88
            </tr>
89
            </thead>
90
            <tbody>
91
                #foreach($pob in $partnerOnBoardingPanel )
28901 manish 92
 
93
               #if($pob.getHoldTimestamp())
94
                <tr class="design-hold" >
28599 amit.gupta 95
                   #parse("partner-onboarding-design-row-index.vm")
96
 
97
                </tr>
28901 manish 98
 
99
                #else
100
                <tr >
101
                   #parse("partner-onboarding-design-row-index.vm")
102
 
103
                </tr>
28599 amit.gupta 104
                #end
28901 manish 105
 
106
                #end
28599 amit.gupta 107
 
108
            </tbody>
109
 
110
        </table>
111
    </div>
35971 aman 112
 
113
    ## Pagination Controls (Bottom)
114
    <div class="col-lg-12" style="margin-top: 15px;">
115
        <div class="row">
116
            <div class="col-lg-12 text-center">
117
                #if($totalRecords > 0)
118
                    <span class="pagination-info">Showing $startRecord - $endRecord of $totalRecords</span>
119
                    <ul class="pagination pagination-sm" style="margin: 0 15px; display: inline-flex;">
120
                        #if($currentPage > 0)
121
                            <li><a href="javascript:void(0)" class="design-tat-page-link" data-page="0">First</a></li>
122
                            <li><a href="javascript:void(0)" class="design-tat-page-link" data-page="$prevPage">Prev</a>
123
                            </li>
124
                        #else
125
                            <li class="disabled"><span>First</span></li>
126
                            <li class="disabled"><span>Prev</span></li>
127
                        #end
128
 
129
                        <li class="active"><span>Page $currentPageDisplay of $totalPages</span></li>
130
 
131
                        #if($currentPage < $lastPage)
132
                            <li><a href="javascript:void(0)" class="design-tat-page-link" data-page="$nextPage">Next</a>
133
                            </li>
134
                            <li><a href="javascript:void(0)" class="design-tat-page-link" data-page="$lastPage">Last</a>
135
                            </li>
136
                        #else
137
                            <li class="disabled"><span>Next</span></li>
138
                            <li class="disabled"><span>Last</span></li>
139
                        #end
140
                    </ul>
141
                    <select class="form-control design-tat-page-size" style="width: 120px; display: inline-block;">
142
                        <option value="10" #if($pageSize==10)selected#end>10 per page</option>
143
                        <option value="25" #if($pageSize==25)selected#end>25 per page</option>
144
                        <option value="50" #if($pageSize==50)selected#end>50 per page</option>
145
                        <option value="100" #if($pageSize==100)selected#end>100 per page</option>
146
                    </select>
147
                #end
148
            </div>
149
        </div>
150
    </div>
28599 amit.gupta 151
</section>
152
 
153
 
154
<script type="text/javascript">
155
 
156
    $(document).ready(function () {
35971 aman 157
 
158
        // Handle filter change
159
        $('#holdFilterSelect').on('change', function () {
160
            refreshDesignTatList(0);
161
        });
162
 
163
        // Search button click handler
164
        $('#designTatSearchBtn').on('click', function () {
165
            refreshDesignTatList(0);
166
        });
167
 
168
        // Search on Enter key
169
        $('#designTatSearch').on('keypress', function (e) {
170
            if (e.which === 13) {
171
                refreshDesignTatList(0);
172
            }
173
        });
174
 
175
        // Clear search button
176
        $('#clearDesignTatSearchBtn').on('click', function () {
177
            $('#designTatSearch').val('');
178
            refreshDesignTatList(0);
179
        });
180
 
181
        // Pagination link click handler
182
        $(document).on('click', '.design-tat-page-link', function (e) {
183
            e.preventDefault();
184
            refreshDesignTatList($(this).data('page'));
185
        });
186
 
187
        // Page size change handler
188
        $(document).on('change', '.design-tat-page-size', function () {
189
            refreshDesignTatList(0);
190
        });
191
 
192
        // Destroy existing DataTable if it exists
193
        if ($.fn.DataTable.isDataTable('#OnboardingDesign')) {
194
            $('#OnboardingDesign').DataTable().destroy();
195
        }
196
 
28599 amit.gupta 197
      var dtable = $('#OnboardingDesign').DataTable({
198
             "scrollX": true,
199
            "scrollY": "518px",
200
            scrollCollapse: true,
35971 aman 201
          "fixedHeader": true,
202
          "paging": false,
203
          "info": false,
204
          "bFilter": false,
205
 
28599 amit.gupta 206
        fixedColumns:   {
207
            leftColumns: 2
208
        },
35971 aman 209
 
28599 amit.gupta 210
          "columnDefs": [
211
                   { "targets": 1, "orderDataType":  "dom-text", "type":"string" },
212
                   { "targets": 2, "orderDataType":  "date-dd-mmm-yyyy", "type":"string" },
213
                   { "targets": 3, "orderDataType": "date-dd-mmm-yyyy", "type": "string" },
214
                   { "targets": 4, "orderDataType": "dom-text-numeric", "type":"number"},
35971 aman 215
              {"targets": 5, "orderDataType": "dom-text", "type": "string"},
216
              {"targets": 6, "orderDataType": "dom-text", "type": "string"},
217
              {"targets": 7, "orderDataType": "dom-text", "type": "string"},
218
              {"targets": 9, "orderDataType": "date-dd-mmm-yyyy", "type": "string"},
219
              {"targets": 12, "orderDataType": "dom-text", "type": "string"},
220
              {"targets": 14, "orderDataType": "date-dd-mmm-yyyy", "type": "string"},
221
              {"targets": 17, "orderDataType": "date-dd-mmm-yyyy", "type": "string"},
222
              {"targets": 27, "orderDataType": "date-dd-mmm-yyyy", "type": "string"},
223
              {"targets": 29, "orderDataType": "date-dd-mmm-yyyy", "type": "string"},
224
              ## Column hiding is done via CSS class="hidden-col" on <th>/<td> elements.
225
              ## Do NOT use DataTables visible:false — it removes TDs from DOM,
226
              ## which breaks td:eq(N) selectors in panel-listing.js submit handler.
227
              {"targets": [13, 15, 16, 19, 20, 21, 22, 23, 24, 25, 26, 28, 31, 32], "className": "hidden-col"}
228
          ],
229
 
230
      });
28599 amit.gupta 231
    });
35971 aman 232
 
233
    // Function to refresh design tat list via AJAX
234
    function refreshDesignTatList(page) {
235
        var holdFilter = $('#holdFilterSelect').val() || 'pending';
236
        var pageSize = $('.design-tat-page-size').val() || '25';
237
        var search = $('#designTatSearch').val() || '';
238
        var url = context + '/partnerOnBoardingDesign?holdFilter=' + encodeURIComponent(holdFilter)
239
                + '&page=' + (page || 0)
240
                + '&pageSize=' + pageSize
241
                + '&search=' + encodeURIComponent(search);
242
        $.ajax({
243
            url: url,
244
            type: 'GET',
245
            success: function (response) {
246
                $('#main-content').html(response);
247
            }
248
        });
249
    }
250
 
28599 amit.gupta 251
</script>
252
 
253
<style>
35971 aman 254
    .hidden-col {
255
        display: none !important;
256
    }
257
 
258
    td.hidden-col {
259
        display: none !important;
260
    }
261
 
262
    .pagination-info {
263
        margin-right: 15px;
264
        font-weight: bold;
265
    }
266
 
267
    .pagination {
268
        margin: 0;
269
    }
270
 
271
    .pagination li {
272
        display: inline-block;
273
        margin: 0 2px;
274
    }
275
 
276
    .pagination li a, .pagination li span {
277
        padding: 5px 10px;
278
        border: 1px solid #ddd;
279
        text-decoration: none;
280
        color: #333;
281
    }
282
 
283
    .pagination li.active span {
284
        background-color: #337ab7;
285
        color: white;
286
        border-color: #337ab7;
287
    }
288
 
289
    .pagination li.disabled span {
290
        color: #999;
291
        cursor: not-allowed;
292
    }
293
</style>