private void btnPay_Click(object sender, EventArgs e) { //결제끝 Sell s = Sell.Load(); frmPayment fm = (frmPayment)Owner; if (tboxBit.Text == "") { tboxReceive.Text = tboxTotal.Text; tboxBit.Text = "0"; tboxChange.Text = "0"; } if (decimal.Parse(tboxBit.Text) == 0) { con = DBcontroller.Instance(); s.Cashmoney = s.Cashmoney + int.Parse(tboxReceive.Text); fm.T1.Text = "0"; fm.T2.Text = "0"; //payList fm.T3.Text = "0"; fm.T4.Text = "0"; fm.T5.Text = "0"; int type = 1; if (s.Pointmoney != 0) { type = 3; } try { con.Open(); using (var cmd = new SqlCommand("InsertSell", con)) { cmd.CommandType = CommandType.StoredProcedure; if (s.ClientID == null) { cmd.Parameters.AddWithValue("@memberNum", DBNull.Value); } else { cmd.Parameters.AddWithValue("@memberNum", int.Parse(s.ClientID)); } cmd.Parameters.AddWithValue("@sellDate", DateTime.Now); cmd.Parameters.AddWithValue("@clientNum", s.Ages); cmd.Parameters.AddWithValue("@methodNum", type); cmd.Parameters.AddWithValue("@totalMoney", s.Tot); cmd.Parameters.AddWithValue("@receiveCash", s.Cashmoney); cmd.Parameters.AddWithValue("@receiveCard", s.Cardmoeny); cmd.Parameters.AddWithValue("@receivePoint", s.Pointmoney); cmd.Parameters.AddWithValue("@note", s.Sale.ToString()); cmd.Parameters.AddWithValue("@savePoint", s.SavePoint); cmd.Parameters.AddWithValue("@empNum", s.EmpId); cmd.Parameters.AddWithValue("@card", DBNull.Value); cmd.Parameters.AddWithValue("@preturn", DBNull.Value); cmd.Parameters.AddWithValue("@returnReason", DBNull.Value); cmd.ExecuteNonQuery(); } fm.T2.Text = "************이전 정보 \r\n"; fm.T2.Text += "현금 결제 : " + tboxTotal.Text + "원\r\n"; fm.T2.Text += "카드 결제 : " + s.Cardmoeny + "원\r\n"; fm.T2.Text += "포인트 결제 : " + s.Pointmoney + "원\r\n"; con.Close(); con.Open(); foreach (DataRow row in fm.Ss.Rows) { using (var ccmd = new SqlCommand("InsertSellInfo", con)) { ccmd.CommandType = CommandType.StoredProcedure; decimal salesquantity = 0; decimal tot = -1 * int.Parse(row["할인"].ToString()); salesquantity = tot / decimal.Parse(row["단가"].ToString()); ccmd.Parameters.AddWithValue("@barcode", row["바코드"].ToString()); ccmd.Parameters.AddWithValue("@quantity", row["수량"].ToString()); ccmd.Parameters.AddWithValue("@salesquantity", tot); ccmd.ExecuteNonQuery(); } } if (s.ClientID != null) { using (var ccmd = new SqlCommand("UpdatePoint", con)) { MessageBox.Show(s.ClientID.ToString()); ccmd.CommandType = CommandType.StoredProcedure; ccmd.Parameters.AddWithValue("@phone", s.Phone); ccmd.Parameters.AddWithValue("@point", s.SavePoint); ccmd.ExecuteNonQuery(); } using (var ccmd = new SqlCommand("SelectMemberGrade", con)) { MessageBox.Show("Test"); ccmd.CommandType = CommandType.StoredProcedure; ccmd.Parameters.AddWithValue("@phone", s.Phone); ccmd.ExecuteNonQuery(); } } foreach (DataRow row in fm.Ss.Rows) { using (var ccmd = new SqlCommand("UpdateProducts", con)) { ccmd.CommandType = CommandType.StoredProcedure; ccmd.Parameters.AddWithValue("@barcode", row["바코드"].ToString()); ccmd.Parameters.AddWithValue("@quantity", row["수량"].ToString()); if (ccmd.ExecuteNonQuery() != 1) { MessageBox.Show("상품 재고 업데이트 에러"); } } } Sell.Clear(); fm.Ss.Clear(); con.Close(); this.Dispose(); } catch (Exception msg) { con.Close(); MessageBox.Show(msg.Message); } } //복합결제 else { s.Cashmoney = int.Parse(tboxReceive.Text); fm.T5.Text = (int.Parse(fm.T5.Text) - int.Parse(tboxReceive.Text)).ToString(); fm.T2.Text = "************이전 정보 \r\n"; fm.T2.Text += "현금 결제 : " + s.Cashmoney + "원\r\n"; fm.T2.Text += "카드 결제 : " + s.Cardmoeny + "원\r\n"; fm.T2.Text += "포인트 결제 : " + s.Pointmoney + "원\r\n"; this.Dispose(); } }