Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
33247 ranu 1
<style>
2
    .tdInput .bootstrap-tagsinput {
3
        width: 100%;
4
    }
5
</style>
6
<div class="well" style="padding: 10px;">
7
    <p><b>#<span id="selectedTransactionId"></span> - Order List</b></p>
8
    <input type="hidden" id="selectedWarehouseId">
9
    <h4>In Stock </h4>
10
    <table id="wareHouseTransactionTable" class="table table-striped table-advance table-hover" style="width:100%">
11
        <thead>
12
        <tr>
13
            <th>Id</th>
33264 ranu 14
            <th>Item Id</th>
33247 ranu 15
            <th>Product Desc</th>
33273 ranu 16
            <th>Qty</th>
33247 ranu 17
            <th>U.Price</th>
33257 ranu 18
            <th>Imeis/Qty to Bill</th>
33273 ranu 19
            <th>Action</th>
33247 ranu 20
        </tr>
21
        </thead>
22
        <tbody>
23
            #if(!$inStockOrdersSerialized.isEmpty())
24
                #foreach($order in $inStockOrdersSerialized)
25
                <tr class="main-tr">
26
                    <td class="orderId">$order.getId()</td>
33257 ranu 27
                    <td>$order.getLineItem().getItemId()</td>
33247 ranu 28
                    <td>$order.getLineItem().getItemDescription()</td>
29
                    <td><span class="remainQty">0</span> / <span class="qty">$order.getLineItem().getQuantity()</span>
30
                    </td>
31
                    <td>$order.getLineItem().getUnitPrice()</td>
32
                    #if($order.getLineItem().getItem().getType()=="SERIALIZED")
33
                        <td style="width: 35%;" class="tdInput"><input type="text" class="imeis-to-grn form-control"
34
                                                                       placeholder=""></td>
35
                    #end
33273 ranu 36
                    <td>
37
                        <button type="button" class="btn btn-primary btn-sm changeWarehouse-mk" data-toggle="modal"
38
                                data-target="#changeWarehouseModal" data-OrderId="$order.getId()"
39
                                data-itemId="$order.getLineItem().getItemId()"
40
                                data-warehouseId="$order.getWarehouseId()">
33451 ranu 41
                            Change Billing Warehouse
33273 ranu 42
                        </button>
33569 ranu 43
                        <br>
44
                        <button type="button" class="btn btn-primary btn-sm mk_moveToBill" data-orderid="$order.getId()"
45
                                data-warehouseid="$order.getWarehouseId()"
46
                                data-transactionid="$order.getTransactionId()">Move to Bill
47
                        </button>
33273 ranu 48
                    </td>
33247 ranu 49
                </tr>
50
                    #foreach($agingModelEntry in $allOrderSerialNumberMap.entrySet())
51
                        #if($agingModelEntry.getKey() == $order.getId())
52
                            #set($agingModelMap = $agingModelEntry.getValue())
53
                            #foreach($agingModel in $agingModelMap.entrySet())
54
                                #set($agingModelValueMap = $agingModel.getValue())
33253 ranu 55
                                #set($counter = 0)
33247 ranu 56
                                #foreach ($aging in $agingModelValueMap.entrySet())
57
                                    #if($agingModelValueMap)
58
                                    <tr>
33283 ranu 59
                                        <td colspan="7">
33247 ranu 60
                                            <table class="table table-responsive table-bordered"
61
                                                   style="margin-bottom: 0;">
62
                                                <tbody>
63
 
64
                                                <tr>
65
                                                    <td style="width: 20%;"><span><b>Age : </b></span>$aging.getKey()
66
                                                        Days Old
67
                                                    </td>
68
                                                    <td>
69
 
70
                                                        #foreach ($value in $aging.getValue())
71
                                                            <input type="hidden" class="agingserialNumber"
33253 ranu 72
                                                                   data-ageingid="$counter"
33247 ranu 73
                                                                   value="$value.getSerialNumber()">
33321 ranu 74
                                                            <span>$value.getMorphSerialNumber(),</span>
33247 ranu 75
                                                        #end
76
                                                    </td>
77
                                                </tr>
78
 
79
                                                </tbody>
80
 
81
                                            </table>
82
                                        </td>
33253 ranu 83
                                        #set($counter = $counter + 1)
33247 ranu 84
                                    </tr>
85
                                    #end
86
 
87
                                #end
88
 
89
                            #end
90
                        #end
91
                    #end
92
                #end
93
            #end
94
            #if(!$inStockOrdersNonSerialized.isEmpty())
95
                #foreach($order in $inStockOrdersNonSerialized)
96
                <tr class="main-tr">
97
                    <td class="orderId">$order.getId()</td>
33257 ranu 98
                    <td>$order.getLineItem().getItemId()</td>
33247 ranu 99
                    <td>$order.getLineItem().getItemDescription()</td>
100
                    <td><span class="remainQty">0</span> / <span class="qty">$order.getLineItem().getQuantity()</span>
101
                    </td>
102
                    <td>$order.getLineItem().getUnitPrice()</td>
103
                    <td><input type="text" class="form-control filledQty" placeholder="Fill Qty"></td>
33273 ranu 104
                    <td>
105
                        <button type="button" class="btn btn-primary btn-sm changeWarehouse-mk" data-toggle="modal"
106
                                data-target="#changeWarehouseModal" data-OrderId="$order.getId()"
107
                                data-itemId="$order.getLineItem().getItemId()"
108
                                data-warehouseId="$order.getWarehouseId()">
33451 ranu 109
                            Change Billing Warehouse
33273 ranu 110
                        </button>
33569 ranu 111
                        <br>
112
                        <button type="button" class="btn btn-primary btn-sm mk_moveToBill" data-orderid="$order.getId()"
113
                                data-warehouseid="$order.getWarehouseId()"
114
                                data-transactionid="$order.getTransactionId()">Move to Bill
115
                        </button>
33273 ranu 116
                    </td>
33247 ranu 117
                </tr>
118
                <tr>
33283 ranu 119
                    <td colspan="7">Available Quantity :
33273 ranu 120
                        $orderIdStockAvailabilityMap.getOrDefault($order.getId(),0)</td>
33247 ranu 121
                </tr>
122
                #end
123
            #end
124
            #if($inStockOrdersSerialized.isEmpty() && $inStockOrdersNonSerialized.isEmpty())
125
            <tr>
33283 ranu 126
                <td colspan="7"> No Order Found</td>
33247 ranu 127
            </tr>
128
            #end
129
        </tbody>
130
    </table>
33263 ranu 131
    #if(!$inStockOrdersSerialized.isEmpty() || !$inStockOrdersNonSerialized.isEmpty())
33261 ranu 132
        <div class="row">
133
            <div class="col-md-12">
33741 amit.gupta 134
                <div class="form-group row">
135
                    <label for="inputEmail3" class="col-sm-2 col-form-label">$oneOrder.getRetailerCity()
136
                        , $oneOrder.getRetailerState() - $oneOrder.getRetailerPinCode()</label>
137
                    <div class="col-sm-3">
138
                        <select class="form-control mk_provider">
139
                            <option selected>Choose Provider</option>
140
                            #foreach($warehouseProvider in $warehouseProviders)
141
                                <option value="$warehouseProvider.getGstin()" data-providerid="$warehouseProvider.getProviderId()">
142
                                    $warehouseProvider.getProviderName()
143
                                </option>
144
                            #end
145
                        </select>
146
                    </div>
147
                    <div class="col-sm-3 mk_self" style="display: none">
148
                        <input class="form-control mk_vehicleNumber" type="text" placeholder="Vehicle No. UP16XX"
149
                               />
150
                    </div>
151
                    <div class="col-sm-3 mk_rider" style="display: none">
152
                        <select class="form-control">
153
                            <option selected>Choose Rider</option>
154
                            #foreach($rider in $riders)
155
                                <option value="$rider.getVehicleNumber()">
156
                                    $rider.getRiderName() - $rider.getVehicleNumber()
157
                                </option>
158
                            #end
159
                        </select>
160
                    </div>
161
                    <div class="col-sm-4 pull-right">
162
                        <button type="button" class="btn btn-info pull-right order_accepted">Generate Bill</button>
163
                    </div>
164
                </div>
165
 
33261 ranu 166
            </div>
33247 ranu 167
        </div>
33261 ranu 168
    #end
169
 
33247 ranu 170
</div>
171
<div class="clearfix"></div><br>
172
<div class="well" style="padding: 10px;">
173
    <h4>Out of Stock </h4>
33329 ranu 174
    <table id="wareHouseOutOfStockTransactionTable" class="table table-striped table-advance table-hover"
175
           style="width:100%">
33247 ranu 176
        <thead>
177
        <tr>
178
            <th>Id</th>
33257 ranu 179
            <th>Item Id</th>
180
            <th>Desc</th>
181
            <th>Qty</th>
33247 ranu 182
            <th>U.Price</th>
33257 ranu 183
            <th>Action</th>
33247 ranu 184
        </tr>
185
        </thead>
186
        <tbody>
187
            #if(!$oOSOrdersSerialized.isEmpty())
188
                #foreach($order in $oOSOrdersSerialized)
189
                <tr class="main-tr">
190
                    <td class="orderId">$order.getId()</td>
33257 ranu 191
                    <td>$order.getLineItem().getItemId()</td>
33247 ranu 192
                    <td>$order.getLineItem().getItemDescription()</td>
193
                    <td><span class="remainQty">0</span> / <span class="qty">$order.getLineItem().getQuantity()</span>
194
                    </td>
195
                    <td>$order.getLineItem().getUnitPrice()</td>
33257 ranu 196
                    <td>
197
                        <button type="button" class="btn btn-primary btn-sm changeWarehouse-mk" data-toggle="modal"
198
                                data-target="#changeWarehouseModal" data-OrderId="$order.getId()"
199
                                data-itemId="$order.getLineItem().getItemId()"
200
                                data-warehouseId="$order.getWarehouseId()">
33403 amit.gupta 201
                            Change Billing Warehouse
33257 ranu 202
                        </button>
33403 amit.gupta 203
                        <br/>
33741 amit.gupta 204
                        <button type="button" class="btn btn-primary btn-sm mk_moveToBill" data-orderid="$order.getId()"
205
                                data-warehouseid="$order.getWarehouseId()"
206
                                data-transactionid="$order.getTransactionId()">Move to Bill
207
                        </button>
33257 ranu 208
                    </td>
33247 ranu 209
                </tr>
210
                #end
211
            #end
212
            #if(!$outOfStockOrdersNonSerialized.isEmpty())
213
                #foreach($order in $outOfStockOrdersNonSerialized)
214
                <tr class="main-tr">
215
                    <td class="orderId">$order.getId()</td>
33257 ranu 216
                    <td>$order.getLineItem().getItemId()</td>
33247 ranu 217
                    <td>$order.getLineItem().getItemDescription()</td>
218
                    <td><span class="remainQty">0</span> / <span class="qty">$order.getLineItem().getQuantity()</span>
219
                    </td>
220
                    <td>$order.getLineItem().getUnitPrice()</td>
33257 ranu 221
                    <td>
222
                        <button type="button" class="btn btn-primary btn-sm changeWarehouse-mk" data-toggle="modal"
223
                                data-target="#changeWarehouseModal" data-OrderId="$order.getId()"
224
                                data-itemId="$order.getLineItem().getItemId()"
225
                                data-warehouseId="$order.getWarehouseId()">
33451 ranu 226
                            Change Billing Warehouse
33257 ranu 227
                        </button>
33566 ranu 228
                        <br>
229
                        <button type="button" class="btn btn-primary btn-sm mk_moveToBill" data-orderid="$order.getId()"
230
                                data-warehouseid="$order.getWarehouseId()"
231
                                data-transactionid="$order.getTransactionId()">Move to Bill
232
                        </button>
33257 ranu 233
                    </td>
33247 ranu 234
                </tr>
235
                #end
236
            #end
237
            #if($outOfStockOrders.isEmpty() && $outOfStockOrdersNonSerialized.isEmpty())
238
            <tr>
33257 ranu 239
                <td colspan="6"> No Order Found</td>
33247 ranu 240
            </tr>
241
            #end
242
        </tbody>
243
    </table>
244
</div>
33253 ranu 245
 
33257 ranu 246
##bootstrap popup
247
<div class="modal fade" id="changeWarehouseModal" role="dialog">
248
    <div class="modal-dialog modal-sm">
249
 
250
        <!-- Modal content-->
251
        <div class="modal-content">
252
            <div class="modal-header">
253
                <button type="button" class="close" data-dismiss="modal">&times;</button>
254
                <h4 class="modal-title">Change Warehouse</h4>
255
            </div>
256
            <div class="modal-body">
33451 ranu 257
                #if($email== 'vinay.p@smartdukaan.com')
258
                    <select class="form-control all-warehouse-map" id="selectedFromBillingWarehouse">
259
                        <option value="" disabled selected>Choose Warehouse</option>
260
                        #foreach($warehouse in $warehouseMap.entrySet())
261
                            <option value="$warehouse.getKey()">$warehouse.getValue()</option>
262
                        #end
263
                    </select>
264
                #else
265
                    <div class="brand-mapping-warehouse-mk"></div>
266
                #end
267
 
33257 ranu 268
            </div>
269
            <div class="modal-footer">
270
                <button type="button" class="btn btn-info change-warehouse-save-mk" data-dismiss="modal">Submit</button>
271
            </div>
272
        </div>
273
 
274
    </div>
275
</div>
276
 
33247 ranu 277
<script>
278
    $(document).ready(function () {
33741 amit.gupta 279
        debugger;
33247 ranu 280
        $("#wareHouseTransactionTable > tbody > tr").each(function () {
281
            var qtyElem = $(this).find(".qty");
282
            var remainQtyElem = $(this).find(".remainQty");
283
            var qty = parseInt(qtyElem.text()); // Get initial quantity
284
            var imeiInputElem = $(this).find(".imeis-to-grn");
285
 
286
            imeiInputElem.on('itemAdded itemRemoved', function () {
287
                remainQtyElem.text(imeiInputElem.tagsinput('items').length); // Update displayed quantity
288
            });
289
 
290
            imeiInputElem.tagsinput({
291
                maxTags: qty,
292
                trimValue: true,
293
                allowDuplicates: false,
294
                confirmKeys: [13, 44, 188, 32],
295
                delimiterRegex: /[,\s]/,
296
                tagClass: function (item) {
297
                    if (item.valid == null) return 'label label-primary';
298
                    if (item.valid) {
299
                        return 'label label-success';
300
                    } else {
301
                        return 'label label-danger';
302
                    }
303
                },
304
            });
305
 
306
            imeiInputElem.on('itemAdded', function (event) {
307
                var enteredValue = event.item;
33253 ranu 308
                const inputValues = (imeiInputElem.val()).split(',');
33247 ranu 309
                var serialNumbers = []; // Array to store all aging serial numbers within this row
33253 ranu 310
                var ageingSerials = {}; // Array to store all aging serial numbers within this row
33269 ranu 311
 
33247 ranu 312
                // Collect all aging serial numbers within this row
33253 ranu 313
                imeiInputElem.closest("tr").nextUntil('.main-tr').find(".agingserialNumber").each(function (row, index) {
314
                    var ageing = $(this).data('ageingid');
33642 amit.gupta 315
                    serialNumbers.push($(this).val().toLowerCase());
33253 ranu 316
                    if (!ageingSerials.hasOwnProperty(ageing)) {
317
                        ageingSerials[ageing] = [];
318
                    }
319
                    ageingSerials[ageing].push($(this).val());
33247 ranu 320
                });
321
 
33253 ranu 322
                console.log("ageingSerials number {}", ageingSerials);
323
 
33642 amit.gupta 324
                if (!serialNumbers.includes(enteredValue.toLowerCase())) {
33247 ranu 325
                    $('.bootstrap-tagsinput').find('.tag').last().removeClass('label-primary');
326
                    $('.bootstrap-tagsinput').find('.tag').last().addClass('label-danger');
33269 ranu 327
                    $(".order_accepted").prop("disabled", true);
33411 ranu 328
                    alert('Entered Imeis is not matching with stock Imeis')
329
 
330
                    // Remove the incorrect tag after alert
331
                    imeiInputElem.tagsinput('remove', enteredValue);
332
 
33269 ranu 333
                } else {
334
                    $(".order_accepted").prop("disabled", false);
33247 ranu 335
                }
336
            });
337
 
338
 
339
        });
33741 amit.gupta 340
 
341
        $("select.mk_provider").change(function () {
342
            $('div.mk_rider').hide();
343
            $('div.mk_self').hide();
344
            let providerId = $(this).val();
345
            if (providerId == SELF_PICKUP) {
346
                $('div.mk_rider').hide();
347
                $('div.mk_self').show();
348
            } else if (providerId == RUNNER) {
349
                $('div.mk_self').hide();
350
                $('div.mk_rider').show();
351
 
352
            }
353
        });
33247 ranu 354
    });
355
</script>
33253 ranu 356