给ecshop增加商家付款后减少库存功能

最近ecshop模板堂忙客户ecshop商城的维护 我们发现:ecshop后台减少库存的时机默认只有下订单时和发货时,不能满足各种客户需求啊,要增加一个商家付款后就能减少库存,先解决方法如下1. includes/inc_constant.php 文件 大约207行 加上1define('SDT_PAY',                   2); // 支付时减少库languages/zh-cn/admin/shop_config.php 文件 大约338行加上1$_LANG['cfg_range']['stock_dec_time']['2'] = '商家付款后';给 数据表 ship_config 中 id 为 423 的行 store_range 增加 22. includes/lib_order.php 文件 大约2207行 增加如下代码1234case 2 :$sql = "SELECT goods_id, SUM(goods_number) AS num, MAX(extension_code) AS extension_code, product_id FROM " . $GLOBALS['ecs']->table('order_goods') ." WHERE order_id = '$order_id' AND is_real = 1 GROUP BY goods_id, product_id";break;includes/lib_payment.php 文件12345678910111213141516/* 修改订单状态为已付款 */$sql = 'UPDATE ' . $GLOBALS['ecs']->table('order_info') ." SET order_status = '" . OS_CONFIRMED . "', " ." confirm_time = '" . gmtime() . "', " ." pay_status = '$pay_status', " ." pay_time = '".gmtime()."', " ." money_paid = order_amount," ." order_amount = 0 "."WHERE order_id = '$order_id'";$GLOBALS['db']->query($sql);//在这段之后增加include_once(ROOT_PATH . 'includes/lib_order.php');/* 如果使用库存,且付款时减库存,则减少库存 by sid*/if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PAY){change_order_goods_storage($order['order_id'], true, SDT_PAY);}3. admin/order.php 文件12345678910/* 如果使用库存,且下订单时减库存,则增加库存 */if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PLACE){change_order_goods_storage($order_id, false, SDT_PLACE);}//在这段之后增加//无效与取消时加库存if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PAY){change_order_goods_storage($order_id, false, SDT_PAY);}4. flow.php 文件12345678/* 如果订单金额为0 处理虚拟卡 */if ($order['order_amount'] <= 0){//在这段之后加上//扣库存if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PAY){change_order_goods_storage($order['order_id'], true, SDT_PAY);}admin/order.php 文件123456789101112$payment = payment_info($order['pay_id']);if ($payment['is_cod']){$arr['shipping_status'] = SS_RECEIVED;$order['shipping_status'] = SS_RECEIVED;}update_order($order_id, $arr);//在这段之后增加//扣库存if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PAY){change_order_goods_storage($order['order_id'], true, SDT_PAY);}12345678910/* 如果使用库存,且下订单时减库存,则增加库存 */if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PLACE){change_order_goods_storage($order_id, false, SDT_PLACE);}//在这段之后增加if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PAY){change_order_goods_storage($order_id, false, SDT_PAY);}继续往下12345678910/* 如果使用库存,且下订单时减库存,则增加库存 */if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PLACE){change_order_goods_storage($order_id, false, SDT_PLACE);}//在这段之后增加if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PAY){change_order_goods_storage($order_id, false, SDT_PAY);}如此,一个完整的ecshop商家付款后减少库存的功能就实现了!!下一篇: 让ecshop文章列表以更新时间排序 上一篇: 让ecshop调用的分类只显示新品热卖推荐的商品

(0)

相关推荐