Failed experiment for local development

This commit is contained in:
2021-04-22 21:02:06 +02:00
parent d32eaa9b9a
commit 4cc642735f
43 changed files with 490 additions and 250 deletions

View File

@@ -85,7 +85,7 @@ class PrivateTravelRestController(
}
@RequestMapping("/listallusertravels")
suspend fun listUserTravels(principal: Principal): ApiResponse<ListDto<TravelDto>> {
suspend fun listAllUserTravels(principal: Principal): ApiResponse<ListDto<TravelDto>> {
return response {
val userId = authService.currentUser(principal).id
val useCase = ListUserTravels(travelRepository)
@@ -118,6 +118,7 @@ class PrivateTravelRestController(
@RequestParam @Validated userId: UserId,
principal: Principal
): ApiResponse<Unit> {
throwErrorIfCannotEditTravel(travelId, principal)
return response {
throwErrorIfCannotEditTravel(travelId, principal)
val useCase = useCaseService.getAddTraveler()
@@ -131,6 +132,7 @@ class PrivateTravelRestController(
@RequestParam @Validated userId: UserId,
principal: Principal
): ApiResponse<Unit> {
throwErrorIfCannotEditTravel(travelId, principal)
return response {
val useCase = useCaseService.getRemoveTraveler()
useCase.removeTraveler(travelId, userId)

View File

@@ -35,6 +35,6 @@ class MatrixService(private val matrixClient: MatrixClient) : MatrixApi {
override suspend fun kickUser(roomId: String, user: User) {
val matrixUserId = MatrixId.UserId(user.matrixId)
logger.debug { "Kick user $matrixUserId from room $roomId" }
matrixClient.roomsApi.leaveRoom(MatrixId.RoomId(roomId), matrixUserId)
matrixClient.roomsApi.leaveRoom(MatrixId.RoomId(roomId), matrixUserId) // TODO should be kickUser
}
}

View File

@@ -12,7 +12,7 @@ class RemoveTraveler(
private val travelRepository: TravelRepository,
private val matrixApi: MatrixApi
) {
suspend fun removeTraveler(travelId: TravelId, userId: UserId) {
suspend fun removeTraveler(travelId: TravelId, userId: UserId, kickFromChat: Boolean = false) {
val user = userRepository.findByIdOrNull(userId)
val travel = travelRepository.findByIdOrNull(travelId)
@@ -20,7 +20,7 @@ class RemoveTraveler(
val traveler = travel?.travelers?.find { it.id == userId }
if ((traveler != null) && (user != null)) {
matrixApi.kickUser(travel.matrixRoomId, user)
if (kickFromChat) matrixApi.kickUser(travel.matrixRoomId, user)
travel.travelers.remove(traveler)
travelRepository.save(travel)
}