public async Task <Article> DeleteArticleAsync(int articleId) { Article article = await _context.Articles.FirstOrDefaultAsync(s => s.Id == articleId); InternalArticleInformation internalInfo = null; ArticleInformation articleInfo = null; if (article != null) { internalInfo = await _context.InternalArticleInformations.FirstOrDefaultAsync(i => i.Id == article.InternalArticleInformationId); articleInfo = await _context.ArticleInformations.FirstOrDefaultAsync(a => a.Id == article.ArticleInformationId); } if (article != null && internalInfo != null && articleInfo != null) { _context.Articles.Remove(article); await _context.SaveChangesAsync(); _context.ArticleInformations.Remove(articleInfo); await _context.SaveChangesAsync(); _context.InternalArticleInformations.Remove(internalInfo); await _context.SaveChangesAsync(); return(article); } return(null); }
public async Task <InternalArticleInformation> AddInternalArticleInformation(InternalArticleInformation internalArticle) { var result = await _context.InternalArticleInformations.AddAsync(internalArticle); await _context.SaveChangesAsync(); return(result.Entity); }
public async Task <ActionResult <InternalArticleInformation> > UpdateInternalArticleInformation(int id, InternalArticleInformation internalArticleInformation) { try { if (id != internalArticleInformation.Id) { return(BadRequest()); } var internalArticleInformationToUpdate = await _internalArticleInformationRepository.GetInternalArticleInformation(id); if (internalArticleInformationToUpdate == null) { return(NotFound($"InternalArticleInformation with id = {id} not found")); } return(await _internalArticleInformationRepository.UpdateInternalArticleInformation(internalArticleInformation)); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, "Error retrieving data from the database.")); } }
public async Task UpdateInternalArticleInformation(int id, InternalArticleInformation internalArticleInformation) { await httpClient.PutAsJsonAsync($"/api/internalArticleInformations/{id}", internalArticleInformation); }
public async Task <InternalArticleInformation> UpdateInternalArticleInformation(InternalArticleInformation internalArticle) { var resultInternalArticleInformation = await _context.InternalArticleInformations .Include(s => s.Sapplants) .Include(q => q.Qips) .Include(b => b.Bundles) .FirstOrDefaultAsync(s => s.Id == internalArticle.Id); if (resultInternalArticleInformation != null) { resultInternalArticleInformation.Bosnumber = internalArticle.Bosnumber; resultInternalArticleInformation.Carlanumber = internalArticle.Carlanumber; resultInternalArticleInformation.ClassificationCode = internalArticle.ClassificationCode; resultInternalArticleInformation.CompanyCode = internalArticle.CompanyCode; resultInternalArticleInformation.CurrencyRate = internalArticle.CurrencyRate; resultInternalArticleInformation.DepartmentId = internalArticle.DepartmentId; resultInternalArticleInformation.AmountInForeignCurrency = internalArticle.AmountInForeignCurrency; resultInternalArticleInformation.Eannumber = internalArticle.Eannumber; resultInternalArticleInformation.Grinnumber = internalArticle.Grinnumber; resultInternalArticleInformation.Gtinnumber = internalArticle.Gtinnumber; resultInternalArticleInformation.Iloscategory = internalArticle.Iloscategory; resultInternalArticleInformation.IlosorderPickGroup = internalArticle.IlosorderPickGroup; resultInternalArticleInformation.IlossortGroup = internalArticle.IlossortGroup; resultInternalArticleInformation.InnerPackingIlos = internalArticle.InnerPackingIlos; resultInternalArticleInformation.InsertBosSap = internalArticle.InsertBosSap; resultInternalArticleInformation.InsertEanSap = internalArticle.InsertEanSap; resultInternalArticleInformation.InsertGrinSap = internalArticle.InsertGrinSap; resultInternalArticleInformation.Lrinnumber = internalArticle.Lrinnumber; resultInternalArticleInformation.NewIlosarticleNumber = internalArticle.NewIlosarticleNumber; resultInternalArticleInformation.PackagingGroup = internalArticle.PackagingGroup; resultInternalArticleInformation.PriceInCountryCurrency = internalArticle.PriceInCountryCurrency; resultInternalArticleInformation.PrimaryDcIloscode = internalArticle.PrimaryDcIloscode; resultInternalArticleInformation.ReferenceIlosnumber = internalArticle.ReferenceIlosnumber; resultInternalArticleInformation.ReferenceSapmaterial = internalArticle.ReferenceSapmaterial; resultInternalArticleInformation.RegisterShelfLife = internalArticle.RegisterShelfLife; resultInternalArticleInformation.RemainShelfStore = internalArticle.RemainShelfStore; resultInternalArticleInformation.Sprnnumber = internalArticle.Sprnnumber; resultInternalArticleInformation.SupplierDeliveryUnit = internalArticle.SupplierDeliveryUnit; resultInternalArticleInformation.SupplierIdIlos = internalArticle.SupplierIdIlos; resultInternalArticleInformation.TextPurchaseNumber = internalArticle.TextPurchaseNumber; resultInternalArticleInformation.TransitTimeForHavi = internalArticle.TransitTimeForHavi; resultInternalArticleInformation.VatTaxcode = internalArticle.VatTaxcode; await _context.SaveChangesAsync(); foreach (Sapplant plant in internalArticle.Sapplants) { var resultPlant = await _context.Sapplants.FirstOrDefaultAsync(s => s.Id == plant.Id); if (resultPlant != null) { resultPlant.SapplantName = plant.SapplantName; resultPlant.SapplantValue = plant.SapplantValue; } else { await _context.Sapplants.AddAsync(plant); } await _context.SaveChangesAsync(); } foreach (Qip qip in internalArticle.Qips) { var resultQIP = await _context.Qips.FirstOrDefaultAsync(q => q.Id == qip.Id); if (resultQIP != null) { resultQIP.QipanswerOptions = qip.QipanswerOptions; resultQIP.Qipdescription = qip.Qipdescription; resultQIP.Qipfrequency = qip.Qipfrequency; resultQIP.QipfrequencyType = qip.QipfrequencyType; resultQIP.QiphighBoundary = qip.QiphighBoundary; resultQIP.QiplowBoundary = qip.QiplowBoundary; resultQIP.QipnameNumber = qip.QipnameNumber; resultQIP.Qipokvalue = qip.Qipokvalue; resultQIP.QipsetAnswer = qip.QipsetAnswer; } else { await _context.Qips.AddAsync(qip); } await _context.SaveChangesAsync(); } foreach (Bundle bundle in internalArticle.Bundles) { var resultBundle = await _context.Bundles.FirstOrDefaultAsync(b => b.Id == bundle.Id); if (resultBundle != null) { resultBundle.ArticleBundle = bundle.ArticleBundle; resultBundle.ArticleBundleQuantity = bundle.ArticleBundleQuantity; } else { await _context.Bundles.AddAsync(bundle); } await _context.SaveChangesAsync(); } return(resultInternalArticleInformation); } return(null); }