public ActionResult AnalysisView(WagonBatch batch)
        {
            if (batch.WagonAnalysisID != null)
            {
                try
                {
                    batch.WagonAnalysis = _cdb.WagonAnalyzes.Where(x => x.ID == batch.WagonAnalysisID).FirstOrDefault();
                }
                catch
                {
                }
            }

            @ViewBag.Title = "Данные проведенного анализа для вагонных весов";
            return(View(batch));
        }
        public ActionResult Index(int page = 1)
        {
            string userName = User.Identity.Name ?? "";
            int    pagesize = 20;

            var wagonScales      = EquipmentProvider.GetUserAuthorizedEquipment <WagonScale>(_cdb, User.Identity);
            var wagonScalesArray = wagonScales.Select(x => x.ID).ToArray();
            var transfers        = _cdb.WagonTransfers.Where(t => wagonScalesArray.Contains((int)t.EquipID))
                                   .Where(v => v.IsValid).Where(d => d.TransferTimeStamp >= DbFunctions.AddDays(System.DateTime.Now, -2));

            transfers.OrderByDescending(o => o.TransferTimeStamp);
            var groups = transfers.GroupBy(l => l.LotName).ToList();
            List <WagonBatch> batches = new List <WagonBatch>();

            foreach (var g in groups)
            {
                WagonBatch batch = new WagonBatch();
                float      netto = transfers.Where(b => b.LotName == g.Key.ToString()).Sum(s => s.Brutto) - transfers.Where(b => b.LotName == g.Key.ToString()).Sum(s => s.Tare);

                batch.LotName           = g.Key.ToString();
                batch.TransferTimeStamp = g.First().TransferTimeStamp;
                batch.WagonQuantity     = g.Count();
                batch.FromDest          = g.First().FromDest.LocationName;
                batch.ToDest            = g.First().ToDest;
                batch.Item            = g.First().Item.Name;
                batch.Netto           = netto;
                batch.WagonAnalysisID = g.First().AnalysisID;
                batch.WagonAnalysis   = g.First().Analysis;

                batches.Add(batch);
            }

            @ViewBag.Title = "Анализы для вагонных весов";

            return(View(new WagonBatchView
            {
                WagonBatches = batches.ToPagedList(page, pagesize),
                CanEdit = CtsAuthorizeProvider.CanEditUser(User.Identity),
                CanDelete = CtsAuthorizeProvider.CanDeleteUser(User.Identity)
            }));
        }