public ActionResult CreatePurchaseRequestItem(long purchaseRequestId) { //need to get purchaseRequest here to assign to new purchaseRequestItem //so when mapping to Model, we will have StoreId as defined //in AutoMapper configuration var purchaseRequest = _purchaseRequestRepository.GetById(purchaseRequestId); var maxSequence = purchaseRequest.PurchaseRequestItems.Max(p => p.Sequence) ?? 0; var purchaseRequestItem = new PurchaseRequestItem { IsNew = true, PurchaseRequest = purchaseRequest, Sequence = maxSequence + 1 }; _purchaseRequestItemRepository.Insert(purchaseRequestItem); this._dbContext.SaveChanges(); var model = new PurchaseRequestItemModel(); model = purchaseRequestItem.ToModel(); var html = this.PurchaseRequestItemPanel(model); return(Json(new { Id = purchaseRequestItem.Id, Html = html })); }
public ActionResult SavePurchaseRequestItem(PurchaseRequestItemModel model) { if (ModelState.IsValid) { var purchaseRequestItem = _purchaseRequestItemRepository.GetById(model.Id); //always set IsNew to false when saving purchaseRequestItem.IsNew = false; purchaseRequestItem = model.ToEntity(purchaseRequestItem); _purchaseRequestItemRepository.UpdateAndCommit(purchaseRequestItem); return(new NullJsonResult()); } else { return(Json(new { Errors = ModelState.Errors().ToHtmlString() })); } }
public string PurchaseRequestItemPanel(PurchaseRequestItemModel model) { var html = this.RenderPartialViewToString("_LineItemDetails", model); return(html); }