rabin 3 år sedan
förälder
incheckning
465f668e94
2 ändrade filer med 23 tillägg och 4 borttagningar
  1. 7 1
      app/card/src/Api.php
  2. 16 3
      app/shop/lib/Sell.php

+ 7 - 1
app/card/src/Api.php

@@ -353,7 +353,13 @@ class Api extends Core
                         }
                         if ($goods) {
                             if (in_array($v1['id'], $goods)) {
-                                $price += ($v1['cash'] * $v1['num']);
+                                if ($card_info['category']) {
+                                    if (in_array($v1['top_category_id'], $card_info['category'])) {
+                                        $price += ($v1['cash'] * $v1['num']);
+                                    }
+                                } else {
+                                    $price += ($v1['cash'] * $v1['num']);
+                                }
                             }
                         } elseif ($card_info['category']) {
                             if (in_array($v1['top_category_id'], $card_info['category'])) {

+ 16 - 3
app/shop/lib/Sell.php

@@ -316,7 +316,13 @@ class Sell
                     }
                     if ($goods) {
                         if (in_array($v['goods_id'], $goods)) {
-                            $info['card']['goods'][] = $info['goods'][$k]['info'];
+                            if ($card_info['category']) {
+                                if (in_array($info['goods'][$k]['info']['top_category_id'], $card_info['category'])) {
+                                    $info['card']['goods'][] = $info['goods'][$k]['info'];
+                                }
+                            } else {
+                                $info['card']['goods'][] = $info['goods'][$k]['info'];
+                            }
                         }
                     } elseif ($card_info['category']) {
                         if (in_array($info['goods'][$k]['info']['top_category_id'], $card_info['category'])) {
@@ -578,8 +584,15 @@ class Sell
                                 }
                                 if ($goods) {
                                     if (in_array($v['id'], $goods)) {
-                                        $price += ($v['cash'] * $v['num']);
-                                        $card_goods[] = $v;
+                                        if ($card_info['category']) {
+                                            if (in_array($v['top_category_id'], $card_info['category'])) {
+                                                $price += ($v['cash'] * $v['num']);
+                                                $card_goods[] = $v;
+                                            }
+                                        } else {
+                                            $price += ($v['cash'] * $v['num']);
+                                            $card_goods[] = $v;
+                                        }
                                     }
                                 } elseif ($card_info['category']) {
                                     if (in_array($v['top_category_id'], $card_info['category'])) {