alias('fo')->where(['fo.store_id' => get_store_id()])->leftJoin(['u' => User::tableName()],'u.id=fo.user_id'); if (!empty($key)) { $query->andWhere([ 'or', ['like', 'u.nickname', $key], ['like', 'u.real_name', $key], ['like', 'fo.order_no', $key], ['like', 'u.binding', $key], ]); } if ($dateStart) { $query->andWhere(['>=', 'fo.created_at', strtotime($dateStart)]); } if ($dateEnd) { $query->andWhere(['<=', 'fo.created_at', strtotime($dateEnd)]); } if (in_array($status, [0, 1])) { $query->andWhere(['fo.is_pay' => $status]); } $query->select('fo.*, u.nickname, u.real_name, u.binding')->orderBy(['fo.created_at' => SORT_DESC]); $list = pagination_make($query); foreach ($list['list'] as &$val) { $val['goods_list'] = FoodOrderDetail::find()->where(['order_id' => $val['id']])->asArray()->all(); } return [ 'code' => 0, 'msg' => 'success', 'data' => [ 'data' => $list['list'], 'pageNo' => $list['pageNo'], 'totalCount' => $list['totalCount'], ], ]; } }