Merge branch 'dillon/34.8-jenkins-vapor' into vapor/production

This commit is contained in:
Dillon Ngo
2024-11-07 03:35:49 +08:00
4 changed files with 36 additions and 6 deletions
@@ -0,0 +1,22 @@
<?php
namespace App\Classes\General\Eloquent\Filters;
use Illuminate\Database\Eloquent\Builder;
class DoesNotHaveGroup implements Filter
{
/**
* @param Builder $builder
* @param $value
* @return Builder|mixed
*/
public static function apply(Builder $builder, $value)
{
return $builder->whereDoesntHave('transactions', function ($transaction) use ($value) {
$transaction->whereHas('groupTransaction');
});
}
}
@@ -10,6 +10,7 @@ use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Http\Resources\GroupResource;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
class DeleteGroupLogic extends AbstractControllerLogic
{
@@ -61,13 +62,17 @@ class DeleteGroupLogic extends AbstractControllerLogic
$bill = $item;
$payment = $bill->owner;
$group->transactions()->detach($bill->id);
$this->updatesTransactionStatus->execute($payment, ApprovalStatus::APPROVED);
$trns = $payment->transactions()->with('groupTransaction')->get();
if(count($trns) <= 1){
$this->updatesTransactionStatus->execute($payment, ApprovalStatus::APPROVED);
}
$this->deletesTransaction->execute($bill);
}
$group->delete();
return $this->resourceResponse(new GroupResource($group));
}
}
}