private void tsslchitiet_Click(object sender, EventArgs e)
        {
            if (i < 0)
                return;
            try
            {
                int sl = 0;

                for (int j = 0; j < hienthibaocao.Length; j++)
                {
                    string mahanghoa = dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString();
                    if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                    {
                        sl++;
                    }
                }

                Entities.BCDTTheoHangHoa[] a = new Entities.BCDTTheoHangHoa[sl];
                sl = 0;
                for (int j = 0; j < hienthibaocao.Length; j++)
                {
                    if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                    {
                        a[sl] = hienthibaocao[j];
                        sl++;
                    }
                }
                frmBaoCaorpt b = new frmBaoCaorpt(hienthibaocao, truoc, sau);
                b.ShowDialog();
            }
            catch
            {
            }
        }
        private void dtgvhienthi_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            if (i < 0)
            {
                return;
            }
            try
            {
                int sl = 0;

                for (int j = 0; j < hienthibaocao.Length; j++)
                {
                    if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                    {
                        sl++;
                    }
                }

                Entities.BCDTTheoHangHoa[] a = new Entities.BCDTTheoHangHoa[sl];
                sl = 0;
                for (int j = 0; j < hienthibaocao.Length; j++)
                {
                    if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                    {
                        a[sl] = hienthibaocao[j];
                        sl++;
                    }
                }
                frmBaoCaorpt b = new frmBaoCaorpt(a, truoc, sau);
                b.ShowDialog();
            }
            catch
            {
            }
        }
        private void tsslPdf_Click(object sender, EventArgs e)
        {
            try
            {
                if (i < 0)
                {
                    return;
                }
                saveFileDialog1.Filter   = "PDF |*.pdf";
                saveFileDialog1.FileName = "";
                if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    int sl = 0;

                    for (int j = 0; j < hienthibaocao.Length; j++)
                    {
                        if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                        {
                            sl++;
                        }
                    }

                    Entities.BCDTTheoHangHoa[] a = new Entities.BCDTTheoHangHoa[sl];
                    sl = 0;
                    for (int j = 0; j < hienthibaocao.Length; j++)
                    {
                        if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                        {
                            a[sl] = hienthibaocao[j];
                            sl++;
                        }
                    }
                    frmBaoCaorpt b = new frmBaoCaorpt(a, truoc, sau, saveFileDialog1.FileName, "PDF");
                }
            }
            catch
            {
            }
        }
 private void txttimkiem_TextChanged(object sender, EventArgs e)
 {
     try
     {
         if (rdbtimkiem3.Checked == true)
         {
             return;
         }
         if (txttimkiem.Text.Length == 0)
         {
             dtgvhienthi.DataSource = new Entities.BCDTTheoHangHoa[0];
             return;
         }
         int soluong = 0;
         if (hienthibaocao != null)
         {
             if (rdbtimkiem1.Checked == true)
             {
                 for (int i = 0; i < hienthibaocao.Length; i++)
                 {
                     int kiemtra = hienthibaocao[i].MaHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                     if (kiemtra >= 0)
                     {
                         soluong++;
                     }
                 }
                 if (soluong == 0)
                 {
                     dtgvhienthi.DataSource = new Entities.BCDTTheoHangHoa[0];
                     return;
                 }
                 Entities.BCDTTheoHangHoa[] hienthitheoid = new Entities.BCDTTheoHangHoa[soluong];
                 soluong = 0;
                 for (int i = 0; i < hienthibaocao.Length; i++)
                 {
                     int kiemtra = hienthibaocao[i].MaHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                     if (kiemtra >= 0)
                     {
                         hienthitheoid[soluong] = hienthibaocao[i];
                         soluong++;
                     }
                 }
                 dtgvhienthi.DataSource = hienthitheoid;
             }
             if (rdbtimkiem2.Checked == true)
             {
                 for (int i = 0; i < hienthibaocao.Length; i++)
                 {
                     int kiemtra = hienthibaocao[i].TenHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                     if (kiemtra >= 0)
                     {
                         soluong++;
                     }
                 }
                 if (soluong == 0)
                 {
                     dtgvhienthi.DataSource = new Entities.BCDTTheoHangHoa[0];
                     return;
                 }
                 Entities.BCDTTheoHangHoa[] hienthitheoma = new Entities.BCDTTheoHangHoa[soluong];
                 soluong = 0;
                 for (int i = 0; i < hienthibaocao.Length; i++)
                 {
                     int kiemtra = hienthibaocao[i].TenHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                     if (kiemtra >= 0)
                     {
                         hienthitheoma[soluong] = hienthibaocao[i];
                         soluong++;
                     }
                 }
                 dtgvhienthi.DataSource = hienthitheoma;
             }
             if (dtgvhienthi.RowCount > 0)
             {
                 tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = true;
             }
             else
             {
                 tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = false;
             }
         }
     }
     finally
     {
         fix();
     }
 }
        public void TongTienHangHoa(DateTime batdau, DateTime ketthuc)
        {
            try
            {
                int sotang = 0; int sl = 0;
                //Entities.HangHoa[] hanghoa = Common.Utilities.CheckGoiHang(nv, goihang, chitietgoihang);

                List <Entities.BCDTTheoHangHoa> dtHangHoaList = new List <Entities.BCDTTheoHangHoa>();
                ArrayList arr1 = new ArrayList();
                Entities.BCDTTheoHangHoa[] bcdt = new Entities.BCDTTheoHangHoa[sotang];
                hienthibaocao = new Entities.BCDTTheoHangHoa[sl];
                sotang        = 0;
                sl            = 0;
                double tongtien;
                tongtien = 0;
                for (int j = 0; j < hdbanhang.Length; j++)
                {
                    DateTime hientai = hdbanhang[j].NgayBan;
                    if (hientai.Date >= batdau.Date && hientai.Date <= ketthuc.Date)
                    {
                        for (int k = 0; k < chitiethdbanhang.Length; k++)
                        {
                            if (chitiethdbanhang[k].MaHDBanHang.Equals(hdbanhang[j].MaHDBanHang))
                            {
                                string   maHangHoa            = chitiethdbanhang[k].MaHangHoa;
                                string   tenHangHoa           = chitiethdbanhang[k].TenHangHoa;
                                string   maHoaDon             = hdbanhang[j].MaHDBanHang;
                                DateTime ngayBan              = hdbanhang[j].NgayBan;
                                double   tienHang             = chitiethdbanhang[k].SoLuong * double.Parse(chitiethdbanhang[k].DonGia);
                                double   giaTriCK             = (tienHang * double.Parse(chitiethdbanhang[k].PhanTramChietKhau.ToString())) / 100;
                                double   giaTriVAT            = ((tienHang - giaTriCK) * double.Parse(chitiethdbanhang[k].Thue)) / 100;
                                double   TongTienHang         = tienHang - giaTriCK + giaTriVAT;
                                Entities.BCDTTheoHangHoa temp = new Entities.BCDTTheoHangHoa(maHangHoa, tenHangHoa, maHoaDon, ngayBan, TongTienHang);
                                dtHangHoaList.Add(temp);
                            }
                        }
                    }
                }

                List <string> maHangHoaList = new List <string>();
                foreach (Entities.BCDTTheoHangHoa item in dtHangHoaList.ToArray())
                {
                    if (!maHangHoaList.Contains(item.MaHangHoa))
                    {
                        maHangHoaList.Add(item.MaHangHoa);
                    }
                }

                List <Entities.BCDTTheoHangHoa> hienThiList = new List <Entities.BCDTTheoHangHoa>();
                if (maHangHoaList != null)
                {
                    foreach (string maHangHoa in maHangHoaList.ToArray())
                    {
                        Entities.BCDTTheoHangHoa dtHH = new Entities.BCDTTheoHangHoa();
                        double tongTien = 0;
                        string maHang = string.Empty, tenHang = string.Empty;
                        foreach (Entities.BCDTTheoHangHoa item in dtHangHoaList.ToArray())
                        {
                            if (maHangHoa.Equals(item.MaHangHoa))
                            {
                                tongTien += item.ThanhToanNgay;
                                maHang    = item.MaHangHoa;
                                tenHang   = item.TenHangHoa;
                            }
                        }
                        dtHH.ThanhToanNgay = tongTien;
                        dtHH.MaHangHoa     = maHang;
                        dtHH.TenHangHoa    = tenHang;
                        hienThiList.Add(dtHH);
                    }
                }


                hienthibaocao = hienThiList.ToArray();
                //////////////////////////////////////////////Mrk FIX
                double tong0 = 0;
                for (int i = 0; i < hienThiList.ToArray().Length; i++)
                {
                    if (hienThiList[i] == null)
                    {
                        break;
                    }
                    tong0 += hienThiList[i].ThanhToanNgay;
                }
                Entities.BCDTTheoHangHoa tem1 = new Entities.BCDTTheoHangHoa();
                tem1.ThanhToanNgay = tong0;
                tem1.TenHangHoa    = "Tổng Cộng: ";
                hienThiList.Add(tem1);
                //////////////////////////////////////////////////////
                //dtgvhienthi.DataSource = hienthi;
                dtgvhienthi.DataSource = hienThiList.ToArray();
                if (hienThiList.ToArray().Length > 0)
                {
                    tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = true;
                }
                else
                {
                    tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = false;
                }
                fix();
            }
            catch
            {
            }
        }
        private void txttimkiem_TextChanged(object sender, EventArgs e)
        {
            try
            {
                if (rdbtimkiem3.Checked == true)
                {
                    return;
                }
                if (txttimkiem.Text.Length == 0)
                {
                    dtgvhienthi.DataSource = new Entities.BCDTTheoHangHoa[0];
                    return;
                }
                int soluong = 0;
                if (hienthibaocao != null)
                {
                    if (rdbtimkiem1.Checked == true)
                    {
                        for (int i = 0; i < hienthibaocao.Length; i++)
                        {
                            int kiemtra = hienthibaocao[i].MaHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                            if (kiemtra >= 0)
                            {
                                soluong++;
                            }
                        }
                        if (soluong == 0)
                        {
                            dtgvhienthi.DataSource = new Entities.BCDTTheoHangHoa[0];
                            return;
                        }
                        Entities.BCDTTheoHangHoa[] hienthitheoid = new Entities.BCDTTheoHangHoa[soluong];
                        soluong = 0;
                        for (int i = 0; i < hienthibaocao.Length; i++)
                        {
                            int kiemtra = hienthibaocao[i].MaHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                            if (kiemtra >= 0)
                            {
                                hienthitheoid[soluong] = hienthibaocao[i];
                                soluong++;
                            }
                        }
                        dtgvhienthi.DataSource = hienthitheoid;
                    }
                    if (rdbtimkiem2.Checked == true)
                    {
                        for (int i = 0; i < hienthibaocao.Length; i++)
                        {
                            int kiemtra = hienthibaocao[i].TenHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                            if (kiemtra >= 0)
                            {
                                soluong++;
                            }
                        }
                        if (soluong == 0)
                        {
                            dtgvhienthi.DataSource = new Entities.BCDTTheoHangHoa[0];
                            return;
                        }
                        Entities.BCDTTheoHangHoa[] hienthitheoma = new Entities.BCDTTheoHangHoa[soluong];
                        soluong = 0;
                        for (int i = 0; i < hienthibaocao.Length; i++)
                        {
                            int kiemtra = hienthibaocao[i].TenHangHoa.ToString().ToUpper().IndexOf(txttimkiem.Text.ToUpper());
                            if (kiemtra >= 0)
                            {
                                hienthitheoma[soluong] = hienthibaocao[i];
                                soluong++;
                            }
                        }
                        dtgvhienthi.DataSource = hienthitheoma;

                    }
                    if (dtgvhienthi.RowCount > 0)
                    {
                        tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = true;
                    }
                    else
                    {
                        tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = false;
                    }
                }
            }
            finally
            {
                fix();
            }
        }
        private void tsslWord_Click(object sender, EventArgs e)
        {
            try
            {
                if (i < 0)
                    return;
                saveFileDialog1.Filter = "Word |*.doc"; saveFileDialog1.FileName = "";
                if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    int sl = 0;

                    for (int j = 0; j < hienthibaocao.Length; j++)
                    {
                        if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                        {
                            sl++;
                        }
                    }

                    Entities.BCDTTheoHangHoa[] a = new Entities.BCDTTheoHangHoa[sl];
                    sl = 0;
                    for (int j = 0; j < hienthibaocao.Length; j++)
                    {
                        if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                        {
                            a[sl] = hienthibaocao[j];
                            sl++;
                        }
                    }
                    frmBaoCaorpt b = new frmBaoCaorpt(a, truoc, sau, saveFileDialog1.FileName, "Word");
                }
            }
            catch
            {
            }
        }
        private void tsslchitiet_Click(object sender, EventArgs e)
        {
            if (i < 0)
                return;
            try
            {
                int sl = 0;

                for (int j = 0; j < hienthibaocao.Length; j++)
                {
                    string mahanghoa = dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString();
                    if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                    {
                        sl++;
                    }
                }

                Entities.BCDTTheoHangHoa[] a = new Entities.BCDTTheoHangHoa[sl];
                sl = 0;
                for (int j = 0; j < hienthibaocao.Length; j++)
                {
                    if (hienthibaocao[j].MaHangHoa == dtgvhienthi.Rows[i].Cells["MaHangHoa"].Value.ToString())
                    {
                        a[sl] = hienthibaocao[j];
                        sl++;
                    }
                }
                frmBaoCaorpt b = new frmBaoCaorpt(hienthibaocao, truoc, sau);
                b.ShowDialog();
            }
            catch
            {
            }
        }
        public void TongTienHangHoa(DateTime batdau, DateTime ketthuc)
        {
            try
            {
                int sotang = 0; int sl = 0;
                //Entities.HangHoa[] hanghoa = Common.Utilities.CheckGoiHang(nv, goihang, chitietgoihang);

                List<Entities.BCDTTheoHangHoa> dtHangHoaList = new List<Entities.BCDTTheoHangHoa>();
                ArrayList arr1 = new ArrayList();
                Entities.BCDTTheoHangHoa[] bcdt = new Entities.BCDTTheoHangHoa[sotang];
                hienthibaocao = new Entities.BCDTTheoHangHoa[sl];
                sotang = 0;
                sl = 0;
                double tongtien;
                tongtien = 0;
                for (int j = 0; j < hdbanhang.Length; j++)
                {
                    DateTime hientai = hdbanhang[j].NgayBan;
                    if (hientai.Date >= batdau.Date && hientai.Date <= ketthuc.Date)
                    {
                        for (int k = 0; k < chitiethdbanhang.Length; k++)
                        {
                            if (chitiethdbanhang[k].MaHDBanHang.Equals(hdbanhang[j].MaHDBanHang))
                            {
                                string maHangHoa = chitiethdbanhang[k].MaHangHoa;
                                string tenHangHoa = chitiethdbanhang[k].TenHangHoa;
                                string maHoaDon = hdbanhang[j].MaHDBanHang;
                                DateTime ngayBan = hdbanhang[j].NgayBan;
                                double tienHang = chitiethdbanhang[k].SoLuong * double.Parse(chitiethdbanhang[k].DonGia);
                                double giaTriCK = (tienHang * double.Parse(chitiethdbanhang[k].PhanTramChietKhau.ToString())) / 100;
                                double giaTriVAT = ((tienHang - giaTriCK) * double.Parse(chitiethdbanhang[k].Thue)) / 100;
                                double TongTienHang = tienHang - giaTriCK + giaTriVAT;
                                Entities.BCDTTheoHangHoa temp = new Entities.BCDTTheoHangHoa(maHangHoa, tenHangHoa, maHoaDon, ngayBan, TongTienHang);
                                dtHangHoaList.Add(temp);
                            }

                        }

                    }
                }

                List<string> maHangHoaList = new List<string>();
                foreach (Entities.BCDTTheoHangHoa item in dtHangHoaList.ToArray())
                {
                    if (!maHangHoaList.Contains(item.MaHangHoa))
                    {
                        maHangHoaList.Add(item.MaHangHoa);
                    }
                }

                List<Entities.BCDTTheoHangHoa> hienThiList = new List<Entities.BCDTTheoHangHoa>();
                if (maHangHoaList != null)
                {
                    foreach (string maHangHoa in maHangHoaList.ToArray())
                    {

                        Entities.BCDTTheoHangHoa dtHH = new Entities.BCDTTheoHangHoa();
                        double tongTien = 0;
                        string maHang = string.Empty, tenHang = string.Empty;
                        foreach (Entities.BCDTTheoHangHoa item in dtHangHoaList.ToArray())
                        {
                            if (maHangHoa.Equals(item.MaHangHoa))
                            {
                                tongTien += item.ThanhToanNgay;
                                maHang = item.MaHangHoa;
                                tenHang = item.TenHangHoa;
                            }
                        }
                        dtHH.ThanhToanNgay = tongTien;
                        dtHH.MaHangHoa = maHang;
                        dtHH.TenHangHoa = tenHang;
                        hienThiList.Add(dtHH);
                    }
                }

                hienthibaocao = hienThiList.ToArray();
                //////////////////////////////////////////////Mrk FIX
                double tong0 = 0;
                for (int i = 0; i < hienThiList.ToArray().Length; i++)
                {
                    if (hienThiList[i] == null)
                    {
                        break;
                    }
                    tong0 += hienThiList[i].ThanhToanNgay;
                }
                Entities.BCDTTheoHangHoa tem1 = new Entities.BCDTTheoHangHoa();
                tem1.ThanhToanNgay = tong0;
                tem1.TenHangHoa = "Tổng Cộng: ";
                hienThiList.Add(tem1);
                //////////////////////////////////////////////////////
                //dtgvhienthi.DataSource = hienthi;
                dtgvhienthi.DataSource = hienThiList.ToArray();
                if (hienThiList.ToArray().Length > 0)
                {
                    tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = true;
                }
                else
                {
                    tsslexcel.Enabled = tsslPdf.Enabled = tsslWord.Enabled = tsslchitiet.Enabled = false;
                }
                fix();
            }
            catch
            {
            }
        }