Proyectos de Subversion Iphone Microlearning - Inconcert

Rev

Ir a la última revisión | | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
//
2
//  SlideCardViewModel.swift
3
//  twogetskills
4
//
5
//  Created by Efrain Yanez Recanatini on 5/3/22.
6
//
7
 
8
import Foundation
9
 
10
class SlideCardViewModel: ObservableObject {
11
 
12
    @Published var slide = SlideModel()
13
    @Published var progressCapsule : Double = 0
14
    @Published var completedCapsule : Int = 0
15
    @Published var progressTopic : Double = 0
16
    @Published var completedTopic : Int = 0
17
 
18
    public func fetch(slideUuid: String, userUuid : String)
19
    {
20
        let slideDao = SlideDao.sharedInstance
21
        self.slide = slideDao.selectByUuid(uuid: slideUuid)
22
        self.fetchProgress(slideUuid: slideUuid, userUuid: userUuid)
23
    }
24
 
25
    public func fetchProgress(slideUuid: String, userUuid : String)
26
    {
27
        let progressDao = ProgressDao.sharedInstance
28
        let progressSlide = progressDao.selectBySlideUuidAndUserUuid(slideUuid: slideUuid, userUuid: userUuid)
29
        if progressSlide.id > 0 {
30
            self.slide.completed = progressSlide.completed
31
 
32
            let progressCapsule = progressDao.selectByCapsuleUuidAndUserUuid(capsuleUuid: progressSlide.capsuleUuid, userUuid: userUuid)
33
 
34
            if progressCapsule.id > 0 {
35
                self.progressCapsule = progressCapsule.progress
36
                self.completedCapsule = progressCapsule.completed
37
            }
38
 
39
            let progressTopic = progressDao.selectByTopicUuidAndUserUuid(topicUuid: progressSlide.topicUuid, userUuid: userUuid)
40
 
41
            if progressTopic.id > 0 {
42
                self.progressTopic = progressTopic.progress
43
                self.completedTopic = progressTopic.completed
44
            }
45
        }
46
    }
47
}