COMPLETATO SPOSTAMENTO (anche parziale!!!) x MOVE...

This commit is contained in:
Samuele E. Locatelli (WEB DEV)
2016-09-29 23:03:16 +02:00
parent a2638f2b98
commit 7ba4cfda07
20 changed files with 135 additions and 110 deletions
+19 -28
View File
@@ -52,37 +52,16 @@ namespace StockManMVC.Controllers
// GET: MagStatus/MoveConfirm
public ActionResult MoveConfirm(int ID, string LocationID, string LocationIDTo)
{
var CurrStock = db.ItemStock
.Where(s => s.ID == ID)
.Include(v => v.Location)
.Include(s => s.Item);
ItemStock itemStock = db.ItemStock.Find(ID);
ViewBag.LocationID = LocationID;
ViewBag.LocationIDTo = LocationIDTo;
return PartialView("_confirmMove", CurrStock.ToList());
return PartialView("_confirmMove", itemStock);
}
// GET: MagStatus/StockByLocationAjax
[HttpGet]
public ActionResult StockByLocationAjax(string LocationID, string LocationIDTo, bool? ShowMove)
{
var CurrStock = db.ItemStock
.Where(s => s.QtyConf > 0 && s.LocationID == LocationID)
.Include(v => v.Location)
.Include(s => s.Item);
if (ShowMove == null) ShowMove = false;
ViewBag.LocationID = LocationID;
ViewBag.LocationIDTo = LocationIDTo;
ViewBag.ShowMove = ShowMove;
return PartialView("_StockByLocation", CurrStock.ToList());
}
public ActionResult Move(int ID, string LocationID, string LocationIDTo, int QtyConf)
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult MoveConfirm(int ID, string LocationID, string LocationIDTo, [Bind(Include = "QtyConf")] ItemStock itemSt)
{
// recupero operatore...
IEnumerable<Operator> listOper = OperatorsController.Select(User.Identity.Name);
@@ -93,10 +72,22 @@ namespace StockManMVC.Controllers
}
// chiamo la stored x il move
int rowMod = 0;
using (var ctx = new StockManEntities())
{
// esegue stored procedure come function, SE id == 0 processa TUTTI...
int rowMod = ctx.stp_ItemStockMove(ID, LocationID, LocationIDTo, currOperID);
// recupero itemStock riferimento
ItemStock itmStock = ctx.ItemStock.Find(ID);
// se ho quantità != completa --> uso altra stored...
if (itemSt.QtyConf != itmStock.QtyConf)
{
// esegue stored procedure come function che cambia e sposta qta paziali
rowMod = ctx.stp_ItemStockMove_New(ID, LocationID, LocationIDTo, currOperID, itemSt.QtyConf);
}
else
{
// esegue stored procedure come function, sposta TUTTO
rowMod = ctx.stp_ItemStockMove(ID, LocationID, LocationIDTo, currOperID);
}
}
// appoggio variabili