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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
//
// KWMFilterUtil.m
// iCemarose
//
// Created by HouWeiBin on 2017/6/8.
// Copyright © 2017年 kollway. All rights reserved.
//
#import "KWMFilterUtil.h"
#import "KWMFilter.h"
#import "KWMStringUtil.h"
@implementation KWMFilterUtil
+(NSMutableArray<NSString *> *)getTagsByFilterArray:(NSArray<KWMFilter *> *)filterArray{
NSMutableArray<NSString *> *tags = [NSMutableArray array];
for(KWMFilter *filter in filterArray){
if(filter.tags){
for(NSString *tag in filter.tags){
[tags addObject:[self transformTag:filter tag:tag]];
}
}
}
return tags;
}
+(NSString *)transformTag:(KWMFilter *)filter tag:(NSString *)tag{
NSDictionary *mapping = @{
@"Autumn/Winter 2017":@"autumn-winter-2017",
@"Spring/Summer 2017":@"spring-summer-2017",
@"Autumn/Winter 2016":@"autumn-winter-2016",
@"Spring/Summer 2016":@"spring-summer-2016",
@"Autumn/Winter 2015":@"autumn-winter-2015",
@"Girls":@"girls",
@"Boys":@"boys",
@"0 month":@"size-0m",
@"3 month":@"size-3m",
@"6 month":@"size-06m",
@"9 month":@"size-9m",
@"12 month":@"size-12m",
@"18 month":@"size-18m",
@"2 year":@"size-02a",
@"3 year":@"size-03a",
@"4 year":@"size-04a",
@"5 year":@"size-05a",
@"6 year":@"size-06a",
@"7 year":@"size-07a",
@"8 year":@"size-08a",
@"10 year":@"size-10a",
@"12 year":@"size-12a",
@"14 year":@"size-14a",
@"16 year":@"size-16a",
@"18":@"shoe-size-18",
@"19":@"shoe-size-19",
@"20":@"shoe-size-20",
@"21":@"shoe-size-21",
@"22":@"shoe-size-22",
@"23":@"shoe-size-23",
@"24":@"shoe-size-24",
@"25":@"shoe-size-25",
@"26":@"shoe-size-26",
@"27":@"shoe-size-27",
@"28":@"shoe-size-28",
@"29":@"shoe-size-29",
@"30":@"shoe-size-30",
@"31":@"shoe-size-31",
@"32":@"shoe-size-32",
@"33":@"shoe-size-33",
@"34":@"shoe-size-34",
@"35":@"shoe-size-35",
@"37":@"shoe-size-37",
@"38":@"shoe-size-38",
@"39":@"shoe-size-39",
@"Accessories":@"accessories",
@"Babysuits":@"babysuits",
@"Coats & Jackets":@"coats-jackets",
@"Dresses":@"dresses",
@"Leggings":@"leggings",
@"Raincoat":@"raincoat",
@"Sets":@"sets",
@"Shoes":@"shoes",
@"Skirts":@"skirts",
@"Swimwear":@"swimwear",
@"Tights":@"tights",
@"Tops":@"tops",
@"Toys":@"toys",
@"Trousers & Shorts":@"trousers-shorts",
@"Underwear":@"underwear",
};
return mapping[tag];
// NSString *mTag = [tag copy];
//
// //"Spring/Summer 2017" => Spring-Summer-2017
// if([filter.group isEqualToString:@"SEASON"]){
// mTag = [mTag stringByReplacingOccurrencesOfString:@"/" withString:@"-"];
// return [tag stringByReplacingOccurrencesOfString:@" " withString:@"-"];
// }
//
// //1 month=> size-01m
// else if([filter.group isEqualToString:@"SIZE"]){
// //不合规则的区别待遇
// if([tag isEqualToString:@"0 month"]){
// return @"size-0m";
// }else if([tag isEqualToString:@"3 month"]){
// return @"size-3m";
// }else if([tag isEqualToString:@"3 month"]){
// return @"size-9m";
// }
//
// NSString *numberString = [self getNumberString:tag];
// numberString = numberString.length == 1 ? [NSString stringWithFormat:@"0%@",numberString]:numberString;
// if([tag rangeOfString:@"year"].location == NSNotFound){
// return [NSString stringWithFormat:@"size-%@m",numberString];
// }else{
// return [NSString stringWithFormat:@"size-%@a",numberString];
// }
// }
//
// //12 => shoe-size-1
// else if([filter.group isEqualToString:@"Shoe Size"]){
// return [NSString stringWithFormat:@"shoe-size-%@",tag];
// }
//
// //Trousers & Shorts => trousers-shorts
// else if([filter.group isEqualToString:@"PRODUCT TYPE"]){
// return [KWMStringUtil deleteOtherCharExceptLetterWithLine:tag];
// }
//
// return mTag;
}
+(NSString *)getNumberString:(NSString *)string{
NSCharacterSet* nonDigits =[[NSCharacterSet decimalDigitCharacterSet] invertedSet];
return [string stringByTrimmingCharactersInSet:nonDigits];
}
@end