This commit is contained in:
2025-12-10 18:28:32 +01:00
parent 6d61be9c51
commit 1303a14493
108 changed files with 3366 additions and 1559 deletions

View File

@@ -5,7 +5,7 @@ import Button from '@/components/ui/Button';
import {
getJoinTeamUseCase,
getLeaveTeamUseCase,
getGetDriverTeamQuery,
getGetDriverTeamUseCase,
getTeamMembershipRepository,
} from '@/lib/di-container';
import { useEffectiveDriverId } from '@/lib/currentDriver';
@@ -34,11 +34,12 @@ export default function JoinTeamButton({
const m = await membershipRepo.getMembership(teamId, currentDriverId);
setMembership(m);
const driverTeamQuery = getGetDriverTeamQuery();
const driverTeam = await driverTeamQuery.execute({ driverId: currentDriverId });
if (driverTeam) {
setCurrentTeamId(driverTeam.team.id);
setCurrentTeamName(driverTeam.team.name);
const driverTeamUseCase = getGetDriverTeamUseCase();
await driverTeamUseCase.execute({ driverId: currentDriverId });
const viewModel = driverTeamUseCase.presenter.getViewModel();
if (viewModel.result) {
setCurrentTeamId(viewModel.result.team.id);
setCurrentTeamName(viewModel.result.team.name);
} else {
setCurrentTeamId(null);
setCurrentTeamName(null);

View File

@@ -6,7 +6,7 @@ import Button from '@/components/ui/Button';
import Input from '@/components/ui/Input';
import {
getDriverRepository,
getGetTeamJoinRequestsQuery,
getGetTeamJoinRequestsUseCase,
getApproveTeamJoinRequestUseCase,
getRejectTeamJoinRequestUseCase,
getUpdateTeamUseCase,
@@ -36,15 +36,16 @@ export default function TeamAdmin({ team, onUpdate }: TeamAdminProps) {
}, [team.id]);
const loadJoinRequests = async () => {
const query = getGetTeamJoinRequestsQuery();
const requests = await query.execute({ teamId: team.id });
setJoinRequests(requests);
const useCase = getGetTeamJoinRequestsUseCase();
await useCase.execute({ teamId: team.id });
const viewModel = useCase.presenter.getViewModel();
setJoinRequests(viewModel.requests);
const driverRepo = getDriverRepository();
const allDrivers = await driverRepo.findAll();
const driverMap: Record<string, DriverDTO> = {};
for (const request of requests) {
for (const request of viewModel.requests) {
const driver = allDrivers.find(d => d.id === request.driverId);
if (driver) {
const dto = EntityMappers.toDriverDTO(driver);