A5下载 - 努力做内容最丰富最安全的下载站!

A5站长下载站

当前位置:A5下载 > 源码技巧 > Ecshop > 解决ecshop订单管理退货时,如何做到不退邮费

解决ecshop订单管理退货时,如何做到不退邮费

时间:2015-07-25 11:32作者:fang人气:113

解决ecshop订单管理退货时,如何做到不退邮费,提供相关ecshop教程如下:

打开admin/order.php在大约4468行处找到

/**

* 退回余额、积分、红包(取消、无效、退货时),把订单使用余额、积分、红包设为0

* @param array $order 订单信息

*/

function return_user_surplus_integral_bonus($order)

{

/* 处理余额、积分、红包 */

if ($order['user_id'] > 0 && $order['surplus'] > 0)

{

$surplus = $order['money_paid'] < 0 ? $order['surplus'] + $order['money_paid']: $order['surplus'];

log_account_change($order['user_id'], $surplus, 0, 0, 0, sprintf($GLOBALS['_LANG']['return_order_surplus'], $order['order_sn']));

$GLOBALS['db']->query("UPDATE ". $GLOBALS['ecs']->table('order_info') . " SET `order_amount` = '0' WHERE `order_id` =". $order['order_id']);

}

if ($order['user_id'] > 0 && $order['integral'] > 0)

{

log_account_change($order['user_id'], 0, 0, 0, $order['integral'], sprintf($GLOBALS['_LANG']['return_order_integral'], $order['order_sn']));

}

if ($order['bonus_id'] > 0)

{

unuse_bonus($order['bonus_id']);

}

/* 修改订单 */

$arr = array(

'bonus_id' => 0,

'bonus' => 0,

'integral' => 0,

'integral_money' => 0,

'surplus' => 0

);

update_order($order['order_id'], $arr);

}

改成

/**

* 退回余额、积分、红包(取消、无效、退货时),把订单使用余额、积分、红包设为0

* @param array $order 订单信息

*/

function return_user_surplus_integral_bonus($order)

{

/* 处理余额、积分、红包 */

if ($order['user_id'] > 0 && $order['surplus'] > 0)

{

$surplus = $order['money_paid'] < 0 ? $order['surplus'] + $order['money_paid']-$order['shipping_fee'] : $order['surplus'];

log_account_change($order['user_id'], $surplus, 0, 0, 0, sprintf($GLOBALS['_LANG']['return_order_surplus'], $order['order_sn']));

$GLOBALS['db']->query("UPDATE ". $GLOBALS['ecs']->table('order_info') . " SET `order_amount` = '0' WHERE `order_id` =". $order['order_id']);

}

if ($order['user_id'] > 0 && $order['integral'] > 0)

{

log_account_change($order['user_id'], 0, 0, 0, $order['integral'], sprintf($GLOBALS['_LANG']['return_order_integral'], $order['order_sn']));

}

if ($order['bonus_id'] > 0)

{

unuse_bonus($order['bonus_id']);

}

/* 修改订单 */

$arr = array(

'bonus_id' => 0,

'bonus' => 0,

'integral' => 0,

'integral_money' => 0,

'surplus' => 0

);

update_order($order['order_id'], $arr);

}

就可以了

官方默认的是退货时把已付款退到会员的帐中户,而退回的费用中没有减去

运费

支付手费费

包装费

如果ecshop退货时不退运费应是:

$surplus = $order['money_paid'] < 0 ? $order['surplus'] + $order['money_paid'] - $order['shipping_fee']: $order['surplus'];

如果退货时不退动费和支付的手费费应是:

$surplus = $order['money_paid'] < 0 ? $order['surplus'] + $order['money_paid'] - $order['shipping_fee']- $order['pay_fee']: $order['surplus'];

如果ecshop退货时不退动费和支付的手费费及包装费应是:

$surplus = $order['money_paid'] < 0 ? $order['surplus'] + $order['money_paid'] - $order['shipping_fee']- $order['pay_fee']]- $order['pack_fee']: $order['surplus'];

以此类推可以做到ecshop退货时不退其它费

标签解决,ecshop,订单,管理,退货,如何,做到,不退,邮费

相关下载

查看所有评论+

网友评论

网友
您的评论需要经过审核才能显示

公众号