123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- //
- // FKBookProItem.m
- // FirstLink
- //
- // Created by jack on 16/4/29.
- // Copyright © 2016年 FirstLink. All rights reserved.
- //
- #import "FKBookProItem.h"
- @implementation FKBookProItem
- + (NSDictionary *)mts_mapping {
- return @{
- @"id" : mts_key(itemID),
- @"index_pic" : mts_key(picUrl),
- @"name" : mts_key(name),
- @"title" : mts_key(title),
- @"current_price" : mts_key(currentPrice),
- @"before_price" : mts_key(originPrice),
- @"push_type" : mts_key(pushType),
- @"brand" : mts_key(brand),
- @"update_time" : mts_key(createTime),
- };
- }
- + (BOOL)mts_shouldSetUndefinedKeys {
- return NO;
- }
- - (NSString *)getRealTimeStrWithServeTime:(NSString *)serveTime{
-
- if (![FLStringHelper isValidString:self.createTime]) return nil;
-
- if (![FLStringHelper isValidString:serveTime]) {
- return [self convertTimeStr:self.createTime formate:@"yyyy-MM-dd HH:mm:ss"];
- }
-
- return [self convertToPredigestStringFromString:self.createTime serveTime:serveTime];
- }
- - (NSString *)convertTimeStr:(NSString *)timeStr formate:(NSString *)formate{
-
- NSDateFormatter *dateFormat = [FLStringHelper dateFormat];
- [dateFormat setDateFormat:formate];
- NSMutableString *mutString = [NSMutableString stringWithString:timeStr];
- NSString *temp = [mutString stringByReplacingOccurrencesOfString:@"T"
- withString:@" "];
-
- NSDate *date = [dateFormat dateFromString:temp];
- if (!date) return nil;
-
- NSString *fullString = [dateFormat stringFromDate:date];
-
- if (fullString.length >= 19){
- NSString *dayStr = [fullString substringWithRange:NSMakeRange(5, 5)];
- NSString *hourStr = [fullString substringWithRange:NSMakeRange(11, 5)];
- fullString = [dayStr stringByAppendingString:@" "];
- fullString = [fullString stringByAppendingString:hourStr];
- }
-
- return fullString;
- }
- - (NSString *)convertToPredigestStringFromString:(NSString *)timeString serveTime:(NSString *)serveTime{
-
- if (!timeString || timeString.length == 0) return nil;
-
- NSDate *nowDate = [NSDate date];
- if ([FLStringHelper isValidString:serveTime]) {
- nowDate = [FLStringHelper convertToDateFromString:serveTime];
- }
-
- NSDate *compareTime = [FLStringHelper convertToDateFromString:timeString];
- NSTimeInterval countTimeSecond = [nowDate timeIntervalSinceDate:compareTime];
- if (countTimeSecond <= 0) return nil;
- NSDateComponents *dateComponent = [self convertSecondToComponents:countTimeSecond serveTime:serveTime];
-
- if (dateComponent.day > 0) return [self convertTimeStr:timeString formate:@"yyyy-MM-dd HH:mm:ss"];
- if (dateComponent.hour > 0) return [NSString stringWithFormat:@"%ld小时前", (long)dateComponent.hour];
- if (dateComponent.minute > 3) return [NSString stringWithFormat:@"%ld分钟前", (long)dateComponent.minute];
- return [NSString stringWithFormat:@"刚刚"];
-
-
- }
- - (NSDateComponents*)convertSecondToComponents:(NSTimeInterval)second serveTime:(NSString *)serveTime{
- NSDate *startDate = [FLStringHelper convertToDateFromString:serveTime];
- NSDate *endDate = [NSDate dateWithTimeInterval:second sinceDate:startDate];
- NSCalendarUnit unit = NSCalendarUnitSecond | NSCalendarUnitMinute | NSCalendarUnitHour | kCFCalendarUnitDay;
- NSDateComponents *components = [[NSCalendar currentCalendar] components:unit
- fromDate:startDate
- toDate:endDate
- options:NSCalendarWrapComponents];
- return components;
- }
- - (NSInteger)caculateDiscountCut{
- if ([FLStringHelper isValidString:self.currentPrice] && [FLStringHelper isValidString:self.originPrice]){
- CGFloat currentPrice = [FLStringHelper convertFenStringToYuanValue:self.currentPrice];
- CGFloat originPrice = [FLStringHelper convertFenStringToYuanValue:self.originPrice];
- return floor(originPrice - currentPrice);
- }
- return 0;
- }
- - (NSString *)getRealRecStr{
- if ([FLStringHelper isValidString:self.pushType]){
- if (self.pushType.integerValue == 1) {
- return @"上新";
- }else if (self.pushType.integerValue == 2){
- // 降价
- NSInteger discountCut = [self caculateDiscountCut];
- if (discountCut > 0){
- return [NSString stringWithFormat:@"降价¥%ld", (long)discountCut];
- }
- }
- }
- return nil;
- }
- @end
|