Exemple #1
0
        private void frmXuatPhieuGiaoHang_Load(object sender, EventArgs e)
        {
            PhieuGiaoHang report = new PhieuGiaoHang();

            report.SetDataSource(PhieuGiaoHangBUS.XuatPhieuGiaoHang(MaPG));
            crvPhieuGiaoHang.ReportSource = report;
        }
 private void frmPhieuGiaoHang_Load(object sender, EventArgs e)
 {
     tsbtnXoa.Enabled         = false;
     dgvDanhSachPG.DataSource = PhieuGiaoHangBUS.DanhSachPG();
     Custom1();
     dgvDanhSachPG.ClearSelection();
 }
        private void btnLapPhieuMoi_Click(object sender, EventArgs e)
        {
            i = 0;
            btnLapPhieuMoi.Enabled = false;
            btnThemSP.Enabled      = true;
            btnIn.Enabled          = true;
            cboMaDH.Enabled        = false;
            txtMaPGNCC.ReadOnly    = true;
            txtSoPG.Text           = PhieuGiaoHangBUS.GetIDPhieuGiao();
            txtMaSP.ResetText();
            txtTenSP.ResetText();
            txtSoLuong.ResetText();
            dtkNgayGiao.Value = DateTime.Now;
            dgvDanhSach.Rows.Clear();
            // Thêm vào auto complete.
            AutoCompleteStringCollection auto = new AutoCompleteStringCollection();

            foreach (DataRow row in SanPhamBUS.DanhSachSPTheoDDH(cboMaDH.SelectedValue.ToString()).Rows)
            {
                auto.Add(row["MaSanPham"].ToString());
            }
            txtMaSP.AutoCompleteMode         = AutoCompleteMode.Suggest;
            txtMaSP.AutoCompleteSource       = AutoCompleteSource.CustomSource;
            txtMaSP.AutoCompleteCustomSource = auto;
        }
        private void btnThemSP_Click(object sender, EventArgs e)
        {
            int j = 0;

            btnIn.Enabled = true;
            ChiTietPhieuGiaoHangDTO CT = new ChiTietPhieuGiaoHangDTO();

            CT.MaSanPham = txtMaSP.Text;
            if (txtSoLuong.Text == "")
            {
                CT.SoLuong = 0;
            }
            else
            {
                CT.SoLuong = Int32.Parse(txtSoLuong.Text);
            }
            if (PhieuGiaoHangBUS.KiemTra(CT, txtTenSP.Text) != "")
            {
                MessageBox.Show(string.Format("{0}", PhieuGiaoHangBUS.KiemTra(CT, txtTenSP.Text)), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                // Đưa giá trị vào DataGridView
                if (dgvDanhSach.Rows.Count > 0)
                {
                    foreach (DataGridViewRow row in dgvDanhSach.Rows)
                    {
                        if (txtMaSP.Text == dgvDanhSach.Rows[j].Cells[0].Value.ToString())
                        {
                            dgvDanhSach.Rows[j].Cells[2].Value = (Int32.Parse(dgvDanhSach.Rows[j].Cells[2].Value.ToString()) + Int32.Parse(txtSoLuong.Text)).ToString();
                            break;
                        }
                        else if (j == dgvDanhSach.Rows.Count - 1)
                        {
                            dgvDanhSach.Rows.Add();
                            dgvDanhSach.Rows[i].Cells[0].Value = txtMaSP.Text;
                            dgvDanhSach.Rows[i].Cells[1].Value = txtTenSP.Text;
                            dgvDanhSach.Rows[i].Cells[2].Value = txtSoLuong.Text;
                            i++;
                            break;
                        }
                        j++;
                    }
                }
                else
                {
                    dgvDanhSach.Rows.Add();
                    dgvDanhSach.Rows[i].Cells[0].Value = txtMaSP.Text;
                    dgvDanhSach.Rows[i].Cells[1].Value = txtTenSP.Text;
                    dgvDanhSach.Rows[i].Cells[2].Value = txtSoLuong.Text;
                    i++;
                }
            }
        }
 private void dgvDanhSachPG_KeyUp(object sender, KeyEventArgs e)
 {
     tsbtnXoa.Enabled        = true;
     dgvChiTietPG.DataSource = PhieuGiaoHangBUS.DanhSachCTPG(dgvDanhSachPG.CurrentRow.Cells[0].Value.ToString());
     Custom2();
     dgvChiTietPG.ClearSelection();
     dgvDanhSachPD.DataSource = DonDatHangBUS.DanhSachDDHTheoMaPG(dgvDanhSachPG.CurrentRow.Cells[0].Value.ToString());
     Custom3();
     dgvChiTietPD.DataSource = DonDatHangBUS.DanhSachCTPD(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString());
     Custom4();
     dgvChiTietPD.ClearSelection();
 }
 void LoadData()
 {
     if (dgvDanhSachPD.Rows.Count > 0)
     {
         // Cập nhật trạng thái đơn dặt hàng.
         if (DonDatHangBUS.KiemTraSLHang(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString()) == 0)
         {
             if (DonDatHangBUS.UpdateTrangThai(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString(), 3) == false)
             {
                 MessageBox.Show("Cập nhật trạng thái thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else if (DonDatHangBUS.KiemTraSLHang(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString()) == 1)
         {
             if (DonDatHangBUS.UpdateTrangThai(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString(), 2) == false)
             {
                 MessageBox.Show("Cập nhật trạng thái thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else if (DonDatHangBUS.KiemTraSLHang(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString()) == -1)
         {
             if (DonDatHangBUS.UpdateTrangThai(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString(), 1) == false)
             {
                 MessageBox.Show("Cập nhật trạng thái thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         // Load data.
         dgvDanhSachPG.DataSource = PhieuGiaoHangBUS.DanhSachPG();
         Custom1();
         dgvDanhSachPG.ClearSelection();
         if (dgvDanhSachPG.Rows.Count > 0)
         {
             dgvChiTietPG.DataSource = PhieuGiaoHangBUS.DanhSachCTPG(dgvDanhSachPG.CurrentRow.Cells[0].Value.ToString());
             Custom2();
             dgvChiTietPG.ClearSelection();
             dgvDanhSachPD.DataSource = DonDatHangBUS.DanhSachDDHTheoMaPG(dgvDanhSachPG.CurrentRow.Cells[0].Value.ToString());
             Custom3();
             dgvChiTietPD.DataSource = DonDatHangBUS.DanhSachCTPD(dgvDanhSachPD.CurrentRow.Cells[0].Value.ToString());
             Custom4();
             dgvChiTietPD.ClearSelection();
         }
         else
         {
             dgvChiTietPG.DataSource  = null;
             dgvDanhSachPD.DataSource = null;
             dgvChiTietPD.DataSource  = null;
         }
     }
 }
 private void tsbtnXoa_Click(object sender, EventArgs e)
 {
     if (DonDatHangBUS.KiemTraTrangTháiDDH(Int32.Parse(dgvDanhSachPD.CurrentRow.Cells[3].Value.ToString())) == true)
     {
         if (PhieuGiaoHangBUS.XoaPG(dgvDanhSachPG.CurrentRow.Cells[0].Value.ToString()) == true)
         {
             LoadData();
         }
         else
         {
             MessageBox.Show("Xóa thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
     else
     {
         MessageBox.Show("Không thể xóa phiếu giao hàng này vì đã nhận đủ hàng.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
 private void btnIn_Click(object sender, EventArgs e)
 {
     if (PhieuGiaoHangBUS.KiemTraChiTietPhieuGiao(dgvDanhSach.RowCount) == "")
     {
         // Thêm phiếu giao mới.
         PhieuGiaoHangDTO PG = new PhieuGiaoHangDTO();
         PG.MaPhieuGiaoHang      = txtSoPG.Text;
         PG.NgayGiao             = dtkNgayGiao.Value;
         PG.MaDonDatHang         = cboMaDH.SelectedValue.ToString();
         PG.MaPhieuGiaoHangNhaCC = txtMaPGNCC.Text;
         txtMaPGNCC.ReadOnly     = false;
         if (PhieuGiaoHangBUS.ThemPG(PG) == true)
         {
             btnLapPhieuMoi.Enabled = true;
             cboMaDH.Enabled        = true;
             // Thêm chi tiết phiếu giao.
             for (int k = 0; k < dgvDanhSach.Rows.Count; k++)
             {
                 ChiTietPhieuGiaoHangDTO CT = new ChiTietPhieuGiaoHangDTO();
                 CT.MaPhieuGiao = txtSoPG.Text;
                 CT.MaSanPham   = dgvDanhSach.Rows[k].Cells[0].Value.ToString();
                 CT.SoLuong     = int.Parse(dgvDanhSach.Rows[k].Cells[2].Value.ToString());
                 if (PhieuGiaoHangBUS.ThemCTPG(CT) == true)
                 {
                     // Update số lượng tồn.
                     if (PhieuGiaoHangBUS.UpdateSLTsaunhanhang(dgvDanhSach.Rows[k].Cells[0].Value.ToString(), int.Parse(dgvDanhSach.Rows[k].Cells[2].Value.ToString())) == false)
                     {
                         MessageBox.Show("Cập nhật số lượng tồn thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                     }
                 }
                 else
                 {
                     MessageBox.Show("Thêm chi tiết phiếu giao hàng thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
             btnIn.Enabled     = false;
             btnThemSP.Enabled = false;
             // Cập nhật trạng thái đơn dặt hàng.
             if (DonDatHangBUS.KiemTraSLHang(cboMaDH.SelectedValue.ToString()) == 0)
             {
                 if (DonDatHangBUS.UpdateTrangThai(cboMaDH.SelectedValue.ToString(), 3) == false)
                 {
                     MessageBox.Show("Cập nhật trạng thái thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
             else if (DonDatHangBUS.KiemTraSLHang(cboMaDH.SelectedValue.ToString()) == 1)
             {
                 if (DonDatHangBUS.UpdateTrangThai(cboMaDH.SelectedValue.ToString(), 2) == false)
                 {
                     MessageBox.Show("Cập nhật trạng thái thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
             else if (DonDatHangBUS.KiemTraSLHang(cboMaDH.SelectedValue.ToString()) == -1)
             {
                 if (DonDatHangBUS.UpdateTrangThai(cboMaDH.SelectedValue.ToString(), 1) == false)
                 {
                     MessageBox.Show("Cập nhật trạng thái thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
                 }
             }
             // Xuất ra cystal report
             frmXuatPhieuGiaoHang frm = new frmXuatPhieuGiaoHang(txtSoPG.Text);
             this.Hide();
             frm.ShowDialog();
             this.Show();
         }
         else
         {
             MessageBox.Show("Thêm phiếu giao hàng thất bại.", "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
     else
     {
         MessageBox.Show(string.Format("{0}", PhieuGiaoHangBUS.KiemTraChiTietPhieuGiao(dgvDanhSach.RowCount)), "Lỗi", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }