diff --git a/StockManMVC/Controllers/ItemFluxesController.cs b/StockManMVC/Controllers/ItemFluxesController.cs index a847326..445a538 100644 --- a/StockManMVC/Controllers/ItemFluxesController.cs +++ b/StockManMVC/Controllers/ItemFluxesController.cs @@ -201,7 +201,13 @@ namespace StockManMVC.Controllers ViewBag.LocationID = new SelectList(db.Location.Where(o => o.LocType.IsStock), "ID", "Descr"); ViewBag.MovTypeID = new SelectList(db.MovType, "ID", "Descr", MovTypeID); ViewBag.ItemID = new SelectList(db.Item, "ID", "Descr", ItemID); - ViewBag.enabEditVal= true; + ViewBag.enabEditVal = true; + // preparo query degli scaffali ammissibili + // recupero SOLO gli scaffali ammissibili + var query = db.Location.Where(o => o.LocType.IsStock).Join(db.ItemStock.Where(s => s.ItemID == ItemID), + l => l.ID, + s => s.LocationID, + (l, s) => new { l.ID, l.Descr }); // in base al tipo di mov richiesto determino cosa mostrare... switch (MovTypeID) { @@ -217,6 +223,10 @@ namespace StockManMVC.Controllers ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsFor), "ID", "Descr"); break; case "SCAR": + if (query.Count() > 0) + { + ViewBag.LocationID = new SelectList(query, "ID", "Descr"); + } ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsCli), "ID", "Descr"); ViewBag.enabEditVal = false; break; @@ -229,6 +239,10 @@ namespace StockManMVC.Controllers ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsFor), "ID", "Descr"); break; case "RETT": + if (query.Count() > 0) + { + ViewBag.LocationID = new SelectList(query, "ID", "Descr"); + } ViewBag.ExtLocationID = new SelectList(db.Location, "ID", "Descr"); ViewBag.enabEditVal = false; break; diff --git a/StockManMVC/bin/StockManMVC.dll b/StockManMVC/bin/StockManMVC.dll index 3fcd93e..57031d0 100644 Binary files a/StockManMVC/bin/StockManMVC.dll and b/StockManMVC/bin/StockManMVC.dll differ