getUser(); // 获取分页参数 $page = $this->request->param('page', 1); $pageSize = $this->request->param('page_size', 10); // 获取订单列表 $orderQuery = Db::name('order') ->field('goods_id, goods_title, goods_price, order_total, order_zhe_total, price, use_money, use_integral, use_money2, addtime, pay_time, prize_num, use_coupon, order_num') ->where([ 'user_id' => $user['id'], 'status' => 1 ]) ->order('addtime desc'); // 获取总数 $total = $orderQuery->count(); // 获取分页数据 $orderList = $orderQuery->page($page, $pageSize)->select()->toArray(); // 格式化数据 foreach ($orderList as &$order) { // 格式化时间 $order['addtime'] = date('Y-m-d H:i:s', $order['addtime']); $order['pay_time'] = $order['pay_time'] ? date('Y-m-d H:i:s', $order['pay_time']) : ''; // 格式化价格数据 $order['goods_price'] = (float)$order['goods_price']; $order['order_total'] = (float)$order['order_total']; $order['order_zhe_total'] = (float)$order['order_zhe_total']; $order['price'] = (float)$order['price']; $order['use_money'] = (float)$order['use_money']; $order['use_money2'] = (float)$order['use_money2']; } unset($order); // 返回分页数据 $data = [ 'list' => $orderList, 'total' => $total, 'page' => (int)$page, 'page_size' => (int)$pageSize, 'total_pages' => ceil($total / $pageSize) ]; return $this->renderSuccess('获取成功', $data); } /** * 获取订单详情 * * @return \think\Response */ public function getOrderDetail() { // 获取订单编号 $orderNum = $this->request->param('order_num', ''); if (empty($orderNum)) { return $this->renderError('订单编号不能为空'); } // 获取当前登录用户 $user = $this->getUser(); // 获取订单详情 $orderInfo = Db::name('order') ->field('goods_id, goods_title, goods_price, id, order_total, order_zhe_total, price, use_money, use_integral, use_money2, addtime, pay_time, prize_num, use_coupon') ->where([ 'status' => 1, 'order_num' => $orderNum ]) ->find(); if (!$orderInfo) { return $this->renderError('订单不存在'); } // 格式化时间 $orderInfo['addtime'] = date('Y-m-d H:i:s', $orderInfo['addtime']); $orderInfo['pay_time'] = $orderInfo['pay_time'] ? date('Y-m-d H:i:s', $orderInfo['pay_time']) : ''; // 格式化价格数据 $orderInfo['goods_price'] = (float)$orderInfo['goods_price']; $orderInfo['order_total'] = (float)$orderInfo['order_total']; $orderInfo['order_zhe_total'] = (float)$orderInfo['order_zhe_total']; $orderInfo['price'] = (float)$orderInfo['price']; $orderInfo['use_money'] = (float)$orderInfo['use_money']; $orderInfo['use_money2'] = (float)$orderInfo['use_money2']; // 获取订单商品列表 $orderGoods = Db::name('order_list') ->field('goodslist_title, goodslist_imgurl, goodslist_price, addtime') ->where([ 'order_id' => $orderInfo['id'] ]) ->select()->toArray(); // 格式化订单商品数据 foreach ($orderGoods as &$goods) { $goods['addtime'] = date('Y-m-d H:i:s', $goods['addtime']); $goods['goodslist_price'] = (float)$goods['goodslist_price']; $goods['goodslist_imgurl'] = imageUrl($goods['goodslist_imgurl']); } unset($goods); $orderInfo['goods_list'] = $orderGoods; return $this->renderSuccess('获取成功', $orderInfo); } }