where(['store_id' => get_store_id()]); if (!empty($keyword)) { $query->andWhere([ 'or', ['like', 'name', $keyword], ['like', 'mobile', $keyword], ['like', 'number', $keyword] ]); } if ($start_time) { $query->andWhere(['>=', 'created_at', $start_time]); } if ($end_time) { $query->andWhere(['<=', 'created_at', $end_time]); } if (in_array($status, FoodBook::$validStatus)) { $query->andWhere(['status' => $status]); } $query->select(['*'])->orderBy(['created_at' => SORT_DESC]); $list = pagination_make($query); foreach ($list['list'] as &$val) { $val['book_num'] = BookForm::bookNumber($val['start_time'], false, $val['id']); // $val['status'] = $val['status'] == FoodBook::BOOK_CONFIRM ? '已到店' : ($val['status'] == FoodBook::BOOK_NOT_EXIST ? '已取消或已失效' : '待到店'); } return [ 'code' => 0, 'msg' => 'success', 'data' => [ 'data' => $list['list'], 'pageNo' => $list['pageNo'], 'totalCount' => $list['totalCount'], ], ]; } /** * 店铺确定预约信息 */ public function actionConfirm() { $id = post_params('id'); $book = FoodBook::findOne(['id' => $id, 'status' => FoodBook::BOOK_WAIT]); if (!$book) { return [ 'code' => 1, 'msg' => '该预约信息已确定或取消,失效' ]; } $book->status = FoodBook::BOOK_CONFIRM; if ($book->save()) { return [ 'code' => 0, 'msg' => '预约信息已更新' ]; } else { return [ 'code' => 1, 'msg' => $book->errors[0] ]; } } }