public async Task <IActionResult> Put(int id, [FromBody] ProductForSubscriptionViewModel productForSubscriptionVm) { if (productForSubscriptionVm == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var dbItem = await _productForSubscriptionRepository.GetSingleAsync(id); if (dbItem == null) { return(NotFound()); } Mapper.Map(productForSubscriptionVm, dbItem); _productForSubscriptionRepository.SetPrice(dbItem); dbItem.SetModification(UserName); _productForSubscriptionRepository.Update(dbItem); if (!await UnitOfWork.SaveAsync()) { return(StatusCode(500, "保存时出错")); } var vm = Mapper.Map <ProductForSubscriptionViewModel>(dbItem); return(Ok(vm)); }
public async Task <IActionResult> Post([FromBody] ProductForSubscriptionViewModel productForSubscriptionVm) { if (productForSubscriptionVm == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var newItem = Mapper.Map <ProductForSubscription>(productForSubscriptionVm); _productForSubscriptionRepository.SetPrice(newItem); newItem.SetCreation(UserName); _productForSubscriptionRepository.Add(newItem); if (!await UnitOfWork.SaveAsync()) { return(StatusCode(500, "保存时出错")); } var vm = Mapper.Map <ProductForSubscriptionViewModel>(newItem); return(CreatedAtRoute("GetProductForSubscription", new { id = vm.Id }, vm)); }