fix editing dei flussi: elenchi ammissibili correttamente filtrati come in creazione..
This commit is contained in:
@@ -439,50 +439,62 @@ namespace StockManMVC.Controllers
|
||||
{
|
||||
return HttpNotFound();
|
||||
}
|
||||
// calcolo sfondo!
|
||||
// recupero SOLO gli scaffali ammissibili
|
||||
var query = db.Location.Where(o => o.LocType.IsStock).Join(db.ItemStock.Where(s => s.ItemID == itemFlux.ItemID),
|
||||
l => l.ID,
|
||||
s => s.LocationID,
|
||||
(l, s) => new { l.ID, l.Descr });
|
||||
// calcolo sfondo e location ammesse da vari casi tipo movimento
|
||||
string CurrStyle = "";
|
||||
ViewBag.LocationID = new SelectList(db.Location, "ID", "Descr", itemFlux.LocationID);
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location, "ID", "Descr", itemFlux.ExtLocationID);
|
||||
switch (itemFlux.MovTypeID)
|
||||
{
|
||||
case "CAR":
|
||||
// per partire scelgo la posizione di default ric ordini
|
||||
string stdLocationId = "RIC-ORD";
|
||||
ViewBag.LocationID = new SelectList(db.Location.Where(o => o.LocType.IsStock), "ID", "Descr", stdLocationId);
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsFor), "ID", "Descr");
|
||||
ViewBag.LocationID = new SelectList(db.Location.Where(o => o.LocType.IsStock), "ID", "Descr", itemFlux.LocationID);
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsFor), "ID", "Descr", itemFlux.ExtLocationID);
|
||||
CurrStyle = "bg-success";
|
||||
break;
|
||||
case "SCAR":
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsCli), "ID", "Descr");
|
||||
if (query.Count() > 0)
|
||||
{
|
||||
ViewBag.LocationID = new SelectList(query, "ID", "Descr");
|
||||
}
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsCli), "ID", "Descr", itemFlux.ExtLocationID);
|
||||
ViewBag.enabEditVal = false;
|
||||
CurrStyle = "bg-danger";
|
||||
break;
|
||||
case "MOV":
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsStock), "ID", "Descr");
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsStock), "ID", "Descr", itemFlux.ExtLocationID);
|
||||
ViewBag.enabEditVal = false;
|
||||
CurrStyle = "bg-primary";
|
||||
break;
|
||||
case "OFOR":
|
||||
ViewBag.LocationID = new SelectList(db.Location.Where(o => o.LocType.IsStock), "ID", "Descr", "RIC-ORD");
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsFor), "ID", "Descr");
|
||||
ViewBag.LocationID = new SelectList(db.Location.Where(o => o.LocType.IsStock), "ID", "Descr", itemFlux.LocationID);
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location.Where(o => o.LocType.IsFor), "ID", "Descr", itemFlux.ExtLocationID);
|
||||
CurrStyle = "bg-info";
|
||||
break;
|
||||
case "RETT":
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location, "ID", "Descr");
|
||||
if (query.Count() > 0)
|
||||
{
|
||||
ViewBag.LocationID = new SelectList(query, "ID", "Descr");
|
||||
}
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location, "ID", "Descr", itemFlux.ExtLocationID);
|
||||
ViewBag.enabEditVal = false;
|
||||
CurrStyle = "bg-warning";
|
||||
break;
|
||||
case "ND":
|
||||
default:
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location, "ID", "Descr");
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location, "ID", "Descr", itemFlux.ExtLocationID);
|
||||
CurrStyle = "bg-default";
|
||||
break;
|
||||
}
|
||||
// altri valori in viewbag
|
||||
ViewBag.CurrStyle = CurrStyle;
|
||||
ViewBag.LocationID = new SelectList(db.Location, "ID", "Descr", itemFlux.LocationID);
|
||||
ViewBag.MovTypeID = new SelectList(db.MovType, "ID", "Descr", itemFlux.MovTypeID);
|
||||
ViewBag.ItemID = new SelectList(db.Item, "ID", "Descr", itemFlux.ItemID);
|
||||
ViewBag.OperatorID = new SelectList(db.Operator, "ID", "CodExt", itemFlux.OperatorID);
|
||||
ViewBag.ExtLocationID = new SelectList(db.Location, "ID", "Descr", itemFlux.ExtLocationID);
|
||||
if (mode == "std")
|
||||
{
|
||||
return PartialView(itemFlux);
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user