任何人都可以幫助我嗎?我已經處理了幾個月,但我似乎無法找到解決方案。檢查庫存中是否有足夠的庫存
正如標題所說,我需要檢查每個餐點是否有足夠的配料,當我點擊POS中的某一餐時。
我有這些表結構在我的數據庫..
正如你所看到的,炸雞的每一個服務包括以下成分從我的庫存來了。 假設某種成分沒有足夠的庫存,將出現一個消息框,指出庫存中沒有庫存,否則它將被添加到datagridview中。一旦我點擊我的POS中的炸雞,就會發生這種情況。
這裏是我的代碼:
cmd = new MySqlCommand("SELECT * FROM tblmenu", dbConn);
MySqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
Button btn = new Button();
btn.Name = rdr["menuID"].ToString();
btn.BackgroundImage = Image.FromStream(ms);
btn.BackgroundImageLayout = ImageLayout.Stretch;
btn.Width = 120;
btn.Height = 100;
btn.Click += delegate
{
MySqlConnection cnn2 = new MySqlConnection(sqlConn.connString);
cnn2.Open();
cmd = new MySqlCommand("SELECT menuID, menuName, menuPrice, menuCategory FROM tblmenu WHERE menuID = @id", cnn2);
cmd.Parameters.AddWithValue("@id", btn.Name);
MySqlDataReader rdr2 = cmd.ExecuteReader();
if (rdr2.Read() == true)
{
dataGridView1.Rows.Add(rdr2.GetInt32("menuID"), rdr2.GetString("menuName").ToUpper(), 1, rdr2.GetDouble("menuPrice"), rdr2.GetDouble("menuPrice"));
}
};
那麼對於在DataGridView
void quantity_change(object sender, EventArgs e)
{
var row = dataGridView1.CurrentRow;
if (row == null || row.Index < 0)
return;
var unit = (sender == btnAdd) ? 1 : -1;
var quantity = Convert.ToInt32(row.Cells["Quantity"].Value) + unit;
row.Cells["Quantity"].Value = quantity;
var rate = Convert.ToDouble(row.Cells["Price"].Value);
row.Cells["TotalAmount"].Value = quantity * rate;
}
我真的希望有人能幫助我在這裏調整量的功能,因爲這是唯一的事情我需要完成我的項目。
從代碼中獲得的當前輸出是什麼? –
我可以在數據網格中添加菜單/項目,但我真的不知道要使用哪種或哪些方法來檢查庫存中是否仍有足夠的原料。 – LazyPirate
你使用什麼表引擎? InnoDB的? – Shadow