Example #1
0
 public function bookadd_order()
 {
     $this->seo_title = '会员中心-产品下单';
     $this->seo_keywords = '会员中心';
     $this->seo_description = '会员中心';
     $this->load->model('user');
     $member_id = $this->user_id;
     $data['userInfo'] = $this->user->get_one(array('user_id' => $this->user_id), 'user');
     $data['groupInfo'] = $this->user->get_one(array('id' => $data['userInfo']['group']), 'user_group');
     if (isset($_POST['dosubmit']) && $_POST['dosubmit'] == 'ok') {
         $spec_ku_tonsid = $this->input->post('spec_ku_tonsid');
         //规格ID
         $spec_ku_tons = $this->input->post('spec_ku_tons');
         //规格名称
         $spec_ku_smishu = $this->input->post('spec_ku_smishu');
         //标准米数
         $spec_ku_sprice = $this->input->post('spec_ku_sprice');
         //标准价格
         $spec_ku_sjiacha = $this->input->post('spec_ku_sjiacha');
         //每米价差
         $add_goodsid = $this->input->post('selprod');
         //当前产品
         $add_tonsid = $this->input->post('seltons');
         //当前规格ID
         $add_mishu = $this->input->post('add_mishu');
         //当前米数
         $add_numbs = $this->input->post('add_numbs');
         //当前数量
         $add_comment = $this->input->post('add_comment');
         //产品评论
         $addressid = $this->input->post('address_id');
         //收货地址
         $member_id = $this->user_id;
         //用户ID
         $order = array();
         $order_goods = array();
         //查询买家信息
         $user_info = $this->a_member_model->get_one(array('user_id' => $member_id), $this->tb_user, 'user_id,username,email');
         /******组装订单Start****/
         $sn = create_order_number();
         $order['order_sn'] = $sn;
         $order['buyer_id'] = empty($user_info['user_id']) ? 0 : $user_info['user_id'];
         $order['buyer_name'] = empty($user_info['username']) ? 'no name' : $user_info['username'];
         $order['buyer_email'] = empty($user_info['email']) ? '*****@*****.**' : $user_info['email'];
         $order['province_id'] = empty($user_info['province_id']) ? 3133 : $user_info['province_id'];
         $order['add_time'] = SYS_TIME;
         $order['order_type'] = '';
         // 0.普通
         $order['order_message'] = '';
         $order['order_state'] = 10;
         $order['out_sn'] = 0;
         $order['payment_id'] = 0;
         $order['payment_code'] = '';
         $order['payment_name'] = '';
         $order['payment_direct'] = 0;
         $order['payment_time'] = 0;
         $goods_amount = 0;
         //组装订单产品数据
         $goods_info = $this->a_member_model->get_one(array('goods_id' => $add_goodsid), 'goods');
         $series_id = empty($goods_info['brand_id']) ? 0 : $goods_info['brand_id'];
         $member_discount = $this->calculate_cur_discount($series_id);
         //用户折扣
         $order_goods['goods_id'] = $goods_info['goods_id'];
         $order_goods['goods_name'] = $goods_info['goods_name'];
         $order_goods['spec_id'] = $add_tonsid;
         $order_goods['spec_info'] = '';
         $order_goods['spec_mishu'] = $add_mishu;
         $order_goods['goods_num'] = $add_numbs;
         $order_goods['goods_image'] = $goods_info['goods_image'];
         $order_goods['evaluation'] = 0;
         $order_goods['comment'] = $add_comment;
         $order_goods['evaluation_state'] = 0;
         $order_goods['evaluation_remark'] = '';
         $order_goods['goods_returnnum'] = 0;
         $goods_price = $this->calculate_cur_price($add_goodsid, $add_tonsid, $add_mishu);
         $order_goods['goods_price'] = round($goods_price * $member_discount, 2);
         $goods_amount = $add_numbs * round($goods_price * $member_discount, 2);
         //其余订单数据
         $order['goods_amount'] = $goods_amount;
         $order['discount'] = $member_discount;
         $order['order_pointscount'] = 0;
         $order['shipping_code'] = '';
         $order['shipping_company'] = '';
         $order['shipping_remark'] = '';
         //写入订单操作状态
         $order_log['order_state'] = '已提交';
         $order_log['change_state'] = '待付款';
         $order_log['state_info'] = '';
         $order_log['log_time'] = SYS_TIME;
         $order_log['operator'] = empty($user_info['username']) ? 'no name' : $user_info['user_id'];
         //写入数据
         $order_id = $this->a_member_model->add($order, 'order');
         if (intval($order_id) > 0) {
             $order_goods['order_id'] = $order_id;
             $this->a_member_model->add($order_goods, $this->tb_order_goods);
             $order_log['order_id'] = $order_id;
             $this->a_member_model->add($order_log, $this->tb_order_log);
             //保存收获地址
             $address_info = $this->a_member_model->get_one(array('address_id' => $addressid, 'member_id' => $this->user_id, 'sts' => 0), "address");
             if (!empty($address_info)) {
                 $_data = array('oadd_id' => $order_id, 'true_name' => $address_info['true_name'], 'area_id' => $address_info['area_id'], 'area_info' => $address_info['area_info'], 'address' => $address_info['address'], 'zip_code' => $address_info['zip_code'], 'tel_phone' => $address_info['tel_phone'], 'mob_phone' => $address_info['mob_phone'], 'order_id' => $sn);
                 $this->a_member_model->add($_data, 'order_address');
             }
             $data['msg'] = '订单提交成功!';
             $this->showmessage('success', $data['msg'], base_url() . 'index.php?m=member&c=order&a=lists');
         } else {
             $data['msg'] = '订单提交失败,请重新下单!';
             $this->showmessage('error', $data['msg'], base_url() . 'index.php?m=member&c=orderbook&a=bookadd');
         }
     } else {
         $goods_cate = $this->a_member_model->get_query(array('isshow' => 1, 'parent_id' => 0, 'order_by' => 'listorder asc'), 'goods_category');
         $address_list = $this->a_member_model->get_query(array('sts' => 0, 'member_id' => $member_id), 'address');
         $data['goods_cate'] = $goods_cate;
         $data['address_list'] = $address_list;
         $this->view('order_add', $data);
     }
 }
Example #2
0
 public function partsbook()
 {
     $this->load->model('user');
     $admin_username = $this->session->userdata('admin_username');
     if (isset($_POST['dosubmit']) && $_POST['dosubmit'] == 'ok') {
         $add_parts = $this->input->post('add_parts');
         //当前配件名称
         $add_numbs = $this->input->post('add_numbs');
         //当前数量
         $add_comment = $this->input->post('add_comment');
         //产品评论
         $addressid = $this->input->post('user_address');
         //收货地址
         $member_id = $this->input->post('user_name');
         //用户ID
         $order = array();
         $order_goods = array();
         //查询买家信息
         $user_info = $this->a_member_model->get_one(array('user_id' => $member_id), $this->tb_user, 'user_id,username,email,province_id');
         /******组装订单Start****/
         $sn = create_order_number();
         $order['order_sn'] = $sn;
         $order['buyer_id'] = empty($user_info['user_id']) ? 0 : $user_info['user_id'];
         $order['buyer_name'] = empty($user_info['username']) ? 'no name' : $user_info['username'];
         $order['buyer_email'] = empty($user_info['email']) ? '*****@*****.**' : $user_info['email'];
         $order['province_id'] = empty($user_info['province_id']) ? 3133 : $user_info['province_id'];
         $order['add_time'] = SYS_TIME;
         $order['order_type'] = '';
         // 0.普通
         $order['order_message'] = '后台操作员【' . $admin_username . '】操作';
         $order['order_state'] = 10;
         $order['out_sn'] = 0;
         $order['payment_id'] = 0;
         $order['payment_code'] = '';
         $order['payment_name'] = '';
         $order['payment_direct'] = 0;
         $order['payment_time'] = 0;
         $goods_amount = 0;
         //组装订单产品数据
         $order_goods['goods_id'] = 0;
         $order_goods['goods_name'] = $add_parts;
         $order_goods['spec_id'] = 0;
         $order_goods['spec_info'] = '';
         $order_goods['spec_mishu'] = 0;
         $order_goods['goods_num'] = $add_numbs;
         $order_goods['goods_image'] = '';
         $order_goods['evaluation'] = 0;
         $order_goods['comment'] = $add_comment;
         $order_goods['evaluation_state'] = 0;
         $order_goods['evaluation_remark'] = '';
         $order_goods['goods_returnnum'] = 0;
         $goods_price = 0;
         $order_goods['goods_price'] = 0;
         $goods_amount = 0;
         //其余订单数据
         $order['goods_amount'] = $goods_amount;
         $order['discount'] = 0;
         $order['order_pointscount'] = 0;
         $order['shipping_code'] = '';
         $order['shipping_company'] = '';
         $order['shipping_remark'] = '';
         //写入订单操作状态
         $order_log['order_state'] = '已提交';
         $order_log['change_state'] = '待付款';
         $order_log['state_info'] = '';
         $order_log['log_time'] = SYS_TIME;
         $order_log['operator'] = empty($user_info['username']) ? 'no name' : $user_info['user_id'];
         //写入数据
         $order_id = $this->a_member_model->add($order, 'order');
         if (intval($order_id) > 0) {
             $order_goods['order_id'] = $order_id;
             $this->a_member_model->add($order_goods, $this->tb_order_goods);
             $order_log['order_id'] = $order_id;
             $this->a_member_model->add($order_log, $this->tb_order_log);
             //保存收获地址
             $address_info = $this->a_member_model->get_one(array('address_id' => $addressid, 'member_id' => $member_id, 'sts' => 0), "address");
             if (!empty($address_info)) {
                 $_data = array('oadd_id' => $order_id, 'true_name' => $address_info['true_name'], 'area_id' => $address_info['area_id'], 'area_info' => $address_info['area_info'], 'address' => $address_info['address'], 'zip_code' => $address_info['zip_code'], 'tel_phone' => $address_info['tel_phone'], 'mob_phone' => $address_info['mob_phone'], 'order_id' => $sn);
                 $this->a_member_model->add($_data, 'order_address');
             }
             $data['msg'] = '订单提交成功!';
             $this->showmessage('success', $data['msg'], $this->admin_url . 'member/order/orderbook?loghash=' . $this->session->userdata('loghash'));
         } else {
             $data['msg'] = '订单提交失败,请重新下单!';
             $this->showmessage('error', $data['msg'], $this->admin_url . 'member/order/orderbook?loghash=' . $this->session->userdata('loghash'));
         }
     } else {
         //获取该管理员下的经销商
         $where = 'sts = 0 ';
         $admin_areaids = $this->session->userdata('admin_area_id');
         if (!empty($admin_areaids)) {
             $where .= ' and province_id in (' . $admin_areaids . ')';
         }
         $member_list = $this->a_member_model->get_query($where, $this->tb_user);
         $this->cismarty->assign('member_list', $member_list);
         $this->cismarty->display('member/order/parts_book.html');
     }
 }
Example #3
0
 public function cart_step3()
 {
     $this->load->library('session');
     if (isset($_POST['cart_code'])) {
         $cart_code = $this->session->userdata('cart_code');
         if ($_POST['cart_code'] == $cart_code) {
             $member_id = $this->user_id;
             $_data_post = $this->input->post();
             $cart_hash = $_data_post['cart_hash'];
             $addressid = $_data_post['addressids'];
             $kaipiaotype = $_data_post['kaipiaotype'];
             $kaipiaott = $_data_post['kaipiaott'];
             //查询买家信息
             $user_info = $this->a_cart_model->get_one(array('user_id' => $member_id), $this->tb_user, 'user_id,username,email,province_id');
             /******组装订单Start****/
             $sn = create_order_number();
             $order['order_sn'] = $sn;
             $order['buyer_id'] = empty($user_info['user_id']) ? 88 : $user_info['user_id'];
             $order['buyer_name'] = empty($user_info['username']) ? 'no name' : $user_info['username'];
             $order['buyer_email'] = empty($user_info['email']) ? '*****@*****.**' : $user_info['email'];
             $order['province_id'] = empty($user_info['province_id']) ? 3133 : $user_info['province_id'];
             $order['add_time'] = SYS_TIME;
             $order['order_type'] = '';
             // 0.普通
             $order['order_message'] = '';
             $order['order_state'] = 10;
             $order['out_sn'] = 0;
             $order['payment_id'] = 0;
             $order['payment_code'] = '';
             $order['payment_name'] = '';
             $order['payment_direct'] = 0;
             $order['payment_time'] = 0;
             /*拼装发票信息*/
             $invoice = array();
             if ($kaipiaotype == 1) {
                 //普通发票
                 $invoice['kaipiaotype'] = 1;
                 $invoice['compname'] = $kaipiaott;
             }
             if ($kaipiaotype == 2) {
                 //增值税发票
                 $invoice['kaipiaotype'] = 2;
                 $bill = $this->a_cart_model->get_one(array('member_id' => $this->user_id), 'bill');
                 $invoice['compname'] = empty($bill['compname']) ? '' : $bill['compname'];
                 $invoice['compcode'] = empty($bill['compcode']) ? '' : $bill['compcode'];
                 $invoice['address'] = empty($bill['address']) ? '' : $bill['address'];
                 $invoice['tel'] = empty($bill['tel']) ? '' : $bill['tel'];
                 $invoice['bank'] = empty($bill['bank']) ? '' : $bill['bank'];
                 $invoice['bankcode'] = empty($bill['bankcode']) ? '' : $bill['bankcode'];
             }
             $order['invoice'] = serialize($invoice);
             $goods_amount = $pre_amount = $discount = 0;
             $order_goods_list = array();
             if ($this->user_id > 0) {
                 //计算购物车数据库中总价格
                 $cart_list = $this->a_cart_model->get_query(array('member_id' => $member_id, 'cart_hash' => $cart_hash), $this->tb_cart);
                 if (empty($cart_list)) {
                     $this->showmessage('error', '您的购物车暂无商品!', base_url() . 'index.php?c=cart&a=cart_step1');
                 }
                 foreach ($cart_list as $k => $v) {
                     $order_goods_list[$k]['goods_id'] = $v['goods_id'];
                     //获取产品系列ID,并计算折扣
                     $goods_info = $this->a_com_model->get_one(array('goods_id' => $v['goods_id']), $this->tb_goods);
                     //获取产品的一、二级分类
                     $first_cateid = 0;
                     $second_cateid = 0;
                     $goods_cate = empty($goods_info['gc_id']) ? 0 : $goods_info['gc_id'];
                     $goods_cateinfo = $this->a_com_model->get_one(array('gc_id' => $goods_cate), 'goods_category');
                     if ($goods_cateinfo['parent_id'] == 0) {
                         $first_cateid = $goods_cate;
                     } else {
                         $first_cateid = $goods_cateinfo['parent_id'];
                         $second_cateid = $goods_cate;
                     }
                     $series_id = empty($goods_info['brand_id']) ? 0 : $goods_info['brand_id'];
                     $member_discount = $this->calculate_cur_discount($series_id);
                     $order_goods_list[$k]['goods_name'] = $v['goods_name'];
                     $order_goods_list[$k]['cate_id'] = $first_cateid;
                     $order_goods_list[$k]['subcate_id'] = $second_cateid;
                     $order_goods_list[$k]['spec_id'] = $v['spec_id'];
                     $order_goods_list[$k]['spec_info'] = '';
                     $order_goods_list[$k]['spec_mishu'] = $v['spec_mishu'];
                     $order_goods_list[$k]['goods_num'] = $v['goods_num'];
                     $order_goods_list[$k]['goods_image'] = $v['goods_images'];
                     $order_goods_list[$k]['evaluation'] = 0;
                     $order_goods_list[$k]['comment'] = $_data_post['remark_' . $v['cart_id']];
                     $order_goods_list[$k]['evaluation_state'] = 0;
                     $order_goods_list[$k]['evaluation_remark'] = '';
                     $order_goods_list[$k]['goods_returnnum'] = 0;
                     $order_goods_list[$k]['goods_price'] = sprintf('%.2f', round($v['goods_store_price'] * $member_discount));
                     $order_goods_list[$k]['pre_price'] = sprintf('%.2f', round($v['goods_store_price'] * $member_discount));
                     $pre_amount = $pre_amount + $v['goods_num'] * round($v['goods_store_price'], 2);
                     $goods_amount = $goods_amount + $v['goods_num'] * round($v['goods_store_price'] * $member_discount, 2);
                 }
             } else {
                 //计算SESSION购物车总价格
                 $c_data_list = $this->session->userdata('cart');
                 if (empty($c_data_list)) {
                     $this->showmessage('error', '您的购物车暂无商品!', base_url() . 'index.php?c=cart&a=cart_step1');
                 }
                 foreach ($c_data_list as $k => $v) {
                     $order_goods_list[$k]['goods_id'] = $v['goods_id'];
                     $order_goods_list[$k]['goods_name'] = $v['goods_name'];
                     $order_goods_list[$k]['spec_id'] = $v['spec_id'];
                     $order_goods_list[$k]['spec_info'] = '';
                     $order_goods_list[$k]['spec_mishu'] = $v['spec_mishu'];
                     $order_goods_list[$k]['goods_num'] = $v['goods_num'];
                     $order_goods_list[$k]['goods_image'] = $v['goods_images'];
                     $order_goods_list[$k]['evaluation'] = 0;
                     $order_goods_list[$k]['comment'] = '';
                     $order_goods_list[$k]['evaluation_state'] = 0;
                     $order_goods_list[$k]['evaluation_remark'] = '';
                     $order_goods_list[$k]['goods_returnnum'] = 0;
                     $order_goods_list[$k]['goods_price'] = sprintf('%.2f', round($v['goods_store_price']));
                     $order_goods_list[$k]['pre_price'] = sprintf('%.2f', round($v['goods_store_price']));
                     $goods_amount = $goods_amount + $v['goods_num'] * round($v['goods_store_price'], 2);
                 }
                 $pre_amount = $goods_amount;
             }
             $order['goods_amount'] = sprintf('%.2f', $goods_amount);
             $order['order_amount'] = sprintf('%.2f', $pre_amount);
             $order['discount'] = round($goods_amount / $pre_amount, 2);
             $order['order_pointscount'] = 0;
             $order['shipping_code'] = '';
             $order_game_desc = array();
             $order['shipping_company'] = '';
             $order['shipping_remark'] = '';
             //写入订单操作状态
             $order_log['order_state'] = '已提交';
             $order_log['change_state'] = '待付款';
             $order_log['state_info'] = '';
             $order_log['log_time'] = SYS_TIME;
             $order_log['operator'] = empty($user_info['username']) ? 'no name' : $user_info['user_id'];
             /******数据保存到数据库******/
             $order_id = $this->a_cart_model->add($order, $this->tb_order);
             if (intval($order_id) > 0) {
                 foreach ($order_goods_list as $v) {
                     $v['order_id'] = $order_id;
                     $this->a_cart_model->add($v, $this->tb_order_goods);
                 }
                 $order_log['order_id'] = $order_id;
                 $this->a_cart_model->add($order_log, $this->tb_order_log);
                 //清空购物车
                 $this->a_cart_model->del(array('member_id' => $member_id, 'cart_hash' => $cart_hash), $this->tb_cart);
                 //清空session
                 $this->session->unset_userdata('cart_code');
                 //保存收获地址
                 $address_info = $this->a_cart_model->get_one(array('address_id' => $addressid, 'member_id' => $this->user_id, 'sts' => 0), "address");
                 if (!empty($address_info)) {
                     $_data = array('oadd_id' => $order_id, 'true_name' => $address_info['true_name'], 'area_id' => $address_info['area_id'], 'area_info' => $address_info['area_info'], 'address' => $address_info['address'], 'zip_code' => $address_info['zip_code'], 'tel_phone' => $address_info['tel_phone'], 'mob_phone' => $address_info['mob_phone'], 'order_id' => $sn);
                     $this->a_cart_model->add($_data, 'order_address');
                 }
                 $data['shop_id'] = 0;
                 $data['order_sn'] = $sn;
                 $data['order_id'] = $order_id;
                 $data['order_amount'] = $goods_amount;
                 //获取定单信息
                 $order_info = $this->a_cart_model->get_one(array('order_id' => $order_id), $this->tb_order);
                 //获取定单产品信息
                 $order_prod = $this->a_cart_model->get_query(array('order_id' => $order_id), $this->tb_order_goods);
                 $data['order_info'] = $order_info;
                 $data['order_goods'] = $order_prod;
                 $this->seo_title = "我的购物车 - 双鸟机械";
                 $this->seo_keywords = "我的购物车 - 双鸟机械";
                 $this->seo_description = "我的购物车 - 双鸟机械";
                 $this->view('cart_okay', $data);
             } else {
                 $data['msg'] = '订单提交失败,请重新购买商品!';
                 $this->showmessage('error', $data['msg'], base_url() . 'index.php?c=cart&a=cart_step1');
             }
         } else {
             $data['msg'] = '请不要重复提交订单!';
             $this->showmessage('error', $data['msg'], base_url() . 'index.php?c=cart&a=cart_step1');
         }
     } else {
         $data['msg'] = '请检查您的输入!';
         $this->showmessage('error', $data['msg'], base_url() . 'index.php?c=cart&a=cart_step1');
     }
 }
Example #4
0
if ($config['settings']['accounts_required'] and !$_SESSION['loggedIn']) {
    // Find out if an account is required to purchase or if the user is already logged in
    die('You must be logged in to continue.');
}
$gatewayMode = "publicForm";
/*
 * Create an order number
 */
if (!$_SESSION['cartInfoSession']['orderNumber']) {
    if ($config['settings']['order_num_type'] == 1) {
        $orderNumber = $config['settings']['order_num_next'];
        $nextOrderNumber = $orderNumber + 1;
        mysqli_query($db, "UPDATE {$dbinfo[pre]}settings SET order_num_next='{$nextOrderNumber}' WHERE settings_id = 1");
        // update settings db with next number
    } else {
        $orderNumber = create_order_number();
    }
    mysqli_query($db, "UPDATE {$dbinfo[pre]}orders SET order_number='{$orderNumber}' WHERE uorder_id = '{$_SESSION[uniqueOrderID]}'");
    // Update db with order number
    $_SESSION['cartInfoSession']['orderNumber'] = $orderNumber;
    // Put this in the session
}
/*
 * Get currency info from db
 */
$currency = getCurrencyInfo($config['settings']['defaultcur']);
/*
 * Change to local values
 */
$uniqueOrderID = $_SESSION['uniqueOrderID'];
$cartInfo = $_SESSION['cartInfoSession'];