Proyectos de Subversion Iphone Microlearning - Nuevo Interface

Rev

Rev 25 | Rev 40 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 25 Rev 31
Línea 156... Línea 156...
156
            database.printError()
156
            database.printError()
157
        }
157
        }
158
        sqlite3_finalize(statement)
158
        sqlite3_finalize(statement)
159
        return records
159
        return records
160
    }
160
    }
-
 
161
    
-
 
162
    func selectAllByUserUuid(userUuid : String)-> [UserNotificationModel] {
-
 
163
        let db = database.open()
-
 
164
        var records = [UserNotificationModel]()
-
 
165
        
-
 
166
        var query = "SELECT "
-
 
167
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_ID + ", "
-
 
168
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_USER_UUID + ", "
-
 
169
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_TITLE + ", "
-
 
170
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_BODY + ", "
-
 
171
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_URL + " , "
-
 
172
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_VIEWED + " , "
-
 
173
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_COMMAND + " , "
-
 
174
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_DATE_ON + " , "
-
 
175
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_TIME_ON
-
 
176
        query = query + " FROM " + Constants.TABLE_USER_NOTIFICATION
-
 
177
        query = query + " WHERE " + Constants.TABLE_USER_NOTIFICATION_FIELD_USER_UUID + " = '\(userUuid)'; "
-
 
178
        query = query + " ORDER BY  " + Constants.TABLE_USER_NOTIFICATION_FIELD_DATE_ON + " DESC,  "
-
 
179
        query = query + Constants.TABLE_USER_NOTIFICATION_FIELD_TIME_ON + " DESC; "
-
 
180
        var statement : OpaquePointer? = nil
-
 
181
        
-
 
182
        
-
 
183
        if (sqlite3_prepare_v2(db, query, -1, &statement, nil) == SQLITE_OK) {
-
 
184
            while (sqlite3_step(statement) == SQLITE_ROW) {
-
 
185
                
-
 
186
                var  model = UserNotificationModel()
-
 
187
                model.id = Int(sqlite3_column_int(statement, 0))
-
 
188
                
-
 
189
                model.userUuid = String(describing: String(cString: sqlite3_column_text(statement, 1)))
-
 
190
                
-
 
191
                model.title = String(describing: String(cString: sqlite3_column_text(statement, 2)))
-
 
192
                
-
 
193
                model.body = String(describing: String(cString: sqlite3_column_text(statement, 3)))
-
 
194
                
-
 
195
                model.url = String(describing: String(cString: sqlite3_column_text(statement, 4)))
-
 
196
                
-
 
197
                model.viewed = Int(sqlite3_column_int(statement, 5))
-
 
198
                
-
 
199
                model.command = String(describing: String(cString: sqlite3_column_text(statement, 6)))
-
 
200
               
-
 
201
                
-
 
202
                model.dateOn = String(describing: String(cString: sqlite3_column_text(statement, 7)))
-
 
203
               
-
 
204
                model.timeOn = String(describing: String(cString: sqlite3_column_text(statement, 8)))
-
 
205
 
-
 
206
 
-
 
207
                
-
 
208
                records.append(model)
-
 
209
                
-
 
210
            }
-
 
211
        } else {
-
 
212
            database.printError()
-
 
213
        }
-
 
214
        sqlite3_finalize(statement)
-
 
215
        return records
-
 
216
    }
-
 
217
    
-
 
218
    
Línea 161... Línea 219...
161
 
219
 
162
    
220
    
Línea 271... Línea 329...
271
    }
329
    }
Línea 272... Línea 330...
272
    
330
    
273
    func markViewedAllPendingByUserUuidAndCommand(userUuid : String, command : String) {
331
    func markViewedAllPendingByUserUuidAndCommand(userUuid : String, command : String) {
274
        let db = database.open()
332
        let db = database.open()
275
        var query = "UPDATE " + Constants.TABLE_USER_NOTIFICATION
333
        var query = "UPDATE " + Constants.TABLE_USER_NOTIFICATION
276
        query = query + " SET " + Constants.TABLE_USER_NOTIFICATION_FIELD_VIEWED + "  1 "
334
        query = query + " SET " + Constants.TABLE_USER_NOTIFICATION_FIELD_VIEWED + " = 1 "
277
        query = query + " WHERE " + Constants.TABLE_USER_NOTIFICATION_FIELD_VIEWED + " = 0 "
335
        query = query + " WHERE " + Constants.TABLE_USER_NOTIFICATION_FIELD_VIEWED + " = 0 "
278
        query = query + " AND " + Constants.TABLE_USER_NOTIFICATION_FIELD_USER_UUID + " = '\(userUuid)'; "
336
        query = query + " AND " + Constants.TABLE_USER_NOTIFICATION_FIELD_USER_UUID + " = '\(userUuid)'; "
279
        query = query + " AND " + Constants.TABLE_USER_NOTIFICATION_FIELD_COMMAND + " = '\(command)'; "
337
        query = query + " AND " + Constants.TABLE_USER_NOTIFICATION_FIELD_COMMAND + " = '\(command)'; "
280
        var statement : OpaquePointer? = nil
338
        var statement : OpaquePointer? = nil