增加最小购物数量

2016-07-07 15:04 来源:www.chinab4c.com 作者:ecshop专家

我们知道,ecshop已经有 ”最小购物金额"功能,做外贸的经常应为运费开支大,要求客户在购买的时候在商品总金额或商品购买数量上能做限制。
其实和相当于复制 ”最小购物金额“ 功能,ec的数据库设计的很好,只要在表ecs_shop_config中插入一项,后台就可以自动显示,下面说下具体做法。
1.写到数据库
INSERT INTO `ecshop`.`ecs_shop_config` (
`id` ,
`parent_id` ,
`code` ,
`type` ,
`store_range` ,
`store_dir` ,
`value` ,
`sort_order`
)
VALUES (
NULL , '4', 'min_goods_number', 'text', '', '', '', '1'
);
其中parent_id为购物流程,type为text。


2.修改调用语言
路径languages\en_us\admin\shop_config.php增加一行
$_LANG['cfg_name']['group_goods_number'] = '团购商品的数量';


3.在lib_order.php加个方法
function cart_number($include_gift = true, $type = CART_GENERAL_GOODS)
{
$sql = "SELECT SUM(goods_number) " .
" FROM " . $GLOBALS['ecs']->table('cart') .
" WHERE session_id = '" . SESS_ID . "' " .
"AND rec_type = '$type' ";
if (!$include_gift)
{
$sql .= ' AND is_gift = 0 AND goods_id > 0';
}
return floatval($GLOBALS['db']->getOne($sql));
}


4.最后修改flow.php在elseif ($_REQUEST['step'] == 'done')里面加上判断语句
if ($flow_type == CART_GENERAL_GOODS && cart_number(true, CART_GENERAL_GOODS) < $_CFG['min_goods_number'])
{
show_message(sprintf($_LANG['goods_number_not_enough'], $_CFG['min_goods_number']));
}


$_LANG['goods_number_not_enough']语言也要改,这里就不多说了