where={}
// 增加字段
-(void)whereField:(NSString *)fieldStr value:(NSString *)valueStr
{
NSString *str = @"where={}";
NSRange range = [_whereStr rangeOfString:fieldStr];
while (range.location!=NSNotFound) {
//找到字段,就替换字段
_whereStr = [_whereStr substringFromIndex:7];//去除 where={
_whereStr = [_whereStr substringToIndex:_whereStr.length-1];//去除 }
NSArray *arr = [_whereStr componentsSeparatedByString:@","];//转化为数组,根据逗号隔开
NSMutableArray *replaceArr = [[NSMutableArray alloc] init];
for (int i=0; i<arr.count; i++) {
NSString *findStr = [arr objectAtIndex:i];
NSRange range = [findStr rangeOfString:fieldStr];
if (range.location!=NSNotFound) {
NSString *replaceStr;
if ([fieldStr isEqualToString:@"apptime"]) {
replaceStr = [NSString stringWithFormat:@"\"%@\":[\"%@\"]",fieldStr,valueStr];
}else{
replaceStr = [NSString stringWithFormat:@"\"%@\":\"%@\"",fieldStr,valueStr];
}
[replaceArr addObject:replaceStr];
}else{
[replaceArr addObject:findStr];
}
}
NSString *finalStr;
for (int i=0; i<replaceArr.count; i++) {
if (i==0) {
finalStr = [NSString stringWithFormat:@"%@",[replaceArr objectAtIndex:i]];
}else{
finalStr = [NSString stringWithFormat:@"%@,%@",finalStr,[replaceArr objectAtIndex:i]];
}
}
_whereStr = [NSString stringWithFormat:@"where={%@}",finalStr];
break;
}
while (range.location==NSNotFound) {
//没找到字段,就添加字段
NSString *fieldValue;
if (_whereStr.length>str.length) {
//字段前 加逗号
if ([fieldStr isEqualToString:@"apptime"]) {
fieldValue = [NSString stringWithFormat:@",\"%@\":[\"%@\"]",fieldStr,valueStr];
}else{
fieldValue = [NSString stringWithFormat:@",\"%@\":\"%@\"",fieldStr,valueStr];
}
}else{
//字段前不加逗号
if ([fieldStr isEqualToString:@"apptime"]) {
fieldValue = [NSString stringWithFormat:@"\"%@\":[\"%@\"]",fieldStr,valueStr];
}else{
fieldValue = [NSString stringWithFormat:@"\"%@\":\"%@\"",fieldStr,valueStr];
}
}
//在where条件中添加新字段
NSString *simpleStr = [_whereStr substringToIndex:_whereStr.length-1];
_whereStr = [NSString stringWithFormat:@"%@%@}",simpleStr,fieldValue];
break;
}
}
//删除筛选字段
-(void)deleteWhereField:(NSString *)field
{
//NSString *str = @"where={}";
NSRange range = [_whereStr rangeOfString:field];
while (range.location!=NSNotFound) {
//找到字段,删除
_whereStr = [_whereStr substringFromIndex:7];//去除 where={
_whereStr = [_whereStr substringToIndex:_whereStr.length-1];//去除 }
NSArray *arr = [_whereStr componentsSeparatedByString:@","];//转化为数组,根据逗号隔开
NSMutableArray *replaceArr = [[NSMutableArray alloc] init];
for (int i=0; i<arr.count; i++) {
NSString *findStr = [arr objectAtIndex:i];
NSRange range = [findStr rangeOfString:field];
if (range.location==NSNotFound) {
[replaceArr addObject:findStr];
}
}
NSString *finalStr;
for (int i=0; i<replaceArr.count; i++) {
if (i==0) {
finalStr = [NSString stringWithFormat:@"%@",[replaceArr objectAtIndex:i]];
}else{
finalStr = [NSString stringWithFormat:@",%@",[replaceArr objectAtIndex:i]];
}
}
_whereStr = [NSString stringWithFormat:@"where={%@}",finalStr];
break;
}
}