//Phương thức sửa hàng mua private void SuaSPMua(object sender, EventArgs e) { //Lấy thông tin sửa BanHangSuaHangMuaPresentation wpf = (BanHangSuaHangMuaPresentation)sender; SanPhamPublic _sp = wpf._sp; //Cập nhật lại thông tin trong giỏ hàng _dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().SoLuong_SP = _sp.SoLuong_SP; _dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().CKTienMat = _sp.CKTienMat; //Tính lại thành tiền vào tổng tiền int _giaBan = Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().GiaBan)); int _giaNhap = Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().GiaNhap_SP)); int _soLuong = _dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().SoLuong_SP; int _TongTien = _giaBan * _soLuong; int _ckTienMat = Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().CKTienMat)); int _thanhTien = _TongTien - _ckTienMat; _dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().ThanhTien_SP = UntilitiesBusiness.ThemDauPhay(_thanhTien.ToString()); //Hiển thị giỏ hàng dgDanhSachSanPham.ItemsSource = _dsSPMua; dgDanhSachSanPham.Items.Refresh(); //Tính tổng tiền TongTien(); }
//Nút sửa private void btnSua_Click(object sender, RoutedEventArgs e) { #region 1. Lấy thông tin DataRowView _drv = (DataRowView)dgSanPham.SelectedItem; SanPhamPublic _sp = new SanPhamPublic(); _sp.MaSP_SP = _drv["MaSP_SP"].ToString(); _sp.TenSP_SP = _drv["TenSP_SP"].ToString(); _sp.NSP_SP.MaNSP_NSP = _drv["MaNSP_SP"].ToString(); _sp.NCC_SP.MaNCC_NCC = _drv["MaNCC_SP"].ToString(); _sp.GiaNhap_SP = _drv["GiaNhap_SP"].ToString(); _sp.GiaBanLe_SP = _drv["GiaBanLe_SP"].ToString(); _sp.GiaBanSi_SP = _drv["GiaBanSi_SP"].ToString(); _sp.DVT_SP.MaDVT_DVT = _drv["MaDVT_SP"].ToString(); _sp.CKPhanTram_SP = Convert.ToInt32(_drv["CKPhanTram_SP"].ToString()); _sp.GhiChu_SP = _drv["GhiChu_SP"].ToString(); _sp.Anh_SP = _drv["Anh_SP"].ToString(); #endregion #region 2. Hiển thị wpf sửa SanPhamSuaPresentation wpf = new SanPhamSuaPresentation(); wpf._SuaSanPham += new EventHandler(SuaSanPham); wpf._sp = _sp; wpf.ShowDialog(); #endregion }
//Phương thức sửa số lượng private void SuaSoLuong(object sender, EventArgs e) { //Lấy thông tin KiemKeSuaPresentation wpf = (KiemKeSuaPresentation)sender; SanPhamPublic _sp = wpf._sp; //Cập nhật số lượng if (KiemKeBusiness.CapNhatSoLuong(_sp.MaSP_SP, _sp.SoLuong_SP)) { lbWarning.Visibility = System.Windows.Visibility.Visible; lbWarning.Content = "Cập nhật thành công sản phẩm: " + _sp.TenSP_SP + " số lượng: " + _sp.SoLuong_SP; //Cập nhật dữ liệu trên listSP _listSP.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().SoLuong_SP = _sp.SoLuong_SP; dgDsSanPham.ItemsSource = _listSP; dgDsSanPham.Items.Refresh(); int _index = _listSP.FindIndex(item => item.MaSP_SP == _sp.MaSP_SP); dgDsSanPham.SelectedIndex = _index; dgDsSanPham.ScrollIntoView(dgDsSanPham.SelectedItem); HienThiTongSP(); } else { lbWarning.Visibility = System.Windows.Visibility.Visible; lbWarning.Content = "Thao tác cập nhật thất bại"; } }
public bool cập_nhật_số_lượng(CTDonHangPublic Chi_tiết) { DataTable CTDT = dhdal.lấy_chi_tiết(Chi_tiết); int luongCu = CTDT.Rows[0].Field <int>("SoLuong"); int luongThem = Chi_tiết.SL; Chi_tiết.SL = luongCu + luongThem; SanPhamPublic SP = new SanPhamPublic(); SP.MASP = Chi_tiết.MASP; SP = spbus.LaySanPham(SP); if (SP.SOLUONG > luongCu) { dhdal.cập_nhật(Chi_tiết); // // // SP.SOLUONG -= luongThem; spbus.capnhatsoluong(SP); return(true); } else { return(false); } }
public bool bớt(CTDonHangPublic Chi_tiết) { DataTable DT = dhdal.lấy_chi_tiết(Chi_tiết); int luongTra = Chi_tiết.SL; int luongCu = DT.Rows[0].Field <int>("SoLuong"); Chi_tiết.SL = luongCu - luongTra; SanPhamPublic SP = new SanPhamPublic(); SP.MASP = Chi_tiết.MASP; SP = spbus.LaySanPham(SP); if (Chi_tiết.SL >= luongTra) { dhdal.cập_nhật(Chi_tiết); // // // SP.SOLUONG += luongTra; spbus.capnhatsoluong(SP); } return(true); }
void ganDuLieu(SanPhamPublic sppublic) { sppublic.MASP = tbmasp.Text.Trim(); sppublic.TENSP = tbtensp.Text.Trim(); sppublic.TenNCC = comboncc.SelectedValue.ToString(); sppublic.GIASP = float.Parse(tbgiasp.Text.Trim()); sppublic.SOLUONG = int.Parse(tbsoluong.Text.Trim()); }
public SanPhamPublic LaySanPham(SanPhamPublic SPB) { SanPhamPublic SP = new SanPhamPublic(); DataTable DT = spdal.getSanPhamBangID(SPB.MASP); SP.SOLUONG = DT.Rows[0].Field <int>("SoLuong"); SP.MASP = DT.Rows[0].Field <string>("MaSP"); return(SP); }
private void btnTest_Click(object sender, RoutedEventArgs e) { SanPhamPublic _sp = new SanPhamPublic(); _sp = _ListSpNhap[0]; _sp.SoLuong_SP = 123456; dgSanPhamNhapMua.ItemsSource = _ListSpNhap; dgSanPhamNhapMua.Items.Refresh(); }
//Thêm số lượng sản phẩm trong kho private static void ThemSoLuongSPVaoKho(SanPhamPublic _sp) { SqlCommand _cmd = new SqlCommand(); _cmd.CommandType = CommandType.StoredProcedure; _cmd.CommandText = "[Thêm sô lượng SP trong kho]"; _cmd.Parameters.AddWithValue("@MaSP_SP", _sp.MaSP_SP); _cmd.Parameters.AddWithValue("@SoLuongThem", _sp.SoLuong_SP); conn.Execute(_cmd); }
//Nút thêm private void btnThemSP_Click(object sender, RoutedEventArgs e) { //Kiểm tra mã nhập vào if (!KiemTraMaSP()) { return; } //Kiểm tra xem có sản phẩm này không _dv = new DataView(_DtSP); _dv.Sort = "MaSP_SP"; int _index = _dv.Find(txtMaSP.Text.Trim()); if (_index != -1) { //Thêm vào danh sách SanPhamPublic _sp = new SanPhamPublic(); _sp.MaSP_SP = _dv[_index]["MaSP_SP"].ToString(); _sp.TenSP_SP = _dv[_index]["TenSP_SP"].ToString(); _sp.GiaBanLe_SP = _dv[_index]["GiaBanLe_SP"].ToString(); _sp.SoLuong_SP = 0; //Kiểm tra nếu trong ds chưa có thì thêm SanPhamPublic _result = _dsSanPham.Find(item => item.MaSP_SP == txtMaSP.Text.Trim().ToUpper()); if (_result == null) { _dsSanPham.Add(_sp); dgDsSanPham.ItemsSource = _dsSanPham; dgDsSanPham.Items.Refresh(); txtMaSP.Focus(); txtMaSP.SelectAll(); } else { txtbWarning.Visibility = System.Windows.Visibility.Visible; txtbWarning.Text = "Sản phẩm đã có trong danh sách"; txtMaSP.Focus(); txtMaSP.SelectAll(); } } else { txtbWarning.Visibility = System.Windows.Visibility.Visible; txtbWarning.Text = "Mã sản phẩm không tồn tại. Vui lòng kiểm tra lại!"; txtMaSP.Focus(); txtMaSP.SelectAll(); } }
//Nút sửa private void btnSua_Click(object sender, RoutedEventArgs e) { #region 1.Lấy thông tin sp SanPhamPublic _spSua = new SanPhamPublic(); //Chỉ truyền sang mã SP, Tên SP và số lượng _spSua.MaSP_SP = (dgSanPhamNhapMua.SelectedItem as SanPhamPublic).MaSP_SP; _spSua.TenSP_SP = (dgSanPhamNhapMua.SelectedItem as SanPhamPublic).TenSP_SP; _spSua.SoLuong_SP = (dgSanPhamNhapMua.SelectedItem as SanPhamPublic).SoLuong_SP; _spSua.GiaNhap_SP = (dgSanPhamNhapMua.SelectedItem as SanPhamPublic).GiaNhap_SP; #endregion #region 2.Hiển thị wpf sửa NhapMuaSuaPresentation wpf = new NhapMuaSuaPresentation(); wpf._sp = _spSua; wpf._SuaSanPham += new EventHandler(SuaSanPham); wpf.ShowDialog(); #endregion }
//Phương thức sửa thông tin sản phấm void SuaSanPham(object sender, EventArgs e) { #region 1. Lấy thông tin SanPhamSuaPresentation wpf = (SanPhamSuaPresentation)sender; SanPhamPublic _sp = wpf._sp; _sp.Anh_SP = CoppyAnhSP(_sp.Anh_SP, _sp.MaSP_SP); #endregion #region 2. Thêm vào csdl if (SanPhamBusiness.SuaSanPham(_sp)) { LoadDataToDataGrid(); } else { MessageBox.Show("Thêm sản phẩm thất bại"); } #endregion }
//Nút sửa số lượng private void btnSua_Click(object sender, RoutedEventArgs e) { //Lấy thông tin SanPhamPublic _spTemp = (dgDsSanPham.SelectedItem as SanPhamPublic); SanPhamPublic _sp = new SanPhamPublic(); _sp.MaSP_SP = _spTemp.MaSP_SP; _sp.TenSP_SP = _spTemp.TenSP_SP; _sp.SoLuong_SP = _spTemp.SoLuong_SP; //Hiển thị sửa KiemKeSuaPresentation wpf = new KiemKeSuaPresentation(); wpf._SuaSoLuong += new EventHandler(SuaSoLuong); wpf._sp = _sp; wpf.ShowDialog(); dgDsSanPham.Focus(); }
//Lấy sản phẩm theo mã public static List <SanPhamPublic> LaySPTheoNhom(string _maNSP) { List <SanPhamPublic> _ListSP = new List <SanPhamPublic>(); SanPhamPublic _sp; DataTable _dtSP; if (_maNSP == "") { //Lấy toàn bộ sản phẩm _dtSP = conn.GetDataSet("[Danh sách sản phẩm]").Tables[0]; for (int i = 0; i < _dtSP.Rows.Count; i++) { _sp = new SanPhamPublic(); _sp.MaSP_SP = _dtSP.Rows[i]["MaSP_SP"].ToString(); _sp.TenSP_SP = _dtSP.Rows[i]["TenSP_SP"].ToString(); _sp.NSP_SP.TenNSP_NSP = _dtSP.Rows[i]["TenNSP_NSP"].ToString(); _sp.SoLuong_SP = Convert.ToInt32(_dtSP.Rows[i]["SoLuong_SP"].ToString()); _ListSP.Add(_sp); } return(_ListSP); } else { //Lấy sản phẩm theo mã SqlCommand _cmd = new SqlCommand(); _cmd.CommandType = CommandType.StoredProcedure; _cmd.CommandText = "[Lấy sản phẩm theo nhóm - kiểm kê]"; _cmd.Parameters.AddWithValue("@MaNSP_NSP", _maNSP); _dtSP = conn.GetDataSet2(_cmd).Tables[0]; for (int i = 0; i < _dtSP.Rows.Count; i++) { _sp = new SanPhamPublic(); _sp.MaSP_SP = _dtSP.Rows[i]["MaSP_SP"].ToString(); _sp.TenSP_SP = _dtSP.Rows[i]["TenSP_SP"].ToString(); _sp.NSP_SP.TenNSP_NSP = _dtSP.Rows[i]["TenNSP_NSP"].ToString(); _sp.SoLuong_SP = Convert.ToInt32(_dtSP.Rows[i]["SoLuong_SP"].ToString()); _ListSP.Add(_sp); } } return(_ListSP); }
public void capnhatsoluong(SanPhamPublic sp) { cmd.CommandText = $"update SAN_PHAM set SoLuong = { sp.SOLUONG} where MaSP = '{ sp.MASP}'"; cmd.CommandType = CommandType.Text; cmd.Connection = con.Connection; try { con.OpenConn(); cmd.ExecuteNonQuery(); } catch (Exception ex) { throw ex; } finally { cmd.Dispose(); con.CloseConn(); } }
//Nút hủy sản phẩm private void btnXoa_Click(object sender, RoutedEventArgs e) { SanPhamPublic _sp = (SanPhamPublic)dgSanPhamNhapMua.SelectedItem; var _spRemove = _ListSpNhap.Single(r => r.MaSP_SP == _sp.MaSP_SP); _ListSpNhap.Remove(_spRemove); dgSanPhamNhapMua.ItemsSource = _ListSpNhap; dgSanPhamNhapMua.Items.Refresh(); lbTongSP.Content = _ListSpNhap.Sum(item => item.SoLuong_SP).ToString(); int _TongTienNhap = 0; for (int i = 0; i < _ListSpNhap.Count; i++) { _TongTienNhap = _TongTienNhap + Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_ListSpNhap[i].ThanhTien_SP)); } lbTongTien.Content = UntilitiesBusiness.ThemDauPhay(_TongTienNhap.ToString()); }
//Thêm mới sản phẩm public static bool ThemSanPham(SanPhamPublic _sp) { SqlCommand _cmd = new SqlCommand(); _cmd.CommandType = CommandType.StoredProcedure; _cmd.CommandText = "[Thêm mới sản phẩm]"; _cmd.Parameters.AddWithValue("@MaSP_SP", _sp.MaSP_SP); _cmd.Parameters.AddWithValue("@TenSP_SP", _sp.TenSP_SP); _cmd.Parameters.AddWithValue("@GiaNhap_SP", _sp.GiaNhap_SP); _cmd.Parameters.AddWithValue("@GiaBanLe_SP", _sp.GiaBanLe_SP); _cmd.Parameters.AddWithValue("@GiaBanSi_SP", _sp.GiaBanSi_SP); _cmd.Parameters.AddWithValue("@MaNCC_SP", _sp.NCC_SP.MaNCC_NCC); _cmd.Parameters.AddWithValue("@MaNSP_SP", _sp.NSP_SP.MaNSP_NSP); _cmd.Parameters.AddWithValue("@MaDVT_SP", _sp.DVT_SP.MaDVT_DVT); _cmd.Parameters.AddWithValue("@GhiChu_SP", _sp.GhiChu_SP); _cmd.Parameters.AddWithValue("@CKPhanTram_SP", _sp.CKPhanTram_SP); _cmd.Parameters.AddWithValue("@Anh_SP", _sp.Anh_SP); return(Conn.Execute(_cmd)); }
public bool themSanPham(SanPhamPublic sp) { cmd.CommandText = "insert into SAN_PHAM(MaSP, TenSP, MaNCC, GiaSP, Soluong) values ('" + sp.MASP + "','" + sp.TENSP + "','" + sp.TenNCC + "', '" + sp.GIASP + "', '" + sp.SOLUONG + "')"; cmd.CommandType = CommandType.Text; cmd.Connection = con.Connection; try { con.OpenConn(); cmd.ExecuteNonQuery(); return(true); } catch (Exception ex) { throw ex; } finally { cmd.Dispose(); con.CloseConn(); } }
private void TimKiemSP(object sender, EventArgs e) { NhapMua_TimKiemSPPresentation wpf_tim = (NhapMua_TimKiemSPPresentation)sender; List <SanPhamPublic> _lstSP = wpf_tim._ListSPChon; foreach (SanPhamPublic _sp in _lstSP) { //Kiểm tra nếu trong ds chưa có thì thêm SanPhamPublic _result = _dsSanPham.Find(item => item.MaSP_SP == txtMaSP.Text.Trim().ToUpper()); if (_result == null) { _dsSanPham.Add(_sp); } } dgDsSanPham.ItemsSource = _dsSanPham; dgDsSanPham.Items.Refresh(); txtMaSP.Focus(); txtMaSP.SelectAll(); }
public bool suaSanPham(SanPhamPublic sp) { cmd.CommandText = "update SAN_PHAM set TenSP = '" + sp.TENSP + "', MaNCC = '" + sp.TenNCC + "', GiaSP = '" + sp.GIASP + "', SoLuong = '" + sp.SOLUONG + "' where MaSP = '" + sp.MASP + "'"; cmd.CommandType = CommandType.Text; cmd.Connection = con.Connection; try { con.OpenConn(); cmd.ExecuteNonQuery(); return(true); } catch (Exception ex) { throw ex; } finally { cmd.Dispose(); con.CloseConn(); } }
public bool suaSL(DataTable dtChiTietDonHang) { foreach (DataRow CTDonHang in dtChiTietDonHang.Rows) { SanPhamPublic SP = new SanPhamPublic(); SanPhamBUS spbus = new SanPhamBUS(); try { SP.MASP = CTDonHang.Field <string>("MaSP"); int slcu = spbus.LaySanPham(SP).SOLUONG; int slt = CTDonHang.Field <int>("SoLuong"); SP.SOLUONG = slcu - slt; spbus.capnhatsoluong(SP); } catch (Exception ex) { throw ex; } } return(true); }
//Nút chọn private void btnChon_Click(object sender, RoutedEventArgs e) { #region 1.Lấy danh sách sp dc chọn _ListSPChon = new List <SanPhamPublic>(); SanPhamPublic _sp; if (dgSP.SelectedItems.Count > 0)//Nếu có sp dc chọn { for (int i = 0; i < dgSP.SelectedItems.Count; i++) { DataRowView _drvSp = (DataRowView)dgSP.SelectedItems[i]; _sp = new SanPhamPublic(); _sp.MaSP_SP = _drvSp["MaSP_SP"].ToString(); _sp.TenSP_SP = _drvSp["TenSP_SP"].ToString(); _sp.GiaNhap_SP = _drvSp["GiaNhap_SP"].ToString(); _sp.GiaBanLe_SP = _drvSp["GiaBanLe_SP"].ToString(); _sp.GiaBanSi_SP = _drvSp["GiaBanSi_SP"].ToString(); _sp.NCC_SP.MaNCC_NCC = _drvSp["MaNCC_SP"].ToString(); _sp.NSP_SP.MaNSP_NSP = _drvSp["MaNSP_SP"].ToString(); _sp.DVT_SP.MaDVT_DVT = _drvSp["MaDVT_SP"].ToString(); _sp.GhiChu_SP = _drvSp["GhiChu_SP"].ToString(); _sp.SoLuong_SP = 0; //Khởi tạo số lượng hàng nhập bằng 0 _sp.CKPhanTram_SP = Convert.ToInt32(_drvSp["CKPhanTram_SP"].ToString()); _sp.Anh_SP = _drvSp["Anh_SP"].ToString(); _sp.NgayTao_SP = Convert.ToDateTime(_drvSp["NgayTao_SP"].ToString()); _ListSPChon.Add(_sp); } } #endregion #region 2. Gọi phương thức thêm sp vào list hàng nhập EventHandler _eh = _TimKiemSP; if (_eh != null) { _eh(this, e); } this.Close(); #endregion }
//Sự kiện sửa số lượng private void SuaSanPham(object sender, EventArgs e) { #region 1.Lấy thông tin (thay đổi số lượng) NhapMuaSuaPresentation wpf = (NhapMuaSuaPresentation)sender; SanPhamPublic _sp = wpf._sp; #endregion #region 2. Cập nhật lại thông tin list hàng nhập int _SoLuongNhap = _sp.SoLuong_SP; int _GiaNhap = Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_sp.GiaNhap_SP)); int _ThanhTien = _SoLuongNhap * _GiaNhap; SanPhamPublic _result = _ListSpNhap.Find(item => item.MaSP_SP == _sp.MaSP_SP); if (_result != null) { _ListSpNhap.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().SoLuong_SP = _sp.SoLuong_SP; _ListSpNhap.Where(u => u.MaSP_SP == _sp.MaSP_SP).First().ThanhTien_SP = UntilitiesBusiness.ThemDauPhay(_ThanhTien.ToString()); } dgSanPhamNhapMua.ItemsSource = _ListSpNhap; dgSanPhamNhapMua.Items.Refresh(); HienThiTongTien(); #endregion }
//Nút sửa hàng mua private void btnSuaSP_Click(object sender, RoutedEventArgs e) { //Lấy thông tin sp SanPhamPublic _spTemp = (dgDanhSachSanPham.SelectedItem as SanPhamPublic); SanPhamPublic _sp = new SanPhamPublic(); _sp.MaSP_SP = _spTemp.MaSP_SP; _sp.TenSP_SP = _spTemp.TenSP_SP; _sp.GiaNhap_SP = _spTemp.GiaNhap_SP; _sp.GiaBan = _spTemp.GiaBan; _sp.SoLuong_SP = _spTemp.SoLuong_SP; _sp.CKTienMat = _spTemp.CKTienMat; _sp.CKPhanTram_SP = _spTemp.CKPhanTram_SP; _sp.DVT_SP.TenDVT_DVT = _spTemp.DVT_SP.TenDVT_DVT; txtMaHang.Focus(); //Hiển thị wpf sửa BanHangSuaHangMuaPresentation wpf = new BanHangSuaHangMuaPresentation(); wpf._SuaSanPham += new EventHandler(SuaSPMua); wpf._sp = _sp; wpf.ShowDialog(); }
//Sửa thông tin sản phẩm public static bool SuaSanPham(SanPhamPublic _sp) { return(SanPhamDataAccess.SuaSanPham(_sp)); }
//Thêm mới sản phẩm public static bool ThemSanPham(SanPhamPublic _sp) { return(SanPhamDataAccess.ThemSanPham(_sp)); }
//Nút mua hàng tiếp -- Bỏ chưa làm private void btnTiepTucMua_Click(object sender, RoutedEventArgs e) { #region 1.Lấy thông tin #endregion #region 2. Hủy hóa đơn cũ if (_hoaDon != null) { TraHangBusiness.HuyHoaDon(_hoaDon); } else { MessageBox.Show("Hóa đơn hủy rỗng!"); } #endregion #region 3.Lưu lịch sử bán hàng LichSuBanHangPublic _lsbh = new LichSuBanHangPublic(); _lsbh.MaLSBH_LSBH = UntilitiesBusiness.GetNextID("tbl_LICHSUBANHANG", "MaLSBH_LSBH", "LS.", 10); _lsbh.NhanVienThucHien_LSBH.MaNV_NV = "NV00001"; _lsbh.SoHD_LSBH.SoHD_HD = _hoaDon.SoHD_HD; _lsbh.MoTa_LSBH = "Khách trả hàng"; _lsbh.ThoiGian_LSBH = DateTime.Now; LichSuBanHangBusiness.ThemLichSuBanHang(_lsbh); #endregion #region 4.Chuyển sang giao diện bán hàng //Chuẩn bị thông tin truyền sang //Tạo hóa đơn mới _hoaDonMoi.SoHD_HD = UntilitiesBusiness.GetNextID("tbl_HOADON", "SoHD_HD", "HD.", 10); _hoaDonMoi.NgayLap_HD = DateTime.Now; _hoaDonMoi.KhachHang_HD = _hoaDon.KhachHang_HD; _hoaDonMoi.NguoiLap_HD.MaNV_NV = _hoaDon.NguoiLap_HD.MaNV_NV; _hoaDonMoi.MaGiamGia.MaThe_MGG = _hoaDon.MaGiamGia.MaThe_MGG; _hoaDonMoi.BanLe_HD = _hoaDon.BanLe_HD; _hoaDonMoi.DangDung_HD = true; _hoaDonMoi.TienKhachTraTruoc = _TienDaTra; _lstSpTiepTucMua = new List <SanPhamPublic>(); SanPhamPublic _sp; foreach (HangMuaPubLic _hm in _lstHangMua) { _sp = new SanPhamPublic(); _sp.STT = _lstSpTiepTucMua.Count + 1; _sp.MaSP_SP = _hm.SanPham.MaSP_SP; _sp.TenSP_SP = _hm.SanPham.TenSP_SP; _sp.SoLuong_SP = _hm.SoLuong; _sp.CKPhanTram_SP = _hm.ChietKhauPhanTram; _sp.CKTienMat = _hm.ChietKhauTienMat; _sp.GiaNhap_SP = _hm.GiaNhap_HM; _sp.GiaBan = _hm.GiaBan_HM; _sp.DVT_SP.TenDVT_DVT = _hm.SanPham.DVT_SP.TenDVT_DVT; _sp.ThanhTien_SP = UntilitiesBusiness.ThemDauPhay(_hm.ThanhTien.ToString()); _lstSpTiepTucMua.Add(_sp); } EventHandler _eh = _TiepTucMua; if (_eh != null) { _eh(this, e); } #endregion }
//Phương thức thanh toán - trả sp private void ThanhToanTraSp(object sender, EventArgs e) { #region 1.Lấy thông tin #endregion #region 2. Hủy hóa đơn cũ if (_hoaDon != null) { TraHangBusiness.HuyHoaDon(_hoaDon); } else { MessageBox.Show("Hóa đơn hủy rỗng!"); } #endregion #region 3.Lưu lịch sử bán hàng LichSuBanHangPublic _lsbh = new LichSuBanHangPublic(); _lsbh.MaLSBH_LSBH = UntilitiesBusiness.GetNextID("tbl_LICHSUBANHANG", "MaLSBH_LSBH", "LS.", 10); _lsbh.NhanVienThucHien_LSBH = _NhanVien; _lsbh.SoHD_LSBH.SoHD_HD = _hoaDon.SoHD_HD; _lsbh.MoTa_LSBH = "Khách trả hàng"; _lsbh.ThoiGian_LSBH = DateTime.Now; LichSuBanHangBusiness.ThemLichSuBanHang(_lsbh); #endregion #region 4.Tạo hóa đơn mới nếu còn hàng if (_lstHangMua == null) { goto go; } if (_lstHangMua.Count == 0) { goto go; } //Tạo hóa đơn mới _hoaDonMoi.SoHD_HD = UntilitiesBusiness.GetNextID("tbl_HOADON", "SoHD_HD", "HD.", 10); _hoaDonMoi.NgayLap_HD = DateTime.Now; _hoaDonMoi.KhachHang_HD = _hoaDon.KhachHang_HD; _hoaDonMoi.NguoiLap_HD = _NhanVien; _hoaDonMoi.MaGiamGia.MaThe_MGG = _hoaDon.MaGiamGia.MaThe_MGG; _hoaDonMoi.BanLe_HD = _hoaDon.BanLe_HD; _hoaDonMoi.DangDung_HD = true; ////Tạo danh sách hàng mua cho hóa đơn mới List <SanPhamPublic> _lstSpMua = new List <SanPhamPublic>(); SanPhamPublic _sp; foreach (HangMuaPubLic _hm in _lstHangMua) { _sp = new SanPhamPublic(); _sp.MaSP_SP = _hm.SanPham.MaSP_SP; _sp.TenSP_SP = _hm.SanPham.TenSP_SP; _sp.SoLuong_SP = _hm.SoLuong; _sp.CKPhanTram_SP = _hm.ChietKhauPhanTram; _sp.CKTienMat = _hm.ChietKhauTienMat; _sp.GiaNhap_SP = _hm.GiaNhap_HM; _sp.GiaBan = _hm.GiaBan_HM; _sp.DVT_SP.TenDVT_DVT = _hm.SanPham.DVT_SP.TenDVT_DVT; _sp.ThanhTien_SP = UntilitiesBusiness.ThemDauPhay(_hm.ThanhTien.ToString()); _lstSpMua.Add(_sp); } ////Lưu hóa đơn mới BanHangBusiness.BanHang(_hoaDonMoi, _lstSpMua, false); ////Lưu lịch sử bán hàng //_lsbh = new LichSuBanHangPublic(); //_lsbh.MaLSBH_LSBH = UntilitiesBusiness.GetNextID("tbl_LICHSUBANHANG", "MaLSBH_LSBH", "LS.", 10); //_lsbh.NhanVienThucHien_LSBH = _NhanVien; //_lsbh.SoHD_LSBH.SoHD_HD = _hoaDonMoi.SoHD_HD; //_lsbh.MoTa_LSBH = "Khách mua hàng"; //_lsbh.ThoiGian_LSBH = DateTime.Now; //LichSuBanHangBusiness.ThemLichSuBanHang(_lsbh); //In hóa đơn mới nếu có //Chuẩn bị dữ liệu Pos_ds _Pos_ds = new Pos_ds(); DataTable _dtHoaDonBanLe = _Pos_ds.tbl_HOADON; DataRow _drHoaDonBanLe; foreach (SanPhamPublic _spHoaDon in _lstSpMua) { _drHoaDonBanLe = _dtHoaDonBanLe.NewRow(); _drHoaDonBanLe["MaSP_SP"] = _spHoaDon.MaSP_SP; _drHoaDonBanLe["TenSP_SP"] = _spHoaDon.TenSP_SP; _drHoaDonBanLe["GiaBan_SP"] = _spHoaDon.GiaBan; _drHoaDonBanLe["DVT_SP"] = _spHoaDon.DVT_SP.TenDVT_DVT; _drHoaDonBanLe["SoLuong_SP"] = _spHoaDon.SoLuong_SP; _drHoaDonBanLe["ChietKhau_SP"] = _spHoaDon.CKTienMat; _drHoaDonBanLe["ThanhTien_SP"] = _spHoaDon.ThanhTien_SP; _dtHoaDonBanLe.Rows.Add(_drHoaDonBanLe); } _hoaDonMoi.TongSoLuongSP = _lstSpMua.Sum(item => item.SoLuong_SP); HoaDonBanLe_UPresentation wpf_HoaDon = new HoaDonBanLe_UPresentation(); wpf_HoaDon._dtHoaDon = _dtHoaDonBanLe; wpf_HoaDon._hoaDon = _hoaDonMoi; wpf_HoaDon.ShowDialog(); #endregion go: #region 5.Khởi tạo lại dữ liệu: danh sách hàng trả hàng mua _lstHangMua.Clear(); _lstHangTra.Clear(); _hoaDon = null; _hoaDonMoi = null; //Hiển thị dgHangMua.ItemsSource = _lstHangMua; dgHangMua.Items.Refresh(); libHangTra.ItemsSource = _lstHangTra; libHangTra.Items.Refresh(); lbSoHD.Content = ""; lbNgayLap.Content = ""; lbNhanVien.Content = ""; lbKhachHang.Content = ""; lbTongTien.Content = "0"; lbTongCkSP.Content = "0"; lbTongCKHD.Content = "0"; lbVoucher.Content = "0"; lbMaGiamGia.Content = "0"; lbThanhTien.Content = "0"; btnThanhToan.IsEnabled = false; btnTiepTucMua.IsEnabled = false; btnHoDon.IsEnabled = true; txtSoHD.Focus(); #endregion }
//Import to database private void ImportDatabase(string _path) { DataTable _dt = new DataTable(); _dt = SanPhamBusiness.ImportToDatatable(_path); if (_dt.Rows.Count == 0) { MessageBox.Show("Tập tin excel đang được mở hoặc không đúng cấu trúc"); return; } _TongBanGhi = _dt.Rows.Count; int i = 0; //Tiến trình foreach (DataRow _dr in _dt.Rows) { #region 1.Kiểm tra từng bản ghi trong data table if (_dr["MASP"].ToString().Equals(""))//Mã không được rỗng { _ThatBai++; goto go; } //if (UntilitiesBusiness.CheckEist("tbl_SANPHAM", "MaSP_SP", _dr["MASP"].ToString().Trim()))//Mã đã có trong csdl chưa //{ _ThatBai++; goto go; } if (_dr["TENSP"].ToString().Equals(""))//Tên không được rỗng { _ThatBai++; goto go; } if (_dr["GIANHAP"].ToString().Equals("") || _dr["GIABANLE"].ToString().Equals("") || _dr["GIABANSI"].ToString().Equals("")) { goto go; } if (_dr["MANCC"].ToString().Equals("") || _dr["GIABANLE"].ToString().Equals("") || _dr["GIABANSI"].ToString().Equals("") || _dr["GIABANSI"].ToString().Equals("")) { _ThatBai++; goto go; } #endregion #region 2. Lấy thông tin SanPhamPublic _sp = new SanPhamPublic(); _sp.MaSP_SP = UntilitiesBusiness.GetNextID("tbl_SANPHAM", "MaSP_SP", "SP.", 5); _sp.TenSP_SP = _dr["TENSP"].ToString(); _sp.GiaNhap_SP = _dr["GIANHAP"].ToString(); _sp.GiaBanLe_SP = _dr["GIABANLE"].ToString(); _sp.GiaBanSi_SP = _dr["GIABANSI"].ToString(); _sp.NCC_SP.MaNCC_NCC = _dr["MANCC"].ToString(); _sp.NSP_SP.MaNSP_NSP = _dr["MANSP"].ToString(); _sp.DVT_SP.MaDVT_DVT = _dr["MADVT"].ToString(); _sp.GhiChu_SP = _dr["GHICHU"].ToString(); _sp.CKPhanTram_SP = Convert.ToInt32(_dr["CHIETKHAU"].ToString()); _sp.Anh_SP = ""; #endregion #region 3. Thêm vào csdl SanPhamBusiness.ThemSanPham(_sp); _ThanhCong++; #endregion #region 4.Cập nhật trạng thái progessbar go: i++; worker.ReportProgress(i * 100 / _dt.Rows.Count); #endregion } }
//Thêm hàng vào danh sách hàng mua private void ThemHangVaoDsHangMua(string _MaSP) { //Lấy thông tin sp SanPhamPublic _sp = new SanPhamPublic(); DataTable _dtSp = BanHangBusiness.LaySpTheoMa(_MaSP).Tables[0]; DataView _dvSP = new DataView(_dtSp); _dvSP.Sort = "MaSP_SP"; int _index = _dvSP.Find(_MaSP); if (_index == -1) { lbWarning.Visibility = System.Windows.Visibility.Visible; lbWarning.Text = "Mã sản phẩm không tồn tại. Vui lòng kiểm tra lại!"; txtMaHang.Focus(); txtMaHang.SelectAll(); return; } int _soLuongConTrongKho = Convert.ToInt32(_dvSP[_index]["SoLuong_SP"].ToString()); _sp.STT = _dsSPMua.Count + 1; _sp.MaSP_SP = _dvSP[_index]["MaSP_SP"].ToString(); _sp.TenSP_SP = _dvSP[_index]["TenSP_SP"].ToString(); _sp.GiaNhap_SP = _dvSP[_index]["GiaNhap_SP"].ToString(); _sp.GiaBanLe_SP = _dvSP[_index]["GiaBanLe_SP"].ToString(); _sp.GiaBanSi_SP = _dvSP[_index]["GiaBanSi_SP"].ToString(); _sp.NCC_SP.MaNCC_NCC = _dvSP[_index]["MaNCC_SP"].ToString(); _sp.NSP_SP.MaNSP_NSP = _dvSP[_index]["MaNSP_SP"].ToString(); _sp.DVT_SP.MaDVT_DVT = _dvSP[_index]["MaDVT_SP"].ToString(); _sp.DVT_SP.TenDVT_DVT = _dvSP[_index]["TenDVT_DVT"].ToString(); _sp.GhiChu_SP = _dvSP[_index]["GhiChu_SP"].ToString(); _sp.SoLuong_SP = 1; _sp.CKPhanTram_SP = Convert.ToInt32(_dvSP[_index]["CKPhanTram_SP"].ToString()); _sp.Anh_SP = _dvSP[_index]["Anh_SP"].ToString(); _sp.NgayTao_SP = Convert.ToDateTime(_dvSP[_index]["NgayTao_SP"].ToString()); //Thêm hàng vào giỏ hàng if (_dsSPMua.Count == 0)//trong giỏ chưa có sp nào { //Tắt kiểu bán - 1 hóa đơn chỉ 1 kiểu bán rdBanLe.IsEnabled = false; rdBanBuon.IsEnabled = false; _hoaDon.BanLe_HD = rdBanLe.IsChecked == true ? true : false; //Tính thành tiền sp _sp.GiaBan = UntilitiesBusiness.ThemDauPhay(_hoaDon.BanLe_HD == true ? _sp.GiaBanLe_SP : _sp.GiaBanSi_SP); int _giaBan = Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_sp.GiaBan)); int _soLuong = _sp.SoLuong_SP; float _chietKhau = _sp.CKPhanTram_SP; int _chietKhauTienMat = (int)(_giaBan * _chietKhau) / 100; _sp.CKTienMat = UntilitiesBusiness.ThemDauPhay(_chietKhauTienMat.ToString()); _sp.ThanhTien_SP = UntilitiesBusiness.ThemDauPhay(ThanhTien1Sp(_giaBan, _soLuong, _chietKhau).ToString()); _dsSPMua.Add(_sp); } else { //Kiểm tra trong giỏ hàng có sp này chưa: có thì công số lượng, chưa thì thêm vào giỏ hàng SanPhamPublic _result = _dsSPMua.Find(item => item.MaSP_SP == _sp.MaSP_SP); if (_result != null)//Đã có trong giỏ hàng => cộng thêm số lượng { //Kiểm tra số lượng sp trong kho if (_result.SoLuong_SP == _soLuongConTrongKho) { lbWarning.Visibility = System.Windows.Visibility.Visible; lbWarning.Text = "Chỉ còn " + _result.SoLuong_SP + " " + _result.TenSP_SP + "trong kho."; txtMaHang.Focus(); txtMaHang.SelectAll(); return; } //Cộng số lượng _result.SoLuong_SP = _result.SoLuong_SP + _sp.SoLuong_SP; //Tính lại ck tiền mặt và thành tiền int _giaBan = Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_result.GiaBan)); int _soLuong = _dsSPMua.Where(item => item.MaSP_SP == _sp.MaSP_SP).First().SoLuong_SP; float _chietKhau = _result.CKPhanTram_SP; int _chietKhauTienMat = (int)(_soLuong * (_giaBan * _chietKhau) / 100); _result.CKTienMat = UntilitiesBusiness.ThemDauPhay(_chietKhauTienMat.ToString()); _result.ThanhTien_SP = UntilitiesBusiness.ThemDauPhay(ThanhTien1Sp(_giaBan, _soLuong, _chietKhau).ToString()); } else//Chưa có trong giỏ hàng { //Tính thành tiền sp _sp.GiaBan = UntilitiesBusiness.ThemDauPhay(_hoaDon.BanLe_HD == true ? _sp.GiaBanLe_SP : _sp.GiaBanSi_SP); int _giaBan = Convert.ToInt32(UntilitiesBusiness.BoDauPhay(_sp.GiaBan)); int _soLuong = _sp.SoLuong_SP; float _chietKhau = _sp.CKPhanTram_SP; int _chietKhauTienMat = (int)(_giaBan * _chietKhau) / 100; _sp.CKTienMat = UntilitiesBusiness.ThemDauPhay(_chietKhauTienMat.ToString()); _sp.ThanhTien_SP = UntilitiesBusiness.ThemDauPhay(ThanhTien1Sp(_giaBan, _soLuong, _chietKhau).ToString()); _dsSPMua.Add(_sp); } } }