Example #1
0
        public static OperationStatisticVm GetOperationStatistics(DateTime fromDate, DateTime toDate, int?orderFrom)
        {
            /* */
            OperationsEntities db5 = new OperationsEntities();

            var operationList = db5.OperationViews.Where(f => f.OrderFrom == orderFrom &&
                                                         (f.OperationDate >= fromDate && f.OperationDate <= toDate))
                                .GroupBy(f => f.ShipperId)
                                .Select(x => new
            {
                ShipperId      = x.Key,
                OperationCount = x.Count(),
                TotalCBM       = x.Sum(f => f.CBM),
                TotalWeight    = x.Sum(f => f.NetWeight),
                ShipperNameEn  = x.Max(r => r.ShipperNameEn)
                                 //x.ShipperId,
                                 //x.OperationId,
                                 //x.CarrierType,
                                 //x.QuoteId,
                                 //x.CreateDate,
                                 //x.OperationCode,
                                 //x.ShipperNameEn,
                                 //x.ConsigneeNameEn,
                                 //x.CarrierNameEn,
                                 //x.FromPort,
                                 //x.ToPort,
                                 //x.DateOfDeparture,
                                 //x.StatusName,
                                 //x.StatusId,
                                 //x.IsConsolidation,
                                 //x.OrderFrom,
                                 //x.AgentNameEn
            })
                                .Take(5)
                                .OrderByDescending(y => y.OperationCount)
                                .ThenBy(s => s.TotalWeight)
                                .ToList();
            var ee = operationList;
            /* */
            OperationsEntities            db = new OperationsEntities();
            OperationStatisticVm          operationStatistic = new OperationStatisticVm();
            GetOperationStatistics_Result spResult           = db.GetOperationStatistics(orderFrom, fromDate, toDate).FirstOrDefault();

            Mapper.CreateMap <GetOperationStatistics_Result, OperationStatisticVm>().IgnoreAllNonExisting();
            Mapper.Map(spResult, operationStatistic);
            return(operationStatistic);
        }