/// <summary> /// Get Product /// </summary> /// <param name="accountId"></param> /// <param name="productId"></param> /// <returns></returns> public async Task <ResponseModel <ProductDataTransformation> > GetProduct(int accountId, int productId) { ResponseModel <ProductDataTransformation> returnResponse = new ResponseModel <ProductDataTransformation>(); ProductDataTransformation productDataTransformation = new ProductDataTransformation(); try { _inventoryManagementDataService.OpenConnection(_connectionStrings.PrimaryDatabaseConnectionString); Product product = await _inventoryManagementDataService.GetProduct(accountId, productId); if (product == null) { returnResponse.ReturnStatus = false; returnResponse.ReturnMessage.Add("Product Id not found."); } else { productDataTransformation.AccountId = product.AccountId; productDataTransformation.ProductId = product.ProductId; productDataTransformation.ProductNumber = product.ProductNumber; productDataTransformation.Description = product.Description; productDataTransformation.AverageCost = product.AverageCost; productDataTransformation.BinLocation = product.BinLocation; productDataTransformation.CommittedQuantity = product.CommittedQuantity; productDataTransformation.OnHandQuantity = product.OnHandQuantity; productDataTransformation.OnOrderQuantity = product.OnOrderQuantity; productDataTransformation.UnitPrice = product.UnitPrice; returnResponse.ReturnStatus = true; } } catch (Exception ex) { returnResponse.ReturnStatus = false; returnResponse.ReturnMessage.Add(ex.Message); } finally { _inventoryManagementDataService.CloseConnection(); } returnResponse.Entity = productDataTransformation; return(returnResponse); }