|
@@ -196,6 +196,7 @@ class Sell
|
|
|
}
|
|
|
|
|
|
$info['card_name'] = '';
|
|
|
+ $info['card_price'] = 0;
|
|
|
if ($info['card_code_id'] > 0) {
|
|
|
$config = Dever::db('main/sell_config')->find();
|
|
|
$info['card_name'] = $config['card_name'];
|
|
@@ -292,10 +293,38 @@ class Sell
|
|
|
$info['address'] = Dever::db('passport/address')->find($info['address_id']);
|
|
|
}
|
|
|
if ($this->view == 2) {
|
|
|
-
|
|
|
+ $check = false;
|
|
|
+ if (isset($card_info) && $card_info) {
|
|
|
+ $card_goods = array();
|
|
|
+ $check = false;
|
|
|
+ $goods = Dever::db('card/info_goods')->getData(array('card_id' => $card_info['id']));
|
|
|
+ if ($goods || $card_info['category']) {
|
|
|
+ $check = true;
|
|
|
+ }
|
|
|
+ }
|
|
|
foreach ($info['goods'] as $k => $v) {
|
|
|
$info['goods'][$k]['info'] = Dever::load('goods/lib/info')->getPayInfo($v['goods_id'], $v['sku_id']);
|
|
|
$info['goods'][$k]['status_name'] = $goods_status[$v['status']];
|
|
|
+
|
|
|
+
|
|
|
+ if ($check) {
|
|
|
+ $card_info['category'] = explode(',', $card_info['category']);
|
|
|
+ if ($goods) {
|
|
|
+ $goods = array_keys($goods);
|
|
|
+ }
|
|
|
+ if ($goods) {
|
|
|
+ if (in_array($v['goods_id'], $goods)) {
|
|
|
+ $card_goods[] = $info['goods'][$k]['info'];
|
|
|
+ }
|
|
|
+ } elseif ($card_info['category']) {
|
|
|
+ if (in_array($info['goods'][$k]['info']['top_category_id'], $card_info['category'])) {
|
|
|
+ $info['card_price'] += ($info['goods'][$k]['info']['cash'] * $info['goods'][$k]['info']['num']);
|
|
|
+ $card_goods[] = $v;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $info['card_price'] += $info['goods'][$k]['info']['price'];
|
|
|
+ }*/
|
|
|
}
|
|
|
|
|
|
if ($info['invoice_id']) {
|
|
@@ -518,16 +547,16 @@ class Sell
|
|
|
|
|
|
if ($card) {
|
|
|
|
|
|
- $check = Dever::db('card/code')->find($card);
|
|
|
- if ($check['dh_uid'] == $data['uid']) {
|
|
|
- $card_info = Dever::db('card/info')->find($check['card_id']);
|
|
|
- if (!$check['total_cash']) {
|
|
|
- $check['total_cash'] = $card_info['value'];
|
|
|
+ $card_code = Dever::db('card/code')->find($card);
|
|
|
+ if ($card_code['dh_uid'] == $data['uid']) {
|
|
|
+ $card_info = Dever::db('card/info')->find($card_code['card_id']);
|
|
|
+ if (!$card_code['total_cash']) {
|
|
|
+ $card_code['total_cash'] = $card_info['value'];
|
|
|
}
|
|
|
- if (!$check['use_cash']) {
|
|
|
- $check['use_cash'] = 0;
|
|
|
+ if (!$card_code['use_cash']) {
|
|
|
+ $card_code['use_cash'] = 0;
|
|
|
}
|
|
|
- $card_cash = $check['total_cash'] - $check['use_cash'];
|
|
|
+ $card_cash = $card_code['total_cash'] - $card_code['use_cash'];
|
|
|
|
|
|
if ($card_cash > 0) {
|
|
|
$card_goods = array();
|
|
@@ -569,8 +598,8 @@ class Sell
|
|
|
} else {
|
|
|
$data['card'] = array();
|
|
|
$data['card']['goods'] = $card_goods;
|
|
|
- $data['card']['id'] = $check['id'];
|
|
|
- $data['card']['card'] = $check['card'];
|
|
|
+ $data['card']['id'] = $card_code['id'];
|
|
|
+ $data['card']['card'] = $card_code['card'];
|
|
|
if ($card_cash >= $price) {
|
|
|
$data['card']['cash'] = $price;
|
|
|
$data['price'] = 0;
|