第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何使用 Laravel 查詢生成器在一個(gè)選擇中獲取預(yù)訂集合

如何使用 Laravel 查詢生成器在一個(gè)選擇中獲取預(yù)訂集合

PHP
神不在的星期二 2023-09-22 16:59:54
有了以下代碼,我想根據(jù)單位選擇所有預(yù)訂$unitsQuery = DB::table('units as u')        ->leftJoin('reservations as r', function ($join) use($fromDate,$toDate) {            $join->on('u.id', '=', 'r.unit_id')                ->where('r.team_id', auth()->user()->current_team_id)                ->where('r.date_in ', '>=' , $fromDate)                ->where('r.date_out ', '<=' , $toDate)                ->whereNull('r.checked_out')                ->whereNull('r.deleted_at')                ->where('date_out', '!=', $fromDate)                ->where('r.status' , '!=' , 'canceled')                ->leftJoin('customer as c','r.customer_id' , '=' ,'c.id')                ->leftJoin('wallets as w', function ($join) {                    $join->on('r.id', '=', 'w.holder_id')                        ->where('w.holder_type' , 'App\Reservation');                });        })        ->select('u.id as uid',            'u.name as uname',            'u.team_id as utid',            'u.unit_number as unum',            'u.status as ustatus',            'u.sunday_day_price as sunday_price',            'u.monday_day_price as monday_price',            'u.tuesday_day_price as tuesday_price',            'u.wednesday_day_price as wednesday_price',            'u.thursday_day_price as thursday_price',            'u.friday_day_price as friday_price',            'u.saturday_day_price as saturday_price',            'u.month_price as month_price',               )        ->where('u.team_id' , auth()->user()->current_team_id)        ->where('u.enabled' , 1)        ->whereNull('u.deleted_at')        ->orderBy('u.unit_number' , 'asc')        ->groupBy(['u.id'])        ->get();我想要實(shí)現(xiàn)的是根據(jù) $fromDate 和 $toDate 獲取我的所有房間以及該房間下的所有預(yù)訂,如何在一個(gè)選擇中實(shí)現(xiàn)這一點(diǎn)以獲得類似的結(jié)果   {      "u.id":1,      "reservations":[         {            "id":1,            "price":200         },         {            "id":2,            "price":500         }      ]   },
查看完整描述

1 回答

?
守候你守候我

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊

如果您使用 Unit 作為雄辯模型,請(qǐng)執(zhí)行正常查詢。您可以使用 with 來加載關(guān)系,如果您在 API 控制器中返回這些單位,則關(guān)系將被轉(zhuǎn)換?;旧夏愕倪壿嫷亲龅搅诵坜q的風(fēng)格,可能有些SQL命名可能有錯(cuò)誤,但基本思想是存在的。


$units = Unit::query()

    ->leftJoin('reservations as r', function ($join) use($fromDate,$toDate) {

        $join->on('units.id', '=', 'r.unit_id')

            ->where('r.team_id', auth()->user()->current_team_id)

            ->where('r.date_in ', '>=' , $fromDate)

            ->where('r.date_out ', '<=' , $toDate)

            ->whereNull('r.checked_out')

            ->whereNull('r.deleted_at')

            ->where('date_out', '!=', $fromDate)

            ->where('r.status' , '!=' , 'canceled')

            ->leftJoin('customer as c','r.customer_id' , '=' ,'c.id')

            ->leftJoin('wallets as w', function ($join) {

                $join->on('r.id', '=', 'w.holder_id')

                    ->where('w.holder_type' , 'App\Reservation');

            });

    })

    ->select(

        'units.id as uid',

        'units.name as uname',

        'units.team_id as utid',

        'units.unit_number as unum',

        'units.status as ustatus',

        'units.sunday_day_price as sunday_price',

        'units.monday_day_price as monday_price',

        'units.tuesday_day_price as tuesday_price',

        'units.wednesday_day_price as wednesday_price',

        'units.thursday_day_price as thursday_price',

        'units.friday_day_price as friday_price',

        'units.saturday_day_price as saturday_price',

        'units.month_price as month_price',

    )

    ->where('units.team_id' , auth()->user()->current_team_id)

    ->where('units.enabled' , 1)

    ->whereNull('units.deleted_at')

    ->orderBy('units.unit_number' , 'asc')

    ->groupBy(['units.id'])

    ->with('reservations')

    ->get();


return $units;


查看完整回答
反對(duì) 回復(fù) 2023-09-22
  • 1 回答
  • 0 關(guān)注
  • 127 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)