12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- <?php
- namespace App\Http\Controllers\Admin;
- use App\Filters\CardRidingOrderFilter;
- use App\Http\Resources\CardRidingOrderResource;
- use App\Models\AdminUser;
- use App\Models\AdminUserArea;
- use App\Models\Area;
- use App\Models\CardRidingOrder;
- use App\Utils\Admin;
- use Illuminate\Http\Request;
- use App\Http\Controllers\Controller;
- class CardRidingOrderController extends Controller
- {
- /**
- * index 骑行卡订单列表
- *
- * @param Request $request
- * @param CardRidingOrderFilter $cardRidingOrderFilter
- * @return \Illuminate\Http\JsonResponse
- * @author Fx
- *
- */
- public function index(Request $request,CardRidingOrderFilter $cardRidingOrderFilter)
- {
- $admin_id = Admin::user()->id;
- $cardRidingOrder = CardRidingOrder::query()
- ->filter($cardRidingOrderFilter)
- ->orderByDesc('id');
- if (!Admin::isAdministrator()) {
- $area_ids = AdminUser::getAreaIdsByAdminId($admin_id);
- if (count($area_ids) !== 0) {
- $cardRidingOrder = $cardRidingOrder->whereIn('area_id', $area_ids);
- } else {
- $area = AdminUserArea::query()->where('admin_id', $admin_id)->first();
- $area_id = $area->area_id ?? 0;
- $cardRidingOrder = $cardRidingOrder->where(function ($q) use ($area_id) {
- $q->where('area_id', $area_id)->orWhere('area_id', 0);
- });
- }
- }
- $cardRidingOrder = $request->get('all') ? $cardRidingOrder->all() : $cardRidingOrder->paginate();
- return $this->ok(CardRidingOrderResource::collection($cardRidingOrder));
- }
- }
|