Exemplo n.º 1
0
        public List <StationSummaryStats> GetStationSummaryStats(StationSummaryStatsFilterRequest request)
        {
            //var result = new List<StationSummaryStats>();
            //var data1 = this.DB.Fetch<StationStatsModel>(";EXEC StationSummaryFilterReport @@startDate = @0, @@endDate = @1, @@sectionId = @2, @@stationId = @3, @@userId = @4, @@gearfaultId = @5, @@reportedId = @6, @@subGearfaultId =@7, @@manufactureId = @8, @@forSections = @9, @@forStations = @10, @@forUsers = @11, @@forGearfaults = @12, @@forReports = @13, @@forSubGears = @14, @@forManufactures = @15", request.FromDate.Date, request.ToDate.Date, request.SectionFilter, request.StationFilter, request.UserFilter, request.GearAtFaultFilter, request.ReportedFilter, request.SubGearAtFaultFilter, request.ManufactureFilter, request.Sections.ToFilterCSV().ToString(), request.Stations.ToFilterCSV().ToString(), request.Users.ToFilterCSV().ToString(), request.Gears.ToFilterCSV().ToString(), request.Reporteds.ToFilterCSV().ToString(), request.SubGears.ToFilterCSV().ToString(), request.Manufatures.ToFilterCSV().ToString()).ToList();
            //var stats = data1.GroupBy(s => s.StationId).ToDictionary(failures => failures.Key, failures => failures.ToList());
            //var stations = this.DB.Fetch<Data.Model.Station>(string.Empty);
            //var gearFalts = new List<Data.Model.GearFault>();
            //if (request.GearAtFaultFilter == 0)
            //{
            //    gearFalts = this.DB.Fetch<Data.Model.GearFault>(string.Empty);
            //}
            //else
            //{
            //    gearFalts = this.DB.Fetch<Data.Model.GearFault>("Where id in (" + request.Gears.ToFilterCSV() + ")");
            //}


            //if (request.StationFilter != 0)
            //{
            //    stations = stations.Where(s => request.Stations.Any(fs => fs == s.Id)).ToList();
            //}
            //else if (request.UserFilter != 0)
            //{
            //    stations = stations.Where(s => request.Users.Contains(s.ASTEId ?? 0)  || request.Users.Contains(s.CSEId ?? 0)|| request.Users.Contains(s.JEId?? 0) || request.Users.Contains(s.ESMId ?? 0)).ToList();
            //}
            //else if (request.SectionFilter != 0)
            //{
            //    stations = stations.Where(s => request.Sections.Contains(s.SectionId ?? 0)).ToList();
            //}


            //stations.ForEach(station =>
            //{
            //    var data = new StationSummaryStats() { StationId = station.Id, StationName = station.Name };
            //    if (stats.ContainsKey(station.Id))
            //    {
            //        stats[station.Id].ForEach(item =>
            //        {
            //            data.StatsItems.Add(new StatsItem() { Id = item.GearFaultId, Count = item.FailureCount, Name = item.GearFault });
            //        });
            //    }

            //    if (!result.Any())
            //    {
            //        var addedGearFaults = data.StatsItems.ToDictionary(item => item.Id);
            //        gearFalts.ForEach(gear =>
            //        {
            //            if (!addedGearFaults.ContainsKey(gear.Id))
            //            {
            //                data.StatsItems.Add(new StatsItem() { Id = gear.Id, Name = gear.Name });
            //            }
            //        });
            //    }
            //    result.Add(data);
            //});

            //return result;

            return(null);
        }
Exemplo n.º 2
0
 public HttpResponseMessage PostExportCompare(StationSummaryStatsFilterRequest request)
 {
     request.FileName    = "StationSummaryStats";
     request.SheetHeader = "StationSummaryStats";
     return(this.ExportFile <DataTable>(request, this.ReportService.GetStationSummaryStats(request).ToReportDataTable(request, request.SearchKey)));
 }