zoukankan      html  css  js  c++  java
  • 这样自己组装数据,醉了,

    -(void)handleDataArray

    {

        NSMutableArray *timeArray = [NSMutableArray array];

        NSMutableArray *nameArray = [NSMutableArray array];

        NSMutableArray *orderItemArray = [NSMutableArray array];

        

        for (int i = 0; i<self.dataArray.count; i++) {

            SaleAcountInfo *info = [self.dataArray objectAtIndex:i];

            NSString *timeStr = info.payedYearMonthDay;

            NSString *name = info.name;

            if (![timeArray containsObject:timeStr]) {

                [timeArray addObject:timeStr];

            }

            if (![nameArray containsObject:name]) {

                [nameArray addObject:name];

            }

        }

        

        //分类出OrderItem对象

        for (NSString *gName in nameArray) {

            OrderItem *item = [[OrderItem alloc]init];

            int quantity = 0;

            for (int i = 0; i<self.dataArray.count; i++) {

                SaleAcountInfo *info = [self.dataArray objectAtIndex:i];

                NSString *name = info.name;

                if ([name isEqualToString:gName]) {

                    quantity = quantity + info.quantity;

                    item.timeStr = info.payedYearMonthDay;//时间会有遗漏么 时间是按照天来的么,是整天的么,

                }

            }

            item.quantity = quantity;

            item.goodName = gName;

            [orderItemArray addObject:item];

        }

     

        NSMutableArray *destDataArray = [NSMutableArray array];

        for (int n = 0; n<timeArray.count; n++) {

            NSString *nTimestr = [timeArray objectAtIndex:n];

            NSMutableArray *kOrderItemArray = [NSMutableArray array];

            OrderSummaryInfo *summaryInfo = [[OrderSummaryInfo alloc]init];

            int quantity = 0;

            for (int t = 0; t<orderItemArray.count; t++) {

                OrderItem *item = [orderItemArray objectAtIndex:t];

                NSString *iName = item.goodName;

                for (int m = 0; m<self.dataArray.count; m++) {

                    SaleAcountInfo *info = [self.dataArray objectAtIndex:m];

                    NSString *timeStr = info.payedYearMonthDay;

                    NSString *name = info.name;

                    

                    if ([timeStr isEqualToString:nTimestr] && [name isEqualToString:iName]) {

                        if (![kOrderItemArray containsObject:item]) {

                            [kOrderItemArray addObject:item];

                            quantity = quantity + item.quantity;

                        }

                    }

                }

            }

            summaryInfo.timeStr = nTimestr;

            summaryInfo.orderItemArray = kOrderItemArray;

            summaryInfo.totalQuantity = quantity;

            [destDataArray addObject:summaryInfo];

        }

        

        

        

        

        

        

        

        

        for (NSString *mTime in timeArray) {

           

            NSMutableArray *temp = [NSMutableArray array];

            OrderSummaryInfo *info = [[OrderSummaryInfo alloc]init];

            int quantity = 0;

            for (int i = 0; i<orderItemArray.count; i++) {

                OrderItem *item = [orderItemArray objectAtIndex:i];

                NSString *time = item.timeStr;

                if ([time isEqualToString:mTime]) {

                    quantity = quantity + item.quantity;

                    [temp addObject:item];

                    info.timeStr = time;

                }

                

            }

            info.totalQuantity = quantity;

            info.orderItemArray = temp;

     

            [destDataArray addObject:info];

            

            

            

        }

        

    }

  • 相关阅读:
    BDB
    nginx配置文件祥解
    区分虚方法,抽象方法如此简单
    nginx+tomcat集群负载均衡(实现session复制)
    nginx配置conf
    高手博客 网址收藏
    IE6,7,8下使用Javascript记录光标选中范围(已补全)(已解决单个节点内部重复字符的问题)
    (造福中国前端界)纯前端Js完美解决各种汉字urlencode,urldecode,编码解码问题,不借助任何字库,内码表,轻松一行,兼容IE8+,chrome,firefox,safari等主流浏览器
    共享两个最近手机项目的HTML5的widget,星星评级以及标签选项卡,样式美观,iphone/android可用
    共享下改进后的combox,页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
  • 原文地址:https://www.cnblogs.com/guligei/p/4499480.html
Copyright © 2011-2022 走看看