Как объединить эти две функции с построителем запросов Laravel

Мне нужно экспортировать окончательную сумму после расчета всей к оплате и получению члена, теперь я делаю две функции, как их объединить

public function memberReceivable($id){

    return $this->join('transactions', 'transactions.id', '=', 'member_transactions.transaction_id')
    ->leftjoin('accounts', 'accounts.id', '=', 'transactions.account_id')
    ->selectRaw("transactions.unit as currency,sum(transactions.amount) as amount")
    ->where('accounts.type','accountsReceivable')
    ->where('member_transactions.member_id',$id)
    ->groupBy('transactions.unit')->get();    
}

public function memberPayable($id){

    return $this->join('transactions', 'transactions.id', '=', 'member_transactions.transaction_id')
             ->leftjoin('accounts', 'accounts.id', '=', 'transactions.account_id')
             ->selectRaw("transactions.unit as currency,sum(transactions.amount) as amount")
             ->where('accounts.type','accountsPayable')
             ->where('member_transactions.member_id',$id)
             ->groupBy('transactions.unit')->get();
}

возможно, создайте функцию слияния и верните обе функции в этой одной функции

samezedi 25.06.2018 12:40
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
75
1

Ответы 1

public function member($id = null, $type = ""){
    $response = $this->join('transactions', 'transactions.id', '=', 
    'member_transactions.transaction_id')
    ->leftjoin('accounts', 'accounts.id', '=', 'transactions.account_id')
    ->selectRaw("transactions.unit as currency,sum(transactions.amount) as amount");

    if ($type){
      $response->where('accounts.type', $type);
    }

    if ($id){
      $response->where('member_transactions.member_id',$id);
    }

    $response->groupBy('transactions.unit')->get();

    return $response;
}

Можешь попробовать.

хорошо, спасибо, если я хочу использовать эту функцию для всех членов, как я могу использовать это

Ali Mashl 25.06.2018 12:44

спасибо за ваше время, предположим, что если я не передам какие-либо функции $ id и $ type, должен предоставить мне весь отчет

Ali Mashl 25.06.2018 12:55

Другие вопросы по теме