diff --git a/FlyCube/MpApi/Controller/AdminController.class.php b/FlyCube/MpApi/Controller/AdminController.class.php index 8b99adf..5d2d8e1 100644 --- a/FlyCube/MpApi/Controller/AdminController.class.php +++ b/FlyCube/MpApi/Controller/AdminController.class.php @@ -743,12 +743,53 @@ class AdminController extends PublicController */ public function getOrderList() { + $where = []; + + // 非总管理员只返回自己的账户信息 if ($this->tokenShop_id != C('powerId')) { - $where['o.shop_id'] = $this->tokenShop_id; // 非总管理员只返回自己的账户信息 + $where['shop_id'] = $this->tokenShop_id; + } + + // 添加 start_time 和 end_time 条件 + if (isset($_REQUEST['start_time']) && isset($_REQUEST['end_time'])) { + $where['order_time'] = array('between', array($_REQUEST['start_time'], $_REQUEST['end_time'])); + } + + // 添加 main_status 条件 + if (isset($_REQUEST['main_status']) && is_array($_REQUEST['main_status'])) { + $where['main_status'] = array('in', $_REQUEST['main_status']); + } + + // 添加 shipment_status 条件 + if (isset($_REQUEST['shipment_status']) && is_array($_REQUEST['shipment_status'])) { + $where['shipment_status'] = array('in', $_REQUEST['shipment_status']); + } + + // 添加 refund_status 条件 + if (isset($_REQUEST['refund_status']) && is_array($_REQUEST['refund_status'])) { + $where['refund_status'] = array('in', $_REQUEST['refund_status']); + } + + // 添加搜索条件 + if (isset($_REQUEST['search']) && is_array($_REQUEST['search']) && count($_REQUEST['search']) == 2) { + list($field, $value) = $_REQUEST['search']; + if (!empty($field) && !empty($value)) { + $fieldMap = [ + 'orderSn' => 'order_sn', + 'name' => 'receiver', + 'tel' => 'tel', + 'remark' => 'remark', + 'desc' => 'describe' + ]; + + if (array_key_exists($field, $fieldMap)) { + $where[$fieldMap[$field]] = array('like', '%' . $value . '%'); + } + } } $orderDb = D('order'); - $orderList = $orderDb->select(); + $orderList = $orderDb->where($where)->select(); echo json_encode(array('status' => 1, 'msg' => '访问成功', 'orderList' => $orderList)); } }