|
@@ -430,6 +430,7 @@ class Refund
|
|
|
$re_cash = $info['re_cash'];
|
|
|
if (isset($order['card_code_id']) && $order['card_code_id'] && $order['card_code_cash'] > 0) {
|
|
|
|
|
|
+ $card_cash = $order['card_code_cash'];
|
|
|
if ($re_cash > 0) {
|
|
|
$card_code_cash = $order['card_code_cash'] - $re_cash;
|
|
|
$order['card_code_cash'] = $re_cash;
|
|
@@ -438,7 +439,26 @@ class Refund
|
|
|
}
|
|
|
Dever::db('card/code')->decUseCash(array('where_id' => $order['card_code_id'], 'set_use_cash' => $order['card_code_cash']));
|
|
|
|
|
|
- Dever::load('cash/lib/order')->up($order, 3, 2, $info, 2);
|
|
|
+
|
|
|
+ $code = Dever::db('card/code')->find($order['card_code_id']);
|
|
|
+ if ($code) {
|
|
|
+ $card_info = Dever::db('card/info')->find($code['card_id']);
|
|
|
+ if ($card_info) {
|
|
|
+ if ($code['type'] == 2) {
|
|
|
+ $zhe = 0.9;
|
|
|
+ } else {
|
|
|
+ $zhe = $card_info['price']/$card_info['value'];
|
|
|
+ }
|
|
|
+ $price = round($card_cash*$zhe, 2);
|
|
|
+ $order['type'] = 1;
|
|
|
+ $order['type_id'] = $order['shop_id'];
|
|
|
+ $order['source_type'] = 4;
|
|
|
+ $order['source_id'] = -1;
|
|
|
+ $order['price'] = $price;
|
|
|
+ $order['p_price'] = $card_cash;
|
|
|
+ Dever::load('cash/lib/order')->up($order, 3, 2, $info, 2);
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
} elseif (isset($order['wallet_cash']) && $order['wallet_cash'] && $order['wallet_cash'] > 0) {
|
|
|
|