#76 total studytime toevoegen aan een functionaltimer
This commit is contained in:
		
							parent
							
								
									4996d387ad
								
							
						
					
					
						commit
						b0c4f44833
					
				
					 7 changed files with 28 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -0,0 +1,4 @@
 | 
			
		|||
package be.ugent.sel.studeez.data
 | 
			
		||||
 | 
			
		||||
class SessionReportState {
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -1,5 +1,6 @@
 | 
			
		|||
package be.ugent.sel.studeez.data.local.models.timer_functional
 | 
			
		||||
 | 
			
		||||
import be.ugent.sel.studeez.data.local.models.SessionReport
 | 
			
		||||
import be.ugent.sel.studeez.screens.session.sessionScreens.CustomSessionScreen
 | 
			
		||||
import be.ugent.sel.studeez.screens.session.sessionScreens.AbstractSessionScreen
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -8,6 +9,7 @@ class FunctionalCustomTimer(studyTime: Int) : FunctionalTimer(studyTime) {
 | 
			
		|||
    override fun tick() {
 | 
			
		||||
        if (!hasEnded()) {
 | 
			
		||||
            time.minOne()
 | 
			
		||||
            totalStudyTime++
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,6 +15,7 @@ class FunctionalEndlessTimer : FunctionalTimer(0) {
 | 
			
		|||
 | 
			
		||||
    override fun tick() {
 | 
			
		||||
        time.plusOne()
 | 
			
		||||
        totalStudyTime++
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    override fun getView(): AbstractSessionScreen {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -26,6 +26,10 @@ class FunctionalPomodoroTimer(
 | 
			
		|||
            isInBreak = !isInBreak
 | 
			
		||||
        }
 | 
			
		||||
        time.minOne()
 | 
			
		||||
 | 
			
		||||
        if (!isInBreak) {
 | 
			
		||||
            totalStudyTime++
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    override fun hasEnded(): Boolean {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,8 +1,12 @@
 | 
			
		|||
package be.ugent.sel.studeez.data.local.models.timer_functional
 | 
			
		||||
 | 
			
		||||
import be.ugent.sel.studeez.data.local.models.SessionReport
 | 
			
		||||
import be.ugent.sel.studeez.screens.session.sessionScreens.AbstractSessionScreen
 | 
			
		||||
import com.google.firebase.Timestamp
 | 
			
		||||
 | 
			
		||||
abstract class FunctionalTimer(initialValue: Int) {
 | 
			
		||||
    val time: Time = Time(initialValue)
 | 
			
		||||
    var totalStudyTime: Int = 0
 | 
			
		||||
 | 
			
		||||
    fun getHoursMinutesSeconds(): HoursMinutesSeconds {
 | 
			
		||||
        return time.getAsHMS()
 | 
			
		||||
| 
						 | 
				
			
			@ -15,5 +19,12 @@ abstract class FunctionalTimer(initialValue: Int) {
 | 
			
		|||
    abstract fun hasCurrentCountdownEnded(): Boolean
 | 
			
		||||
 | 
			
		||||
    abstract fun getView(): AbstractSessionScreen
 | 
			
		||||
    fun getSessionReport(): SessionReport {
 | 
			
		||||
        return SessionReport(
 | 
			
		||||
            id = "",
 | 
			
		||||
            studyTime = totalStudyTime,
 | 
			
		||||
            endTime = Timestamp.now()
 | 
			
		||||
        )
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,2 @@
 | 
			
		|||
package be.ugent.sel.studeez.screens.session_recap
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,4 @@
 | 
			
		|||
package be.ugent.sel.studeez.screens.session_recap
 | 
			
		||||
 | 
			
		||||
class SessionRecapViewModel {
 | 
			
		||||
}
 | 
			
		||||
		Reference in a new issue