Update export di module senior officer

This commit is contained in:
majid
2024-09-11 14:39:47 +07:00
parent e7d69c4e83
commit eac8e21b2e
14 changed files with 415 additions and 48 deletions

View File

@@ -12,6 +12,8 @@ use Modules\Lpj\Models\Teams;
use Modules\Lpj\Models\TeamsUsers;
use Modules\Lpj\Http\Requests\TeamsRequest;
use Illuminate\Support\Facades\DB;
use Modules\Lpj\Exports\TeamPenilaianExport;
use Maatwebsite\Excel\Facades\Excel;
class TeamsController extends Controller
{
@@ -30,8 +32,13 @@ class TeamsController extends Controller
public function create()
{
$region = Regions::all();
$user = User::all();
// cek region apakah sudah ada di tabel teams
$regionTeam = Teams::pluck('regions_id')->toArray();
$region = Regions::whereNotIn('id', $regionTeam)->get();
// cek user apakah sudah ada di tabel teams_users
$userTeam = TeamsUsers::pluck('user_id')->toArray();
$user = User::whereNotIn('id', $userTeam)->get();
return view('lpj::teams.form', compact('region', 'user'));
}
@@ -86,8 +93,13 @@ class TeamsController extends Controller
public function edit($id)
{
$teams = Teams::find($id);
$region = Regions::all();
$user = User::all();
$usedUsers = TeamsUsers::where('teams_id', '!=', $id)->pluck('user_id')->toArray();
$user = User::whereNotIn('id', $usedUsers)->get();
// Ambil user yang sudah ada di tim ini
$selectedUsers = $teams->teamsUsers->pluck('user_id')->toArray();
return view('lpj::teams.form', compact('teams', 'region', 'user', 'selectedUsers'));
@@ -149,15 +161,11 @@ class TeamsController extends Controller
DB::commit();
return redirect()
->route('basicdata.teams.index')
->with('success', 'Team has been deleted successfully.');
echo json_encode(['success' => true, 'message' => 'Team has been deleted successfully']);
} catch (Exception $e) {
DB::rollBack();
return redirect()
->route('basicdata.teams.index')
->with('error', 'Failed to delete team. ');
echo json_encode(['success' => false, 'message' => 'Failed to delete Team']);
}
}
@@ -236,6 +244,10 @@ class TeamsController extends Controller
}
public function export()
{
return Excel::download(new TeamPenilaianExport, 'team-penilai.xlsx');
}
}