Example #1
0
        //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();
        }
Example #2
0
        //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";
            }
        }
Example #4
0
        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);
            }
        }
Example #5
0
        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);
        }
Example #6
0
 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);
        }
Example #8
0
        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);
        }
Example #10
0
        //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();
            }
        }
Example #11
0
        //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
        }
Example #12
0
        //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);
        }
Example #15
0
 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();
     }
 }
Example #16
0
        //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());
        }
Example #17
0
        //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));
        }
Example #18
0
 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();
     }
 }
Example #19
0
        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();
        }
Example #20
0
 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();
     }
 }
Example #21
0
        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
        }
Example #23
0
        //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
        }
Example #24
0
        //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
        }
Example #29
0
        //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
            }
        }
Example #30
0
        //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);
                }
            }
        }