diff --git a/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseMyController.kt b/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseMyController.kt index cb00298..2081d51 100644 --- a/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseMyController.kt +++ b/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseMyController.kt @@ -22,15 +22,17 @@ class DefenseMyController( @GetMapping fun my( @AuthenticationPrincipal jwt: Jwt, - ): List = service.mySessions(UUID.fromString(jwt.subject)).map { hideCode(it) } + ): List = service.mySessions(UUID.fromString(jwt.subject)).map { hideForStudent(it) } @GetMapping("/{labId}") fun one( @PathVariable labId: UUID, @AuthenticationPrincipal jwt: Jwt, - ): DefenseDto? = service.mySession(UUID.fromString(jwt.subject), labId)?.let { hideCode(it) } + ): DefenseDto? = service.mySession(UUID.fromString(jwt.subject), labId)?.let { hideForStudent(it) } - private fun hideCode(d: DefenseDto): DefenseDto = if (d.status == DefenseStatus.waiting.name) d.copy(code = null) else d + /** Студент не должен видеть ни код, ни текст задания до ввода кода. */ + private fun hideForStudent(d: DefenseDto): DefenseDto = + if (d.status == DefenseStatus.waiting.name) d.copy(code = null, assignmentMd = "") else d @PostMapping("/start") fun start( diff --git a/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseService.kt b/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseService.kt index 8e76868..687536e 100644 --- a/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseService.kt +++ b/services/progress-service/src/main/kotlin/ru/ysu/lms/progress/DefenseService.kt @@ -204,7 +204,7 @@ class DefenseService( labId = s.labId.toString(), status = s.status, code = s.code, - assignmentMd = if (s.status == DefenseStatus.waiting.name) "" else s.assignmentMd, + assignmentMd = s.assignmentMd, startedAt = s.startedAt?.toString(), readyAt = s.readyAt?.toString(), readyReason = s.readyReason,