public static List <ChiTietDonHangDTO> SelectChiTietDonHangByMaDonHang(string MaDonHang) { List <SqlParameter> sqlParams = new List <SqlParameter>(); sqlParams.Add(new SqlParameter("@MaDonHang", MaDonHang)); DataTable dataTable = new DataTable(); dataTable = DataProvider.ExecuteReader("usp_SelectChiTietDonHangByMaDonHang", sqlParams); List <ChiTietDonHangDTO> lstctdhDTO = new List <ChiTietDonHangDTO>(); if (dataTable.Rows.Count > 0) { //<ChiTietDonHangDTO> lstctdhDTO = new List<ChiTietDonHangDTO>(); foreach (DataRow dtRow in dataTable.Rows) { ChiTietDonHangDTO ctdhDTO = new ChiTietDonHangDTO(); ctdhDTO.MaChiTietDonHang = dtRow["MaChiTietDonHang"].ToString(); ctdhDTO.MaDonHang = dtRow["MaDonHang"].ToString(); ctdhDTO.MaSanPham = dtRow["MaSanPham"].ToString(); ctdhDTO.CV = int.Parse(dtRow["CV"].ToString()); ctdhDTO.SoLuong = int.Parse(dtRow["SoLuong"].ToString()); ctdhDTO.DonGia = float.Parse(dtRow["DonGia"].ToString()); ctdhDTO.ThanhTien = float.Parse(dtRow["ThanhTien"].ToString()); ctdhDTO.SLDaNhan = int.Parse(dtRow["SLDaNhan"].ToString()); lstctdhDTO.Add(ctdhDTO); //select ct.MaChiTietDonHang, ct.MaDonHang, ct.MaSanPham, ct.CV, ct.SoLuong, ct.DonGia, ct.ThanhTien } } else { lstctdhDTO = null; } return(lstctdhDTO); }
public static bool UpdateChiTietDonHangByMaDonHang(ChiTietDonHangDTO ctdhDTO) { List <SqlParameter> sqlParams = new List <SqlParameter>(); //sqlParams.Add(new SqlParameter("@MaChiTietDonHang", ctdhDTO.MaChiTietDonHang)); sqlParams.Add(new SqlParameter("@MaDonHang", ctdhDTO.MaDonHang)); sqlParams.Add(new SqlParameter("@MaSanPham", ctdhDTO.MaSanPham)); //sqlParams.Add(new SqlParameter("@CV", ctdhDTO.CV)); sqlParams.Add(new SqlParameter("@SoLuong", ctdhDTO.SoLuong)); //sqlParams.Add(new SqlParameter("@DonGia", ctdhDTO.DonGia)); sqlParams.Add(new SqlParameter("@ThanhTien", ctdhDTO.ThanhTien)); //sqlParams.Add(new SqlParameter("@SLDaNhan", ctdhDTO.SLDaNhan)); return(DataProvider.ExecuteNoneQuery("usp_UpdateChiTietDonHangByMaDonHang", sqlParams)); }
private void dtgvDanhSachSanPham_CellClick(object sender, DataGridViewCellEventArgs e) { //lbSoLuong.Text = e.ColumnIndex.ToString(); if (e.ColumnIndex == 2 && e.RowIndex >= 0) { try { ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); ChiTietDonHangDTO ctdhDto = ctdhBus.KiemTraTonTai(_maDH, dtgvDanhSachSanPham_ChiTiet.Rows[e.RowIndex].Cells["MaSanPham"].Value.ToString()); if (ctdhDto.MaChiTietDonHang != 0) { DialogResult result = MessageBox.Show("Bạn có chắc muốn xóa sản phẩm này khỏi đơn hàng hay ko", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { dt.Rows.Remove(dt.Rows[e.RowIndex]); ctdhBus.Delete(ctdhDto.MaChiTietDonHang); } } else { dt.Rows.Remove(dt.Rows[e.RowIndex]); } dtgvDanhSachSanPham_ChiTiet.DataSource = dt; dtgvDanhSachSanPham_DataSourceChanged(sender, e); } catch (System.Exception ex) { MessageBox.Show(ex.Message); } } if (e.ColumnIndex == dtgvDanhSachSanPham_ChiTiet.Columns["CmbSoLuong"].Index && e.RowIndex >= 0) { dtgvDanhSachSanPham_ChiTiet.BeginEdit(true); ComboBox comboBox = (ComboBox)dtgvDanhSachSanPham_ChiTiet.EditingControl; if (comboBox != null) { comboBox.DroppedDown = true; } } }
public static void Update(ChiTietDonHangDTO ctdhDTO) { OleDbConnection connection = DataProvider.CreateConnection(); string cmdText = "Update CHITIETDONHANG Set MauSac = ?, SoLuong = ?, GiaBan = ? Where MaChiTietDonHang = ?"; OleDbCommand command = new OleDbCommand(cmdText, connection); command.Parameters.Add("@MauSac", OleDbType.VarWChar); command.Parameters.Add("@SoLuong", OleDbType.Integer); command.Parameters.Add("@GiaBan", OleDbType.Integer); command.Parameters.Add("@MaChiTietDonHang", OleDbType.Integer); command.Parameters["@MauSac"].Value = ctdhDTO.MauSac; command.Parameters["@SoLuong"].Value = ctdhDTO.SoLuong; command.Parameters["@GiaBan"].Value = ctdhDTO.GiaBan; command.Parameters["@MaChiTietDonHang"].Value = ctdhDTO.MaChiTietDonHang; command.ExecuteNonQuery(); connection.Close(); }
public static ChiTietDonHangDTO KiemTraTonTai(int maDH, string maSP) { OleDbConnection connection = DataProvider.CreateConnection(); string cmdText = "Select * from CHITIETDONHANG where MaSanPham like '%" + maSP + "%' and MaDonHang = " + maDH; OleDbCommand command = new OleDbCommand(cmdText, connection); OleDbDataReader reader = command.ExecuteReader(); ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); while (reader.Read()) { ctdhDto.MaChiTietDonHang = (int)reader["MaChiTietDonHang"]; ctdhDto.SoLuong = (int)reader["SoLuong"]; ctdhDto.MauSac = (string)reader["MauSac"]; ctdhDto.MaSanPham = (string)reader["MaSanPham"]; ctdhDto.GiaBan = (int)reader["GiaBan"]; } reader.Close(); connection.Close(); return(ctdhDto); }
private void HienChiTietDonHang() { ChiTietDonHangBUS chiTietDonHangBUS = new ChiTietDonHangBUS(); ChiTietDonHangDTO chitietdonhang = new ChiTietDonHangDTO(); chitietdonhang.IdDonHang = int.Parse(Request.QueryString["IdDonHang"]); chiTietDonHangBUS._chiTietDonHang = chitietdonhang; try { chiTietDonHangBUS.Select(); } catch { Response.Redirect("Trangloi.aspx"); } gridChiTietDonHang.DataSource = chiTietDonHangBUS.KetQua; gridChiTietDonHang.DataBind(); lblIDGiaoDich.Text = Request.QueryString["MaGiaoDich"]; DonHangDTO donHang = new DonHangDTO(); donHang.MaGiaoDich = Request.QueryString["MaGiaoDich"]; }
//public static IList GetList() //{ // ArrayList arrList = new ArrayList(); // DonHangDTO DonHang = null; // OleDbConnection connection = DataProvider.CreateConnection(); // string cmdText = "Select * from DONHANG"; // OleDbCommand command = new OleDbCommand(cmdText, connection); // OleDbDataReader reader = command.ExecuteReader(); // while (reader.Read()) // { // DonHang = new DonHangDTO(); // DonHang.MaDocGia = (int)reader["MaDocGia"]; // DonHang.MaPhieuMuon = (int)reader["MaPhieuMuon"]; // DonHang.NgayMuon = (DateTime)reader["NgayMuon"]; // arrList.Add(DonHang); // } // reader.Close(); // connection.Close(); // return arrList; //} //public static void UpdateTable(DataTable dataTable) //{ // OleDbConnection connection = DataProvider.CreateConnection(); // string cmdText = "Select * from DONHANG"; // OleDbDataAdapter adapter = new OleDbDataAdapter(cmdText, connection); // OleDbCommandBuilder cmdBuilder = new OleDbCommandBuilder(adapter); // adapter.Update(dataTable); // connection.Close(); //} public static void Insert(ChiTietDonHangDTO CTDonHang) { OleDbConnection connection = DataProvider.CreateConnection(); string cmdText = "Insert into CHITIETDONHANG(MaDonHang, MaSanPham, SoLuong, MauSac, GiaBan) values(?,?,?,?,?)"; OleDbCommand command = new OleDbCommand(cmdText, connection); command.Parameters.Add("@MaDonHang", OleDbType.Integer); command.Parameters.Add("@MaSanPham", OleDbType.WChar); command.Parameters.Add("@SoLuong", OleDbType.Integer); command.Parameters.Add("@MauSac", OleDbType.WChar); command.Parameters.Add("@GiaBan", OleDbType.Integer); command.Parameters["@MaDonHang"].Value = CTDonHang.MaDonHang; command.Parameters["@MaSanPham"].Value = CTDonHang.MaSanPham; command.Parameters["@SoLuong"].Value = CTDonHang.SoLuong; command.Parameters["@MauSac"].Value = CTDonHang.MauSac; command.Parameters["@GiaBan"].Value = CTDonHang.GiaBan; command.ExecuteNonQuery(); command.CommandText = "select @@IDENTITY"; CTDonHang.MaDonHang = (int)command.ExecuteScalar(); connection.Close(); }
private void HienThiChiTietDonHang() { ChiTietDonHangBUS xuLyChiTietDonHang = new ChiTietDonHangBUS(); DonHangBUS xuLyDonHangId = new DonHangBUS(); ChiTietDonHangDTO chiTietDonHang = new ChiTietDonHangDTO(); chiTietDonHang.IdDonHang = int.Parse(Request.QueryString["IdDonHang"]); xuLyChiTietDonHang._chiTietDonHang = chiTietDonHang; DonHangDTO donHang = new DonHangDTO(); donHang.IdDonHang = int.Parse(Request.QueryString["IdDonHang"]); xuLyDonHangId._donhang = donHang; try { xuLyChiTietDonHang.Select(); xuLyDonHangId.SelectById(); } catch { Response.Redirect("../Trangloi.aspx"); } gridviewOrderDetailsProducts.DataSource = xuLyChiTietDonHang.KetQua; gridviewOrderDetailsProducts.DataBind(); //------Hiển thị ID giao dịch trong label------------------ labelTransactionID.Text = Request.QueryString["MaGiaoDich"]; //------Hiển thị ngày xử lý đơn hàng--------------------- if (donHang.NgayXuLyDonHang != DateTime.MinValue) { textShippedDate.Text = donHang.NgayXuLyDonHang.ToShortDateString(); } //--------Hiển thị giá trị Trackingnumber trong textbox--------- textTrackingNumber.Text = donHang.TrackingNumber; //-------Lấy dữ liệu tình trạng đơn hàng trong dropdowlist------- dropdownlistOrderStatus.SelectedIndex = dropdownlistOrderStatus.Items.IndexOf(dropdownlistOrderStatus.Items.FindByValue(donHang.IdTinhTrangDonHang.ToString())); }
private void KhoiTaoNhapMaDonHang()//KHởi Tạo Dữ Liệu Datagidview Khi Gõ Vào Mã Đơn Hàng { string id = txtDonDatHang.Text; DonHangDTO donHangDTO = DonHangBUS.SelectDonHangById(id); if (donHangDTO != null) { txtNgayDat.Text = donHangDTO.NgayLap.ToString("dd/MM/yyyy"); txtSoTien.Text = donHangDTO.ThanhTien.ToString(); txtTrangThai.Text = donHangDTO.TrangThai; if (Status == 0) { List <ChiTietDonHangDTO> LchiTietDonHangDTO = ChiTietDonHangBUS.SelectChiTietDonHangByMaDonHang(id); for (int i = 0; i < LchiTietDonHangDTO.Count; i++) { ChiTietDonHangDTO chiTietDonHangDTO = LchiTietDonHangDTO[i]; SanPhamDTO sanPhamDTO = SanPhamBUS.SelectSanPhamById(chiTietDonHangDTO.MaSanPham.ToString()); dataGridView_NhapHang.Rows.Add((i + 1).ToString(), chiTietDonHangDTO.MaSanPham.ToString(), sanPhamDTO.TenSanPham.ToString(), chiTietDonHangDTO.SoLuong.ToString(), chiTietDonHangDTO.SLDaNhan.ToString(), "0", ""); } dataGridView_NhapHang.CurrentCell = dataGridView_NhapHang.Rows[0].Cells[clSLNhan.Index]; dataGridView_NhapHang.CurrentCell.Selected = true; dataGridView_NhapHang.BeginEdit(true); btnTao.Enabled = true; } else { List <ChiTietDonHangDTO> LchiTietDonHangDTO = ChiTietDonHangBUS.SelectChiTietDonHangByMaDonHang(id); List <ChiTietPhieuNhapDTO> listChiTietPhieuNhap = ChiTietPhieuNhapBUS.SelectChiTietPhieuNhapByMaPhieuNhap(txtMaPhieuNhap.Text); for (int i = 0; i < LchiTietDonHangDTO.Count; i++) { ChiTietDonHangDTO chiTietDonHangDTO = LchiTietDonHangDTO[i]; SanPhamDTO sanPhamDTO = SanPhamBUS.SelectSanPhamById(chiTietDonHangDTO.MaSanPham.ToString()); LchiTietDonHangDTO[i].SLDaNhan = LchiTietDonHangDTO[i].SLDaNhan - listChiTietPhieuNhap[i].SLNhan; dataGridView_NhapHang.Rows.Add((i + 1).ToString(), chiTietDonHangDTO.MaSanPham.ToString(), sanPhamDTO.TenSanPham.ToString(), chiTietDonHangDTO.SoLuong.ToString(), chiTietDonHangDTO.SLDaNhan.ToString(), listChiTietPhieuNhap[i].SLNhan.ToString(), listChiTietPhieuNhap[i].GhiChu.ToString()); } dataGridView_NhapHang.ReadOnly = true; dataGridView_NhapHang.SelectionMode = DataGridViewSelectionMode.FullRowSelect; btnCapNhap.Visible = true; btnTao.Visible = true; btnLamLai.Visible = false; btnTaoMoi.Visible = false; btnTimPhieuNhap.Visible = false; if (Status == 4) { //Chuyen sang trang thai cap nhat panelChucNang.Visible = false; panelYesNo.Visible = true; dataGridView_NhapHang.ReadOnly = false; dataGridView_NhapHang.SelectionMode = DataGridViewSelectionMode.CellSelect; dataGridView_NhapHang.CurrentCell = dataGridView_NhapHang.Rows[0].Cells[clSLNhan.Index]; dataGridView_NhapHang.CurrentCell.Selected = true; dataGridView_NhapHang.BeginEdit(true); MaPhieuNhap = txtMaPhieuNhap.Text; } } } else { txtNgayDat.Text = ""; txtSoTien.Text = ""; txtTrangThai.Text = ""; btnTao.Enabled = false; dataGridView_NhapHang.Rows.Clear(); } }
public static bool UpdateChiTietDonHangById(ChiTietDonHangDTO ctdhDTO) { return(ChiTietDonHangDAO.UpdateChiTietDonHangById(ctdhDTO)); }
public static bool InsertChiTietDonHang(ChiTietDonHangDTO ctdhDTO) { return(ChiTietDonHangDAO.InsertChiTietDonHang(ctdhDTO)); }
public void Update(ChiTietDonHangDTO ctdhDTO) { ChiTietDonHangDAO.Update(ctdhDTO); }
// Thực thi khi button Tạo có status = 0 private bool Process_Button() { // Lấy các trường để insert vào bảng DonHang DonHangDTO donHangDTO = new DonHangDTO(); donHangDTO.MaDonHang = txtMaDonHang.Text; donHangDTO.NgayLap = DateTimeSystem; donHangDTO.MaNhanVien = ThongTin.NhanVienDTO.MaNhanVien; donHangDTO.ThanhTien = MoneySum; donHangDTO.TrangThai = "Chưa nhận"; // Lấy các trường để insert vào bảng ChiTietDonHang List <ChiTietDonHangDTO> listctdonHangDTO = new List <ChiTietDonHangDTO>(); for (int i = 0; i < dataGridView_TaoDonHang.Rows.Count; i++) { ChiTietDonHangDTO ctdonHangDTO = new ChiTietDonHangDTO(); DataGridViewRow Row = dataGridView_TaoDonHang.Rows[i]; int check; int.TryParse(Row.Cells["clSoLuong"].Value.ToString(), out check); if (check > 0) { ctdonHangDTO.MaChiTietDonHang = txtMaDonHang.Text; if (i > 100) { ctdonHangDTO.MaChiTietDonHang += (i + 1).ToString(); } else if (i > 10) { ctdonHangDTO.MaChiTietDonHang += "0" + (i + 1).ToString(); } else { ctdonHangDTO.MaChiTietDonHang += "00" + (i + 1).ToString(); } ctdonHangDTO.MaDonHang = txtMaDonHang.Text; ctdonHangDTO.MaSanPham = Row.Cells["clMaSanPham"].Value.ToString(); ctdonHangDTO.CV = int.Parse(Row.Cells["clCV"].Value.ToString()); ctdonHangDTO.SoLuong = int.Parse(Row.Cells["clSoLuong"].Value.ToString()); ctdonHangDTO.DonGia = float.Parse(Row.Cells["clDonGia"].Value.ToString()); ctdonHangDTO.ThanhTien = float.Parse(Row.Cells["clThanhTien"].Value.ToString()); listctdonHangDTO.Add(ctdonHangDTO); } } //insert dữ liệu if (DonHangBUS.InsertDonHang(donHangDTO)) { foreach (ChiTietDonHangDTO ctdonHangDTO in listctdonHangDTO) { ChiTietDonHangBUS.InsertChiTietDonHang(ctdonHangDTO); } MessageBox.Show("Nhập dữ liệu thành công"); return(true); //btnTao.Text = "Cập nhật"; } else { MessageBox.Show("Nhập dữ liệu thất bại"); } return(false); }
// Cập nhật đơn hàng private void btnCapNhat_Click(object sender, EventArgs e) { try { if (txtPhiVanChuyen_Them.Text == "") { MessageBox.Show("Phải nhập phí vận chuyển"); return; } if (cbmTrangThai_Them.Text == "") { MessageBox.Show("Phải chọn trạng thái đơn hàng"); return; } int newTrangThai = Int32.Parse(cbmTrangThai_Them.SelectedValue.ToString()); ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); if ((_curTrangThai == 2 || _curTrangThai == 5) && (newTrangThai == 2 || newTrangThai == 5)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { ChiTietDonHangDTO ctdhDto = ctdhBus.KiemTraTonTai(_maDH, row.Cells["MaSanPham"].Value.ToString()); if (ctdhDto.MaChiTietDonHang != 0) // Sản phẩm đã có trong đơn hàng { if (Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()) > ctdhDto.SoLuong) { int soLgDatThem = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()) - ctdhDto.SoLuong; int kq = KiemTraConHang(row.Cells["MaSanPham"].Value.ToString(), soLgDatThem); if (kq > -1) { MessageBox.Show("Số lượng sản phẩm '" + row.Cells["MaSanPham"].Value.ToString() + "' đặt thêm lớn hơn số lượng hàng còn trong kho." + "\n\nSố lượng đặt thêm là: " + soLgDatThem.ToString() + "\n\nSố lượng hàng còn trong kho là: " + kq.ToString()); dtgvDanhSachSanPham_ChiTiet.FirstDisplayedScrollingRowIndex = row.Index; return; } } } else // Sản phẩm chưa có trong đơn hàng { int kq = KiemTraConHang(row.Cells["MaSanPham"].Value.ToString(), Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString())); if (kq > -1) { MessageBox.Show("Số lượng sản phẩm '" + row.Cells["MaSanPham"].Value.ToString() + "' đặt mua lớn hơn số lượng hàng còn trong kho." + "\n\nSố lượng hàng còn trong kho là: " + kq.ToString()); dtgvDanhSachSanPham_ChiTiet.FirstDisplayedScrollingRowIndex = row.Index; return; } } } } if ((_curTrangThai == 1 || _curTrangThai == 3 || _curTrangThai == 4) && (newTrangThai == 2 || newTrangThai == 5)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { int kq = KiemTraConHang(row.Cells["MaSanPham"].Value.ToString(), Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString())); if (kq > -1) { MessageBox.Show("Số lượng sản phẩm '" + row.Cells["MaSanPham"].Value.ToString() + "' đặt mua lớn hơn số lượng hàng còn trong kho." + "\n\nSố lượng hàng còn trong kho là: " + kq.ToString()); dtgvDanhSachSanPham_ChiTiet.FirstDisplayedScrollingRowIndex = row.Index; return; } } } DialogResult result = MessageBox.Show("Bạn có chắc là muốn cập nhật đơn hàng này không", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { DonHangBUS dhBus = new DonHangBUS(); DonHangDTO dhDto = new DonHangDTO(); dhDto.MaDonHang = _maDH; dhDto.MaKhachHang = Int32.Parse(txtMaKH_Them.Text); dhDto.TrangThai = Int32.Parse(cbmTrangThai_Them.SelectedValue.ToString()); dhDto.NguoiCapNhat = frmDangNhap.gUserName; dhDto.PhiVanChuyen = Int32.Parse(txtPhiVanChuyen_Them.Text); dhDto.TongTien = Int32.Parse(lbTongTien.Text.Replace(@",", "")); dhDto.SoLuongSanPham = Int32.Parse(lbSoLuong.Text); if (rdGiaSi.Checked == true) { dhDto.HinhThucMua = 0; //Gia Si } else { dhDto.HinhThucMua = 1; //Gia Le } dhBus.Update(dhDto); if ((_curTrangThai == 1 || _curTrangThai == 3 || _curTrangThai == 4) && (newTrangThai == 1 || newTrangThai == 3 || newTrangThai == 4)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); if (ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang != 0) { ctdhDto.MaChiTietDonHang = ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang; ctdhBus.Update(ctdhDto); } else { ctdhBus.Insert(ctdhDto); } } } if ((_curTrangThai == 1 || _curTrangThai == 3 || _curTrangThai == 4) && (newTrangThai == 2 || newTrangThai == 5)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); if (ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang != 0) { ctdhDto.MaChiTietDonHang = ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang; ctdhBus.Update(ctdhDto); } else { ctdhBus.Insert(ctdhDto); } int newSl = ctdhDto.SoLuong; int oldSl = Int32.Parse(row.Cells["SoLuong"].Value.ToString()); int trangthai; if (newSl == oldSl) { trangthai = 0; } else { trangthai = 1; } SanPhamBUS spBus = new SanPhamBUS(); //spBus.CapNhatKhoHang(ctdhDto.MaSanPham, oldSl - newSl, trangthai); } } if ((_curTrangThai == 2 || _curTrangThai == 5) && (newTrangThai == 1 || newTrangThai == 3 || newTrangThai == 4)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ChiTietDonHangDTO ctdhDtoOld = ctdhBus.KiemTraTonTai(_maDH, row.Cells["MaSanPham"].Value.ToString()); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); ctdhDto.MaChiTietDonHang = ctdhDtoOld.MaChiTietDonHang; if (ctdhDtoOld.MaChiTietDonHang != 0) { ctdhBus.Update(ctdhDto); string maSp = ctdhDto.MaSanPham; int sl = ctdhDto.SoLuong; SanPhamDTO spDtoOld = SanPhamBUS.LaySanPham(maSp); int trangThai = 0; if ((sl + spDtoOld.SoLuong) > 0) { trangThai = 1; } SanPhamBUS spBus = new SanPhamBUS(); //spBus.CapNhatKhoHang(maSp, sl + spDtoOld.SoLuong, trangThai); } else { ctdhBus.Insert(ctdhDto); } } } if ((_curTrangThai == 2 || _curTrangThai == 5) && (newTrangThai == 2 || newTrangThai == 5)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ChiTietDonHangDTO ctdhDtoOld = ctdhBus.KiemTraTonTai(_maDH, row.Cells["MaSanPham"].Value.ToString()); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); ctdhDto.MaChiTietDonHang = ctdhDtoOld.MaChiTietDonHang; if (ctdhDtoOld.MaChiTietDonHang != 0) { ctdhBus.Update(ctdhDto); string maSp = ctdhDto.MaSanPham; SanPhamDTO spDtoOld = SanPhamBUS.LaySanPham(maSp); int diffSoLuong = ctdhDto.SoLuong - ctdhDtoOld.SoLuong; int trangThai = 0; SanPhamBUS spBus = new SanPhamBUS(); if (diffSoLuong > 0) { if (spDtoOld.SoLuong - diffSoLuong > 0) { trangThai = 1; } } else { trangThai = 1; } //spBus.CapNhatKhoHang(maSp, spDtoOld.SoLuong - diffSoLuong, trangThai); } else { ctdhBus.Insert(ctdhDto); string maSp = ctdhDto.MaSanPham; SanPhamDTO spDtoOld = SanPhamBUS.LaySanPham(maSp); int trangThai = 0; SanPhamBUS spBus = new SanPhamBUS(); if (spDtoOld.SoLuong - ctdhDto.SoLuong > 0) { trangThai = 1; } //spBus.CapNhatKhoHang(maSp, spDtoOld.SoLuong - ctdhDto.SoLuong, trangThai); } } } MessageBox.Show("Đơn hàng đã được cập nhật thành công"); btnCapNhat.Visible = true; _curTrangThai = dhDto.TrangThai; } } catch (System.Exception ex) { MessageBox.Show(ex.Message); } }
public void Insert(ChiTietDonHangDTO ctdh) { ChiTietDonHangDAO.Insert(ctdh); }
private void btnThemDonHang_Click(object sender, EventArgs e) { try { if (txtPhiVanChuyen_Them.Text == "") { MessageBox.Show("Phải nhập phí vận chuyển"); return; } if (cbmTrangThai_Them.Text == "") { MessageBox.Show("Phải chọn trạng thái đơn hàng"); return; } if (dtgvDanhSachSanPham_ChiTiet.Rows.Count == 0) { MessageBox.Show("Phải chọn ít nhất 1 sản phẩm"); return; } foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { int kq = KiemTraConHang(row.Cells["MaSanPham"].Value.ToString(), Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString())); if (kq > -1) { MessageBox.Show("Số lượng sản phẩm '" + row.Cells["MaSanPham"].Value.ToString() + "' đặt mua lớn hơn số lượng hàng còn trong kho." + "\n\nSố lượng hàng còn trong kho là: " + kq.ToString()); dtgvDanhSachSanPham_ChiTiet.FirstDisplayedScrollingRowIndex = row.Index; return; } } DialogResult result = MessageBox.Show("Bạn có chắc là muốn thêm đơn hàng này không", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { DonHangBUS dhBus = new DonHangBUS(); DonHangDTO dhDto = new DonHangDTO(); ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); dhDto.MaKhachHang = Int32.Parse(txtMaKH_Them.Text); if (cbmTrangThai_Them.Text == "Mới đặt") { dhDto.TrangThai = 1; } else { dhDto.TrangThai = 2; } dhDto.NguoiNhap = frmDangNhap.gUserName; dhDto.PhiVanChuyen = Int32.Parse(txtPhiVanChuyen_Them.Text); dhDto.TongTien = Int32.Parse(lbTongTien.Text.Replace(@",", "")); dhDto.SoLuongSanPham = Int32.Parse(lbSoLuong.Text); if (rdGiaSi.Checked == true) { dhDto.HinhThucMua = 0; //Gia Si } else { dhDto.HinhThucMua = 1; //Gia Le } dhBus.Insert(dhDto); _maDH = dhDto.MaDonHang; foreach (DataGridViewRow row in this.dtgvDanhSachSanPham_ChiTiet.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); ctdhBus.Insert(ctdhDto); if (cbmTrangThai_Them.Text == "Hoàn tất") { int newSl = ctdhDto.SoLuong; int oldSl = Int32.Parse(row.Cells["SoLuong"].Value.ToString()); int trangthai; if (newSl == oldSl) { trangthai = 0; } else { trangthai = 1; } SanPhamBUS spBus = new SanPhamBUS(); //spBus.CapNhatKhoHang(ctdhDto.MaSanPham, oldSl - newSl, trangthai); } } MessageBox.Show("Đơn hàng đã được thêm thành công"); btnCapNhat.Visible = true; _curTrangThai = dhDto.TrangThai; cbmTrangThai_Them.DataSource = TrangThaiDonHangBUS.GetList(); cbmTrangThai_Them.DisplayMember = "TrangThai"; cbmTrangThai_Them.ValueMember = "MaTrangThai"; cbmTrangThai_Them.SelectedValue = dhDto.TrangThai; } } catch (System.Exception ex) { MessageBox.Show(ex.Message); } }
public void formatData() { try { //dtgvDanhSachSanPham.Refresh(); this.dtgvDanhSachSanPham.Columns["HinhAnh"].Visible = false; this.dtgvDanhSachSanPham.Columns["MaChiTietDonHang"].Visible = false; this.dtgvDanhSachSanPham.Columns["TrangThai"].Visible = false; this.dtgvDanhSachSanPham.Columns["SoLuongDatMua"].Visible = false; this.dtgvDanhSachSanPham.Columns["GiaSi"].DefaultCellStyle.Format = "#,0"; this.dtgvDanhSachSanPham.Columns["GiaLe"].DefaultCellStyle.Format = "#,0"; this.dtgvDanhSachSanPham.Columns["GiaBan"].DefaultCellStyle.Format = "#,0"; this.dtgvDanhSachSanPham.Columns["MaSanPham"].ReadOnly = true; this.dtgvDanhSachSanPham.Columns["GiaLe"].ReadOnly = true; this.dtgvDanhSachSanPham.Columns["GiaSi"].ReadOnly = true; this.dtgvDanhSachSanPham.Columns["GiaBan"].ReadOnly = true; this.dtgvDanhSachSanPham.Columns["TrangThai"].ReadOnly = true; int tongTien = 0; int soLuong = 0; //DonHangDTO dhDto = new DonHangDTO(); //DonHangBUS dhBus = new DonHangBUS(); //dhDto = dhBus.LayBangMaDonHang(_maDH); foreach (DataGridViewRow row in this.dtgvDanhSachSanPham.Rows) { row.Height = _rowHeight; if (row.Cells["img"].Value == null) { string checkImgPath = Directory.GetCurrentDirectory(); string imgPath = Directory.GetCurrentDirectory(); checkImgPath = checkImgPath + @"\Hinh\" + row.Cells["HinhAnh"].Value.ToString(); if (File.Exists(checkImgPath) == true) { imgPath = checkImgPath; } else { imgPath = imgPath + @"\Hinh\NoImage.jpg"; } Image image = Helper.ResizeImage(@imgPath, _imageSize, _imageSize, false); row.Cells["img"].Value = image; } //if (Int32.Parse(row.Cells["SoLuongTrongKho"].Value.ToString()) <= 0 && _firstLoad == false) //{ // row.DefaultCellStyle.BackColor = Color.Yellow; // //row.Cells["MauSac"].ReadOnly = true; //} //int sl; //SanPhamDTO spDto = SanPhamBUS.LaySanPham(row.Cells["MaSanPham"].Value.ToString()); if (_fromTxtMaSpTextChange == true) { SanPhamDTO spDto = SanPhamBUS.LaySanPham(row.Cells["MaSanPham"].Value.ToString()); if (spDto.TrangThai == 0) { row.DefaultCellStyle.BackColor = Color.Yellow; } _fromTxtMaSpTextChange = false; } else { if (row.Cells["TrangThai"].Value.ToString() == "0") { row.DefaultCellStyle.BackColor = Color.Yellow; } } //ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); //ChiTietDonHangDTO ctdhDto = ctdhBus.KiemTraTonTai(_maDH, row.Cells["MaSanPham"].Value.ToString()); //if ((dhDto.TrangThai == 2 || dhDto.TrangThai == 5) && ctdhDto.MaChiTietDonHang != 0) //{ // //sl = Int32.Parse(row.Cells["SoLuongDatMua"].Value.ToString()) + spDto.SoLuong; // sl = ctdhDto.SoLuong + spDto.SoLuong; //} //else //{ // sl = spDto.SoLuong; //} //sl = ctdhDto.SoLuong + spDto.SoLuong; if (((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).Items.Count == 0) { for (int i = 0; i <= 30; i++) { ((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).Items.Add(i); } if (((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).Items.Count == 0) { ((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).Items.Add(0); ((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).ReadOnly = true; } if (_firstLoad == true) { ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); ChiTietDonHangDTO ctdhDto = ctdhBus.KiemTraTonTai(_maDH, row.Cells["MaSanPham"].Value.ToString()); row.Cells["CmbSoLuong"].Value = ctdhDto.SoLuong; } else { row.Cells["CmbSoLuong"].Value = ((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).Items[1]; } } //if (_firstLoad == true) //{ // row.Cells["CmbSoLuong"].Value = Int32.Parse(row.Cells["SoLuongDatMua"].Value.ToString()); //} //else //{ // if (_gMaSP == row.Cells["MaSanPham"].Value.ToString()) // { // row.Cells["CmbSoLuong"].Value = ((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).Items[_gSL - 1]; // } //} if (_gMaSP == row.Cells["MaSanPham"].Value.ToString()) { row.Cells["CmbSoLuong"].Value = ((DataGridViewComboBoxCell)row.Cells["CmbSoLuong"]).Items[_gSL]; } if (rdGiaLe.Checked == true) { fromFormat = true; row.Cells["GiaBan"].Value = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()) * Int32.Parse(row.Cells["GiaLe"].Value.ToString()); } else { fromFormat = true; row.Cells["GiaBan"].Value = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()) * Int32.Parse(row.Cells["GiaSi"].Value.ToString()); } soLuong += Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); tongTien += Int32.Parse(row.Cells["GiaBan"].Value.ToString()); } if (txtPhiVanChuyen_Them.Text != "") { tongTien += Int32.Parse(txtPhiVanChuyen_Them.Text.ToString()); } lbSoLuong.Text = soLuong.ToString(); lbTongTien.Text = tongTien.ToString("n0"); fromFormat = false; _gMaSP = ""; _gSL = 0; } catch (System.Exception ex) { MessageBox.Show(ex.Message); } }
private void txtMaSanPham_Them_TextChanged(object sender, EventArgs e) { try { _gSL = 0; _gMaSP = ""; SanPhamBUS sb = new SanPhamBUS(); ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); DataTable dt1 = sb.LayBangMaSanPham_ChiTietDonHang(txtMaSanPham_Them.Text); if (dt1.Rows.Count == 1) { DataRow dr = dt.NewRow(); dr.ItemArray = dt1.Rows[0].ItemArray.Clone() as object[]; for (int i = 0; i < dtgvDanhSachSanPham.Rows.Count; i++) { if (dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString() == dr.ItemArray.GetValue(1).ToString()) { _gSL = Int32.Parse(dtgvDanhSachSanPham.Rows[i].Cells["CmbSoLuong"].Value.ToString()) + 1; if (dhDto.TrangThai == 2 || dhDto.TrangThai == 5) { ChiTietDonHangDTO ctdhDto = ctdhBus.KiemTraTonTai(_maDH, dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString()); if (ctdhDto.MaChiTietDonHang != 0) // Sản phẩm đã có trong đơn hàng { if (_gSL > ctdhDto.SoLuong) { int soLgDatThem = _gSL - ctdhDto.SoLuong; int kq = KiemTraConHang(dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString(), soLgDatThem); if (kq > -1) { MessageBox.Show("Số lượng sản phẩm '" + dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString() + "' đặt thêm lớn hơn số lượng hàng còn trong kho." + "\n\nSố lượng đặt thêm là: " + soLgDatThem.ToString() + "\n\nSố lượng hàng còn trong kho là: " + kq.ToString()); return; } } _gMaSP = dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString(); dt.Rows.RemoveAt(i); break; } else { if (_gSL > Int32.Parse(dr.ItemArray.GetValue(5).ToString())) { MessageBox.Show("Số lượng sản phẩm '" + dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString() + "' đặt mua lớn hơn số lượng hàng còn trong kho." + "\n\nSố lượng hàng còn trong kho là: " + dr.ItemArray.GetValue(5).ToString()); return; } _gMaSP = dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString(); dt.Rows.RemoveAt(i); break; } } else { if (_gSL > Int32.Parse(dr.ItemArray.GetValue(5).ToString())) { MessageBox.Show("Số lượng sản phẩm '" + dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString() + "' đặt mua lớn hơn số lượng hàng còn trong kho." + "\n\nSố lượng hàng còn trong kho là: " + dr.ItemArray.GetValue(5).ToString()); return; } _gMaSP = dtgvDanhSachSanPham.Rows[i].Cells["MaSanPham"].Value.ToString(); dt.Rows.RemoveAt(i); break; } } } //dt.ImportRow(dt1.Rows[0]); //DataRow dr = dt1.Rows[0]; dt.Rows.InsertAt(dr, 0); dtgvDanhSachSanPham.DataSource = dt; dtgvDanhSachSanPham.FirstDisplayedScrollingRowIndex = 0; //dtgvDanhSachSanPham.FirstDisplayedCell = dtgvDanhSachSanPham.Rows[dtgvDanhSachSanPham.RowCount - 1].Cells["MaSanPham"]; _fromTxtMaSpTextChange = true; formatData(); _changed = true; } } catch (System.Exception ex) { MessageBox.Show(ex.Message); } }
private void dtgvDanhSachSanPham_CellClick(object sender, DataGridViewCellEventArgs e) { try { //lbSoLuong.Text = e.ColumnIndex.ToString(); if (e.ColumnIndex == dtgvDanhSachSanPham.Columns["Xoa"].Index && e.RowIndex >= 0) { ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); ChiTietDonHangDTO ctdhDto = ctdhBus.KiemTraTonTai(_maDH, dtgvDanhSachSanPham.Rows[e.RowIndex].Cells["MaSanPham"].Value.ToString()); if (ctdhDto.MaChiTietDonHang != 0) { DialogResult result = MessageBox.Show("Bạn có chắc muốn xóa sản phẩm này khỏi đơn hàng hay ko", "Question", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { dt.Rows.Remove(dt.Rows[e.RowIndex]); if (dhDto.TrangThai == 2 || dhDto.TrangThai == 5) { string maSp = ctdhDto.MaSanPham; int sl = ctdhDto.SoLuong; SanPhamDTO spDto = SanPhamBUS.LaySanPham(maSp); int trangThai = 0; if ((sl + spDto.SoLuong) > 0) { trangThai = 1; } SanPhamBUS spBus = new SanPhamBUS(); spBus.CapNhatKhoHang(maSp, sl + spDto.SoLuong, trangThai); } if (dhDto.MaDonHang != 0) { DonHangBUS dhBus = new DonHangBUS(); dhDto.NguoiCapNhat = frmDangNhap.gUserName; dhDto.PhiVanChuyen = Int32.Parse(txtPhiVanChuyen_Them.Text); dhDto.TongTien = Int32.Parse(lbTongTien.Text.Replace(@",", "")) - ctdhDto.GiaBan; dhDto.SoLuongSanPham = Int32.Parse(lbSoLuong.Text) - ctdhDto.SoLuong; if (rdGiaSi.Checked == true) { dhDto.HinhThucMua = 0; //Gia Si } else { dhDto.HinhThucMua = 1; //Gia Le } dhBus.Update(dhDto); } ctdhBus.Delete(ctdhDto.MaChiTietDonHang); } } else { dt.Rows.Remove(dt.Rows[e.RowIndex]); } dtgvDanhSachSanPham.DataSource = dt; formatData(); _changed = true; } if (e.ColumnIndex == dtgvDanhSachSanPham.Columns["CmbSoLuong"].Index && e.RowIndex >= 0) { dtgvDanhSachSanPham.BeginEdit(true); ComboBox comboBox = (ComboBox)dtgvDanhSachSanPham.EditingControl; if (comboBox != null) { comboBox.DroppedDown = true; } } } catch (System.Exception ex) { MessageBox.Show(ex.Message); } }
private void CapNhatDonHang() { try { if (txtPhiVanChuyen_Them.Text == "") { MessageBox.Show("Phải nhập phí vận chuyển"); return; } if (cbmTrangThai_Them.Text == "") { MessageBox.Show("Phải chọn trạng thái đơn hàng"); return; } int newTrangThai = Int32.Parse(cbmTrangThai_Them.SelectedValue.ToString()); ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS(); DonHangBUS dhBus = new DonHangBUS(); //DonHangDTO dhDto = new DonHangDTO(); dhDto.MaDonHang = _maDH; dhDto.MaKhachHang = Int32.Parse(txtMaKH_Them.Text); dhDto.TrangThai = Int32.Parse(cbmTrangThai_Them.SelectedValue.ToString()); dhDto.NguoiCapNhat = frmDangNhap.gUserName; dhDto.PhiVanChuyen = Int32.Parse(txtPhiVanChuyen_Them.Text); dhDto.TongTien = Int32.Parse(lbTongTien.Text.Replace(@",", "")); dhDto.SoLuongSanPham = Int32.Parse(lbSoLuong.Text); if (rdGiaSi.Checked == true) { dhDto.HinhThucMua = 0; //Gia Si } else { dhDto.HinhThucMua = 1; //Gia Le } dhBus.Update(dhDto); if ((_curTrangThai == 1 || _curTrangThai == 3 || _curTrangThai == 4) && (newTrangThai == 1 || newTrangThai == 3 || newTrangThai == 4)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); if (ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang != 0) { ctdhDto.MaChiTietDonHang = ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang; ctdhBus.Update(ctdhDto); } else { ctdhBus.Insert(ctdhDto); } } } if ((_curTrangThai == 1 || _curTrangThai == 3 || _curTrangThai == 4) && (newTrangThai == 2 || newTrangThai == 5)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); if (ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang != 0) { ctdhDto.MaChiTietDonHang = ctdhBus.KiemTraTonTai(_maDH, ctdhDto.MaSanPham).MaChiTietDonHang; ctdhBus.Update(ctdhDto); } else { ctdhBus.Insert(ctdhDto); } int newSl = ctdhDto.SoLuong; SanPhamDTO spDtoOld = SanPhamBUS.LaySanPham(ctdhDto.MaSanPham); int oldSl = spDtoOld.SoLuong; int trangthai; if (newSl == oldSl) { trangthai = 0; } else { trangthai = 1; } SanPhamBUS spBus = new SanPhamBUS(); spBus.CapNhatKhoHang(ctdhDto.MaSanPham, oldSl - newSl, trangthai); } } if ((_curTrangThai == 2 || _curTrangThai == 5) && (newTrangThai == 1 || newTrangThai == 3 || newTrangThai == 4)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ChiTietDonHangDTO ctdhDtoOld = ctdhBus.KiemTraTonTai(_maDH, row.Cells["MaSanPham"].Value.ToString()); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); ctdhDto.MaChiTietDonHang = ctdhDtoOld.MaChiTietDonHang; if (ctdhDtoOld.MaChiTietDonHang != 0) { ctdhBus.Update(ctdhDto); string maSp = ctdhDto.MaSanPham; int sl = ctdhDtoOld.SoLuong; SanPhamDTO spDtoOld = SanPhamBUS.LaySanPham(maSp); int trangThai = 0; if ((sl + spDtoOld.SoLuong) > 0) { trangThai = 1; } SanPhamBUS spBus = new SanPhamBUS(); spBus.CapNhatKhoHang(maSp, sl + spDtoOld.SoLuong, trangThai); } else { ctdhBus.Insert(ctdhDto); } } } if ((_curTrangThai == 2 || _curTrangThai == 5) && (newTrangThai == 2 || newTrangThai == 5)) { foreach (DataGridViewRow row in this.dtgvDanhSachSanPham.Rows) { ChiTietDonHangDTO ctdhDto = new ChiTietDonHangDTO(); ChiTietDonHangDTO ctdhDtoOld = ctdhBus.KiemTraTonTai(_maDH, row.Cells["MaSanPham"].Value.ToString()); ctdhDto.MaDonHang = dhDto.MaDonHang; ctdhDto.MaSanPham = row.Cells["MaSanPham"].Value.ToString(); ctdhDto.MauSac = row.Cells["MauSac"].Value.ToString(); ctdhDto.SoLuong = Int32.Parse(row.Cells["CmbSoLuong"].Value.ToString()); ctdhDto.GiaBan = Int32.Parse(row.Cells["GiaBan"].Value.ToString().Replace(@",", "")); ctdhDto.MaChiTietDonHang = ctdhDtoOld.MaChiTietDonHang; if (ctdhDtoOld.MaChiTietDonHang != 0) { ctdhBus.Update(ctdhDto); string maSp = ctdhDto.MaSanPham; SanPhamDTO spDtoOld = SanPhamBUS.LaySanPham(maSp); int diffSoLuong = ctdhDto.SoLuong - ctdhDtoOld.SoLuong; int trangThai = 0; SanPhamBUS spBus = new SanPhamBUS(); if (diffSoLuong > 0) { if (spDtoOld.SoLuong - diffSoLuong > 0) { trangThai = 1; } } else { trangThai = 1; } spBus.CapNhatKhoHang(maSp, spDtoOld.SoLuong - diffSoLuong, trangThai); } else { ctdhBus.Insert(ctdhDto); string maSp = ctdhDto.MaSanPham; SanPhamDTO spDtoOld = SanPhamBUS.LaySanPham(maSp); int trangThai = 0; SanPhamBUS spBus = new SanPhamBUS(); if (spDtoOld.SoLuong - ctdhDto.SoLuong > 0) { trangThai = 1; } spBus.CapNhatKhoHang(maSp, spDtoOld.SoLuong - ctdhDto.SoLuong, trangThai); } } } MessageBox.Show("Đơn hàng đã được cập nhật thành công"); btnCapNhat.Visible = true; _curTrangThai = dhDto.TrangThai; _changed = false; } catch (System.Exception ex) { MessageBox.Show(ex.Message); } }