本文整理汇总了PHP中order::do_order_product_detail_data_by_good方法的典型用法代码示例。如果您正苦于以下问题:PHP order::do_order_product_detail_data_by_good方法的具体用法?PHP order::do_order_product_detail_data_by_good怎么用?PHP order::do_order_product_detail_data_by_good使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类order
的用法示例。
在下文中一共展示了order::do_order_product_detail_data_by_good方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: put
/**
* 提交
*/
public function put()
{
$request_data = $this->input->post();
$total_products = 0;
$total = 0;
if (empty($request_data['order_id']) || !is_numeric($request_data['order_id'])) {
remind::set(Kohana::lang('o_global.bad_request'), request::referrer());
}
$order = Myorder::instance($request_data['order_id'])->get();
if (empty($order) || !isset($order)) {
remind::set(Kohana::lang('o_global.bad_request'), request::referrer());
}
$good_ids = $request_data['good_id'];
$prices = $request_data['discount_price'];
$amounts = $request_data['amount'];
if ($good_ids && is_array($good_ids)) {
foreach ($good_ids as $key => $val) {
$good_full_data = ProductService::get_instance()->get($val);
if (empty($good_full_data) || !isset($good_full_data)) {
remind::set(Kohana::lang('o_global.bad_request'), request::referrer());
}
if ($good_full_data['store'] == '0') {
remind::set(Kohana::lang('o_global.bad_request'), request::referrer());
}
//得到合理的价格数值
if ($good_full_data['store'] == -1 && $amounts[$key] > 999) {
$amounts[$key] = 999;
}
if ($good_full_data['store'] != -1 && $amounts[$key] > $good_full_data['store']) {
$amounts[$key] = $good_full_data['store'];
}
//$product_data = ProductService::get_instance()->get($good_full_data['product_id']);
$order_product_detail_data = array();
$order_product_detail_data['order_id'] = $order['id'];
$order_product_detail_data['product_type'] = ProductService::PRODUCT_TYPE_GOODS;
$order_product_detail_data['dly_status'] = 'storage';
//$order_product_detail_data['product_id'] = $product_data['id'];
$order_product_detail_data['good_id'] = $val;
$order_product_detail_data['quantity'] = $amounts[$key];
$order_product_detail_data['sendnum'] = '0';
$order_product_detail_data['price'] = $good_full_data['price'];
$order_product_detail_data['discount_price'] = $prices[$key];
$order_product_detail_data['weight'] = $good_full_data['weight'];
$order_product_detail_data['name'] = $good_full_data['title'];
$order_product_detail_data['SKU'] = $good_full_data['sku'];
$order_product_detail_data['brief'] = $good_full_data['brief'];
$order_product_detail_data['date_add'] = date('Y-m-d H:i:s', time());
$order_product_detail_data['link'] = product::permalink($good_full_data);
order::do_order_product_detail_data_by_good(&$order_product_detail_data, $good_full_data, $good_full_data['default_image_id']);
Myorder_product::instance()->add($order_product_detail_data);
}
//重新查询数据库,计算价格
$goods_order = Myorder_product::instance()->order_product_details(array('order_id' => $order['id']));
foreach ($goods_order as $val) {
$total_products += $val['quantity'] * $val['discount_price'];
}
$total = $total_products + $order['total_shipping'];
$total_real = round($total * 100 / $order['conversion_rate']) / 100;
$final_data = array('total' => $total, 'total_products' => $total_products, 'total_real' => $total_real);
if (Myorder::instance($order['id'])->edit($final_data)) {
remind::set(Kohana::lang('o_global.add_success'), '', 'success');
} else {
remind::set(Kohana::lang('o_global.add_error'), '', 'error');
}
} else {
remind::set(Kohana::lang('o_global.add_error'), '', 'error');
}
$this->template = new View('layout/commonfix_html');
$this->template->content = new View("order/order_product/put_goods");
$this->template->content->order = $order;
}
示例2: do_add
//.........这里部分代码省略.........
$user_id = $this->input->post('user_id');
$email = $this->input->post('email');
$carrier = $this->input->post('carrier');
$currency_code = $this->input->post('code');
if ($user_id && $email && $currency_code) {
/* 订单用户信息*/
$order_data['user_id'] = $user_id;
$order_data['email'] = $email;
/* 订单币种信息*/
$currency = Mycurrency::instance()->get_by_code($currency_code);
$order_data['currency'] = $currency_code;
$order_data['conversion_rate'] = $currency['conversion_rate'];
/* 订单国家*/
$order_data['shipping_country'] = Mycountry::instance($post->shipping_country)->get('iso_code');
$order_data['billing_country'] = Mycountry::instance($post->billing_country)->get('iso_code');
/* 订单时间和IP信息*/
$order_data['data_add'] = date('Y-m-d H:i:s', time());
$order_data['IP'] = tool::get_long_ip();
/* 订单号生成*/
$order_num = '';
do {
$temp = sprintf("%14.0f", date('ymd') . "00000" + rand(0, 99999) . "0000");
$exist_data = array();
$exist_data['order_num'] = $temp;
if (!Myorder::instance()->exist($exist_data)) {
$order_num = $temp;
break;
}
} while (1);
$order_data['order_num'] = $order_num;
$order_data['order_status'] = '1';
$order_data['pay_status'] = '1';
$order_data['ship_status'] = '1';
$order_data['user_status'] = 'NULL';
$order_data['order_source'] = 'manual';
$order_data['total'] = $post->good_price + $post->shipping_price;
$order_data['total_products'] = $post->good_price;
$order_data['total_shipping'] = $post->shipping_price;
$order_data['total_real'] = $order_data['total'] / $order_data['conversion_rate'];
$order_data['total_discount'] = '0.00';
$order_data['total_paid'] = '0.00';
$order_data['shipping_firstname'] = $post->shipping_firstname;
$order_data['shipping_lastname'] = $post->shipping_lastname;
$order_data['shipping_state'] = $post->shipping_state;
$order_data['shipping_city'] = $post->shipping_city;
$order_data['shipping_address'] = $post->shipping_address;
$order_data['shipping_zip'] = $post->shipping_zip;
$order_data['shipping_phone'] = $post->shipping_phone;
$order_data['shipping_mobile'] = $post->shipping_mobile;
$order_data['billing_firstname'] = $post->billing_firstname;
$order_data['billing_lastname'] = $post->billing_lastname;
$order_data['billing_state'] = $post->billing_state;
$order_data['billing_city'] = $post->billing_city;
$order_data['billing_address'] = $post->billing_address;
$order_data['billing_zip'] = $post->billing_zip;
$order_data['billing_phone'] = $post->billing_phone;
$order_data['billing_mobile'] = $post->billing_mobile;
$order_data['carrier'] = $carrier;
$order_data['active'] = 1;
} else {
remind::set(Kohana::lang('o_order.data_trans_wrong'), 'order/order_add', 'error');
}
/* 添加订单,返回订单数据*/
$order_id = Myorder::instance()->add($order_data);
$order = Myorder::instance($order_id)->get();
/* 添加订单产品信息*/
$session = Session::instance();
$cart_data = $session->get('cart_data');
if (isset($cart_data) && is_array($cart_data) && count($cart_data) && !empty($order['order_num'])) {
foreach ($cart_data as $key => $rs) {
$good_full_data = ProductService::get_instance()->get($key);
$order_product_detail_data = array();
$order_product_detail_data['order_id'] = $order['id'];
$order_product_detail_data['product_type'] = ProductService::PRODUCT_TYPE_GOODS;
$order_product_detail_data['dly_status'] = 'storage';
//$order_product_detail_data['product_id'] = $good_full_data['product_id'];
$order_product_detail_data['good_id'] = $key;
$order_product_detail_data['quantity'] = $rs;
$order_product_detail_data['sendnum'] = '0';
$order_product_detail_data['price'] = $good_full_data['price'];
$order_product_detail_data['discount_price'] = $good_full_data['price'];
$order_product_detail_data['weight'] = $good_full_data['weight'];
//$order_product_detail_data['name'] = $good_full_data['name_manage'];
$order_product_detail_data['name'] = $good_full_data['title'];
$order_product_detail_data['SKU'] = $good_full_data['sku'];
$order_product_detail_data['brief'] = $good_full_data['brief'];
$order_product_detail_data['date_add'] = date('Y-m-d H:i:s', time());
$order_product_detail_data['link'] = product::permalink($good_full_data);
order::do_order_product_detail_data_by_good(&$order_product_detail_data, $good_full_data, $good_full_data['default_image_id']);
$order_product_detail = Myorder_product::instance()->add($order_product_detail_data);
}
}
/*验证是否添加成功,添加成功返回订单号*/
if (!empty($order['order_num']) && $order_product_detail) {
remind::set(Kohana::lang('o_order.add_order_success') . $order['order_num'], 'order/order', 'success');
} else {
remind::set(Kohana::lang('o_order.add_order_wrong'), 'order/order_add', 'error');
}
}
}