From 5ac45a78283f0613caba1ee35a230a90aa682d35 Mon Sep 17 00:00:00 2001 From: "Samuele E. Locatelli" Date: Wed, 21 Sep 2016 14:37:33 +0200 Subject: [PATCH] versione ocn edit OK ...prima delel modifiche che scombinano del tutto il DB...) --- StockManMVC/App_Start/RouteConfig.cs | 5 ++ StockManMVC/Controllers/StocksController.cs | 8 ++-- StockManMVC/Models/Metadata.cs | 45 ++++++++++++++++++ StockManMVC/Models/PartialClasses.cs | 22 +++++++++ StockManMVC/StockManMVC.csproj | 2 + StockManMVC/Views/Stocks/Index.cshtml | 49 ++++++++++---------- StockManMVC/bin/StockManMVC.dll | Bin 47104 -> 49664 bytes 7 files changed, 103 insertions(+), 28 deletions(-) create mode 100644 StockManMVC/Models/Metadata.cs create mode 100644 StockManMVC/Models/PartialClasses.cs diff --git a/StockManMVC/App_Start/RouteConfig.cs b/StockManMVC/App_Start/RouteConfig.cs index 3a75ebf..f0c49a2 100644 --- a/StockManMVC/App_Start/RouteConfig.cs +++ b/StockManMVC/App_Start/RouteConfig.cs @@ -18,6 +18,11 @@ namespace StockManMVC url: "{controller}/{action}/{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); + routes.MapRoute( + name: "Stocks", + url: "{controller}/{action}/{id}/{LocationID}", + defaults: new { controller = "Stocks", action = "Detail", id = UrlParameter.Optional, LocationID = UrlParameter.Optional } + ); } } } diff --git a/StockManMVC/Controllers/StocksController.cs b/StockManMVC/Controllers/StocksController.cs index 67d7bea..0836a9b 100644 --- a/StockManMVC/Controllers/StocksController.cs +++ b/StockManMVC/Controllers/StocksController.cs @@ -22,13 +22,13 @@ namespace StockManMVC.Controllers } // GET: Stocks/Details/5 - public ActionResult Details(int? id) + public ActionResult Details(int? id, string LocationID) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } - Stock stock = db.Stock.Find(id); + Stock stock = db.Stock.Find(id, LocationID); if (stock == null) { return HttpNotFound(); @@ -64,13 +64,13 @@ namespace StockManMVC.Controllers } // GET: Stocks/Edit/5 - public ActionResult Edit(int? id) + public ActionResult Edit(int? id, string LocationID) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } - Stock stock = db.Stock.Find(id); + Stock stock = db.Stock.Find(id,LocationID); if (stock == null) { return HttpNotFound(); diff --git a/StockManMVC/Models/Metadata.cs b/StockManMVC/Models/Metadata.cs new file mode 100644 index 0000000..38a348f --- /dev/null +++ b/StockManMVC/Models/Metadata.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Web; + +namespace StockManMVC.Models +{ + public class ItemsMetadata + { + [StringLength(250)] + [Display(Name = "Descrizione Articolo")] + public string Descr; + + [StringLength(50)] + [Display(Name = "Famiglia Articolo")] + public string Family; + + [StringLength(250)] + [Display(Name = "Descrizione Articolo Ext")] + public string DescrExt; + + [StringLength(250)] + [Display(Name = "Cod Articolo Ext")] + public string CodExt; + + [StringLength(50)] + [Display(Name = "Cod Articolo Int")] + public string CodInt; + + } + + public class StocksMetadata + { + [DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)] + [DataType(DataType.Date)] + public Nullable dtLastUpd; + } + + //public class EnrollmentMetadata + //{ + // [Range(0, 4)] + // public Nullable Grade; + //} +} \ No newline at end of file diff --git a/StockManMVC/Models/PartialClasses.cs b/StockManMVC/Models/PartialClasses.cs new file mode 100644 index 0000000..24b58f8 --- /dev/null +++ b/StockManMVC/Models/PartialClasses.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Web; + +namespace StockManMVC.Models +{ + [MetadataType(typeof(ItemsMetadata))] + public partial class Items + { + } + [MetadataType(typeof(StocksMetadata))] + public partial class Stocks + { + } + + //[MetadataType(typeof(EnrollmentMetadata))] + //public partial class Enrollment + //{ + //} +} \ No newline at end of file diff --git a/StockManMVC/StockManMVC.csproj b/StockManMVC/StockManMVC.csproj index 87652c8..7eeca64 100644 --- a/StockManMVC/StockManMVC.csproj +++ b/StockManMVC/StockManMVC.csproj @@ -172,9 +172,11 @@ SMModel.tt + SMModel.tt + True True diff --git a/StockManMVC/Views/Stocks/Index.cshtml b/StockManMVC/Views/Stocks/Index.cshtml index fadbe95..9eaad7a 100644 --- a/StockManMVC/Views/Stocks/Index.cshtml +++ b/StockManMVC/Views/Stocks/Index.cshtml @@ -29,29 +29,30 @@ -@foreach (var item in Model) { - - - @Html.DisplayFor(modelItem => item.QtyConf) - - - @Html.DisplayFor(modelItem => item.Note) - - - @Html.DisplayFor(modelItem => item.dtLastUpd) - - - @Html.DisplayFor(modelItem => item.Location.Descr) - - - @Html.DisplayFor(modelItem => item.Items.Descr) - - - @Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) | - @Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) | - @Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ }) - - -} + @foreach (var item in Model) + { + + + @Html.DisplayFor(modelItem => item.QtyConf) + + + @Html.DisplayFor(modelItem => item.Note) + + + @Html.DisplayFor(modelItem => item.dtLastUpd) + + + @Html.DisplayFor(modelItem => item.Location.Descr) + + + @Html.DisplayFor(modelItem => item.Items.Descr) + + + @Html.ActionLink("Edit", "Edit", new { id = item.ItemID, LocationID = item.LocationID }) | + @Html.ActionLink("Details", "Details", new { id = item.ItemID, LocationID = item.LocationID }) | + @Html.ActionLink("Delete", "Delete", new { id = item.ItemID, LocationID = item.LocationID }) + + + } diff --git a/StockManMVC/bin/StockManMVC.dll b/StockManMVC/bin/StockManMVC.dll index 2d92521e0bccbe6eef3bac63591efd305a15b11b..fd9c1a58b91fa53dc8fa24583bf424e8f5533d58 100644 GIT binary patch literal 49664 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 literal 47104 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