Преглед изворни кода

买家求购现货数量统计

yangc пре 8 година
родитељ
комит
84afeb5c46

+ 48 - 2
src/main/webapp/resources/js/usercenter/controllers/forstore/seek_purchase_ctrl.js

@@ -89,6 +89,8 @@ define(['app/app'], function(app) {
           } else if (status == 0){ // 收起
             seek.$status = status;
           }
+        $scope.selectAmount = 0;
+        $scope.selectPrice = 0;
       }
       
       var clearSeekStatus = function () {
@@ -228,6 +230,30 @@ define(['app/app'], function(app) {
             }
           }
         }
+        if ($scope.goods[index].$checked) {
+          var amount = 0;
+          angular.forEach($scope.seekListData.content, function (item) {
+            if (item.$status == 1) {
+              amount = item.amount;
+            }
+          })
+          if (amount > 0) {
+            $scope.selectAmount = 0;
+          }
+          $scope.selectPrice = 0;
+          angular.forEach($scope.goods, function (item, index) {
+            if (item.$checked) {
+              if (amount > 0) {
+                if (amount < $scope.selectAmount + $scope.fragments[index].num) {
+                  $scope.fragments[index].num = amount - $scope.selectAmount;
+                } else {
+                  $scope.selectAmount += $scope.fragments[index].num;
+                }
+              }
+              $scope.selectPrice += $scope.fragments[index].num * $scope.fragments[index].price;
+            }
+          })
+        }
       }
       $scope.changeNum = function (newNum, index) {
         var pack = $scope.goods[index].perQty || $scope.goods[index].minPackQty;
@@ -329,12 +355,32 @@ define(['app/app'], function(app) {
       }
 
       $scope.showUseFlag = false;
-      $scope.setShowUseFlag = function (flag, of) {
+      $scope.setShowUseFlag = function (flag, offer) {
         if (flag) {
-          $scope.currentOffer = of;
+          $scope.currentOffer = offer;
         }
         $scope.showUseFlag = flag;
       }
 
+      $scope.selectAmount = 0;
+      $scope.selectPrice = 0;
+      $scope.onSelectGoods = function (goods, seek, goodsIndex) {
+        if (goods.$checked) {
+          if (seek.amount) {
+            if (seek.amount <  $scope.selectAmount + $scope.fragments[goodsIndex].num) {
+              goods.$checked = false;
+              return;
+            }
+            $scope.selectAmount += $scope.fragments[goodsIndex].num;
+          }
+          $scope.selectPrice += $scope.fragments[goodsIndex].num * $scope.fragments[goodsIndex].price;
+        } else {
+          if (seek.amount) {
+            $scope.selectAmount -= $scope.fragments[goodsIndex].num;
+          }
+          $scope.selectPrice -= $scope.fragments[goodsIndex].num * $scope.fragments[goodsIndex].price;
+        }
+      }
+
     }]);
 });

+ 4 - 4
src/main/webapp/resources/view/usercenter/forstore/seekPurchase.html

@@ -555,7 +555,7 @@
                                     <tr ng-repeat="go in goods track by $index">
                                         <td width="68">
                                             <label class="com-check-box">
-                                                <input type="checkbox" id="{{$index + 2}}" ng-model="go.$checked">
+                                                <input type="checkbox" id="{{$index + 2}}" ng-model="go.$checked" ng-change="onSelectGoods(go, seek, $index)">
                                                 <label for="{{$index + 2}}"></label>
                                             </label>
                                         </td>
@@ -580,9 +580,9 @@
                                 </table>
                             </div>
                             <div class="all-buy">
-                                <span>剩余数量:0</span>
-                                <span>已选数量:0</span>
-                                <span>产品小计:0元</span>
+                                <span><div ng-if="seek.amount">剩余数量:{{seek.amount - selectAmount}}</div></span>
+                                <span><div ng-if="seek.amount">已选数量:{{selectAmount}}</div></span>
+                                <span>产品小计:{{selectPrice}}元</span>
                                 <a href="javascript:void(0)">立即购买</a>
                             </div>
                         </div>