Skip to content

Commit d194413

Browse files
committed
Update
1 parent c93486b commit d194413

File tree

2 files changed

+26
-7
lines changed

2 files changed

+26
-7
lines changed

SJDBMap/Category/SJDatabaseMap+Server.m

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@ - (void)sjAutoCreateOrAlterRelevanceTabWithClass:(Class)cls {
216216
[incompleteData addObject:obj.mutableCopy];
217217
}];
218218

219-
return [self _sjConversionMolding:cls rawStorageData:incompleteData];
219+
return [self _sjConversionMolding:cls rawStorageData:incompleteData memeryCache:[SJDBMapQueryCache new]];
220220
}
221221

222222
/*!
@@ -235,7 +235,7 @@ - (void)sjAutoCreateOrAlterRelevanceTabWithClass:(Class)cls {
235235
[[self sjQueryWithSQLStr:fieldsSqlM] enumerateObjectsUsingBlock:^(NSDictionary * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
236236
[incompleteData addObject:obj.mutableCopy];
237237
}];
238-
return [self _sjConversionMolding:cls rawStorageData:incompleteData];
238+
return [self _sjConversionMolding:cls rawStorageData:incompleteData memeryCache:[SJDBMapQueryCache new]];
239239
}
240240

241241
/*!
@@ -294,17 +294,17 @@ - (void)sjAutoCreateOrAlterRelevanceTabWithClass:(Class)cls {
294294
[incompleteData addObject:obj.mutableCopy];
295295
}];
296296

297-
return [self _sjConversionMolding:cls rawStorageData:incompleteData];
297+
return [self _sjConversionMolding:cls rawStorageData:incompleteData memeryCache:[SJDBMapQueryCache new]];
298298
}
299299

300300

301-
- (NSArray<id> *)_sjConversionMolding:(Class)cls rawStorageData:(NSArray<NSDictionary *> *)rawStorageData {
301+
- (NSArray<id> *)_sjConversionMolding:(Class)cls rawStorageData:(NSArray<NSDictionary *> *)rawStorageData memeryCache:(SJDBMapQueryCache *)cache {
302302
NSMutableArray<id> *allDataModel = [NSMutableArray new];
303303
NSArray<SJDBMapCorrespondingKeyModel *>*cKr = [self sjGetCorrespondingKeys:cls];
304304
NSArray<SJDBMapArrayCorrespondingKeysModel *> *aKr = [self sjGetArrayCorrespondingKeys:cls];
305305
[rawStorageData enumerateObjectsUsingBlock:^(NSDictionary * _Nonnull dict, NSUInteger idx, BOOL * _Nonnull stop) {
306306
id model = [cls new];
307-
[self _sjConversionModelWithOwnerModel:model dict:dict cKr:cKr aKr:aKr memeryCache:[SJDBMapQueryCache new]];
307+
[self _sjConversionModelWithOwnerModel:model dict:dict cKr:cKr aKr:aKr memeryCache:cache];
308308
[allDataModel addObject:model];
309309
}];
310310
if ( 0 == allDataModel.count ) return nil;

SJDBMapProject/ViewController.m

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,9 @@ - (void)update {
138138

139139
[[SJDatabaseMap sharedServer] queryDataWithClass:[Person class] primaryValue:2 completeCallBlock:^(id<SJDBMapUseProtocol> _Nullable model) {
140140
if ( nil == model ) return ;
141+
142+
NSLog(@"query single person");
143+
141144
Person *person = model;
142145

143146
NSMutableArray *tagsM = [NSMutableArray new];
@@ -157,12 +160,13 @@ - (void)update {
157160
// mixed
158161
[tagsM addObject:person.tags.firstObject];
159162
[[SJDatabaseMap sharedServer] update:person insertedOrUpdatedValues:@{@"tags":tagsM, @"goods":person.goods.firstObject} callBlock:^(BOOL r) {
160-
163+
NSLog(@"update end");
161164

162165
// query sample
163166
[self queryWithDict:@{@"personID":@"33"}];
164167

165168
}];
169+
166170
}];
167171

168172
}
@@ -201,16 +205,31 @@ - (void)query {
201205
NSLog(@"%@", obj);
202206
}];
203207
}];
208+
209+
204210
}
205211

206212
- (void)queryWithDict:(NSDictionary *)dict {
207-
[[SJDatabaseMap sharedServer] queryDataWithClass:[Person class] queryDict:dict completeCallBlock:^(NSArray<id<SJDBMapUseProtocol>> * _Nullable data) {
213+
[[SJDatabaseMap sharedServer] queryDataWithClass:[Person class] queryDict:@{@"name":@"sj", @"age":@(20)} completeCallBlock:^(NSArray<id<SJDBMapUseProtocol>> * _Nullable data) {
208214

209215
NSLog(@"%zd", data.count);
210216

211217
// range query
212218
[[SJDatabaseMap sharedServer] queryDataWithClass:[Person class] range:NSMakeRange(2, 10) completeCallBlock:^(NSArray<id<SJDBMapUseProtocol>> * _Nullable data) {
213219
NSLog(@"%zd", data.count);
220+
221+
222+
// fuzzy query
223+
[[SJDatabaseMap sharedServer] fuzzyQueryDataWithClass:[Person class] queryDict:@{@"name":@"s"} completeCallBlock:^(NSArray<id<SJDBMapUseProtocol>> * _Nullable data) {
224+
NSLog(@"%zd", data.count);
225+
226+
// 匹配以 's' 开头的name.
227+
[[SJDatabaseMap sharedServer] fuzzyQueryDataWithClass:[Person class] queryDict:@{@"name":@"s"} match:SJDatabaseMapFuzzyMatchFront completeCallBlock:^(NSArray<id<SJDBMapUseProtocol>> * _Nullable data) {
228+
NSLog(@"%zd", data.count);
229+
}];
230+
231+
}];
232+
214233
}];
215234

216235
}];

0 commit comments

Comments
 (0)