I have the following problem, when I place an order in the quantity field when I put a certain number I have to get it if it is in stock in the bank, and if I have to decrease the quantity in the bank, I do not know how to pass the value of the view to my controler check this out.
@using (Html.BeginForm()) { @Html.AntiForgeryToken()
<div class="form-horizontal">
<h4>Pedido</h4>
<hr /> @Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div class="form-group">
<label class="control-label col-md-2" for="Pedido_ProdutoId">Cliente</label>
<div class="col-md-10">
@Html.DropDownList("ClienteId", null, htmlAttributes: new { @class = "form-control" }) @Html.ValidationMessageFor(model => model.Pedido.ClienteId, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
<label class="control-label col-md-2" for="Pedido_ProdutoId">Produto</label>
<div class="col-md-10">
@Html.DropDownList("ProdutoId", null, htmlAttributes: new { @class = "form-control" }) @Html.ValidationMessageFor(model => model.Pedido.ProdutoId, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.Pedido.Quantidade, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Pedido.Quantidade, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.Pedido.Quantidade, "", new { @class = "text-danger" })
</div>
</div>
@*
<div class="form-group">
@Html.LabelFor(model => model.Pedido.PrecoUnidade, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Pedido.PrecoUnidade, new { htmlAttributes = new { @class = "form-control" } }) @Html.ValidationMessageFor(model => model.Pedido.PrecoUnidade, "", new { @class = "text-danger" })
</div>
</div>*@
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default" />
</div>
</div>
</div>
}
// GET: Pedidos/Create
public ActionResult Create()
{
Db db = new Db();
ViewBag.ClienteId = new SelectList(db.Cliente, "Id", "Nome");
ViewBag.ProdutoId = new SelectList(db.Produto, "Id", "Nome");
return View();
}
// POST: Pedidos/Create
[HttpPost]
public ActionResult Create(PedidoVM model)
{
ViewBag.ClienteId = new SelectList(db.Cliente, "Id", "Nome");
ViewBag.ProdutoId = new SelectList(db.Produto, "Id", "Nome");
db.Pedido.Add(model.Pedido);
db.SaveChanges();
return View(model);
}
Stocking
[Table("Estoque")]
public class Estoque
{
[Key]
public int Id { get; set; }
public int DepositoId { get; set; }
public int ProdutoId { get; set; }
public int Quantidade { get; set; }
[ForeignKey("DepositoId")]
public virtual Deposito Deposito { get; set; }
[ForeignKey("ProdutoId")]
public virtual Produto Produto { get; set; }
}
Order:
[Table("Pedido")]
public class Pedido
{
public int Id { get; set; }
public int ClienteId { get; set; }
public int ProdutoId { get; set; }
public string Quantidade { get; set; }
public decimal PrecoUnidade { get; set; }
[ForeignKey("ProdutoId")]
public virtual Produto Produto { get; set; }
[ForeignKey("ClienteId")]
public virtual Cliente Cliente { get; set; }
}