public static bool Them(clsChiTietHD_DTO CTHD) { using (SqlConnection conn = XuLyDuLieu.MoKetNoi) { string query = "Insert into ChiTietHoaDon(MaCTHD,MaHD,MaCTSP,GiamTru,SoLuong,MaKhuyenMai,TongTien) values (@MaCTHD,@MaHD,@MaCTSP,@GiamTru,@SoLuong,@MaKhuyenMai,@TongTien)"; SqlCommand cmd = new SqlCommand(query, conn); cmd.Parameters.Add("@MaCTHD", SqlDbType.Char).Value = CTHD.MaCTHD; cmd.Parameters.Add("@MaHD", SqlDbType.Char).Value = CTHD.HoaDon.MaHD; cmd.Parameters.Add("@MaCTSP", SqlDbType.Char).Value = CTHD.MaCTSP; cmd.Parameters.Add("@GiamTru", SqlDbType.Money).Value = CTHD.GiamTru; cmd.Parameters.Add("@SoLuong", SqlDbType.Int).Value = CTHD.SoLuong; cmd.Parameters.Add("@MaKhuyenMai", SqlDbType.Int).Value = CTHD.KhuyenMai.MaKhuyenMai; cmd.Parameters.Add("@TongTien", SqlDbType.Money).Value = CTHD.TongTien; cmd.CommandType = CommandType.Text; try { return(cmd.ExecuteNonQuery() >= 1); } catch (SqlException e) { throw e; } } }
public static bool Them(clsChiTietHD_DTO CTHD) { return(clsChiTietHD_DAO.Them(CTHD)); }
private void btnXacNhan_Click(object sender, EventArgs e) { if (khachHang == null) { // Khách hàng mới khachHang = new clsKhachHang_DTO(txtTenKH.Text, txtSDT.Text, Helper.GetTimestamp(DateTime.Now)); clsKhachHang_BUS.Them(khachHang); } hoaDonHienTai = new clsHoaDon_DTO( Helper.GetTimestamp(DateTime.Now), Validation.LayMaNhanVien(), string.IsNullOrWhiteSpace(txtGhiChu.Text) ? "Không" : txtGhiChu.Text, double.Parse(lblGiamTru.Text), double.Parse(lblThanhTien.Text), khachHang, khuyenMai); if (clsHoaDon_BUS.Them(hoaDonHienTai)) { // Chi tiet hoa don foreach (DataRow row in dtSanPham.Rows) { clsKhuyenMai_DTO km = new clsKhuyenMai_DTO ( row["TenKhuyenMai"].ToString(), row["GiamTru"].ToString(), false, null, null, 1, int.Parse(row["MaKhuyenMai"].ToString()) ); clsChiTietHD_DTO cthd = new clsChiTietHD_DTO ( Helper.GetTimestamp(DateTime.Now), row["MaCTSP"].ToString(), double.Parse(row["GiamTru"].ToString()), double.Parse(row["TongTien"].ToString()), int.Parse(row["SoLuong"].ToString()), km, hoaDonHienTai ); if (!clsChiTietHD_BUS.Them(cthd)) { MessageBox.Show("Đã xảy ra lỗi khi tạo chi tiết hóa đơn, vui lòng thử lại hoặc liên hệ Admin để xử lý."); // TODO: Xóa hóa đơn đã tạo ở trên return; } else { // TODO: Giam so luong ton kho trong database if (!clsChiTietSanPham_BUS.CapNhatSoLuong(cthd.MaCTSP, cthd.SoLuong)) { MessageBox.Show("Đã xảy ra lỗi khi cập nhật số lượng, vui lòng thử lại hoặc liên hệ Admin để xử lý."); return; } } int milliseconds = 100; Thread.Sleep(milliseconds); } DialogResult result = MessageBox.Show("Tạo hóa đơn thành công, bạn có muốn In ngay bây giờ?", "Thông báo", MessageBoxButtons.OKCancel); if (result == DialogResult.OK) { In(); } btnIn.Enabled = true; XacNhanHoaDon(false); } else { MessageBox.Show("Thêm hóa đơn thất bại."); } }