Example #1
0
     $goods_list[$key]['goods_price'] = price_format($value['goods_price'], false);
     $goods_list[$key]['subtotal'] = price_format($value['subtotal'], false);
 }
 /* 设置能否修改使用余额数 */
 if ($order['order_amount'] > 0) {
     if ($order['order_status'] == OS_UNCONFIRMED || $order['order_status'] == OS_CONFIRMED) {
         $user = user_info($order['user_id']);
         if ($user['user_money'] + $user['credit_line'] > 0) {
             $smarty->assign('allow_edit_surplus', 1);
             $smarty->assign('max_surplus', sprintf($_LANG['max_surplus'], $user['user_money']));
         }
     }
 }
 /* 未发货,未付款时允许更换支付方式 */
 if ($order['order_amount'] > 0 && $order['pay_status'] == PS_UNPAYED && $order['shipping_status'] == SS_UNSHIPPED) {
     $payment_list = available_payment_list(false, 0, true);
     /* 过滤掉当前支付方式和余额支付方式 */
     foreach ($payment_list as $key => $payment) {
         if ($payment['pay_id'] == $order['pay_id'] || $payment['pay_code'] == 'balance') {
             unset($payment_list[$key]);
         }
     }
     $smarty->assign('payment_list', $payment_list);
 }
 /* 订单 支付 配送 状态语言项 */
 $order['order_status'] = $_LANG['os'][$order['order_status']];
 $order['pay_status'] = $_LANG['ps'][$order['pay_status']];
 $order['shipping_status'] = $_LANG['ss'][$order['shipping_status']];
 $smarty->assign('order', $order);
 $smarty->assign('goods_list', $goods_list);
 $smarty->display('user_transaction.dwt');
Example #2
0
         $shipping_list[$key]['shipping_fee'] = $shipping_fee;
         $shipping_list[$key]['format_shipping_fee'] = price_format($shipping_fee);
         $shipping_list[$key]['free_money'] = price_format($shipping['configure']['free_money']);
     }
     $smarty->assign('shipping_list', $shipping_list);
 } elseif ('payment' == $step) {
     /* 取得可用的支付方式列表 */
     if (exist_real_goods($order_id)) {
         /* 存在实体商品 */
         $region_id_list = array($order['country'], $order['province'], $order['city'], $order['district']);
         $shipping_area = shipping_area_info($order['shipping_id'], $region_id_list);
         $pay_fee = $shipping_area['support_cod'] == 1 ? $shipping_area['pay_fee'] : 0;
         $payment_list = available_payment_list($shipping_area['support_cod'], $pay_fee);
     } else {
         /* 不存在实体商品 */
         $payment_list = available_payment_list(false);
     }
     /* 过滤掉使用余额支付 */
     foreach ($payment_list as $key => $payment) {
         if ($payment['pay_code'] == 'balance') {
             unset($payment_list[$key]);
         }
     }
     $smarty->assign('payment_list', $payment_list);
 } elseif ('other' == $step) {
     /* 查询是否存在实体商品 */
     $exist_real_goods = exist_real_goods($order_id);
     $smarty->assign('exist_real_goods', $exist_real_goods);
     if ($exist_real_goods) {
         /* 取得包装列表 */
         $smarty->assign('pack_list', pack_list());
Example #3
0
function action_order_detail()
{
    $user = $GLOBALS['user'];
    $_CFG = $GLOBALS['_CFG'];
    $_LANG = $GLOBALS['_LANG'];
    $smarty = $GLOBALS['smarty'];
    $db = $GLOBALS['db'];
    $ecs = $GLOBALS['ecs'];
    $user_id = $_SESSION['user_id'];
    include_once ROOT_PATH . 'includes/lib_transaction.php';
    include_once ROOT_PATH . 'includes/lib_payment.php';
    include_once ROOT_PATH . 'includes/lib_order.php';
    include_once ROOT_PATH . 'includes/lib_clips.php';
    $order_id = isset($_GET['order_id']) ? intval($_GET['order_id']) : 0;
    /* 订单详情 */
    $order = get_order_detail($order_id, $user_id);
    /* 退换货插件 www.68ecshop.com增加 */
    $shipping_time = $db->getOne("SELECT shipping_time FROM " . $ecs->table('order_info') . " WHERE order_id = '{$order_id}'");
    $now_time = gmtime();
    $not_back = 0;
    if ($GLOBALS['_CFG']['tuihuan_days_fahuo'] > 0) {
        if (($now_time - $shipping_time) / 86400 < $GLOBALS['_CFG']['tuihuan_days_fahuo']) {
            $not_back = 1;
        }
    }
    if ($GLOBALS['_CFG']['tuihuan_days_qianshou'] > 0) {
        if (($now_time - $shipping_time) / 86400 > $GLOBALS['_CFG']['tuihuan_days_qianshou']) {
            $not_back = 1;
        }
    }
    $smarty->assign('not_back', $not_back);
    /* 退换货插件 www.68ecshop.com增加 */
    if ($order === false) {
        $err->show($_LANG['back_home_lnk'], './');
        exit;
    }
    if ($db->getOne("select shipping_code from " . $ecs->table('shipping') . " where shipping_id=" . $order['shipping_id']) == "tc_express") {
        $order['tc_express'] = 1;
        $ko_order_sn = $db->getOne("select invoice_no from " . $ecs->table('delivery_order') . " where order_id=" . $order_id);
        if ($ko_order_sn) {
            $kos_order_id = $db->getOne("select order_id from " . $ecs->table('kuaidi_order') . " where order_sn='" . $ko_order_sn . "'");
        }
        $sql = "select * from " . $ecs->table('kuaidi_order_status') . " where order_id='{$kos_order_id}'  order by status_id";
        $res_status = $db->query($sql);
        $have_shipping_info = 0;
        $shipping_info = "";
        while ($row_status = $db->fetchRow($res_status)) {
            if ($row_status['status_display'] == 1) {
                switch ($row_status['status_id']) {
                    case 1:
                        $shipping_info .= "您提交了订单,请等待确认。 (" . local_date('Y-m-d H:i:s', $row_status['status_time']) . ")";
                        break;
                    case 2:
                        $shipping_info .= "您的快件已经确认,等待快递员揽收。 (" . local_date('Y-m-d H:i:s', $row_status['status_time']) . ")";
                        break;
                    case 3:
                        $postman_id = $db->getOne("select postman_id from " . $ecs->table('kuaidi_order') . " where order_sn='" . $order['invoice_no'] . "'");
                        $postman_info = $db->getRow("select postman_name, mobile from " . $ecs->table('postman') . " where postman_id=" . $postman_id);
                        $shipping_info .= "您的快件正在派送,快递员:" . $postman_info['postman_name'] . ",电话:" . $postman_info['mobile'] . " (" . local_date('Y-m-d H:i:s', $row_status['status_time']) . ")";
                        break;
                    case 4:
                        $shipping_info .= "您的快件已经签收。 (" . local_date('Y-m-d H:i:s', $row_status['status_time']) . ")";
                        break;
                    case 5:
                        $shipping_info .= "您的快件已被拒收。 (" . local_date('Y-m-d H:i:s', $row_status['status_time']) . ")";
                        break;
                    case 6:
                        $shipping_info .= "您拒收的快件已被退回。 (" . local_date('Y-m-d H:i:s', $row_status['status_time']) . ")";
                        break;
                    case 7:
                        $shipping_info .= "您的快件已经取消。 (" . local_date('Y-m-d H:i:s', $row_status['status_time']) . ")";
                        break;
                }
                $shipping_info .= "<br>";
                if ($row_status['status_id'] >= 1) {
                    $have_shipping_info++;
                }
            }
        }
        if ($have_shipping_info) {
            $result_content = $shipping_info;
        } else {
            $result_content = '抱歉,暂时还没有该运单的物流信息哦!';
        }
    }
    $smarty->assign('result_content', $result_content);
    /* 是否显示添加到购物车 */
    if ($order['extension_code'] != 'group_buy' && $order['extension_code'] != 'exchange_goods') {
        $smarty->assign('allow_to_cart', 1);
    }
    /* 订单商品 */
    $goods_list = order_goods($order_id);
    foreach ($goods_list as $key => $value) {
        $goods_list[$key]['market_price'] = price_format($value['market_price'], false);
        $goods_list[$key]['goods_price'] = price_format($value['goods_price'], false);
        $goods_list[$key]['subtotal'] = price_format($value['subtotal'], false);
        $sql_back = "SELECT bg.*, bo.back_type FROM " . $ecs->table('back_goods') . " AS bg " . " LEFT JOIN " . $ecs->table('back_order') . " AS bo " . " ON bg.back_id = bo.back_id " . " WHERE bo.order_id = " . $order_id . " AND bg.goods_id = " . $value['goods_id'] . " AND bg.product_id = " . $value['product_id'] . " AND bg.status_back < 6";
        $back_info = $db->getRow($sql_back);
        if (count($back_info['back_id']) > 0) {
            switch ($back_info['status_back']) {
                case '3':
                    $sb = "已完成";
                    break;
                case '5':
                    $sb = "已申请";
                    break;
                    // case '6' : $sb = ""; break;
                    // case '7' : $sb = ""; break;
                // case '6' : $sb = ""; break;
                // case '7' : $sb = ""; break;
                default:
                    $sb = "正在";
                    break;
            }
            switch ($back_info['back_type']) {
                case '1':
                    $bt = "退货";
                    break;
                case '3':
                    $bt = "申请维修";
                    break;
                case '4':
                    $bt = "退款";
                    break;
                default:
                    break;
            }
            $shouhou = $sb . " " . $bt;
        } else {
            $shouhou = "正常";
        }
        $goods_list[$key]['shouhou'] = $shouhou;
    }
    /* 设置能否修改使用余额数 */
    if ($order['order_amount'] > 0) {
        if ($order['order_status'] == OS_UNCONFIRMED || $order['order_status'] == OS_CONFIRMED) {
            $user = user_info($order['user_id']);
            if ($user['user_money'] + $user['credit_line'] > 0) {
                $smarty->assign('allow_edit_surplus', 1);
                $smarty->assign('max_surplus', sprintf($_LANG['max_surplus'], $user['user_money']));
            }
        }
    }
    /* 未发货,未付款时允许更换支付方式 */
    if ($order['order_amount'] > 0 && $order['pay_status'] == PS_UNPAYED && $order['shipping_status'] == SS_UNSHIPPED) {
        $payment_list = available_payment_list(false, 0, true);
        /* 过滤掉当前支付方式和余额支付方式 */
        if (is_array($payment_list)) {
            foreach ($payment_list as $key => $payment) {
                if ($payment['pay_id'] == $order['pay_id'] || $payment['pay_code'] == 'balance') {
                    unset($payment_list[$key]);
                }
            }
        }
        $smarty->assign('payment_list', $payment_list);
    }
    /* 订单 支付 配送 状态语言项 */
    $order['order_status'] = $_LANG['os'][$order['order_status']];
    $order['pay_status'] = $_LANG['ps'][$order['pay_status']];
    $order['shipping_status_id'] = $order['shipping_status'];
    // 代码增加 By
    // www.68ecshop.com
    $order['shipping_status'] = $_LANG['ss'][$order['shipping_status']];
    /* 增值税发票_添加_START_www.68ecshop.com */
    /* 增值税发票收票地址 */
    if ($order['inv_type'] == 'vat_invoice') {
        $order['inv_complete_address'] = get_inv_complete_address($order);
    }
    /* 发票金额 */
    $order['formatted_inv_money'] = price_format($order['inv_money']);
    /* 增值税发票_添加_END_www.68ecshop.com */
    $smarty->assign('order', $order);
    /* 代码增加_start By www.68ecshop.com */
    $smarty->assign('mobile_phone', $GLOBALS['db']->getOne("select mobile_phone from " . $GLOBALS['ecs']->table('users') . " where user_id='{$_SESSION['user_id']}'"));
    foreach ($goods_list as $goods_key => $goods_val) {
        $sql_goods = "select count(*) from " . $ecs->table('back_order') . " where order_id='{$order['order_id']}' and goods_id='{$goods_val['goods_id']}'";
        $back_order_count = $db->getOne($sql_goods);
        $goods_list[$goods_key]['back_can'] = $back_order_count ? '0' : '1';
        /* 代码增加_start By www.68ecshop.com _20150804 */
        if ($goods_val['extension_code'] == 'virtual_good') {
            $virtual_goods_card = $db->getAll("select gc.card_sn,gc.end_date,buy_date from " . $ecs->table('virtual_goods_card') . " as gc join (select order_id,order_sn from " . $ecs->table('order_info') . " where order_id='{$goods_val['order_id']}') as oi on gc.order_sn = oi.order_sn");
            foreach ($virtual_goods_card as $k => $v) {
                $virtual_goods_card[$k]['end_date'] = empty($v['end_date']) ? '' : local_date('Y-m-d', $v['end_date']);
                $virtual_goods_card[$k]['buy_date'] = empty($v['buy_date']) ? '' : local_date('Y-m-d', $v['buy_date']);
                $virtual_goods_card[$k]['end_date_time'] = empty($v['end_date']) ? '' : $v['end_date'];
                $virtual_goods_card[$k]['buy_date_time'] = empty($v['buy_date']) ? '' : $v['buy_date'];
            }
            $goods_list[$goods_key]['virtual_goods_card'] = $virtual_goods_card;
        }
        /* 代码增加_end By www.68ecshop.com _20150804 */
        $goods_list[$key]['shouhou'] = $shouhou;
    }
    /* 设置能否修改使用余额数 */
    if ($order['order_amount'] > 0) {
        if ($order['order_status'] == OS_UNCONFIRMED || $order['order_status'] == OS_CONFIRMED) {
            $user = user_info($order['user_id']);
            if ($user['user_money'] + $user['credit_line'] > 0) {
                $smarty->assign('allow_edit_surplus', 1);
                $smarty->assign('max_surplus', sprintf($_LANG['max_surplus'], $user['user_money']));
            }
        }
    }
    /* 未发货,未付款时允许更换支付方式 */
    if ($order['order_amount'] > 0 && $order['pay_status'] == PS_UNPAYED && $order['shipping_status'] == SS_UNSHIPPED) {
        $payment_list = available_payment_list(false, 0, true);
        /* 过滤掉当前支付方式和余额支付方式 */
        if (is_array($payment_list)) {
            foreach ($payment_list as $key => $payment) {
                if ($payment['pay_id'] == $order['pay_id'] || $payment['pay_code'] == 'balance') {
                    unset($payment_list[$key]);
                }
            }
        }
        $smarty->assign('payment_list', $payment_list);
    }
    /* 订单 支付 配送 状态语言项 */
    $order['order_status'] = $_LANG['os'][$order['order_status']];
    $order['pay_status'] = $_LANG['ps'][$order['pay_status']];
    $order['shipping_status_id'] = $order['shipping_status'];
    // 代码增加 By
    // www.68ecshop.com
    $order['shipping_status'] = $_LANG['ss'][$order['shipping_status']];
    /* 增值税发票_添加_START_www.68ecshop.com */
    /* 增值税发票收票地址 */
    if ($order['inv_type'] == 'vat_invoice') {
        $order['inv_complete_address'] = get_inv_complete_address($order);
    }
    /* 发票金额 */
    $order['formatted_inv_money'] = price_format($order['inv_money']);
    /* 增值税发票_添加_END_www.68ecshop.com */
    $smarty->assign('order', $order);
    /* 代码增加_start By www.68ecshop.com */
    foreach ($goods_list as $goods_key => $goods_val) {
        $sql_goods = "select count(*) from " . $ecs->table('back_order') . " where order_id='{$order['order_id']}' and goods_id='{$goods_val['goods_id']}'";
        $back_order_count = $db->getOne($sql_goods);
        $goods_list[$goods_key]['back_can'] = $back_order_count ? '0' : '1';
    }
    /* 代码增加_end By www.68ecshop.com */
    $smarty->assign('goods_list', $goods_list);
    $smarty->display('user_transaction.dwt');
}
Example #4
0
                 $cod = false;
                 $cod_fee = 0;
                 /* 赋值保证金 */
                 $smarty->assign('gb_deposit', $group_buy['deposit']);
             }
         }
         if ($cod) {
             $shipping_area_info = shipping_area_info($order['shipping_id'], $region);
             $cod_fee = $shipping_area_info['pay_fee'];
         }
     } else {
         $cod_fee = 0;
     }
 }
 // 给货到付款的手续费加<span id>,以便改变配送的时候动态显示
 $payment_list = available_payment_list(1, $cod_fee);
 if (isset($payment_list)) {
     foreach ($payment_list as $key => $payment) {
         if ($payment['is_cod'] == '1') {
             $payment_list[$key]['format_pay_fee'] = '<span id="ECS_CODFEE">' . $payment['format_pay_fee'] . '</span>';
         }
         /* 如果有易宝神州行支付 如果订单金额大于300 则不显示 */
         if ($payment['pay_code'] == 'yeepayszx' && $total['amount'] > 300) {
             unset($payment_list[$key]);
         }
         /* 如果有余额支付 */
         if ($payment['pay_code'] == 'balance') {
             /* 如果未登录,不显示 */
             if ($_SESSION['user_id'] == 0) {
                 unset($payment_list[$key]);
             } else {
Example #5
0
	public function checkout () {
		global $ecs,$db,$_CFG;
		/*------------------------------------------------------ */
	    //-- 订单确认
	    /*------------------------------------------------------ */
	
	    #取得购物类型
	    $flow_type = isset($_SESSION['flow_type']) ? intval($_SESSION['flow_type']) : CART_GENERAL_GOODS;
		
		/*
	    #团购标志
	    if ($flow_type == CART_GROUP_BUY_GOODS)
	    {
	        $smarty->assign('is_group_buy', 1);
	    }
	    #积分兑换商品
	    elseif ($flow_type == CART_EXCHANGE_GOODS)
	    {
	        $smarty->assign('is_exchange_goods', 1);
	    }
	    else
	    {
		*/
		#正常购物流程  清空其他购物流程情况
		$_SESSION['flow_order']['extension_code'] = '';
		/*}*/
	
	    /* 检查购物车中是否有商品 */
	    $sql = "SELECT COUNT(*) FROM " . $ecs->table('cart') ." WHERE session_id = '" . SESS_ID . "' " .
	           "AND parent_id = 0 AND is_gift = 0 AND rec_type = '$flow_type'";
	
	    if ($db->getOne($sql) == 0)
	    {
			$msg = rpcLang('flow.php', 'no_goods_in_cart');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	    /*
	     * 检查用户是否已经登录
	     * 如果用户已经登录了则检查是否有默认的收货地址
	     * 如果没有登录则跳转到登录和注册页面
	     */
	    if (empty($_SESSION['direct_shopping']) && $_SESSION['user_id'] == 0)
	    {
			$msg = rpcLang('user.php', 'nologin');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	    $consignee = get_consignee($_SESSION['user_id']);
	
	    #检查收货人信息是否完整
	    if (!check_consignee_info($consignee, $flow_type))
	    {
			$msg = rpcLang('flow.php', 'user_address_not_full');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	    //$_SESSION['flow_consignee'] = $consignee;
	    
	    #对商品信息赋值
	    $cart_goods = cart_goods($flow_type); // 取得商品列表,计算合计
	
		/*
	    $smarty->assign('goods_list', $cart_goods);
	    #对是否允许修改购物车赋值
	    if ($flow_type != CART_GENERAL_GOODS || $_CFG['one_step_buy'] == '1')
	    {
	        $smarty->assign('allow_edit_cart', 0);
	    }
	    else
	    {
	        $smarty->assign('allow_edit_cart', 1);
	    }
	    
	    #取得购物流程设置
	    $smarty->assign('config', $_CFG);
		*/
	
	    /*
	     * 取得订单信息
	     */
	    $order = flow_order_info();
	
	    /* 计算折扣 */
	    if ($flow_type != CART_EXCHANGE_GOODS && $flow_type != CART_GROUP_BUY_GOODS)
	    {
	        $discount = compute_discount();
			
	    }
	
	    /*
	     * 计算订单的费用
	     */
	    $total = order_fee($order, $cart_goods, $consignee);
		
	    #取得配送列表
	    $region            = array($consignee['country'], $consignee['province'], $consignee['city'], $consignee['district']);
		#快递方式集合
		$shipping_list     = available_shipping_list($region);
		#购物车重量
	    $cart_weight_price = cart_weight_price($flow_type);
	    $insure_disabled   = true;
	    $cod_disabled      = true;
	
	    #查看购物车中是否全为免运费商品,若是则把运费赋为零s
	    $sql = 'SELECT count(*) FROM ' . $ecs->table('cart') . " WHERE `session_id` = '" . SESS_ID. "' AND `extension_code` != 'package_buy' AND `is_shipping` = 0";
	    $shipping_count = $db->getOne($sql);
	    foreach ($shipping_list AS $key => $val)
	    {
	        $shipping_cfg = unserialize_config($val['configure']);
	        $shipping_fee = ($shipping_count == 0 AND $cart_weight_price['free_shipping'] == 1) ? 0 : shipping_fee($val['shipping_code'], unserialize($val['configure']),
	        $cart_weight_price['weight'], $cart_weight_price['amount'], $cart_weight_price['number']);
	
	        $shipping_list[$key]['format_shipping_fee'] = price_format($shipping_fee, false);
	        $shipping_list[$key]['shipping_fee']        = $shipping_fee;
	        $shipping_list[$key]['free_money']          = price_format($shipping_cfg['free_money'], false);
	        $shipping_list[$key]['insure_formated']     = strpos($val['insure'], '%') === false ?
	        price_format($val['insure'], false) : $val['insure'];
	
	        #当前的配送方式是否支持保价
	        if ($val['shipping_id'] == $order['shipping_id'])
	        {
	            $insure_disabled = ($val['insure'] == 0);
	            $cod_disabled    = ($val['support_cod'] == 0);
	        }
	    }
		#取得支付列表
	    if ($order['shipping_id'] == 0)
	    {
	        $cod        = true;
	        $cod_fee    = 0;
	    }
	    else
	    {
	        $shipping = shipping_info($order['shipping_id']);
	        $cod = $shipping['support_cod'];
	
	        if ($cod)
	        {
	            #如果是团购,且保证金大于0,不能使用货到付款
	            if ($flow_type == CART_GROUP_BUY_GOODS)
	            {
	                $group_buy_id = $_SESSION['extension_id'];
	                if ($group_buy_id <= 0)
	                {
	                    show_message('error group_buy_id');
	                }
	                $group_buy = group_buy_info($group_buy_id);
	                if (empty($group_buy))
	                {
	                    show_message('group buy not exists: ' . $group_buy_id);
	                }
	
	                if ($group_buy['deposit'] > 0)
	                {
	                    $cod = false;
	                    $cod_fee = 0;
	
	                    #赋值保证金
	                    $smarty->assign('gb_deposit', $group_buy['deposit']);
	                }
	            }
	
	            if ($cod)
	            {
	                $shipping_area_info = shipping_area_info($order['shipping_id'], $region);
	                $cod_fee            = $shipping_area_info['pay_fee'];
	            }
	        }
	        else
	        {
	            $cod_fee = 0;
	        }
	    }
	    
	
	    # 给货到付款的手续费加<span id>,以便改变配送的时候动态显示
	    $payment_list = available_payment_list(1, $cod_fee);
	    if(isset($payment_list))
	    {
	        foreach ($payment_list as $key => $payment)
	        {
	            if ($payment['is_cod'] == '1')
	            {
	                $payment_list[$key]['format_pay_fee'] = '<span id="ECS_CODFEE">' . $payment['format_pay_fee'] . '</span>';
	            }
	            #如果有易宝神州行支付 如果订单金额大于300 则不显示
	            if ($payment['pay_code'] == 'yeepayszx' && $total['amount'] > 300)
	            {
	                unset($payment_list[$key]);
	            }
	            #如果有余额支付
	            if ($payment['pay_code'] == 'balance')
	            {
	                #如果未登录,不显示
	                if ($_SESSION['user_id'] == 0)
	                {
	                    unset($payment_list[$key]);
	                }
	                else
	                {
	                    if ($_SESSION['flow_order']['pay_id'] == $payment['pay_id'])
	                    {
	                        $smarty->assign('disable_surplus', 1);
	                    }
	                }
	            }
	        }
	    }
	
		$pack_list = array();
		$card_list = array();
	    /* 取得包装与贺卡 */
	    if ($total['real_goods_count'] > 0)
	    {
	        #只有有实体商品,才要判断包装和贺卡
	        if (!isset($_CFG['use_package']) || $_CFG['use_package'] == '1')
	        {
				#如果使用包装,取得包装列表及用户选择的包装
				$pack_list = pack_list();
	        }
	
	        #如果使用贺卡,取得贺卡列表及用户选择的贺卡
	        if (!isset($_CFG['use_card']) || $_CFG['use_card'] == '1')
	        {
				$card_list = card_list();
			}
	    }
	
	    /* 
		$user_info = user_info($_SESSION['user_id']);
		#如果使用余额,取得用户余额
	    if ((!isset($_CFG['use_surplus']) || $_CFG['use_surplus'] == '1') && $_SESSION['user_id'] > 0  && $user_info['user_money'] > 0)
	    {
	        // 能使用余额
	        $smarty->assign('allow_use_surplus', 1);
	        $smarty->assign('your_surplus', $user_info['user_money']);
	    }
		
		#如果使用积分,取得用户可用积分及本订单最多可以使用的积分
	    if ((!isset($_CFG['use_integral']) || $_CFG['use_integral'] == '1')
	        && $_SESSION['user_id'] > 0
	        && $user_info['pay_points'] > 0
	        && ($flow_type != CART_GROUP_BUY_GOODS && $flow_type != CART_EXCHANGE_GOODS))
	    {
	        // 能使用积分
	        $smarty->assign('allow_use_integral', 1);
	        $smarty->assign('order_max_integral', flow_available_points());  // 可用积分
	        $smarty->assign('your_integral',      $user_info['pay_points']); // 用户积分
	    }*/
		
	    #如果使用红包,取得用户可以使用的红包及用户选择的红包
	    if ((!isset($_CFG['use_bonus']) || $_CFG['use_bonus'] == '1') && ($flow_type != CART_GROUP_BUY_GOODS && $flow_type != CART_EXCHANGE_GOODS))
	    {
	        #取得用户可用红包
	        $user_bonus = zy_user_bonus($_SESSION['user_id'], $total['goods_price']);
	        if (!empty($user_bonus))
	        {
	            foreach ($user_bonus AS $key => $val)
	            {
	                $user_bonus[$key]['bonus_money_formated'] = price_format($val['type_money'], false);
	            }
	        }
	        #能使用红包
	        //$smarty->assign('allow_use_bonus', 1);
	    }
		/*
	    # 如果使用缺货处理,取得缺货处理列表
	    if (!isset($_CFG['use_how_oos']) || $_CFG['use_how_oos'] == '1')
	    {
	        if (is_array($GLOBALS['_LANG']['oos']) && !empty($GLOBALS['_LANG']['oos']))
	        {
	            $smarty->assign('how_oos_list', $GLOBALS['_LANG']['oos']);
	        }
	    }*/
		
	    #如果能开发票,取得发票内容列表
	    if ((!isset($_CFG['can_invoice']) || $_CFG['can_invoice'] == '1')	&& isset($_CFG['invoice_content']) 
			&& trim($_CFG['invoice_content']) != '' && $flow_type != CART_EXCHANGE_GOODS)
	    {
	        $inv_content_list = explode("\n", str_replace("\r", '', $_CFG['invoice_content']));
	       
	        $inv_type_list = array();
	        foreach ($_CFG['invoice_type']['type'] as $key => $type)
	        {
	            if (!empty($type))
	            {
	                $inv_type_list[$type] = $type . ' [' . floatval($_CFG['invoice_type']['rate'][$key]) . '%]';
	            }
	        }
	        $inv_content_list = implode(",", $inv_content_list);
	        $inv_list = array ('inv_content_list'=>$inv_content_list,'inv_type_list'=>$inv_type_list);
	       
	    }
		
	
	    #保存session
	    $_SESSION['flow_order'] = $order;
	   /* $pay_code = rpcLang('flow.php', 'pay_code_name');
		foreach ($payment_list as $value) {
			
			foreach ($value as $k=>$v){
				
			    if (strpos($v, $pay_code) !== false) {
			        $payment_list = $value;
			        $payment_list = preg_replace('/<.*?>|\[.*?\]/', '', $payment_list);
	    			$payment_list = array($payment_list);
			    }
			}
		}*/
	   
		$checkout_order = array('cart_goods'=>$cart_goods,
								'total'=>$total,
								'pack_list'=>$pack_list,
								'card_list'=>$card_list,
								'shipping_list'=>$shipping_list,
								'payment_list'=>$payment_list,
								'inv_list'=>$inv_list,
								'consignee'=>$consignee,);
		if (!empty($user_bonus)) {
	    	$checkout_order ['user_bonus'] = $user_bonus;
	    }
	  // print_r($checkout_order);die;
		jsonExit($checkout_order);
	}
Example #6
0
function action_order_detail()
{
    $user = $GLOBALS['user'];
    $_CFG = $GLOBALS['_CFG'];
    $_LANG = $GLOBALS['_LANG'];
    $smarty = $GLOBALS['smarty'];
    $db = $GLOBALS['db'];
    $ecs = $GLOBALS['ecs'];
    $user_id = $GLOBALS['user_id'];
    include_once ROOT_PATH . 'includes/lib_transaction.php';
    include_once ROOT_PATH . 'includes/lib_payment.php';
    include_once ROOT_PATH . 'includes/lib_order.php';
    include_once ROOT_PATH . 'includes/lib_clips.php';
    include_once ROOT_PATH . 'kuaidi/kuaidi.php';
    $order_id = isset($_GET['order_id']) ? intval($_GET['order_id']) : 0;
    /* 订单详情 */
    $order = get_order_detail($order_id, $user_id);
    if ($order === false) {
        $GLOBALS['err']->show($_LANG['back_home_lnk'], './');
        exit;
    }
    /* 是否显示添加到购物车 */
    if ($order['extension_code'] != 'group_buy' && $order['extension_code'] != 'exchange_goods') {
        $smarty->assign('allow_to_cart', 1);
    }
    /* 订单商品 */
    $goods_list = order_goods($order_id);
    foreach ($goods_list as $key => $value) {
        $goods_list[$key]['market_price'] = price_format($value['market_price'], false);
        $goods_list[$key]['goods_price'] = price_format($value['goods_price'], false);
        $goods_list[$key]['subtotal'] = price_format($value['subtotal'], false);
    }
    /* 设置能否修改使用余额数 */
    if ($order['order_amount'] > 0) {
        if ($order['order_status'] == OS_UNCONFIRMED || $order['order_status'] == OS_CONFIRMED) {
            $user = user_info($order['user_id']);
            if ($user['user_money'] + $user['credit_line'] > 0) {
                $smarty->assign('allow_edit_surplus', 1);
                $smarty->assign('max_surplus', sprintf($_LANG['max_surplus'], $user['user_money']));
            }
        }
    }
    /* 未发货,未付款时允许更换支付方式 */
    if ($order['order_amount'] > 0 && $order['pay_status'] == PS_UNPAYED && $order['shipping_status'] == SS_UNSHIPPED) {
        $payment_list = available_payment_list(false, 0, true);
        /* 过滤掉当前支付方式和余额支付方式 */
        if (is_array($payment_list)) {
            foreach ($payment_list as $key => $payment) {
                if ($payment['pay_id'] == $order['pay_id'] || $payment['pay_code'] == 'balance') {
                    unset($payment_list[$key]);
                }
            }
        }
        $smarty->assign('payment_list', $payment_list);
    }
    /* 订单 支付 配送 状态语言项 */
    $order['order_status'] = $_LANG['os'][$order['order_status']];
    $order['pay_status'] = $_LANG['ps'][$order['pay_status']];
    $order['shipping_status'] = $_LANG['ss'][$order['shipping_status']];
    //快递跟踪
    $kuaidi = new Express();
    $result = $kuaidi->getorder($order['shipping_name'], $order['invoice']);
    $smarty->assign('kuaidi', $result['data'][0]);
    $smarty->assign('order', $order);
    $smarty->assign('goods_list', $goods_list);
    $smarty->display('user_transaction.dwt');
}
Example #7
0
                 $cod = false;
                 $cod_fee = 0;
                 /* 赋值保证金 */
                 $smarty->assign('gb_deposit', $group_buy['deposit']);
             }
         }
         if ($cod) {
             $shipping_area_info = shipping_area_info($order['shipping_id'], $region);
             $cod_fee = $shipping_area_info['pay_fee'];
         }
     } else {
         $cod_fee = 0;
     }
 }
 // 给货到付款的手续费加<span id>,以便改变配送的时候动态显示
 $payment_list = available_payment_list(1, $cod_fee, false, $_SESSION['extension_code'] == 'virtual_good' ? 1 : 0);
 if (isset($payment_list)) {
     foreach ($payment_list as $key => $payment) {
         if ($payment['is_cod'] == '1') {
             $payment_list[$key]['format_pay_fee'] = '<span id="ECS_CODFEE">' . $payment['format_pay_fee'] . '</span>';
         }
         /* 如果有易宝神州行支付 如果订单金额大于300 则不显示 */
         if ($payment['pay_code'] == 'yeepayszx' && $total['amount'] > 300) {
             unset($payment_list[$key]);
         }
         /* 如果有余额支付 */
         if ($payment['pay_code'] == 'balance') {
             /* 如果未登录,不显示 */
             if ($_SESSION['user_id'] == 0) {
                 unset($payment_list[$key]);
             } else {
Example #8
0
     $user_bonus = user_bonus($_SESSION['user_id'], $total['goods_price']);
     if (!empty($user_bonus)) {
         foreach ($user_bonus as &$val) {
             $val['bonus_money_formated'] = price_format($val['type_money'], false);
         }
         $smarty->assign('bonus_list', $user_bonus);
         //默认使用第一个红包,重新计算费用
         $order['bonus_id'] = $user_bonus[0]['bonus_id'];
         $order['bonus'] = $user_bonus[0]['amount'];
         $total = order_fee($order, $cart_goods, $consignee);
     }
     // 能使用红包
     $smarty->assign('allow_use_bonus', 1);
 }
 // 取得支付列表
 $payment_list = available_payment_list(false, $cod_fee, true, is_wechat_browser());
 if (!empty($payment_list)) {
     $smarty->assign('default_payment', $payment_list[0]['pay_id']);
     foreach ($payment_list as $key => $payment) {
         if ($payment['is_cod'] == '1') {
             $payment_list[$key]['format_pay_fee'] = '<span id="ECS_CODFEE">' . $payment['format_pay_fee'] . '</span>';
         }
         // 如果有余额支付
         if ($payment['pay_code'] == 'balance') {
             // 如果未登录,不显示
             if ($_SESSION['user_id'] == 0) {
                 unset($payment_list[$key]);
             } else {
                 if ($_SESSION['flow_order']['pay_id'] == $payment['pay_id']) {
                     $smarty->assign('disable_surplus', 1);
                 }