private void addButton_Click(object sender, EventArgs e) { if (priceNumericUpDown.Value == 0) { if (MessageBox.Show( Messages.SALE_PRODUCT_PRICE_EQUAL_CERO, Constants.MESSAGE_CAPTION, MessageBoxButtons.YesNo) != DialogResult.Yes) { return; } } var newSaleProductDto = new SaleProductDto { ColorId = SelectedColorDto.ColorId, ColorName = SelectedColorDto.Name, ModelId = SelectedModelDto.ModelId, ModelName = SelectedModelDto.Name, ModelPhoto = SelectedModelDto.Photo, Price = (double)priceNumericUpDown.Value, Quantity = (int)quantityNumericUpDown.Value, Size = SelectedShoesSize }; CurrentSaleDto.SalesProducts.Add(newSaleProductDto); saleProductDtoBindingSource.Add(newSaleProductDto); saveSalesButton.Enabled = true; removeAllButton.Enabled = true; UpdateToolStripStatus(); UpdateProductsSizeMax(); }
public SaleProductOutDto getSaleProduct([FromBody] SaleProductDto productDto) { WareHouse warehouse = null; if (productDto == null) { var response = new HttpResponseMessage(HttpStatusCode.NotFound) { Content = new StringContent("productDto Parameter doesn't exist."), StatusCode = HttpStatusCode.NotFound }; throw new HttpResponseException(response); } var p = db.Products.Where(a => a.Code == productDto.Code).FirstOrDefault(); if (p == null) { var response = new HttpResponseMessage(HttpStatusCode.NotFound) { Content = new StringContent("product code doesn't exist."), StatusCode = HttpStatusCode.NotFound }; throw new HttpResponseException(response); } else { warehouse = db.WareHouses.Where(a => a.ProductId == p.Id).FirstOrDefault(); if (warehouse == null) { var response = new HttpResponseMessage(HttpStatusCode.NotFound) { Content = new StringContent("product code doesn't exist in the warehouse."), StatusCode = HttpStatusCode.NotFound }; throw new HttpResponseException(response); } else { if (warehouse.AmountWareHouse - productDto.Amount < 0) { var response = new HttpResponseMessage(HttpStatusCode.NotFound) { Content = new StringContent("not enough units available amount: " + warehouse.AmountWareHouse), StatusCode = HttpStatusCode.NotFound }; throw new HttpResponseException(response); } } } SaleProductOutDto product = new SaleProductOutDto() { Amount = productDto.Amount, ProductId = p.Id, ProductName = p.Name, UnitPrice = warehouse.UnitPrice, TotalPrice = warehouse.UnitPrice * productDto.Amount, }; return(product); }