rabin 2 years ago
parent
commit
6983f857fb

+ 15 - 10
service/agent/assets/pc/html/setMemberGoods.html

@@ -207,9 +207,10 @@
             addtr += '<td class="goods_name">'+node.name+'</td>';     
             addtr += '<td class="goods_price">'+node.price+'</td>';     
             if (node.id.indexOf('_2') != -1 && node.id.indexOf('-') != -1) {
-                addtr += '<td><input type="hidden" value="'+node.total+'" class="goods_num">'+node.total+'</td>'; 
+                //addtr += '<td><input type="hidden" value="'+node.total+'" class="goods_num">'+node.total+'</td>'; 
+                addtr += '<td><div class="jiajian" value='+node.id+'><span class="jian" onclick="dec(\''+node.id+'\')">-</span><input type="text" disabled value="'+node.total+'" class="goods_num" data-min="'+node.total+'" ><span class="jia" onclick="add(\''+node.id+'\')">+</span></div></td>'; 
             } else {
-                addtr += '<td><div class="jiajian" value='+node.id+'><span class="jian" onclick="dec(\''+node.id+'\')">-</span><input type="text" value="'+node.total+'" class="goods_num"><span class="jia" onclick="add(\''+node.id+'\')">+</span></div></td>'; 
+                addtr += '<td><div class="jiajian" value='+node.id+'><span class="jian" onclick="dec(\''+node.id+'\')">-</span><input type="text" value="'+node.total+'" class="goods_num" data-min="0"><span class="jia" onclick="add(\''+node.id+'\')">+</span></div></td>'; 
             }
             
             if (node.total <= 0) {
@@ -225,23 +226,27 @@
 
     function add(id)
     {
-        if (id.indexOf('_2') != -1 && id.indexOf('-') != -1) {
-            
-        } else {
-            goods[id].total += 1;
-            get(id).find('.goods_num').val(goods[id].total);
-            setTotal();
-        }
+        goods[id].total += 1;
+        get(id).find('.goods_num').val(goods[id].total);
+        setTotal();
     }
     
     function dec(id)
     {
+        var e = get(id).find('.goods_num');
+        if (e.attr('data-min')) {
+            var min = parseInt(e.attr('data-min'));
+            if (goods[id].total <= min) {
+                //alert('无法减少');
+                return;
+            }
+        }
         goods[id].total -= 1;
         if (goods[id].total < 1) {
             goods[id].total = 0;
         }
 
-        get(id).find('.goods_num').val(goods[id].total);
+        e.val(goods[id].total);
         setTotal();
     }
 

+ 32 - 2
service/agent/lib/Member_set.php

@@ -127,7 +127,7 @@ class Member_set
                             continue;
                         }
                     } else {
-                        $sku = explode(',', $sku_id);
+                        $sku = explode('i', $sku_id);
                         foreach ($sku as $v1) {
                             $w['sku_id'] = $v1;
                             $info = Dever::db('agent/member_goods')->one($w);
@@ -138,7 +138,37 @@ class Member_set
                                 $state = Dever::db('agent/member_goods')->update($u);
                             }
                         }
-                        continue;
+
+                        $total = $v['total'] - count($sku);
+                        
+                        if ($total > 0) {
+                            if ($card['create_type'] == 2) {
+                                $cash = $price = $card['price'] * $total;
+                                $total = 1;
+                                $w['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $mid, -1, $cash);
+                                if (!$w['sku_id']) {
+                                    continue;
+                                }
+                            } else {
+                                $cash = $price = $card['price'];
+                                for($i=0; $i<$total;$i++) {
+                                    $w['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $mid, -1, $cash);
+                                    if ($w['sku_id']) {
+                                        $w['total_num'] = 1;
+                                        $w['cash'] = $cash;
+                                        $w['price'] = $price;
+                                        $w['name'] = $name;
+                                        $state = Dever::db('agent/member_goods')->insert($w);
+                                        if ($state) {
+                                            Dever::load('agent/lib/member_set')->log($w['mid'], '', $w['type'], $w['type_id'], $w['sku_id'], 1, 0, 1, $name, $desc);
+                                        }
+                                    }
+                                }
+                                continue;
+                            }
+                        } else {
+                            continue;
+                        }
                     }
                     
                 } elseif ($type == 3) {

+ 1 - 1
service/agent/lib/Set.php

@@ -101,7 +101,7 @@ class Set
                                 $sku_id[] = $v1['sku_id'];
                             }
                         }
-                        $data[1]['children'][$k]['id'] = $v['id'] . '-' . implode(',', $sku_id) . '_2';;
+                        $data[1]['children'][$k]['id'] = $v['id'] . '-' . implode('i', $sku_id) . '_2';;
                         $data[1]['children'][$k]['select'] = 1;
                         $data[1]['children'][$k]['total'] = $num;
                     }