Ejemplo n.º 1
0
        private void btnThem_Click(object sender, EventArgs e)
        {
            if (this.txtMasp.Text == string.Empty || this.txtSoLuong.Text == string.Empty)
            {
                MessageBox.Show("Bạn chưa điền đầy đủ thông tin !!!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                this.txtMasp.Focus();
                return;
            }
            if (!SanPhamBUS.KiemTraMaSPTonTai(this.txtMasp.Text))
            {
                MessageBox.Show("Mã sản phẩm không tồn tại !!!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                this.txtMasp.Focus();
                return;
            }

            if (!KiemTraSLMasp(this.txtMasp.Text, Convert.ToInt32(this.txtSoLuong.Text)))
            {
                this.txtSoLuong.Focus();
                return;
            }

            if (!KiemTraMaspTonTaiTrongCTHD(this.txtMasp.Text))
            {
                CTHoaDonBanHangBUS.ThemCTHoaDon(new CTHOADONBANHANG
                {
                    MAHD      = hd.MAHD,
                    MASP      = this.txtMasp.Text,
                    SOLUONG   = Convert.ToInt32(this.txtSoLuong.Text.Trim()),
                    DONGIA    = TinhDonGia(this.txtMasp.Text, Convert.ToInt32(this.txtSoLuong.Text)),
                    DVT       = sp.Where(p => p.MASP == this.txtMasp.Text).FirstOrDefault().DVT,
                    TRANGTHAI = true
                });
                MessageBox.Show("Thêm sản phẩm thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                loadDSCTHD(hd.MAHD);
                CapNhatSoLuongSanPham(this.txtMasp.Text, Convert.ToInt32(this.txtSoLuong.Text), 0);
                hd.TONGTIEN = lstcthd.Sum(p => p.DONGIA);
                HoaDonBanHangBUS.CapNhatHoaDon(hd);
                if (CongNoBUS.LayDanhSachCongNo().Where(p => p.MAKH == this.lblMaKH.Text && p.MAHD == hd.MAHD && p.TRANGTHAI == true).FirstOrDefault() != null)
                {
                    CapNhatThongTienCongNo();
                }
                this.dangThayDoiCTHD = false;
                loadThongTinHD(hd.MAHD);
                Reset();
                string lsth = "[" + DateTime.Now.ToString("dd/MM/yyyy-h:m:s") + "] " + this.manv + " đã thêm sản phẩm " + this.txtMasp.Text + " vào chi tiết hóa đơn " + hd.MAHD;
                LichSuHeThongBUS.ThemLSHT(new LICHSUHETHONG
                {
                    NGAYTAO       = DateTime.Now.Date,
                    NV_THAOTAC    = this.manv,
                    VITRI_THAOTAC = this.vitrithaotac,
                    GHICHU        = lsth
                });
            }
            else
            {
                MessageBox.Show("Mã sản phẩm đã tồn tại !!!", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                this.txtMasp.Focus();
                return;
            }
        }
Ejemplo n.º 2
0
 void TaoCTHoaDon()
 {
     foreach (CTHOADONBANHANG ct in lstCTHD)
     {
         ct.MAHD = mahd;
         CTHoaDonBanHangBUS.ThemCTHoaDon(ct);
     }
 }
Ejemplo n.º 3
0
        private void btnSua_Click(object sender, EventArgs e)
        {
            if (this.txtMasp.Text == string.Empty || this.txtSoLuong.Text == string.Empty)
            {
                MessageBox.Show("Bạn chưa chọn dòng sản phẩm muốn cập nhật !!!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            if (!KiemTraSLMasp(this.txtMasp.Text, Convert.ToInt32(this.txtSoLuong.Text)))
            {
                this.txtSoLuong.Focus();
                return;
            }
            CTHOADONBANHANG ct = new CTHOADONBANHANG
            {
                MAHD    = hd.MAHD,
                MASP    = this.txtMasp.Text,
                SOLUONG = Convert.ToInt32(this.txtSoLuong.Text.Trim()),
                DONGIA  = TinhDonGia(this.txtMasp.Text, Convert.ToInt32(this.txtSoLuong.Text)),
                DVT     = sp.Where(p => p.MASP == this.txtMasp.Text).FirstOrDefault().DVT
            };


            if (CTHoaDonBanHangBUS.SuaCTHoaDon(ct))
            {
                MessageBox.Show("Cập nhật thông tin thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                loadDSCTHD(hd.MAHD);
                CapNhatSoLuongSanPham(this.txtMasp.Text, Convert.ToInt32(this.txtSoLuong.Text), 1);
                hd.TONGTIEN = lstcthd.Sum(p => p.DONGIA);
                HoaDonBanHangBUS.CapNhatHoaDon(hd);
                if (CongNoBUS.LayDanhSachCongNo().Where(p => p.MAKH == this.lblMaKH.Text && p.MAHD == hd.MAHD && p.TRANGTHAI == true).FirstOrDefault() != null)
                {
                    CapNhatThongTienCongNo();
                }
                this.dangThayDoiCTHD = false;
                loadThongTinHD(hd.MAHD);
                Reset();
                string lsth = "[" + DateTime.Now.ToString("dd/MM/yyyy-h:m:s") + "] " + this.manv + " đã cập nhật thông tin chi tiết hóa đơn " + hd.MAHD;
                LichSuHeThongBUS.ThemLSHT(new LICHSUHETHONG
                {
                    NGAYTAO       = DateTime.Now.Date,
                    NV_THAOTAC    = this.manv,
                    VITRI_THAOTAC = this.vitrithaotac,
                    GHICHU        = lsth
                });
            }
            else
            {
                MessageBox.Show("Cập nhật thông tin thất bại", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 4
0
        void LoadDSCTHD(string mahd)
        {
            lstCTHD = CTHoaDonBanHangBUS.LayDSCTHD().Where(p => p.MAHD == mahd).ToList();
            lstDSSP = SanPhamBUS.LayDanhSachSP();
            //var kq = from ct in lstCTHD
            //         select ct;
            var kq = from ct in lstCTHD
                     join sp in lstDSSP
                     on ct.MASP equals sp.MASP
                     select new
            {
                ct.MASP,
                sp.TENSP,
                ct.DVT,
                ct.SOLUONG,
                ct.DONGIA,
            };

            this.dgvDataChiTietHD.AutoGenerateColumns = false;
            this.dgvDataChiTietHD.DataSource          = kq.ToList();
        }
Ejemplo n.º 5
0
 private void btnXoa_Click(object sender, EventArgs e)
 {
     if (this.txtMasp.Text == string.Empty || this.txtSoLuong.Text == string.Empty)
     {
         MessageBox.Show("Bạn chưa chọn dòng sản phẩm muốn xóa !!!", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         return;
     }
     if (MessageBox.Show("Bạn có chắc chứ?", "Thông báo", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
     {
         if (CTHoaDonBanHangBUS.XoaCTHoaDon(hd.MAHD, this.txtMasp.Text))
         {
             MessageBox.Show("Xóa thông tin thành công", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
             loadDSCTHD(hd.MAHD);
             CapNhatSoLuongSanPham(this.txtMasp.Text, Convert.ToInt32(this.txtSoLuong.Text), 2);
             hd.TONGTIEN = lstcthd.Sum(p => p.DONGIA);
             HoaDonBanHangBUS.CapNhatHoaDon(hd);
             if (CongNoBUS.LayDanhSachCongNo().Where(p => p.MAKH == this.lblMaKH.Text && p.MAHD == hd.MAHD && p.TRANGTHAI == true).FirstOrDefault() != null)
             {
                 CapNhatThongTienCongNo();
             }
             this.dangThayDoiCTHD = false;
             loadThongTinHD(hd.MAHD);
             Reset();
             string lsth = "[" + DateTime.Now.ToString("dd/MM/yyyy-h:m:s") + "] " + this.manv + " đã xóa sản phẩm " + this.txtMasp.Text + " của chi tiết hóa đơn " + hd.MAHD;
             LichSuHeThongBUS.ThemLSHT(new LICHSUHETHONG
             {
                 NGAYTAO       = DateTime.Now.Date,
                 NV_THAOTAC    = this.manv,
                 VITRI_THAOTAC = this.vitrithaotac,
                 GHICHU        = lsth
             });
         }
         else
         {
             MessageBox.Show("Xóa thông tin thất bại", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
         }
     }
 }
Ejemplo n.º 6
0
 void loadDSCTHD(string mahd)
 {
     lstcthd = CTHoaDonBanHangBUS.LayDSCTHD().Where(p => p.MAHD == mahd).ToList();
     this.dgvCTHD.AutoGenerateColumns = false;
     this.dgvCTHD.DataSource          = lstcthd;
 }
Ejemplo n.º 7
0
 private void timer1_Tick(object sender, EventArgs e)
 {
     lstHD   = HoaDonBanHangBUS.LayDSHoaDon();
     lstCTHD = CTHoaDonBanHangBUS.LayDSCTHD();
     lstDSSP = SanPhamBUS.LayDanhSachSP();
 }