forked from Aufree/PHPHub-iOS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBaseDBManager.h
35 lines (27 loc) · 1.17 KB
/
BaseDBManager.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
//
// BaseDBManager.h
// PHPHub
//
// Created by Aufree on 9/21/15.
// Copyright (c) 2015 ESTGroup. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "FMDatabase.h"
#import "FMDatabaseAdditions.h"
#import "MTLModel.h"
#import "FMDBMigrationManager.h"
#define DefaultDatabaseFileName @"MainDataBase.sqlite"
@interface BaseDBManager : NSObject
@property(strong, nonatomic)FMDatabase *db;
+ (instancetype)sharedInstance;
+ (NSArray *)columnValuesForUpdate:(MTLModel<MTLFMDBSerializing> *)model;
+ (BOOL)isExists:(MTLModel<MTLFMDBSerializing> *)model;
+ (NSNumber *)getDataCount:(Class)objectClass;
+ (void)insertOnDuplicateUpdate:(MTLModel<MTLFMDBSerializing> *)model;
+ (id)findById:(NSString *)primary_id withClass:(Class)objectClass;
+ (id)findUsingPrimaryKeys:(MTLModel<MTLFMDBSerializing> *)model;
+ (NSArray *)findByColumn:(NSString *)column columnValue:(NSString *)value withClass:(Class)objectClass;
+ (NSArray *)findRandomByDictionary:(NSDictionary *)columnDictionary withClass:(Class)objectClass;
+ (id)updateDate:(NSDictionary *)columnDictionary withClass:(Class)objectClass;
+ (NSNumber *)getMaxColumnIdWithClass:(Class)objectClass column:(NSString *)column;
@end