middleware('api'); } public function store(Request $request) { $validator = Validator::make($request->all(), [ 'data.name' => 'required', 'data.employees' => 'required', ]); if($validator->fails()){ return response()->json($validator->errors(), 400); } $userIdsArray = array_column($request->all()['data']['employees'], 'id'); $team = Team::create($request->all()['data']); $team->users()->attach( $userIdsArray ); return response()->json([ 'message' => 'Team created successfully', 'team' => $team ], 201); } public function delete(Request $request) { $validator = Validator::make($request->all(), [ 'data.id' => 'required', ]); if($validator->fails()){ return response()->json($validator->errors(), 400); } $team = Team::find($request->all()['data']['id']); $team->users()->detach(); $team->delete(); return response()->json([ 'message' => 'Team deleted successfully', 'team' => $team ], 201); } public function update(Request $request) { $validator = Validator::make($request->all(), [ 'data.id' => 'required', 'data.name' => 'required', 'data.employees' => 'required', ]); if($validator->fails()){ return response()->json($validator->errors(), 400); } $userIdsArray = array_column($request->all()['data']['employees'], 'id'); $team = Team::find($request->all()['data']['id']); $team->users()->detach(); $team->users()->attach( $userIdsArray ); $team->update($request->all()['data']); return response()->json([ 'message' => 'Team updated successfully', 'team' => $team ], 201); } }