Exemple #1
0
        private void frmChiTietDonHang_Load(object sender, EventArgs e)
        {
            int maDH = frmQuanLyDonHang.gMaDH;

            KhachHangBUS khBus = new KhachHangBUS();
            KhachHangDTO khDto = new KhachHangDTO();

            DonHangBUS dhBus = new DonHangBUS();
            DonHangDTO dhDto = new DonHangDTO();

            ChiTietDonHangBUS ctdhBus = new ChiTietDonHangBUS();

            khDto = khBus.LayThongTinKhachHangTuMaDonHang(maDH);
            dhDto = dhBus.LayBangMaDonHang(maDH);

            cbmTrangThai.DataSource    = TrangThaiDonHangBUS.GetList();
            cbmTrangThai.DisplayMember = "TrangThai";
            cbmTrangThai.ValueMember   = "MaTrangThai";
            cbmTrangThai.SelectedValue = dhDto.TrangThai;

            txtMaKH.Text       = khDto.MaKhachHang.ToString();
            txtTenKH.Text      = khDto.HoTen;
            txtDiaChi.Text     = khDto.DiaChi;
            txtDienThoai.Text  = khDto.DienThoai;
            txtEmail.Text      = khDto.Email;
            txtFacebook.Text   = khDto.Facebook;
            txtTKNganHang.Text = khDto.TKNganHang;

            lbSoLuong.Text       = dhDto.SoLuongSanPham.ToString();
            lbTongTien.Text      = dhDto.TongTien.ToString("n0");
            txtPhiVanChuyen.Text = dhDto.PhiVanChuyen.ToString("n0");

            if (dhDto.HinhThucMua == 0)
            {
                rdGiaSi.Checked = true;
                rdGiaLe.Checked = false;
            }
            else
            {
                rdGiaLe.Checked = true;
                rdGiaSi.Checked = false;
            }

            dt = ctdhBus.LayDanhSachSanPham(maDH);
            dtgvDanhSachSanPham.DataSource = dt;

            DataGridViewImageColumn imageCol = new DataGridViewImageColumn();

            imageCol.Name       = "img";
            imageCol.HeaderText = "Hinh Anh";
            imageCol.Width      = _colWidth;
            dtgvDanhSachSanPham.Columns.Insert(2, imageCol);

            DataGridViewButtonColumn btnColumn = new DataGridViewButtonColumn();

            btnColumn.HeaderText = "";
            btnColumn.Text       = "Xóa";
            btnColumn.UseColumnTextForButtonValue = true;
            dtgvDanhSachSanPham.Columns.Add(btnColumn);

            formatData();
            _firstLoad = false;
        }
        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);
            }
        }