| Línea 3... | Línea 3... | 
          
            | 3 | //  twogetskills
 | 3 | //  twogetskills
 | 
          
            | 4 | //
 | 4 | //
 | 
          
            | 5 | //  Created by Efrain Yanez Recanatini on 2/21/22.
 | 5 | //  Created by Efrain Yanez Recanatini on 2/21/22.
 | 
          
            | 6 | //
 | 6 | //
 | 
          
            | Línea 7... | Línea 7... | 
          
            | 7 |  
 | 7 |  
 | 
          
            | 8 | import UIKit
 | 8 | import SwiftUI
 | 
          
            | Línea 9... | Línea 9... | 
          
            | 9 | import SQLite3
 | 9 | import SQLite3
 | 
          
            | - |   | 10 |  
 | 
          
            | 10 |  
 | 11 | class ProgressDao {
 | 
          
            | 11 | class ProgressDao {
 | - |   | 
          
            | 12 |     private let SQLITE_TRANSIENT = unsafeBitCast(-1, to: sqlite3_destructor_type.self)
 | 12 |     private var database = Environment(\.database).wrappedValue
 | 
          
            | - |   | 13 |     private let SQLITE_TRANSIENT = unsafeBitCast(-1, to: sqlite3_destructor_type.self)
 | 
          
            | 13 |     private var db : Database.sharedInstance.open()
 | 14 |     
 | 
          
            | 14 |  
 | - |   | 
          
            | - |   | 15 |     
 | 
          
            | 15 |     func selectByTopicUuid(topicUuid: String)-> ProgressModel {
 | 16 |     func selectByTopicUuid(topicUuid: String)-> ProgressModel {
 | 
          
            | 16 |         
 | 17 |         let db = database.open()
 | 
          
            | 17 |         //var records = [ProgressModel]()
 | 18 |         //var records = [ProgressModel]()
 | 
          
            | 18 |         var model = ProgressModel()
 | 19 |         var model = ProgressModel()
 | 
          
            | 19 |         var query = "SELECT "
 | 20 |         var query = "SELECT "
 | 
          
            | Línea 63... | Línea 64... | 
          
            | 63 |         return model
 | 64 |         return model
 | 
          
            | 64 |     }
 | 65 |     }
 | 
          
            | Línea 65... | Línea 66... | 
          
            | 65 |     
 | 66 |     
 | 
          
            | 66 |     
 | - |   | 
          
            | - |   | 67 |     
 | 
          
            | 67 |     func selectByTopicUuidAndUserUuid(topicUuid: String, userUuid : String)-> ProgressModel {
 | 68 |     func selectByTopicUuidAndUserUuid(topicUuid: String, userUuid : String)-> ProgressModel {
 | 
          
            | 68 |         
 | 69 |         let db = database.open()
 | 
          
            | 69 |         //var records = [ProgressModel]()
 | 70 |         //var records = [ProgressModel]()
 | 
          
            | 70 |         var model = ProgressModel()
 | 71 |         var model = ProgressModel()
 | 
          
            | 71 |         var query = "SELECT "
 | 72 |         var query = "SELECT "
 | 
          
            | Línea 115... | Línea 116... | 
          
            | 115 |         sqlite3_finalize(statement)
 | 116 |         sqlite3_finalize(statement)
 | 
          
            | 116 |         return model
 | 117 |         return model
 | 
          
            | 117 |     }
 | 118 |     }
 | 
          
            | Línea 118... | Línea 119... | 
          
            | 118 |     
 | 119 |     
 | 
          
            | 119 |     func selectByCapsuleUuid(capsuleUuid: String)-> ProgressModel {
 | - |   | 
          
            | - |   | 120 |     func selectByCapsuleUuid(capsuleUuid: String)-> ProgressModel {
 | 
          
            | 120 |         
 | 121 |         let db = database.open()
 | 
          
            | 121 |         //var records = [ProgressModel]()
 | 122 |         //var records = [ProgressModel]()
 | 
          
            | 122 |         var model = ProgressModel()
 | 123 |         var model = ProgressModel()
 | 
          
            | 123 |         var query = "SELECT "
 | 124 |         var query = "SELECT "
 | 
          
            | 124 |         query = query +  Constants.TABLE_PROGRESS_FIELD_ID + " , "
 | 125 |         query = query +  Constants.TABLE_PROGRESS_FIELD_ID + " , "
 | 
          
            | Línea 170... | Línea 171... | 
          
            | 170 |         return model
 | 171 |         return model
 | 
          
            | Línea 171... | Línea 172... | 
          
            | 171 |         
 | 172 |         
 | 
          
            | Línea 172... | Línea 173... | 
          
            | 172 |     }
 | 173 |     }
 | 
          
            | 173 |     
 | - |   | 
          
            | - |   | 174 |     
 | 
          
            | 174 |     func selectByCapsuleUuidAndUserUuid(capsuleUuid: String, userUuid : String)-> ProgressModel {
 | 175 |     func selectByCapsuleUuidAndUserUuid(capsuleUuid: String, userUuid : String)-> ProgressModel {
 | 
          
            | 175 |         
 | 176 |         let db = database.open()
 | 
          
            | 176 |         //var records = [ProgressModel]()
 | 177 |         //var records = [ProgressModel]()
 | 
          
            | 177 |         var model = ProgressModel()
 | 178 |         var model = ProgressModel()
 | 
          
            | 178 |         var query  = "SELECT "
 | 179 |         var query  = "SELECT "
 | 
          
            | Línea 225... | Línea 226... | 
          
            | 225 |         return model
 | 226 |         return model
 | 
          
            | Línea 226... | Línea 227... | 
          
            | 226 |         
 | 227 |         
 | 
          
            | Línea 227... | Línea 228... | 
          
            | 227 |     }
 | 228 |     }
 | 
          
            | 228 |  
 | - |   | 
          
            | - |   | 229 |  
 | 
          
            | 229 |     func selectBySlideUuid(slideUuid: String)-> ProgressModel {
 | 230 |     func selectBySlideUuid(slideUuid: String)-> ProgressModel {
 | 
          
            | 230 |         
 | 231 |         let db = database.open()
 | 
          
            | 231 |         //var records = [ProgressModel]()
 | 232 |         //var records = [ProgressModel]()
 | 
          
            | 232 |         var model = ProgressModel()
 | 233 |         var model = ProgressModel()
 | 
          
            | 233 |         var query = "SELECT "
 | 234 |         var query = "SELECT "
 | 
          
            | Línea 278... | Línea 279... | 
          
            | 278 |         return model
 | 279 |         return model
 | 
          
            | 279 |     }
 | 280 |     }
 | 
          
            | Línea 280... | Línea 281... | 
          
            | 280 |     
 | 281 |     
 | 
          
            | 281 |     
 | - |   | 
          
            | - |   | 282 |     
 | 
          
            | 282 |     func selectBySlideUuidAndUserUuid(slideUuid: String, userUuid : String)-> ProgressModel {
 | 283 |     func selectBySlideUuidAndUserUuid(slideUuid: String, userUuid : String)-> ProgressModel {
 | 
          
            | 283 |         
 | 284 |         let db = database.open()
 | 
          
            | 284 |         //var records = [ProgressModel]()
 | 285 |         //var records = [ProgressModel]()
 | 
          
            | 285 |         var model = ProgressModel()
 | 286 |         var model = ProgressModel()
 | 
          
            | 286 |         var query = "SELECT "
 | 287 |         var query = "SELECT "
 | 
          
            | Línea 331... | Línea 332... | 
          
            | 331 |         sqlite3_finalize(statement)
 | 332 |         sqlite3_finalize(statement)
 | 
          
            | 332 |         return model
 | 333 |         return model
 | 
          
            | 333 |     }
 | 334 |     }
 | 
          
            | Línea 334... | Línea 335... | 
          
            | 334 |  
 | 335 |  
 | 
          
            | 335 |     func getCountSlideCompletedByCapsuleUuidAndUserUuid(capsuleUuid: String, userUuid: String) -> Int {
 | - |   | 
          
            | - |   | 336 |     func getCountSlideCompletedByCapsuleUuidAndUserUuid(capsuleUuid: String, userUuid: String) -> Int {
 | 
          
            | 336 |         
 | 337 |         let db = database.open()
 | 
          
            | 337 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 338 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 
          
            | 338 |         " WHERE " +  Constants.TABLE_PROGRESS_FIELD_CAPSULE_UUID + " = '\(capsuleUuid)' "  +
 | 339 |         " WHERE " +  Constants.TABLE_PROGRESS_FIELD_CAPSULE_UUID + " = '\(capsuleUuid)' "  +
 | 
          
            | 339 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + "= '\(userUuid)'" +
 | 340 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + "= '\(userUuid)'" +
 | 
          
            | 340 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\(Constants.PROGRESS_TYPE_SLIDE)'" +
 | 341 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\(Constants.PROGRESS_TYPE_SLIDE)'" +
 | 
          
            | Línea 356... | Línea 357... | 
          
            | 356 |         sqlite3_finalize(statement)
 | 357 |         sqlite3_finalize(statement)
 | 
          
            | 357 |         return count;
 | 358 |         return count;
 | 
          
            | 358 |     }
 | 359 |     }
 | 
          
            | Línea 359... | Línea 360... | 
          
            | 359 |     
 | 360 |     
 | 
          
            | 360 |     func getCountSlideCompletedByTopicUuidAndUserUuid(topicUuid: String, userUuid: String) -> Int {
 | - |   | 
          
            | - |   | 361 |     func getCountSlideCompletedByTopicUuidAndUserUuid(topicUuid: String, userUuid: String) -> Int {
 | 
          
            | 361 |         
 | 362 |         let db = database.open()
 | 
          
            | 362 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 363 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 
          
            | 363 |         " WHERE " +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' "  +
 | 364 |         " WHERE " +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' "  +
 | 
          
            | 364 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + "= '\(userUuid)'" +
 | 365 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + "= '\(userUuid)'" +
 | 
          
            | 365 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\(Constants.PROGRESS_TYPE_SLIDE)'" +
 | 366 |         " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\(Constants.PROGRESS_TYPE_SLIDE)'" +
 | 
          
            | Línea 381... | Línea 382... | 
          
            | 381 |         sqlite3_finalize(statement)
 | 382 |         sqlite3_finalize(statement)
 | 
          
            | 382 |         return count;
 | 383 |         return count;
 | 
          
            | 383 |     }
 | 384 |     }
 | 
          
            | Línea 384... | Línea 385... | 
          
            | 384 |     
 | 385 |     
 | 
          
            | 385 |     func getCountCapsulesCompletedByUserUuid(userUuid : String) -> Int {
 | - |   | 
          
            | - |   | 386 |     func getCountCapsulesCompletedByUserUuid(userUuid : String) -> Int {
 | 
          
            | 386 |         
 | 387 |         let db = database.open()
 | 
          
            | 387 |         var count = 0
 | 388 |         var count = 0
 | 
          
            | 388 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 389 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 
          
            | 389 |             " WHERE " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 390 |             " WHERE " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 
          
            | 390 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 391 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 
          
            | Línea 404... | Línea 405... | 
          
            | 404 |         sqlite3_finalize(statement)
 | 405 |         sqlite3_finalize(statement)
 | 
          
            | 405 |         return count
 | 406 |         return count
 | 
          
            | 406 |     }
 | 407 |     }
 | 
          
            | Línea 407... | Línea 408... | 
          
            | 407 |     
 | 408 |     
 | 
          
            | 408 |     func getCountCapsulesIncompletedByUserUuid(userUuid : String) -> Int {
 | - |   | 
          
            | - |   | 409 |     func getCountCapsulesIncompletedByUserUuid(userUuid : String) -> Int {
 | 
          
            | 409 |         
 | 410 |         let db = database.open()
 | 
          
            | 410 |         var count = 0
 | 411 |         var count = 0
 | 
          
            | 411 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 412 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 
          
            | 412 |             " WHERE " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 413 |             " WHERE " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 
          
            | 413 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 414 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 
          
            | Línea 427... | Línea 428... | 
          
            | 427 |         sqlite3_finalize(statement)
 | 428 |         sqlite3_finalize(statement)
 | 
          
            | 428 |         return count
 | 429 |         return count
 | 
          
            | 429 |     }
 | 430 |     }
 | 
          
            | Línea 430... | Línea 431... | 
          
            | 430 |     
 | 431 |     
 | 
          
            | 431 |     func getCountCapsulesCompletedByTopicUuid(topicUuid : String) -> Int {
 | - |   | 
          
            | - |   | 432 |     func getCountCapsulesCompletedByTopicUuid(topicUuid : String) -> Int {
 | 
          
            | 432 |         
 | 433 |         let db = database.open()
 | 
          
            | 433 |         var count = 0
 | 434 |         var count = 0
 | 
          
            | 434 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 435 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS +
 | 
          
            | 435 |             " WHERE " +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' " +
 | 436 |             " WHERE " +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' " +
 | 
          
            | 436 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 437 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 
          
            | Línea 450... | Línea 451... | 
          
            | 450 |         sqlite3_finalize(statement)
 | 451 |         sqlite3_finalize(statement)
 | 
          
            | 451 |         return count
 | 452 |         return count
 | 
          
            | 452 |     }
 | 453 |     }
 | 
          
            | Línea 453... | Línea 454... | 
          
            | 453 |     
 | 454 |     
 | 
          
            | 454 |     func getCountCapsulesCompletedWithReturningByUserUuid(userUuid : String) -> Int {
 | - |   | 
          
            | - |   | 455 |     func getCountCapsulesCompletedWithReturningByUserUuid(userUuid : String) -> Int {
 | 
          
            | 455 |         
 | 456 |         let db = database.open()
 | 
          
            | 456 |         var count = 0
 | 457 |         var count = 0
 | 
          
            | 457 |         let query = "SELECT SUM(" +  Constants.TABLE_PROGRESS_FIELD_RETURNING_AFTER_COMPLETED + ") AS total FROM " +  Constants.TABLE_PROGRESS
 | 458 |         let query = "SELECT SUM(" +  Constants.TABLE_PROGRESS_FIELD_RETURNING_AFTER_COMPLETED + ") AS total FROM " +  Constants.TABLE_PROGRESS
 | 
          
            | 458 |             + " WHERE " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 459 |             + " WHERE " +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 
          
            | 459 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 460 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 
          
            | Línea 474... | Línea 475... | 
          
            | 474 |         sqlite3_finalize(statement)
 | 475 |         sqlite3_finalize(statement)
 | 
          
            | 475 |         return count
 | 476 |         return count
 | 
          
            | 476 |     }
 | 477 |     }
 | 
          
            | Línea 477... | Línea 478... | 
          
            | 477 |     
 | 478 |     
 | 
          
            | 478 |     func getCountCapsulesCompletedWithoutReturningByUserUuid(userUuid : String) -> Int {
 | - |   | 
          
            | - |   | 479 |     func getCountCapsulesCompletedWithoutReturningByUserUuid(userUuid : String) -> Int {
 | 
          
            | 479 |         
 | 480 |         let db = database.open()
 | 
          
            | 480 |         var count = 0
 | 481 |         var count = 0
 | 
          
            | 481 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS + " WHERE "
 | 482 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS + " WHERE "
 | 
          
            | 482 |             +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 483 |             +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + " = '\(userUuid)' " +
 | 
          
            | 483 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 484 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 
          
            | Línea 498... | Línea 499... | 
          
            | 498 |         sqlite3_finalize(statement)
 | 499 |         sqlite3_finalize(statement)
 | 
          
            | 499 |         return count
 | 500 |         return count
 | 
          
            | 500 |     }
 | 501 |     }
 | 
          
            | Línea 501... | Línea 502... | 
          
            | 501 |     
 | 502 |     
 | 
          
            | 502 |     func getCountCapsulesCompletedWithReturningByTopicUuid(topicUuid : String) -> Int {
 | - |   | 
          
            | - |   | 503 |     func getCountCapsulesCompletedWithReturningByTopicUuid(topicUuid : String) -> Int {
 | 
          
            | 503 |         
 | 504 |         let db = database.open()
 | 
          
            | 504 |         var count = 0
 | 505 |         var count = 0
 | 
          
            | 505 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS
 | 506 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS
 | 
          
            | 506 |             + " WHERE " +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' " +
 | 507 |             + " WHERE " +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' " +
 | 
          
            | 507 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 508 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 
          
            | Línea 522... | Línea 523... | 
          
            | 522 |         sqlite3_finalize(statement)
 | 523 |         sqlite3_finalize(statement)
 | 
          
            | 523 |         return count
 | 524 |         return count
 | 
          
            | 524 |     }
 | 525 |     }
 | 
          
            | Línea 525... | Línea 526... | 
          
            | 525 |     
 | 526 |     
 | 
          
            | 526 |     func getCountCapsulesCompletedWithoutReturningByTopicUuid(topicUuid : String) -> Int {
 | - |   | 
          
            | - |   | 527 |     func getCountCapsulesCompletedWithoutReturningByTopicUuid(topicUuid : String) -> Int {
 | 
          
            | 527 |         
 | 528 |         let db = database.open()
 | 
          
            | 528 |         var count = 0
 | 529 |         var count = 0
 | 
          
            | 529 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS + " WHERE "
 | 530 |         let query = "SELECT COUNT(*) AS total FROM " +  Constants.TABLE_PROGRESS + " WHERE "
 | 
          
            | 530 |             +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' " +
 | 531 |             +  Constants.TABLE_PROGRESS_FIELD_TOPIC_UUID + " = '\(topicUuid)' " +
 | 
          
            | 531 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 532 |             " AND " +  Constants.TABLE_PROGRESS_FIELD_TYPE + "= '\( Constants.PROGRESS_TYPE_CAPSULE)' " +
 | 
          
            | Línea 547... | Línea 548... | 
          
            | 547 |         return count
 | 548 |         return count
 | 
          
            | 548 |     }
 | 549 |     }
 | 
          
            | Línea 549... | Línea 550... | 
          
            | 549 |         
 | 550 |         
 | 
          
            | 550 |         
 | - |   | 
          
            | - |   | 551 |         
 | 
          
            | 551 |     func insert( record : ProgressModel) {
 | 552 |     func insert( record : ProgressModel) {
 | 
          
            | 552 |         
 | 553 |         let db = database.open()
 | 
          
            | 553 |         var query = "INSERT INTO " +  Constants.TABLE_PROGRESS + " ( "
 | 554 |         var query = "INSERT INTO " +  Constants.TABLE_PROGRESS + " ( "
 | 
          
            | 554 |         query = query +  Constants.TABLE_PROGRESS_FIELD_COMPANY_UUID + ", "
 | 555 |         query = query +  Constants.TABLE_PROGRESS_FIELD_COMPANY_UUID + ", "
 | 
          
            | 555 |         query = query +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + ", "
 | 556 |         query = query +  Constants.TABLE_PROGRESS_FIELD_USER_UUID + ", "
 | 
          
            | Línea 601... | Línea 602... | 
          
            | 601 |        
 | 602 |        
 | 
          
            | 602 |         sqlite3_finalize(statement)
 | 603 |         sqlite3_finalize(statement)
 | 
          
            | Línea 603... | Línea 604... | 
          
            | 603 |     }
 | 604 |     }
 | 
          
            | 604 |  
 | - |   | 
          
            | - |   | 605 |  
 | 
          
            | 605 |     func update(record : ProgressModel) {
 | 606 |     func update(record : ProgressModel) {
 | 
          
            | 606 |         
 | 607 |         let db = database.open()
 | 
          
            | 607 |         var query = "UPDATE " +  Constants.TABLE_PROGRESS
 | 608 |         var query = "UPDATE " +  Constants.TABLE_PROGRESS
 | 
          
            | 608 |         query = query + " SET " +  Constants.TABLE_PROGRESS_FIELD_TOTAL_SLIDES + " = '\(record.totalSlides)', "
 | 609 |         query = query + " SET " +  Constants.TABLE_PROGRESS_FIELD_TOTAL_SLIDES + " = '\(record.totalSlides)', "
 | 
          
            | 609 |         query = query +  Constants.TABLE_PROGRESS_FIELD_VIEW_SLIDES + " = '\(record.viewSlides)', "
 | 610 |         query = query +  Constants.TABLE_PROGRESS_FIELD_VIEW_SLIDES + " = '\(record.viewSlides)', "
 | 
          
            | Línea 627... | Línea 628... | 
          
            | 627 |         }
 | 628 |         }
 | 
          
            | 628 |         sqlite3_finalize(statement)
 | 629 |         sqlite3_finalize(statement)
 | 
          
            | 629 |     }
 | 630 |     }
 | 
          
            | Línea 630... | Línea 631... | 
          
            | 630 |  
 | 631 |  
 | 
          
            | 631 |     func remove(id: Int) {
 | - |   | 
          
            | - |   | 632 |     func remove(id: Int) {
 | 
          
            | 632 |         
 | 633 |         let db = database.open()
 | 
          
            | 633 |         let query = "DELETE FROM " +  Constants.TABLE_PROGRESS + " WHERE " +  Constants.TABLE_PROGRESS_FIELD_ID + " = " + "\(id) ;"
 | 634 |         let query = "DELETE FROM " +  Constants.TABLE_PROGRESS + " WHERE " +  Constants.TABLE_PROGRESS_FIELD_ID + " = " + "\(id) ;"
 | 
          
            | 634 |         var statement : OpaquePointer? = nil
 | 635 |         var statement : OpaquePointer? = nil
 | 
          
            | 635 |         if (sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK) {
 | 636 |         if (sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK) {
 | 
          
            | 636 |             if sqlite3_step(statement) != SQLITE_DONE {
 | 637 |             if sqlite3_step(statement) != SQLITE_DONE {
 | 
          
            | Línea 643... | Línea 644... | 
          
            | 643 |         }
 | 644 |         }
 | 
          
            | 644 |         sqlite3_finalize(statement)
 | 645 |         sqlite3_finalize(statement)
 | 
          
            | 645 |     }
 | 646 |     }
 | 
          
            | Línea 646... | Línea 647... | 
          
            | 646 |  
 | 647 |  
 | 
          
            | 647 |     func removeAll() {
 | - |   | 
          
            | - |   | 648 |     func removeAll() {
 | 
          
            | 648 |         
 | 649 |         let db = database.open()
 | 
          
            | 649 |         let query = "DELETE FROM " +  Constants.TABLE_PROGRESS + ";"
 | 650 |         let query = "DELETE FROM " +  Constants.TABLE_PROGRESS + ";"
 | 
          
            | 650 |         var statement : OpaquePointer? = nil
 | 651 |         var statement : OpaquePointer? = nil
 | 
          
            | 651 |         if (sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK) {
 | 652 |         if (sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK) {
 | 
          
            | 652 |             if sqlite3_step(statement) != SQLITE_DONE {
 | 653 |             if sqlite3_step(statement) != SQLITE_DONE {
 | 
          
            | Línea 660... | Línea 661... | 
          
            | 660 |         sqlite3_finalize(statement)
 | 661 |         sqlite3_finalize(statement)
 | 
          
            | 661 |     }
 | 662 |     }
 | 
          
            | Línea 662... | Línea 663... | 
          
            | 662 |     
 | 663 |     
 | 
          
            | 663 |     func removeAllUserUuidNotEqual(userUuid : String)
 | 664 |     func removeAllUserUuidNotEqual(userUuid : String)
 | 
          
            | 664 |     {
 | - |   | 
          
            | - |   | 665 |     {
 | 
          
            | 665 |         
 | 666 |         let db = database.open()
 | 
          
            | 666 |         let query = "DELETE FROM " +  Constants.TABLE_PROGRESS +
 | 667 |         let query = "DELETE FROM " +  Constants.TABLE_PROGRESS +
 | 
          
            | 667 |             " WHERE " + Constants.TABLE_PROGRESS_FIELD_USER_UUID + " <> '\(userUuid)' ;"
 | 668 |             " WHERE " + Constants.TABLE_PROGRESS_FIELD_USER_UUID + " <> '\(userUuid)' ;"
 | 
          
            | 668 |         var statement : OpaquePointer? = nil
 | 669 |         var statement : OpaquePointer? = nil
 | 
          
            | 669 |         if (sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK) {
 | 670 |         if (sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK) {
 |