ItemModel.m 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. //
  2. // ItemModel.m
  3. // kneet
  4. //
  5. // Created by Jason Lee on 4/1/15.
  6. // Copyright (c) 2015 ntels. All rights reserved.
  7. //
  8. #import "ItemModel.h"
  9. #import "JDObject.h"
  10. @implementation ItemSubModel
  11. + (JSONKeyMapper *)keyMapper {
  12. return [JSONKeyMapper mapperFromUnderscoreCaseToCamelCase];
  13. }
  14. - (NSString *)localStringOfDay:(NSString *)day {
  15. NSString *lstr = nil;
  16. if ([day isEqualToString:ksDayOfWeekMON]) {
  17. lstr = NSLocalizedString(@"월", @"월");
  18. } else if ([day isEqualToString:ksDayOfWeekTUE]) {
  19. lstr = NSLocalizedString(@"화", @"화");
  20. } else if ([day isEqualToString:ksDayOfWeekWED]) {
  21. lstr = NSLocalizedString(@"수", @"수");
  22. } else if ([day isEqualToString:ksDayOfWeekTHU]) {
  23. lstr = NSLocalizedString(@"목", @"목");
  24. } else if ([day isEqualToString:ksDayOfWeekFRI]) {
  25. lstr = NSLocalizedString(@"금", @"금");
  26. } else if ([day isEqualToString:ksDayOfWeekSAT]) {
  27. lstr = NSLocalizedString(@"토", @"토");
  28. } else if ([day isEqualToString:ksDayOfWeekSUN]) {
  29. lstr = NSLocalizedString(@"일", @"일");
  30. }
  31. return lstr;
  32. }
  33. - (NSString *)daysOfWeek {
  34. NSMutableString *days = [[NSMutableString alloc] init];
  35. if (_cmdclsValue && ![_cmdclsValue isEmptyString]) {
  36. NSArray *darray = [_cmdclsValue componentsSeparatedByString:@","];
  37. for (NSString *day in darray) {
  38. NSString *prefix = [days isEmptyString] ? ksEmptyString : @", ";
  39. [days appendFormat:@"%@%@", prefix, [self localStringOfDay:day]];
  40. }
  41. }
  42. return days;
  43. }
  44. - (NSString *)cmdclsValueMsg {
  45. // if (!_cmdclsValueMsg || [_cmdclsValueMsg isEmptyString]) {
  46. if (_dueDate && ![_dueDate isEmptyString]) {
  47. _cmdclsValueMsg = _dueDate;
  48. } else if (_daysOfWeek && ![_daysOfWeek isEmptyString]) {
  49. _cmdclsValueMsg = _daysOfWeek;
  50. } else if (_dueTime && ![_dueTime isEmptyString]) {
  51. _cmdclsValueMsg = _dueTime;
  52. } else if (_homeModes && ![_homeModes isEmptyString]) {
  53. _cmdclsValueMsg = _homeModes;
  54. } else if (_externHeat && ![_externHeat isEmptyString]) {
  55. _cmdclsValueMsg = _externHeat;
  56. }
  57. // }
  58. return _cmdclsValueMsg;
  59. // if (_dueDate && ![_dueDate isEmptyString]) {
  60. // self.cmdclsValueMsg = _dueDate;
  61. //
  62. // } else if (_daysOfWeek && ![_daysOfWeek isEmptyString]) {
  63. // self.cmdclsValueMsg = _daysOfWeek;
  64. //
  65. // } else if (_dueTime && ![_dueTime isEmptyString]) {
  66. // self.cmdclsValueMsg = _dueTime;
  67. //
  68. // } else if (_homeModes && ![_homeModes isEmptyString]) {
  69. // self.cmdclsValueMsg = _homeModes;
  70. //
  71. // } else if (_externHeat && ![_externHeat isEmptyString]) {
  72. // self.cmdclsValueMsg = _externHeat;
  73. //
  74. // }
  75. }
  76. @end
  77. @implementation ItemModel
  78. + (JSONKeyMapper *)keyMapper {
  79. return [[JSONKeyMapper alloc] initWithDictionary:@{@"pred_item_sequence": @"predItemSequence",
  80. @"item_type_code": @"itemTypeCode",
  81. @"item_sub_type_code": @"itemSubTypeCode",
  82. @"item_name": @"itemName",
  83. @"item_sub": @"subItems",
  84. @"pred_action_sequence": @"predActionSequence",
  85. @"pred_scene_id": @"predSceneId",
  86. @"pred_rule_id": @"predRuleId",
  87. @"cnt" : @"cnt",
  88. @"total_cnt" : @"totalCnt",
  89. @"image_file_name": @"imageFileName"}];
  90. }
  91. + (NSString *)itemSubTypeString:(NSString *)itemSubTypeCode {
  92. NSString *string = ksEmptyString;
  93. if ([itemSubTypeCode isEqualToString:ksItemSubTypeCodeDevice]) {
  94. string = @"Choose your things & action";
  95. } else if ([itemSubTypeCode isEqualToString:ksItemSubTypeCodeMode]) {
  96. string = @"Choose home mode";
  97. } else if ([itemSubTypeCode isEqualToString:ksItemSubTypeCodeAppPush]) {
  98. string = @"Choose your things & action";
  99. } else if ([itemSubTypeCode isEqualToString:ksItemSubTypeCodeTimer]) {
  100. string = @"Choose your things & action";
  101. }
  102. return string;
  103. }
  104. - (NSInteger)sumPredDeviceCount {
  105. return _predDevices.count + [_cnt integerValue];
  106. }
  107. - (NSInteger)sumModesCount {
  108. return _modes.count + [_cnt integerValue];
  109. }
  110. - (NSInteger)sumPushesCount {
  111. return _pushes.count + [_cnt integerValue];
  112. }
  113. @end
  114. @implementation ItemListModel
  115. @end