Commit 8b638e12448ced41ce4cf51119db2360f464cdb0

Authored by Anastasia
1 parent 543a6adb

sum in order

controllers/OrderController.php
... ... @@ -395,6 +395,7 @@
395 395 return [
396 396 'success' => true,
397 397 'row' => $row,
  398 + 'price' => $variant->price * $count,
398 399 ];
399 400 }
400 401  
... ...
views/order/_form.php
... ... @@ -30,9 +30,6 @@
30 30 <?= $form->field($model, 'name')
31 31 ->textInput([ 'maxlength' => true ]) ?>
32 32  
33   - <?= $form->field($model, 'secondname')
34   - ->textInput([ 'maxlength' => true ]) ?>
35   -
36 33 <?= $form->field($model, 'phone')
37 34 ->textInput([ 'maxlength' => true ]) ?>
38 35  
... ... @@ -142,7 +139,9 @@
142 139 <div id="product-rows">
143 140 <?php
144 141 if (!$model->isNewRecord) {
  142 + $sum = 0;
145 143 foreach ($model->orderProducts as $index => $orderProduct) {
  144 + $sum += ( $orderProduct->count * $orderProduct->price );
146 145 echo $this->render(
147 146 '_order_product',
148 147 [
... ... @@ -154,9 +153,14 @@
154 153 ]
155 154 );
156 155 }
  156 +
157 157 }
158 158 ?>
  159 +
159 160 </div>
  161 + <?php if (!$model->isNewRecord) {
  162 + echo( " <div class='sum_all'>Всего <p>" . $sum . "</p></div>" );
  163 + } ?>
160 164 </div>
161 165 </div>
162 166  
... ...
views/order/_order_product.php
... ... @@ -17,7 +17,7 @@
17 17  
18 18 ?>
19 19  
20   -<div class="row row-order-product">
  20 +<div class="row row-order-product" data-price="<?= $price ?>">
21 21 <div class="col-md-4">
22 22 <?php
23 23 echo $form->field($orderProduct, "[$index]variant_id")
... ... @@ -32,7 +32,7 @@
32 32 <div class="col-md-3">
33 33 <?php
34 34 echo $form->field($orderProduct, "[$index]count")
35   - ->textInput()
  35 + ->textInput([ 'class' => 'count' ])
36 36 ->label(false);
37 37 ?>
38 38 </div>
... ...
web/js/order.js
... ... @@ -29,21 +29,21 @@ $(function() {
29 29 var order = $(this)
30 30 .data('id');
31 31 if (id.val() && count.val()) {
32   - var selector = '#order-product-pjax';
33 32 $.post('/admin/order/add-to-order', {
34 33 id: id.val(),
35 34 count: count.val(),
36 35 order: order
37 36 }, function(data) {
38 37 if (data.success) {
39   - $('#product-rows')
40   - .append(data.row);
41 38 var sum = $(".sum_all")
42 39 .children('p')
43 40 .text();
44 41 $(".sum_all")
45 42 .children('p')
46   - .html(parseInt(sum) + parseInt(data));
  43 + .html(parseInt(sum) + parseInt(data.price));
  44 + $('#product-rows')
  45 + .append(data.row);
  46 +
47 47 }
48 48  
49 49 });
... ... @@ -51,6 +51,7 @@ $(function() {
51 51 });
52 52 $(document).on('change', '.count', function() {
53 53 var count_old = parseInt(this.defaultValue);
  54 + console.log(count_old);
54 55 var count_new = parseInt(this.value);
55 56 var current_price = parseInt($(this).parents('.row-order-product').data('price'));
56 57 var total_price = parseInt($(".sum_all").children('p').text());
... ...