|
@@ -79,25 +79,24 @@ class Resource
|
|
|
$prefix = strtoupper(substr($this->app, 0, 2));
|
|
|
if ($this->type == 3) {
|
|
|
$order['cash'] = $info['value'];
|
|
|
+ $order['address_id'] = Dever::input('address_id', 'is_numeric', '收货地址');
|
|
|
} else {
|
|
|
$order['cash'] = ($info['value']/Place::$info['score_per']);
|
|
|
}
|
|
|
- $order['order_num'] = Dever::load('util', 'api')->createNumber($prefix, 'place/order');
|
|
|
- $order['notify'] = 'place/callback.resource|' . Dever::input('p') . '|' . $order['order_num'] . '|' . $this->type;
|
|
|
+ $order['order_num'] = Dever::load('util', 'api')->createNumber($prefix, $this->app . '/order');
|
|
|
+ $order['notify'] = 'place/callback.resource|' . Dever::input('p') . '|' . $order['order_num'] . '|' . $this->app;
|
|
|
|
|
|
$data['pay'] = Dever::load('account', 'place')->pay($order);
|
|
|
if ($data['pay'] && empty($data['pay']['link'])) {
|
|
|
$order['status'] = 1;
|
|
|
- $order['type'] = $this->type;
|
|
|
- $order['type_id'] = $info['id'];
|
|
|
+ $order['info_id'] = $info['id'];
|
|
|
$order['num'] = $info['num'];
|
|
|
- $data['order_id'] = Dever::db('order', 'place')->insert($order);
|
|
|
+ $data['order_id'] = Dever::db('order', $this->app)->insert($order);
|
|
|
$data['order_num'] = $order['order_num'];
|
|
|
if (isset($info['detail'])) {
|
|
|
$detail['order_id'] = $data['order_id'];
|
|
|
foreach ($info['detail'] as $k => $v) {
|
|
|
- $detail['type'] = $this->type;
|
|
|
- $detail['type_id'] = $v['id'];
|
|
|
+ $detail['info_id'] = $v['id'];
|
|
|
if (isset($v['sku_id'])) {
|
|
|
$detail['sku_id'] = $v['sku_id'];
|
|
|
}
|
|
@@ -109,9 +108,9 @@ class Resource
|
|
|
$detail['num'] = $v['num'] ?? $order['num'];
|
|
|
$detail['name'] = $v['name'];
|
|
|
$detail['pic'] = $v['pic'];
|
|
|
- Dever::db('order_detail', 'place')->insert($detail);
|
|
|
+ Dever::db('order_detail', $this->app)->insert($detail);
|
|
|
if (isset($v['cart_id']) && $v['cart_id']) {
|
|
|
- Dever::db('cart', 'goods')->delete(array('id' => $v['cart_id'], 'uid' => Place::$uid));
|
|
|
+ Dever::db('cart', $this->app)->delete(array('id' => $v['cart_id'], 'uid' => Place::$uid));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -119,6 +118,62 @@ class Resource
|
|
|
return $data;
|
|
|
}
|
|
|
|
|
|
+ # 获取订单列表
|
|
|
+ public function getOrderList()
|
|
|
+ {
|
|
|
+ $where['uid'] = Place::$uid;
|
|
|
+ $set['num'] = 10;
|
|
|
+ $set['col'] = 'id,info_id,name,cash,num,cdate,status';
|
|
|
+ $data = Dever::db('order', $this->app)->select($where, $set);
|
|
|
+ $result = array();
|
|
|
+ if ($data) {
|
|
|
+ foreach ($data as $k => $v) {
|
|
|
+ $order = $this->getOrderInfo($v);
|
|
|
+ if ($order) {
|
|
|
+ $result[] = $order;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return $result;
|
|
|
+ }
|
|
|
+
|
|
|
+ # 获取订单详情
|
|
|
+ public function getOrderView()
|
|
|
+ {
|
|
|
+ $where['uid'] = Place::$uid;
|
|
|
+ $where['id'] = Dever::input('id', 'is_numeric', '订单');
|
|
|
+ $order = Dever::db('order', $this->app)->find($where);
|
|
|
+ if ($order) {
|
|
|
+ $order = $this->getOrderInfo($order, true);
|
|
|
+ } else {
|
|
|
+ Dever::error('订单不存在');
|
|
|
+ }
|
|
|
+ return $order;
|
|
|
+ }
|
|
|
+
|
|
|
+ private function getOrderInfo($order, $view = false)
|
|
|
+ {
|
|
|
+ $info = Dever::db('info', $this->app)->find($order['info_id'], array('col' => 'id,name,pic,info'));
|
|
|
+ $info['pic'] = explode(',', $info['pic']);
|
|
|
+ $order['pic'] = $info['pic'][0] ?? '';
|
|
|
+
|
|
|
+ $order = Dever::load('order', $this->app)->getInfo($order, $view);
|
|
|
+ if ($order) {
|
|
|
+ $order['status_name'] = Dever::db('order', $this->app)->value('status', $order['status']);
|
|
|
+ $order['cdate_str'] = date('Y-m-d H:i:s', $order['cdate']);
|
|
|
+ if (isset($order['pdate']) && $order['pdate']) {
|
|
|
+ $order['pdate_str'] = date('Y-m-d H:i:s', $order['pdate']);
|
|
|
+ }
|
|
|
+ if (isset($order['ddate']) && $order['ddate']) {
|
|
|
+ $order['ddate_str'] = date('Y-m-d H:i:s', $order['ddate']);
|
|
|
+ }
|
|
|
+ if (isset($order['fdate']) && $order['fdate']) {
|
|
|
+ $order['fdate_str'] = date('Y-m-d H:i:s', $order['fdate']);
|
|
|
+ }
|
|
|
+ return $order;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
# 同步资源,关联资源
|
|
|
public function relation($place_id, $data, $relation)
|
|
|
{
|