Skip to content

Commit

Permalink
各所修正
Browse files Browse the repository at this point in the history
  • Loading branch information
eve00 committed Dec 22, 2023
1 parent a5f3ae5 commit 99e6baf
Show file tree
Hide file tree
Showing 16 changed files with 235 additions and 96 deletions.
124 changes: 124 additions & 0 deletions .idea/uiDesigner.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

37 changes: 0 additions & 37 deletions src/main/kotlin/data/dataSource/fakeCourseData.json

This file was deleted.

Empty file.
7 changes: 7 additions & 0 deletions src/main/kotlin/data/repository/CourseMembersRepository.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,13 @@ package data.repository
import domain.entity.CourseId
import domain.entity.Student

class CourseMembersRepositoryImpl():CourseMembersRepository{
override fun save(courseId: CourseId, courseMemberList: List<Student>) {


}
}

interface CourseMembersRepository {
fun save(courseId: CourseId, courseMemberList:List<Student>)
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,27 @@ interface CourseTakingApplicationsRepository {
suspend fun save(courseTakingApplication: CourseTakingApplication)
suspend fun delete(courseTakingApplication: CourseTakingApplication)

}

class CourseTakingApplicationsRepositoryImpl(): CourseTakingApplicationsRepository {
override suspend fun findByStudentId(studentId: StudentId): List<CourseTakingApplication> {
TODO("Not yet implemented")
}

override suspend fun findByCourseId(courseId: CourseId): List<CourseTakingApplication> {
TODO("Not yet implemented")
}

override suspend fun findByCourseTakingApplicationId(courseTakingApplicationId: CourseTakingApplicationId): CourseTakingApplication {
TODO("Not yet implemented")
}

override suspend fun save(courseTakingApplication: CourseTakingApplication) {
TODO("Not yet implemented")
}

override suspend fun delete(courseTakingApplication: CourseTakingApplication) {
TODO("Not yet implemented")
}

}
16 changes: 15 additions & 1 deletion src/main/kotlin/data/repository/CoursesRepository.kt
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,18 @@ interface CoursesRepository {
suspend fun findAll() : List<Course>
suspend fun findById(courseId: CourseId) : Course
suspend fun findByFaculty(faculty: Faculty) : List<Course>
}
}

class CoursesRepositoryImpl():CoursesRepository {
override suspend fun findAll(): List<Course> {
TODO("Not yet implemented")
}

override suspend fun findById(courseId: CourseId): Course {
TODO("Not yet implemented")
}

override suspend fun findByFaculty(faculty: Faculty): List<Course> {
TODO("Not yet implemented")
}
}
11 changes: 11 additions & 0 deletions src/main/kotlin/data/repository/StudentsRepository.kt
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,15 @@ import domain.entity.StudentId
interface StudentsRepository {
suspend fun findAll(): List<Student>
suspend fun findById(studentId: StudentId): Student
}

class StudentsRepositoryImpl:StudentsRepository {
override suspend fun findAll(): List<Student> {
TODO("Not yet implemented")
}

override suspend fun findById(studentId: StudentId): Student {
TODO("Not yet implemented")
}

}
9 changes: 0 additions & 9 deletions src/main/kotlin/domain/Hub.kt

This file was deleted.

2 changes: 1 addition & 1 deletion src/main/kotlin/domain/entity/CourseTakingApplication.kt
Original file line number Diff line number Diff line change
Expand Up @@ -45,5 +45,5 @@ class CourseTakingApplication(
}

enum class State {
CREATED, UNCONFIRMED, CONFIRMED, INVALIDATED
UNCONFIRMED, CONFIRMED, INVALIDATED
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@ package domain.service
import domain.entity.*

interface CourseRegistrationService {


suspend fun drawingAndRegisterMembers(courseId: CourseId)

suspend fun registerMembers(courseId: CourseId)
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,5 @@ import domain.entity.*
interface CourseTakingApplicationService {
suspend fun applyCourseTaking(courseTakingApplicationId: CourseTakingApplicationId, studentId:StudentId, courseId: CourseId)
suspend fun cancelCourseTaking(courseTakingApplicationId: CourseTakingApplicationId)
suspend fun applyCourseTakingBasedOnFirstserved(courseTakingApplicationId: CourseTakingApplicationId, studentId:StudentId, courseId: CourseId)
suspend fun getCourseTakingApplications(studentId: StudentId): List<CourseTakingApplication>
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,5 @@ import domain.entity.Course
import domain.entity.CourseId

interface FirstServedManagementService {
suspend fun checkCanTake(courseId: CourseId):Boolean

suspend fun getCoursesCanTake(): List<Course>
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import domain.service.FirstServedManagementService
* */
class CourseTakingApplicationServiceImpl(
val repository: CourseTakingApplicationsRepository,
val firstServedManagementService: FirstServedManagementService
) : CourseTakingApplicationService {

override suspend fun applyCourseTaking(
Expand All @@ -31,15 +30,6 @@ class CourseTakingApplicationServiceImpl(
repository.delete(canceledCourseTakingApplication)
}

override suspend fun applyCourseTakingBasedOnFirstserved(
courseTakingApplicationId: CourseTakingApplicationId,
studentId: StudentId,
courseId: CourseId
) {
if (firstServedManagementService.checkCanTake(courseId))
applyCourseTaking(courseTakingApplicationId, studentId, courseId)
}

override suspend fun getCourseTakingApplications(studentId: StudentId): List<CourseTakingApplication> {
return repository.findByStudentId(studentId)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,6 @@ class FirstServedManagementServiceImpl(
val repository: CourseTakingApplicationsRepository,
val coursesRepository: CoursesRepository
) : FirstServedManagementService {
override suspend fun checkCanTake(courseId: CourseId): Boolean {
return repository.findByCourseId(courseId).size < coursesRepository.findById(courseId).getMax()
}

override suspend fun getCoursesCanTake(): List<Course> {
return coursesRepository.findAll()
.filter { course ->
Expand Down
27 changes: 23 additions & 4 deletions src/main/kotlin/webServer/Main.kt
Original file line number Diff line number Diff line change
@@ -1,11 +1,30 @@
package webServer

fun main(args: Array<String>) {

/* CourseTakingAndRegistration(
import data.repository.*
import domain.service.impl.CourseRegistrationServiceImpl
import domain.service.impl.CourseTakingApplicationServiceImpl
import domain.service.impl.FirstServedManagementServiceImpl
import org.http4k.server.Jetty
import org.http4k.server.asServer

).asServer(Jetty(8080)).start()*/

fun main(args: Array<String>) {
CourseTakingAndRegistration(
CourseTakingApplicationServiceImpl(
CourseTakingApplicationsRepositoryImpl(),
),
FirstServedManagementServiceImpl(
CourseTakingApplicationsRepositoryImpl(),
CoursesRepositoryImpl(),
),
CourseRegistrationServiceImpl(
CourseTakingApplicationsRepositoryImpl(),
CourseMembersRepositoryImpl(),
CoursesRepositoryImpl(),
StudentsRepositoryImpl(),
),
CoursesRepositoryImpl(),
).asServer(Jetty(8080)).start()

println("Server started at http://localhost:8080")

Expand Down
Loading

0 comments on commit 99e6baf

Please sign in to comment.