public ActionResult Edit(VendorEditViewModel viewModel) { try { if (ModelState.IsValid) { using (var context = dataContextFactory.CreateByUser()) { Vendor vendor = (from v in context.Vendors where v.ObjectId == viewModel.Vendor.ObjectId select v).FirstOrDefault(); viewModel.ToEntity(vendor); context.SaveChanges(); } return(RedirectToAction("Index")); } else { return(View(viewModel)); } } catch { throw; } }
public async Task <bool> Update(VendorEditViewModel vendor) { try { if (vendor.ProductIds.Count >= 1) { foreach (int id in vendor.ProductIds) { var productVendor = new ProductVendorViewModel { VendorId = vendor.Id, ProductId = id }; var mappedToDomain = this.Mapper.Map <ProductVendor>(productVendor); this.DbContext.ProductVendor.Add(mappedToDomain); } } var mapped = this.Mapper.Map <Vendor>(vendor); DbContext.Vendors.Update(mapped); DbContext.Entry(vendor).State = EntityState.Modified; await DbContext.SaveChangesAsync(); return(true); } catch (DbUpdateConcurrencyException ex) { throw ex; } }
/// <summary> /// Edit a single vendor /// </summary> /// <param name="key">GUID of vendor to edit</param> /// <returns>Edit vendor view</returns> public ActionResult Edit(Guid key) { using (var context = dataContextFactory.CreateByUser()) { var vendorQuery = from v in context.Vendors where v.ObjectId == key select v; var countryQuery = from c in context.Countries select c; VendorEditViewModel viewModel = new VendorEditViewModel(vendorQuery.FirstOrDefault(), countryQuery.ToList()); return(View(viewModel)); } }
public void NotSaveToDatabaseWithModelError() { _mockVendorRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(_vendor1); var model = new VendorEditViewModel(); _sut = new VendorsController(_mockVendorRepo.Object); _sut.ModelState.AddModelError("x", "Test Error"); _sut.EditVendor(1, model); _mockVendorRepo.Verify(x => x.Commit(), Times.Never); }
public void CommitToDatabaseWithValidVendorEdit() { _mockVendorRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(_vendor2); var model = new VendorEditViewModel() { VendorName = "New Name", VendorNumber = 201, Description = "New Description", Status = VendorStatus.NonTaxable }; _sut = new VendorsController(_mockVendorRepo.Object); _sut.EditVendor(1, model); _mockVendorRepo.Verify(x => x.Commit(), Times.Once); }
public async Task <IActionResult> Edit(int id, [FromBody] VendorEditViewModel vendor) { var vendorResult = await this.service.GetVendorById <VendorEditViewModel>(id); if (vendorResult != null) { var isEdited = await this.service.Update(vendor); if (isEdited) { return(this.Ok(vendor)); } return(this.BadRequest(vendor)); } return(this.NotFound()); }
public async Task <IActionResult> Update(string uid, [FromBody] VendorEditViewModel input) { var user = User.GetDetails(); var vendor = await _unitOfWork.Vendors.SingleAsync(input.Uid); vendor.Update(input.Name, input.ContactPerson, input.IsCompositeTaxable, input.Status, input.ProprietorName, user.Id); vendor.SetContactDetailsAndIdentity(input.MobileNo, input.LandlineNo, input.PANNo, input.PANHolderName, input.AadharNo); vendor.SetVendorTypeAndStatus(input.VendorType, input.VendorStatus); if (await _unitOfWork.Vendors.AnyAsync(vendor)) { return(BadRequest("Vendor Already Exists.")); } _unitOfWork.Vendors.Update(vendor); await _unitOfWork.CompleteAsync(user.Id); return(Ok(vendor)); }
public IActionResult EditVendor(int id, VendorEditViewModel model) { var vendor = _vendorRepo.GetById(id); if (ModelState.IsValid) { vendor.VendorName = model.VendorName; vendor.VendorNumber = model.VendorNumber; vendor.Description = model.Description; vendor.Status = model.Status; _vendorRepo.Commit(); return(RedirectToAction("Index")); } ViewData["Vendor"] = vendor; return(View(model)); }