Proyectos de Subversion Iphone Microlearning - Inconcert

Rev

Rev 16 | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 16 Rev 17
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 CompanyDao {
11
class CompanyDao {
-
 
-
 
12
    private var database = Environment(\.database).wrappedValue
Línea 12... Línea 13...
12
    private let SQLITE_TRANSIENT = unsafeBitCast(-1, to: sqlite3_destructor_type.self)
13
    private let SQLITE_TRANSIENT = unsafeBitCast(-1, to: sqlite3_destructor_type.self)
13
    private var db : Database.sharedInstance.open()
-
 
-
 
14
 
14
 
15
 
Línea 15... Línea 16...
15
   func selectAll()-> [CompanyModel] {
16
   func selectAll()-> [CompanyModel] {
16
        
17
       let db = database.open()
17
        var records = [CompanyModel]()
18
        var records = [CompanyModel]()
Línea 42... Línea 43...
42
        sqlite3_finalize(statement)
43
        sqlite3_finalize(statement)
43
        return records
44
        return records
44
    }
45
    }
Línea 45... Línea 46...
45
 
46
 
46
    func selectByUuid(uuid : String) -> CompanyModel {
-
 
-
 
47
    func selectByUuid(uuid : String) -> CompanyModel {
47
        
48
        let db = database.open()
48
        var model = CompanyModel()
49
        var model = CompanyModel()
49
        let query = "SELECT " +
50
        let query = "SELECT " +
50
             Constants.TABLE_COMPANY_FIELD_UUID + " , " +
51
             Constants.TABLE_COMPANY_FIELD_UUID + " , " +
51
             Constants.TABLE_COMPANY_FIELD_NAME + " , " +
52
             Constants.TABLE_COMPANY_FIELD_NAME + " , " +
Línea 72... Línea 73...
72
    
73
    
73
        return model;
74
        return model;
Línea 74... Línea 75...
74
    }
75
    }
75
        
-
 
-
 
76
        
76
    func insert(company : CompanyModel) {
77
    func insert(company : CompanyModel) {
77
        
78
        let db = database.open()
78
        let query = "INSERT INTO " + Constants.TABLE_COMPANY + " ( " +
79
        let query = "INSERT INTO " + Constants.TABLE_COMPANY + " ( " +
79
            Constants.TABLE_COMPANY_FIELD_UUID + " , " +
80
            Constants.TABLE_COMPANY_FIELD_UUID + " , " +
80
            Constants.TABLE_COMPANY_FIELD_NAME + " , " +
81
            Constants.TABLE_COMPANY_FIELD_NAME + " , " +
Línea 100... Línea 101...
100
       
101
       
101
        sqlite3_finalize(statement)
102
        sqlite3_finalize(statement)
Línea 102... Línea 103...
102
     }
103
     }
103
 
-
 
-
 
104
 
104
    func update(company : CompanyModel) {
105
    func update(company : CompanyModel) {
105
        
106
        let db = database.open()
106
        var query = "UPDATE " + Constants.TABLE_COMPANY
107
        var query = "UPDATE " + Constants.TABLE_COMPANY
107
        query = query + " SET " + Constants.TABLE_COMPANY_FIELD_NAME + " = '\(company.name)', "
108
        query = query + " SET " + Constants.TABLE_COMPANY_FIELD_NAME + " = '\(company.name)', "
108
        query = query + Constants.TABLE_COMPANY_FIELD_IMAGE + " = '\(company.image)' "
109
        query = query + Constants.TABLE_COMPANY_FIELD_IMAGE + " = '\(company.image)' "
Línea 121... Línea 122...
121
        }
122
        }
122
        sqlite3_finalize(statement)
123
        sqlite3_finalize(statement)
123
    }
124
    }
Línea 124... Línea 125...
124
 
125
 
125
    func removeAll() {
-
 
-
 
126
    func removeAll() {
126
        
127
        let db = database.open()
127
        let query = "DELETE FROM " +  Constants.TABLE_COMPANY + ";"
128
        let query = "DELETE FROM " +  Constants.TABLE_COMPANY + ";"
128
        var statement : OpaquePointer? = nil
129
        var statement : OpaquePointer? = nil
129
        if sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK{
130
        if sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK{
130
            if sqlite3_step(statement) != SQLITE_DONE {
131
            if sqlite3_step(statement) != SQLITE_DONE {