Proyectos de Subversion Iphone Microlearning - Inconcert

Rev

Rev 1 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
//
2
//  TopicViewModel.swift
3
//  twogetskills
4
//
5
//  Created by Efrain Yanez Recanatini on 2/21/22.
6
//
7
 
8
import Foundation
9
import SwiftUI
10
 
11
 
12
class TopicGridViewModel: ObservableObject
13
{
14
    @Published public var topics = [TopicModel]()
15
 
16
    private var appData = AppData.sharedInstance
17
 
18
    init() {
19
        fetch(userUuid: appData.userUuid)
20
    }
21
 
22
    func fetch(userUuid : String)
23
    {
17 efrain 24
        let topicDao = TopicDao()
1 efrain 25
        topics = topicDao.selectAll()
26
 
27
        loadAllProgress(userUuid: userUuid)
28
    }
29
 
30
    func loadAllProgress(userUuid : String)
31
    {
17 efrain 32
        let progressDao = ProgressDao()
1 efrain 33
        var i : Int = 0
34
        var progress : ProgressModel
35
        while i < topics.count
36
        {
37
            progress = progressDao.selectByTopicUuidAndUserUuid(topicUuid: topics[i].uuid, userUuid: userUuid)
38
            print(progress)
39
            if progress.id > 0
40
            {
41
                topics[i].totalSlides = progress.totalSlides
42
                topics[i].viewSlides = progress.viewSlides
43
                topics[i].progress = progress.progress
44
                topics[i].completed = progress.completed
45
            }
46
            i += 1
47
        }
48
    }
49
 
50
    func loadProgress(topicUuid : String, userUuid : String)
51
    {
17 efrain 52
        let progressDao = ProgressDao()
1 efrain 53
        var i : Int = 0
54
        var progress : ProgressModel
55
        while i < topics.count
56
        {
57
            if topics[i].uuid == topicUuid {
58
                progress = progressDao.selectByTopicUuidAndUserUuid(topicUuid: topics[i].uuid, userUuid: userUuid)
59
                if progress.id > 0
60
                {
61
                    topics[i].totalSlides = progress.totalSlides
62
                    topics[i].viewSlides = progress.viewSlides
63
                    topics[i].progress = progress.progress
64
                    topics[i].completed = progress.completed
65
                }
66
            }
67
            i += 1
68
        }
69
    }
70
}