public async Task <IActionResult> Change([FromBody] ProductOptionDto productOptionDto) { ProductOption productOption = await productOptionRepository.GetProductOption(productOptionDto.Id); if (productOption.PublicId != productOptionDto.PublicId) { if (await productOptionRepository.GetProductOption(productOptionDto.PublicId) != null) { return(StatusCode(StatusCodes.Status500InternalServerError, $"ProductOption with this PublicId == {productOptionDto.PublicId} already exists")); } productOption.SetPublicId(productOptionDto.PublicId); } productOption.SetAccountingName(productOptionDto.AccountingName); productOption.SetIsMultiple(productOptionDto.IsMultiple); productOption.SetName(productOptionDto.Name); productOption.SetNomenclatureId(productOptionDto.NomenclatureId); productOption.SetProductId(productOptionDto.ProductId); await productOptionRepository.Update(productOption); await unitOfWork.SaveEntitiesAsync(); return(Ok()); }