Я хотел бы удалить другие отношения, даже если какое-либо из предыдущих удалений не удалось. Я использовал много попыток / поймать, чтобы достичь этого. Есть ли способ уменьшить количество try-catch в моем коде или сделать это без try-catch?
public function delete_live_event(Request $request){
try{
$user = User::find($request->auth_user_id);
if(!$request->journey_item_id){
return response()->json(['StatusMessage' => 'Bir hata oluştu !', 'StatusCode' => 401,'error'=>'live_event_id gönderilmedi'], 401);
}
$journey_item = JourneyItem::find($request->journey_item_id);
if ($journey_item == null) {
return response()->json(['StatusMessage' => __('contents.not_found'), 'StatusCode' => 404], 404);
}
/** Assigned Users deleted **/
try{
UserJourney::where('as_journey_id',$journey_item->journey->id)->delete();
}catch (\Exception $e){ //log
}
/** journey deleted **/
try{
$journey_item->journey()->delete();
}catch (\Exception $e){
//Log
}
/** content deleted **/
try{
$journey_item->content()->delete();
}catch (\Exception $e){//Log
}
/** notifications deleted **/
try{
UserJourneyItemNotification::where('as_journey_item_id', $journey_item->id)->delete();
}catch (\Exception $e){//Log
}
/** item deleted **/
try{
$journey_item->item()->delete();
}catch (\Exception $e){//Log
}
/** journey_item deleted **/
$journey_item->delete();
return response()->json(['StatusMessage' => 'Live event is deleted succesfuly', 'StatusCode' => 200], 200);
}catch (\Exception $e){
//TODO error log
return response()->json(['StatusMessage' => 'Bir hata oluştu !', 'StatusCode' => 400], 401);
}
}