Skip to content

Commit 9b8980f

Browse files
committed
把tableName 提取出来变成一个参数
1 parent 5f664f2 commit 9b8980f

File tree

2 files changed

+109
-107
lines changed

2 files changed

+109
-107
lines changed

LKDBHelper/Helper/LKDBHelper.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858

5959
///drop table with entity class
6060
-(BOOL)dropTableWithClass:(Class)modelClass;
61+
-(BOOL)dropTableWithTableName:(NSString*)tableName;
6162

6263
@end
6364

@@ -72,6 +73,7 @@
7273
*/
7374
-(NSInteger)rowCount:(Class)modelClass where:(id)where;
7475
-(void)rowCount:(Class)modelClass where:(id)where callback:(void(^)(NSInteger rowCount))callback;
76+
-(NSInteger)rowCountWithTableName:(NSString*)tableName where:(id)where;
7577

7678
/**
7779
* @brief query table
@@ -147,6 +149,8 @@
147149
-(BOOL)updateToDB:(NSObject *)model where:(id)where;
148150
-(void)updateToDB:(NSObject *)model where:(id)where callback:(void (^)(BOOL result))block;
149151
-(BOOL)updateToDB:(Class)modelClass set:(NSString*)sets where:(id)where;
152+
-(BOOL)updateToDBWithTableName:(NSString*)tableName set:(NSString*)sets where:(id)where;
153+
150154
/**
151155
* @brief delete table
152156
*
@@ -168,6 +172,7 @@
168172
*/
169173
-(BOOL)deleteWithClass:(Class)modelClass where:(id)where;
170174
-(void)deleteWithClass:(Class)modelClass where:(id)where callback:(void (^)(BOOL result))block;
175+
-(BOOL)deleteWithTableName:(NSString*)tableName where:(id)where;
171176

172177
/**
173178
* @brief entity exists?
@@ -179,7 +184,7 @@
179184
*/
180185
-(BOOL)isExistsModel:(NSObject*)model;
181186
-(BOOL)isExistsClass:(Class)modelClass where:(id)where;
182-
187+
-(BOOL)isExistsWithTableName:(NSString*)tableName where:(id)where;
183188

184189
/**
185190
* @brief Clear data based on the entity class

LKDBHelper/Helper/LKDBHelper.m

Lines changed: 103 additions & 106 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,19 @@
88

99
#import "LKDBHelper.h"
1010

11-
#define checkClassIsInvalid(modelClass)\
12-
if([LKDBUtils checkStringIsEmpty:[modelClass getTableName]])\
11+
#define LKDBCheck_tableNameIsInvalid(tableName)\
12+
if ([LKDBUtils checkStringIsEmpty:tableName])\
1313
{\
14-
LKErrorLog(@"model class name %@ table name is invalid!",NSStringFromClass(modelClass));\
14+
LKErrorLog(@" \n Fail!Fail!Fail!Fail! \n with TableName is nil");\
1515
return NO;\
1616
}
1717

18-
#define checkModelIsInvalid(model)\
18+
#define LKDBCode_Async_Begin __LKDBWeak LKDBHelper* wself = self;\
19+
[self asyncBlock:^{__strong LKDBHelper* sself = wself;if(sself){
20+
21+
#define LKDBCode_Async_End }}];
22+
23+
#define LKDBCheck_modelIsInvalid(model)\
1924
if(model == nil)\
2025
{\
2126
LKErrorLog(@"model is nil");\
@@ -27,7 +32,7 @@
2732
return NO;\
2833
}\
2934
NSString* _model_tableName = model.db_tableName?:[model.class getTableName];\
30-
if(_model_tableName.length == 0)\
35+
if([LKDBUtils checkStringIsEmpty:_model_tableName])\
3136
{\
3237
LKErrorLog(@"model class name %@ table name is invalid!",NSStringFromClass(model.class));\
3338
return NO;\
@@ -410,11 +415,15 @@ -(void)dropAllTable
410415

411416
[_createdTableNames removeAllObjects];
412417
}
418+
413419
-(BOOL)dropTableWithClass:(Class)modelClass
414420
{
415-
checkClassIsInvalid(modelClass);
421+
return [self dropTableWithTableName:[modelClass getTableName]];
422+
}
423+
-(BOOL)dropTableWithTableName:(NSString *)tableName
424+
{
425+
LKDBCheck_tableNameIsInvalid(tableName);
416426

417-
NSString* tableName = [modelClass getTableName];
418427
NSString* dropTable = [NSString stringWithFormat:@"drop table %@",tableName];
419428

420429
BOOL isDrop = [self executeSQL:dropTable arguments:nil];
@@ -481,7 +490,6 @@ -(void)fixSqlColumnsWithClass:(Class)clazz tableName:(NSString*)tableName
481490
}
482491
-(BOOL)_createTableWithModelClass:(Class)modelClass tableName:(NSString*)tableName
483492
{
484-
checkClassIsInvalid(modelClass);
485493
if([self getTableCreatedWithTableName:tableName])
486494
{
487495
//已创建表 就跳过
@@ -634,26 +642,23 @@ -(void)asyncBlock:(void(^)(void))block
634642
#pragma mark - row count operation
635643
-(NSInteger)rowCount:(Class)modelClass where:(id)where
636644
{
637-
return [self rowCountBase:modelClass where:where];
645+
return [self rowCountWithTableName:[modelClass getTableName] where:where];
638646
}
639647
-(void)rowCount:(Class)modelClass where:(id)where callback:(void (^)(NSInteger))callback
640648
{
641649
if(callback)
642650
{
643-
__LKDBWeak LKDBHelper* wself = self;
644-
[self asyncBlock:^{
645-
__strong LKDBHelper* sself = wself;
646-
if(sself)
647-
{
648-
NSInteger result = [sself rowCountBase:modelClass where:where];
649-
callback(result);
650-
}
651-
}];
651+
LKDBCode_Async_Begin
652+
NSInteger result = [sself rowCountWithTableName:[modelClass getTableName] where:where];
653+
callback(result);
654+
LKDBCode_Async_End
652655
}
653656
}
654-
-(NSInteger)rowCountBase:(Class)modelClass where:(id)where
657+
-(NSInteger)rowCountWithTableName:(NSString *)tableName where:(id)where
655658
{
656-
NSMutableString* rowCountSql = [NSMutableString stringWithFormat:@"select count(rowid) from %@",[modelClass getTableName]];
659+
LKDBCheck_tableNameIsInvalid(tableName);
660+
661+
NSMutableString* rowCountSql = [NSMutableString stringWithFormat:@"select count(rowid) from %@",tableName];
657662

658663
NSMutableArray* valuesarray = [self extractQuery:rowCountSql where:where];
659664
NSInteger result = [[self executeScalarWithSQL:rowCountSql arguments:valuesarray] integerValue];
@@ -685,31 +690,26 @@ -(void)search:(Class)modelClass where:(id)where orderBy:(NSString *)orderBy offs
685690
{
686691
if(block)
687692
{
688-
__LKDBWeak LKDBHelper* wself = self;
689-
[self asyncBlock:^{
690-
__strong LKDBHelper* sself = wself;
691-
if(sself)
692-
{
693-
LKDBQueryParams* params = [[LKDBQueryParams alloc]init];
694-
params.toClass = modelClass;
693+
LKDBCode_Async_Begin
694+
LKDBQueryParams* params = [[LKDBQueryParams alloc]init];
695+
params.toClass = modelClass;
695696

696-
if([where isKindOfClass:[NSDictionary class]])
697-
{
698-
params.whereDic = where;
699-
}
700-
else if([where isKindOfClass:[NSString class]])
701-
{
702-
params.where = where;
703-
}
704-
705-
params.orderBy = orderBy;
706-
params.offset = offset;
707-
params.count = count;
708-
709-
NSMutableArray* array = [self searchBaseWithParams:params];
710-
block(array);
711-
}
712-
}];
697+
if([where isKindOfClass:[NSDictionary class]])
698+
{
699+
params.whereDic = where;
700+
}
701+
else if([where isKindOfClass:[NSString class]])
702+
{
703+
params.where = where;
704+
}
705+
706+
params.orderBy = orderBy;
707+
params.offset = offset;
708+
params.count = count;
709+
710+
NSMutableArray* array = [sself searchBaseWithParams:params];
711+
block(array);
712+
LKDBCode_Async_End
713713
}
714714
}
715715

@@ -802,15 +802,10 @@ -(NSMutableArray *)searchWithParams:(LKDBQueryParams *)params
802802
{
803803
if(params.callback)
804804
{
805-
__LKDBWeak LKDBHelper* wself = self;
806-
[self asyncBlock:^{
807-
__strong LKDBHelper* sself = wself;
808-
if(sself)
809-
{
810-
NSMutableArray* array = [sself searchBaseWithParams:params];
811-
params.callback(array);
812-
}
813-
}];
805+
LKDBCode_Async_Begin
806+
NSMutableArray* array = [sself searchBaseWithParams:params];
807+
params.callback(array);
808+
LKDBCode_Async_End
814809
return nil;
815810
}
816811
else
@@ -965,19 +960,13 @@ -(BOOL)insertToDB:(NSObject *)model
965960
}
966961
-(void)insertToDB:(NSObject *)model callback:(void (^)(BOOL))block
967962
{
968-
__LKDBWeak LKDBHelper* wself = self;
969-
[self asyncBlock:^{
970-
__strong LKDBHelper* sself = wself;
971-
BOOL result = NO;
972-
if(sself)
973-
{
974-
result = [sself insertBase:model];
975-
}
976-
if(block)
977-
{
978-
block(result);
979-
}
980-
}];
963+
LKDBCode_Async_Begin
964+
BOOL result = [sself insertBase:model];
965+
if(block)
966+
{
967+
block(result);
968+
}
969+
LKDBCode_Async_End
981970
}
982971
-(BOOL)insertWhenNotExists:(NSObject *)model
983972
{
@@ -989,20 +978,17 @@ -(BOOL)insertWhenNotExists:(NSObject *)model
989978
}
990979
-(void)insertWhenNotExists:(NSObject *)model callback:(void (^)(BOOL))block
991980
{
992-
[self asyncBlock:^{
993-
if(block != nil)
994-
{
995-
block([self insertWhenNotExists:model]);
996-
}
997-
else
998-
{
999-
[self insertWhenNotExists:model];
1000-
}
1001-
}];
981+
LKDBCode_Async_Begin
982+
BOOL result = [sself insertWhenNotExists:model];
983+
if(block)
984+
{
985+
block(result);
986+
}
987+
LKDBCode_Async_End
1002988
}
1003989
-(BOOL)insertBase:(NSObject*)model{
1004990

1005-
checkModelIsInvalid(model);
991+
LKDBCheck_modelIsInvalid(model);
1006992

1007993
Class modelClass = model.class;
1008994

@@ -1094,15 +1080,17 @@ -(BOOL)updateToDB:(NSObject *)model where:(id)where
10941080
}
10951081
-(void)updateToDB:(NSObject *)model where:(id)where callback:(void (^)(BOOL))block
10961082
{
1097-
[self asyncBlock:^{
1098-
BOOL result = [self updateToDBBase:model where:where];
1099-
if(block != nil)
1100-
block(result);
1101-
}];
1083+
LKDBCode_Async_Begin
1084+
BOOL result = [sself updateToDBBase:model where:where];
1085+
if(block)
1086+
{
1087+
block(result);
1088+
}
1089+
LKDBCode_Async_End
11021090
}
11031091
-(BOOL)updateToDBBase:(NSObject *)model where:(id)where
11041092
{
1105-
checkModelIsInvalid(model);
1093+
LKDBCheck_modelIsInvalid(model);
11061094

11071095
Class modelClass = model.class;
11081096

@@ -1182,15 +1170,21 @@ -(BOOL)updateToDBBase:(NSObject *)model where:(id)where
11821170
}
11831171
-(BOOL)updateToDB:(Class)modelClass set:(NSString *)sets where:(id)where
11841172
{
1185-
checkClassIsInvalid(modelClass);
1173+
return [self updateToDBWithTableName:[modelClass getTableName] set:sets where:where];
1174+
}
1175+
-(BOOL)updateToDBWithTableName:(NSString *)tableName set:(NSString *)sets where:(id)where
1176+
{
1177+
LKDBCheck_tableNameIsInvalid(tableName);
11861178

1187-
NSMutableString* updateSQL = [NSMutableString stringWithFormat:@"update %@ set %@ ",[modelClass getTableName],sets];
1179+
NSMutableString* updateSQL = [NSMutableString stringWithFormat:@"update %@ set %@ ",tableName,sets];
11881180
NSMutableArray* updateValues = [self extractQuery:updateSQL where:where];
11891181

11901182
BOOL execute = [self executeSQL:updateSQL arguments:updateValues];
11911183

11921184
if(execute == NO)
1193-
LKErrorLog(@"database update fail %@ ----->sql:%@",NSStringFromClass(modelClass),updateSQL);
1185+
{
1186+
LKErrorLog(@"database update fail with TableName: %@ ----->sql:%@",tableName,updateSQL);
1187+
}
11941188

11951189
return execute;
11961190
}
@@ -1201,16 +1195,18 @@ -(BOOL)deleteToDB:(NSObject *)model
12011195
}
12021196
-(void)deleteToDB:(NSObject *)model callback:(void (^)(BOOL))block
12031197
{
1204-
[self asyncBlock:^{
1205-
BOOL isDeleted = [self deleteToDBBase:model];
1206-
if(block != nil)
1207-
block(isDeleted);
1208-
}];
1198+
LKDBCode_Async_Begin
1199+
BOOL isDeleted = [sself deleteToDBBase:model];
1200+
if(block)
1201+
{
1202+
block(isDeleted);
1203+
}
1204+
LKDBCode_Async_End
12091205
}
12101206

12111207
-(BOOL)deleteToDBBase:(NSObject *)model
12121208
{
1213-
checkModelIsInvalid(model);
1209+
LKDBCheck_modelIsInvalid(model);
12141210

12151211
Class modelClass = model.class;
12161212

@@ -1254,22 +1250,23 @@ -(BOOL)deleteToDBBase:(NSObject *)model
12541250

12551251
-(BOOL)deleteWithClass:(Class)modelClass where:(id)where
12561252
{
1257-
return [self deleteWithClassBase:modelClass where:where];
1253+
return [self deleteWithTableName:[modelClass getTableName] where:where];
12581254
}
12591255
-(void)deleteWithClass:(Class)modelClass where:(id)where callback:(void (^)(BOOL))block
12601256
{
1261-
[self asyncBlock:^{
1262-
BOOL isDeleted = [self deleteWithClassBase:modelClass where:where];
1263-
if (block != nil) {
1264-
block(isDeleted);
1265-
}
1266-
}];
1257+
LKDBCode_Async_Begin
1258+
BOOL isDeleted = [sself deleteWithTableName:[modelClass getTableName] where:where];
1259+
if (block)
1260+
{
1261+
block(isDeleted);
1262+
}
1263+
LKDBCode_Async_End
12671264
}
1268-
-(BOOL)deleteWithClassBase:(Class)modelClass where:(id)where
1265+
-(BOOL)deleteWithTableName:(NSString *)tableName where:(id)where
12691266
{
1270-
checkClassIsInvalid(modelClass);
1267+
LKDBCheck_tableNameIsInvalid(tableName);
12711268

1272-
NSMutableString* deleteSQL = [NSMutableString stringWithFormat:@"delete from %@",[modelClass getTableName]];
1269+
NSMutableString* deleteSQL = [NSMutableString stringWithFormat:@"delete from %@",tableName];
12731270
NSMutableArray* values = [self extractQuery:deleteSQL where:where];
12741271

12751272
BOOL result = [self executeSQL:deleteSQL arguments:values];
@@ -1279,7 +1276,7 @@ -(BOOL)deleteWithClassBase:(Class)modelClass where:(id)where
12791276
#pragma mark - other operation
12801277
-(BOOL)isExistsModel:(NSObject *)model
12811278
{
1282-
checkModelIsInvalid(model);
1279+
LKDBCheck_modelIsInvalid(model);
12831280
NSString* pwhere = nil;
12841281
if(model.rowid>0)
12851282
{
@@ -1298,11 +1295,11 @@ -(BOOL)isExistsModel:(NSObject *)model
12981295
}
12991296
-(BOOL)isExistsClass:(Class)modelClass where:(id)where
13001297
{
1301-
return [self isExistsClassBase:modelClass where:where];
1298+
return [self isExistsWithTableName:[modelClass getTableName] where:where];
13021299
}
1303-
-(BOOL)isExistsClassBase:(Class)modelClass where:(id)where
1300+
-(BOOL)isExistsWithTableName:(NSString *)tableName where:(id)where
13041301
{
1305-
return [self rowCount:modelClass where:where] > 0;
1302+
return [self rowCountWithTableName:tableName where:where] > 0;
13061303
}
13071304

13081305
#pragma mark- clear operation

0 commit comments

Comments
 (0)