Proyectos de Subversion Iphone Microlearning

Rev

Autoría | Ultima modificación | Ver Log |

//
//  ProgressViewModel.swift
//  twogetskills
//
//  Created by Efrain Yanez Recanatini on 5/6/22.
//

import Foundation

class ProgressViewModel: ObservableObject {


    
    @Published var capsuleTotal : Int = 0
    @Published var capsuleTotalStarted : Int = 0
    @Published var capsuleTotalForStart : Int = 0
    @Published var capsuleTotalCompleted : Int = 0
    @Published var capsuleTotalIncompleted : Int = 0
    @Published var capsuleTotalWithReturning : Int = 0
    @Published var capsuleTotalWithoutReturning : Int = 0
    
    @Published var percentajeCapsuleComplete: Double = 0
    @Published var percentajeCapsuleIncomplete: Double = 0


    public func load()
    {
        let preference = Preference.sharedInstance
        
        let capsuleDao = CapsuleDao()
        capsuleTotal = capsuleDao.getCountAll()
        
        let progressDao = ProgressDao()
        
        capsuleTotalCompleted = progressDao.getCountCapsulesCompletedByUserUuid(userUuid: preference.userUuid)
        
        capsuleTotalIncompleted = progressDao.getCountCapsulesIncompletedByUserUuid(userUuid: preference.userUuid)
        
        capsuleTotalForStart = capsuleTotal - (capsuleTotalCompleted + capsuleTotalIncompleted)
        capsuleTotalStarted = capsuleTotalCompleted + capsuleTotalIncompleted

        capsuleTotalWithReturning = progressDao.getCountCapsulesCompletedWithReturningByUserUuid(userUuid: preference.userUuid)
        
        capsuleTotalWithoutReturning = capsuleTotal - capsuleTotalWithReturning
            
            //progressDao.getCountCapsulesCompletedWithoutReturningByUserUuid(userUuid: preference.userUuid)
        
        
        if capsuleTotal > 0 {
            
            percentajeCapsuleComplete = (Double(capsuleTotalCompleted) * 100) / Double(capsuleTotal)
            percentajeCapsuleIncomplete = 100 - percentajeCapsuleComplete
        }
        
        
    }
}