//protected void dropPhongBan_SelectedIndexChanged(object sender, EventArgs e)
        //{
        //    //IDPhongBan = ConvertUtility.ToInt32(dropPhongBan.SelectedValue);
        //    zoneSelected = 0;
        //    lblStatusUpdate.Text = "";
        //    zoneSelected = 0;
        //    Session["Nav"] = "2";
        //}
        protected void btnExport_Click(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();

            dt.Columns.Add("ID", typeof(string));
            dt.Columns.Add("Ten", typeof(string));
            dt.Columns.Add("TyTrong", typeof(string));
            dt.Columns.Add("SoGio", typeof(string));
            dt.Columns.Add("KeHoach", typeof(string));
            dt.Columns.Add("DonViDo", typeof(string));
            dt.Columns.Add("Level", typeof(string));
            dt.Columns.Add("Bold", typeof(string));
            dt.Columns.Add("Ma", typeof(string));
            DataTable source = QuanLyCongViecKTXVaPSController.LoadCongViecForExport(dt, ConvertUtility.ToInt32(dropTrungTam.SelectedValue), 0, 1, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue));

            XmlDocument doc = BuildXmlDocument(source);

            if (!Directory.Exists(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/")))
            {
                Directory.CreateDirectory(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/"));
            }
            //ds.Dispose();
            string datetime = DateTime.Now.ToString("yyyyMMddHHmmss");
            FileStream downloadFile =
                File.Create(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/") + "Report_" + datetime +
                            ".xls");

            // transform
            XslTransform xsl = new XslTransform();
            xsl.Load(Server.MapPath("/Template/" + "Report.xsl"));

            DateConverter objDateConverter = new DateConverter();
            XsltArgumentList args = new XsltArgumentList();
            args.AddExtensionObject("urn:ms-kb", objDateConverter);

            xsl.Transform(doc, args, downloadFile, null);
            downloadFile.Flush();
            downloadFile.Close();

            hplDownload.Text = "Hãy click vào liên kết này để Tải file về";

            hplDownload.NavigateUrl = "/UpLoad/Temp/" + CurrentUser.UserID + "/Report_" + datetime + ".xls";
            Session["Nav"] = "2";
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue) < 223)
            {
                #region dotdanhgia < 223

                DataTable dtTrungTamTheoKhoi = CommonController.GetAllBoPhanTheoLoai(0);

                DataTable dtUsersTemp = new DataTable();
                dtUsersTemp.Columns.Add("TrungTam", typeof(string));
                dtUsersTemp.Columns.Add("HoTen", typeof(string));
                dtUsersTemp.Columns.Add("KPI", typeof(string));
                dtUsersTemp.Columns.Add("DanhGiaDonVi", typeof(string));
                dtUsersTemp.Columns.Add("LoiNhuanCongTy", typeof(string));
                dtUsersTemp.Columns.Add("LoiNhuanBoPhan", typeof(string));
                dtUsersTemp.Columns.Add("QuanLyCongViecVaLamViecNhom", typeof(string));
                dtUsersTemp.Columns.Add("KyLuatCaNhan", typeof(string));
                dtUsersTemp.Columns.Add("DiemThuong", typeof(string));
                dtUsersTemp.Columns.Add("MucDoHoanThanh", typeof(string));
                dtUsersTemp.Columns.Add("XepLoai", typeof(string));
                dtUsersTemp.Columns.Add("HeSoLuongMem", typeof(string));

                foreach (DataRow rowBoPhan in dtTrungTamTheoKhoi.Rows)
                {
                    int loaiTrungTam = ConvertUtility.ToInt32(rowBoPhan["Loai"]);
                    string tenTrungTam = ConvertUtility.ToString(rowBoPhan["Ten"]);

                    DataTable dtUsers = DotDanhGiaController.GetAllNhanVienInDotDanhGiaNew(ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(rowBoPhan["ID"]));

                    foreach (DataRow item in dtUsers.Rows)
                    {
                        DataRow row = dtUsersTemp.NewRow();

                        DataSet ds = DotDanhGiaController.DanhGiaThang_DGCBCNVDanhGia_TongDiemCongThucMoi(ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(item["UserID"]));
                        if (ds != null)
                        {
                            string lblTyLeHoanThanh = "";

                            if (ds.Tables[0].Rows.Count > 0)
                            {
                                lblTyLeHoanThanh = (Math.Round(ConvertUtility.ToDouble(ds.Tables[0].Rows[0]["TyLeHoanThanh"].ToString()), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                            }

                            string lblDiemDanhGiaDonVi = "";
                            if (ds.Tables[1].Rows.Count > 0)
                            {
                                lblDiemDanhGiaDonVi = (Math.Round(ConvertUtility.ToDouble(ds.Tables[1].Rows[0]["TotalDiemDanhGiaDonVi"].ToString()), 2, MidpointRounding.AwayFromZero) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                            }

                            string lblDiemHoanThanhLoiNhuanCongTy = "";
                            if (ds.Tables[2].Rows.Count > 0)
                            {
                                lblDiemHoanThanhLoiNhuanCongTy = (Math.Round(ConvertUtility.ToDouble(ds.Tables[2].Rows[0]["TotalDiemLNCgTy"]), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                            }

                            string lblQuanLyCongViecVaLamViecNhom = "";
                            if (ds.Tables[3].Rows.Count > 0)
                            {
                                lblQuanLyCongViecVaLamViecNhom = (Math.Round(ConvertUtility.ToDouble(ds.Tables[3].Rows[0]["TotalDiemPhoiHop"]), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                            }

                            string lblDiemKyLuat = "";
                            if (ds.Tables[4].Rows.Count > 0)
                            {
                                lblDiemKyLuat = (Math.Round(ConvertUtility.ToDouble(ds.Tables[4].Rows[0]["TotalDiemKyLuat"]), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                            }

                            string lblDiemHoanThanhLoiNhuanBoPhan = "";
                            if (ds.Tables[5].Rows.Count > 0)
                            {
                                lblDiemHoanThanhLoiNhuanBoPhan = (Math.Round(ConvertUtility.ToDouble(ds.Tables[5].Rows[0]["TotalDiemLNBoPhan"]), 1, MidpointRounding.AwayFromZero) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                            }

                            string lblMucDoHoanThanh = "";
                            if (ds.Tables[6].Rows.Count > 0)
                            {
                                lblMucDoHoanThanh = (Math.Round(ConvertUtility.ToDouble(ds.Tables[6].Rows[0]["TongDiem"]), 1, MidpointRounding.AwayFromZero) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                            }

                            string lblXepLoai = "";
                            if (ds.Tables[7].Rows.Count > 0)
                            {
                                lblXepLoai = ds.Tables[7].Rows[0]["XepLoai"].ToString();
                            }

                            string lblName = "";
                            if (ds.Tables[8].Rows.Count > 0)
                            {
                                lblName = ds.Tables[8].Rows[0]["HoTen"].ToString();
                            }

                            string lblDiemThuong = "";
                            if (ds.Tables[9].Rows.Count > 0)
                            {
                                lblDiemThuong = Math.Round(ConvertUtility.ToDouble(ds.Tables[9].Rows[0]["DiemThuong"]) / 100, 3).ToString().Replace(",", ".");
                            }

                            string lblHeSoLuongMem = GetLuongMem(lblXepLoai);

                            row["TrungTam"] = tenTrungTam;
                            row["HoTen"] = lblName;
                            row["KPI"] = lblTyLeHoanThanh;
                            row["DanhGiaDonVi"] = lblDiemDanhGiaDonVi;
                            row["LoiNhuanCongTy"] = lblDiemHoanThanhLoiNhuanCongTy;
                            row["LoiNhuanBoPhan"] = lblDiemHoanThanhLoiNhuanBoPhan;
                            row["QuanLyCongViecVaLamViecNhom"] = lblQuanLyCongViecVaLamViecNhom;
                            row["KyLuatCaNhan"] = lblDiemKyLuat;
                            row["DiemThuong"] = lblDiemThuong;
                            row["MucDoHoanThanh"] = lblMucDoHoanThanh;
                            row["XepLoai"] = lblXepLoai;
                            row["HeSoLuongMem"] = Math.Round(ConvertUtility.ToDouble(lblHeSoLuongMem) / 100, 2).ToString().Replace(",", ".");

                            dtUsersTemp.Rows.Add(row);
                        }
                    }
                    XmlDocument doc = BuildXmlDocument(dtUsersTemp);

                    if (!Directory.Exists(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/")))
                    {
                        Directory.CreateDirectory(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/"));
                    }
                    //ds.Dispose();
                    string datetime = DateTime.Now.ToString("yyyyMMddHHmmss");
                    FileStream downloadFile =
                        File.Create(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/") + "ReportKetQuaXepLoaiNhanVienKD_" + datetime +
                                    ".xls");

                    // transform
                    XslTransform xsl = new XslTransform();
                    xsl.Load(Server.MapPath("/Template/" + "ReportKetQuaXepLoaiNhanVienKD.xsl"));

                    DateConverter objDateConverter = new DateConverter();
                    XsltArgumentList args = new XsltArgumentList();
                    args.AddExtensionObject("urn:ms-kb", objDateConverter);

                    xsl.Transform(doc, args, downloadFile, null);
                    downloadFile.Flush();
                    downloadFile.Close();

                    hplDownload.Text = "Hãy click vào liên kết này để Tải file về";
                    hplDownload.Visible = true;
                    hplDownload.NavigateUrl = "/UpLoad/Temp/" + CurrentUser.UserID + "/ReportKetQuaXepLoaiNhanVienKD_" + datetime + ".xls";

                }

                #endregion
            }
            else
            {
                DataTable dtTrungTamTheoKhoi = CommonController.GetAllBoPhanTheoLoai(0);

                DataTable dtUsersTemp = new DataTable();
                dtUsersTemp.Columns.Add("TrungTam", typeof(string));
                dtUsersTemp.Columns.Add("HoTen", typeof(string));
                dtUsersTemp.Columns.Add("KPI", typeof(string));
                dtUsersTemp.Columns.Add("DanhGiaDonVi", typeof(string));
                dtUsersTemp.Columns.Add("LoiNhuanCongTy", typeof(string));
                dtUsersTemp.Columns.Add("QuanLyCongViecVaLamViecNhom", typeof(string));
                dtUsersTemp.Columns.Add("KyLuatCaNhan", typeof(string));
                dtUsersTemp.Columns.Add("DiemThuong", typeof(string));
                dtUsersTemp.Columns.Add("MucDoHoanThanh", typeof(string));
                dtUsersTemp.Columns.Add("XepLoai", typeof(string));
                dtUsersTemp.Columns.Add("HeSoLuongMem", typeof(string));

                foreach (DataRow rowBoPhan in dtTrungTamTheoKhoi.Rows)
                {
                    int loaiTrungTam = ConvertUtility.ToInt32(rowBoPhan["Loai"]);
                    string tenTrungTam = ConvertUtility.ToString(rowBoPhan["Ten"]);

                    DataTable dtUsers = DotDanhGiaController.GetAllNhanVienInDotDanhGiaNew(ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(rowBoPhan["ID"]));

                    foreach (DataRow item in dtUsers.Rows)
                    {
                        try
                        {
                            DataSet ds = DotDanhGiaController.DanhGiaThang_DGCBCNVDanhGia_TongDiemCongThucMoi(ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(item["UserID"]));
                            if (ds != null)
                            {
                                DataRow row = dtUsersTemp.NewRow();

                                string lblTyLeHoanThanh = "";

                                if (ds.Tables[0].Rows.Count > 0)
                                {
                                    lblTyLeHoanThanh = (Math.Round(ConvertUtility.ToDouble(ds.Tables[0].Rows[0]["TyLeHoanThanh"].ToString()), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                                }

                                string lblDiemDanhGiaDonVi = "";
                                if (ds.Tables[1].Rows.Count > 0)
                                {
                                    lblDiemDanhGiaDonVi = (Math.Round(ConvertUtility.ToDouble(ds.Tables[1].Rows[0]["TotalDiemDanhGiaDonVi"].ToString()), 2, MidpointRounding.AwayFromZero) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                                }

                                string lblDiemHoanThanhLoiNhuanCongTy = "";
                                if (ds.Tables[2].Rows.Count > 0)
                                {
                                    lblDiemHoanThanhLoiNhuanCongTy = (Math.Round(ConvertUtility.ToDouble(ds.Tables[2].Rows[0]["TotalDiemLNCgTy"]), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                                }

                                string lblQuanLyCongViecVaLamViecNhom = "";
                                if (ds.Tables[3].Rows.Count > 0)
                                {
                                    lblQuanLyCongViecVaLamViecNhom = (Math.Round(ConvertUtility.ToDouble(ds.Tables[3].Rows[0]["TotalDiemPhoiHop"]), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                                }

                                string lblDiemKyLuat = "";
                                if (ds.Tables[4].Rows.Count > 0)
                                {
                                    lblDiemKyLuat = (Math.Round(ConvertUtility.ToDouble(ds.Tables[4].Rows[0]["TotalDiemKyLuat"]), 2) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                                }

                                string lblMucDoHoanThanh = "";
                                if (ds.Tables[5].Rows.Count > 0)
                                {
                                    lblMucDoHoanThanh = (Math.Round(ConvertUtility.ToDouble(ds.Tables[5].Rows[0]["TongDiem"]), 1, MidpointRounding.AwayFromZero) / ConvertUtility.ToDouble(100)).ToString().Replace(",", ".");
                                }

                                string lblXepLoai = "";
                                if (ds.Tables[6].Rows.Count > 0)
                                {
                                    lblXepLoai = ds.Tables[6].Rows[0]["XepLoai"].ToString();
                                }

                                string lblName = "";
                                if (ds.Tables[7].Rows.Count > 0)
                                {
                                    lblName = ds.Tables[7].Rows[0]["HoTen"].ToString();
                                }

                                string lblDiemThuong = "";
                                if (ds.Tables[8].Rows.Count > 0)
                                {
                                    lblDiemThuong = Math.Round(ConvertUtility.ToDouble(ds.Tables[8].Rows[0]["DiemThuong"]) / 100, 3).ToString().Replace(",", ".");
                                }

                                string lblHeSoLuongMem = GetLuongMem(lblXepLoai);

                                row["TrungTam"] = tenTrungTam;
                                row["HoTen"] = lblName;
                                row["KPI"] = lblTyLeHoanThanh;
                                row["DanhGiaDonVi"] = lblDiemDanhGiaDonVi;
                                row["LoiNhuanCongTy"] = lblDiemHoanThanhLoiNhuanCongTy;
                                row["QuanLyCongViecVaLamViecNhom"] = lblQuanLyCongViecVaLamViecNhom;
                                row["KyLuatCaNhan"] = lblDiemKyLuat;
                                row["DiemThuong"] = lblDiemThuong;
                                row["MucDoHoanThanh"] = lblMucDoHoanThanh;
                                row["XepLoai"] = lblXepLoai;
                                row["HeSoLuongMem"] = Math.Round(ConvertUtility.ToDouble(lblHeSoLuongMem) / 100, 2).ToString().Replace(",", ".");

                                dtUsersTemp.Rows.Add(row);
                            }
                        }
                        catch (Exception)
                        {
                               //Response.Write(ConvertUtility.ToInt32(item["UserID"]));
                        }
                    }

                }

                XmlDocument doc = BuildXmlDocument(dtUsersTemp);

                if (!Directory.Exists(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/")))
                {
                    Directory.CreateDirectory(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/"));
                }
                //ds.Dispose();
                string datetime = DateTime.Now.ToString("yyyyMMddHHmmss");
                FileStream downloadFile =
                    File.Create(Server.MapPath("/UpLoad/Temp/" + CurrentUser.UserID + "/") + "ReportKetQuaXepLoaiNhanVienHT_" + datetime +
                                ".xls");

                // transform
                XslTransform xsl = new XslTransform();
                xsl.Load(Server.MapPath("/Template/" + "ReportKetQuaXepLoaiNhanVienHT.xsl"));

                DateConverter objDateConverter = new DateConverter();
                XsltArgumentList args = new XsltArgumentList();
                args.AddExtensionObject("urn:ms-kb", objDateConverter);

                xsl.Transform(doc, args, downloadFile, null);
                downloadFile.Flush();
                downloadFile.Close();

                hplDownload.Text = "Hãy click vào liên kết này để Tải file về";
                hplDownload.Visible = true;
                hplDownload.NavigateUrl = "/UpLoad/Temp/" + CurrentUser.UserID + "/ReportKetQuaXepLoaiNhanVienHT_" + datetime + ".xls";
            }
        }
        protected void cmdUpdate_Click(object sender, EventArgs e)
        {
            QuanLyCongViecKTXVaPSInfo info = QuanLyCongViecKTXVaPSController.GetInfo(ConvertUtility.ToInt32(txtID.Text));
            if (info == null)
            {
                cmdEmpty_Click(null, null);
                return;
            }
            if (info.ID == ConvertUtility.ToInt32(dropCongViecKPI.SelectedValue))
            {
                lblStatusUpdate.Text = "Trung mục cha";
                return;
            }
            string oldData = GetObjectInfo(info);

            info.Ten = txtName.Text;
            info.ParentID = ConvertUtility.ToInt32(dropCongViecKPI.SelectedValue);
            info.TyTrong = ConvertUtility.ToDouble(txtTyTrong.Text);
            info.IDTrungTam = ConvertUtility.ToInt32(dropTrungTam.SelectedValue);
            info.KeHoach = txtKeHoach.Text;
            info.DonViDo = txtDonViDo.Text;
            info.IDPhongBan = 0;//ConvertUtility.ToInt32(dropPhong.SelectedValue);
            info.Loai = 2;
            info.IDDotDanhGia = ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue); ;
            info.SoGio = ConvertUtility.ToDouble(txtSoGio.Text);
            info.IsKPI = ConvertUtility.ToInt32(dropKPIBoPhan.SelectedValue);
            info.NgayBatDau = ConvertUtility.ToDateTime(dtFrom.Text);
            info.NgayKetThuc = ConvertUtility.ToDateTime(dtTo.Text);
            info.IDNhomCongViec = ConvertUtility.ToInt32(dropMaNhom.SelectedValue);
            info.TrangThaiCV = ConvertUtility.ToInt32(dropTrangThai.SelectedValue);

            DateConverter objDate = new DateConverter();

            int tuanBD = objDate.GetWeekOfMonth(info.NgayBatDau);
            int tuanKT = objDate.GetWeekOfMonth(info.NgayKetThuc);

            string tuanLV = "";
            for (int i = tuanBD; i <= tuanKT; i++)
            {
                tuanLV += i + ",";
            }
            info.TuanLamViec = tuanLV.Substring(0, tuanLV.Length - 1);
            try
            {
                QuanLyCongViecKTXVaPSController.Update(info);

                lblStatusUpdate.Text = MiscUtility.MSG_UPDATE_SUCCESS;

                #region Log Action

                LogFileInfo logFileInfo = new LogFileInfo();
                logFileInfo.Log_Action = "Update";
                logFileInfo.Log_Type_Object = "QuanLyCongViecKPI";
                logFileInfo.Item_CatID = "Cong Viec Thuong Xuyen";
                logFileInfo.Item_ID = info.ID.ToString();
                logFileInfo.Item_Name = info.Ten;
                logFileInfo.Description_Before = "Old Data: " + oldData;
                logFileInfo.Description_After = "Update KPI with info: <br />" + GetObjectInfo(info);
                logFileInfo.UserName = CurrentUser.Username;
                logFileInfo.UserID = CurrentUser.UserID;
                CreateLogFile.LogAction(logFileInfo);

                #endregion

                UpdateCapDoCongViec();
            }
            catch (Exception ex)
            {
                lblStatusUpdate.Text = ex.Message;
            }
            Session["Nav"] = "2";
        }
        protected void btnExport_Click(object sender, EventArgs e)
        {
            DataTable dtNhanVien = DotDanhGiaController.GetAllNhanVien(ConvertUtility.ToInt32(dropTrungTam.SelectedValue), ConvertUtility.ToInt32(dropPhongBan.SelectedValue));

            if (dtNhanVien == null) return;

            object misValue = System.Reflection.Missing.Value;

            xlApp = new Excel.ApplicationClass();
            xlWorkBook = xlApp.Workbooks.Add(misValue);

            int sheet = 1;
            foreach (DataRow itemNhanVien in dtNhanVien.Rows)
            {
                int idNhanVien = ConvertUtility.ToInt32(itemNhanVien["UserID"]);

                #region Cong viec thuong xuyen

                DataTable dtCongViec = DotDanhGiaController.GetAllCongViecGiaoChoNhanVienKTXVaPS(idNhanVien, 1, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue));
                DataTable dtCongViecNew = dtCongViec.Clone();
                dtCongViecNew.Columns.Add("TyTrongCaNhan", typeof(string));
                dtCongViecNew.Columns.Add("TyTrongCaNhanSoVoiPhong", typeof(string));
                dtCongViecNew.Columns.Add("GioLamViec", typeof(string));

                DataSet ds = DotDanhGiaController.GetPTDG(idNhanVien, 0, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(dropTrungTam.SelectedValue));

                DataTable dtSoNhanVien = ds.Tables[1];
                DataTable dtTyTrong = ds.Tables[2];
                DataTable dtSoNhanVienPhong = ds.Tables[3];

                int tongSoNhanVien = 0;
                if (dtSoNhanVien != null && dtSoNhanVien.Rows.Count > 0)
                {
                    tongSoNhanVien = ConvertUtility.ToInt32(dtSoNhanVien.Rows[0]["TongSoNhanVien"]);
                }

                int tyTrongCVPhongVoiTrungTam = 0;
                if (dtTyTrong != null && dtTyTrong.Rows.Count > 0)
                {
                    tyTrongCVPhongVoiTrungTam = ConvertUtility.ToInt32(dtTyTrong.Rows[0]["TyTrong"]);
                }

                if (tyTrongCVPhongVoiTrungTam == 0) tyTrongCVPhongVoiTrungTam = 100;

                int tongSoNhanVienPhong = 0;
                if (dtSoNhanVienPhong != null && dtSoNhanVienPhong.Rows.Count > 0)
                {
                    tongSoNhanVienPhong = ConvertUtility.ToInt32(dtSoNhanVienPhong.Rows[0]["TongSoNhanVien"]);
                }

                DataRow rowHeader = dtCongViecNew.NewRow();
                rowHeader["TenCVCha"] = "-----------------Công việc thường xuyên----------------";
                rowHeader["Ten"] = "---------------------------";
                rowHeader["TyTrong"] = "0";
                rowHeader["KeHoach"] = "";
                rowHeader["TyTrongCaNhan"] = "0";
                rowHeader["GioLamViec"] = "0";
                rowHeader["TyTrongCaNhanSoVoiPhong"] = "0";
                dtCongViecNew.Rows.Add(rowHeader);
                foreach (DataRow item in dtCongViec.Rows)
                {
                    DataRow row = dtCongViecNew.NewRow();
                    int idCongViecKPI = ConvertUtility.ToInt32(item["IDCongViecKPI"]);

                    DataTable dtTyTrongKPI = DotDanhGiaController.GetTyTrongCongViec(idCongViecKPI, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(dropTrungTam.SelectedValue), ConvertUtility.ToInt32(dropPhongBan.SelectedValue), idNhanVien);

                    double tyTrongCVDuocGiao = 0;

                    row["TenCVCha"] = ConvertUtility.ToString(item["TenCVCha"]);
                    row["Ten"] = item["Ten"];
                    double tyTrongCVDuocGiaoCaNhan = 0;
                    double tyTrongCVDuocGiaoCaNhanSoVoiPhong = 0;

                    if (dtTyTrongKPI != null && dtTyTrongKPI.Rows.Count > 0)
                    {
                        tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien;

                        double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien * 22 / 100, 3);
                        double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 3);
                        tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 3);

                        tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]), 3);
                        row["TyTrong"] = tyTrongCVDuocGiao;
                    }
                    else
                    {
                        tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien;

                        double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien * 22 / 100, 3);
                        double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 3);
                        tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 3);

                        tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]), 3);
                        row["TyTrong"] = tyTrongCVDuocGiao;
                    }

                    row["KeHoach"] = item["KeHoach"].ToString();
                    row["TyTrongCaNhan"] = Math.Round(tyTrongCVDuocGiaoCaNhan, 3).ToString().Replace(",", ".");// tyTrongCVDuocGiaoCaNhan.ToString().Replace(",", ".");
                    row["GioLamViec"] = Math.Round(tyTrongCVDuocGiaoCaNhan * 22 * 8 / 100, 3).ToString().Replace(",", ".");

                    //if (dtTyTrongKPI != null && dtTyTrongKPI.Rows.Count > 0)
                    //{
                    //    tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien;

                    //    double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien * 22 / 100, 2);
                    //    double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 2);
                    //    tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 2);

                    //    tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]), 2);
                    //    row["TyTrong"] = tyTrongCVDuocGiao.ToString();
                    //}
                    //else
                    //{
                    //    tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien;

                    //    double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien * 22 / 100, 2);
                    //    double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 2);
                    //    tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 2);

                    //    tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]), 2);
                    //    row["TyTrong"] = tyTrongCVDuocGiao.ToString();
                    //}
                    row["TyTrongCaNhanSoVoiPhong"] = tyTrongCVDuocGiaoCaNhanSoVoiPhong.ToString().Replace(",", ".");
                    dtCongViecNew.Rows.Add(row);

                }

                #endregion

                rowHeader = dtCongViecNew.NewRow();
                rowHeader["TenCVCha"] = "-----------------Công việc kế hoạch tháng----------------";
                rowHeader["Ten"] = "---------------------------";
                rowHeader["TyTrong"] = "0";
                rowHeader["KeHoach"] = "";
                rowHeader["TyTrongCaNhan"] = "0";
                rowHeader["GioLamViec"] = "0";
                rowHeader["TyTrongCaNhanSoVoiPhong"] = "0";
                dtCongViecNew.Rows.Add(rowHeader);

                #region Cong viec ke hoach thang

                dtCongViec = DotDanhGiaController.GetAllCongViecGiaoChoNhanVienKTXVaPS(idNhanVien, 2, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue));

                ds = DotDanhGiaController.GetPTDG(idNhanVien, 0, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(dropTrungTam.SelectedValue));

                dtSoNhanVien = ds.Tables[1];
                dtTyTrong = ds.Tables[2];
                dtSoNhanVienPhong = ds.Tables[3];

                tongSoNhanVien = 0;
                if (dtSoNhanVien != null && dtSoNhanVien.Rows.Count > 0)
                {
                    tongSoNhanVien = ConvertUtility.ToInt32(dtSoNhanVien.Rows[0]["TongSoNhanVien"]);
                }

                tyTrongCVPhongVoiTrungTam = 0;
                if (dtTyTrong != null && dtTyTrong.Rows.Count > 0)
                {
                    tyTrongCVPhongVoiTrungTam = ConvertUtility.ToInt32(dtTyTrong.Rows[0]["TyTrong"]);
                }

                if (tyTrongCVPhongVoiTrungTam == 0) tyTrongCVPhongVoiTrungTam = 100;

                tongSoNhanVienPhong = 0;
                if (dtSoNhanVienPhong != null && dtSoNhanVienPhong.Rows.Count > 0)
                {
                    tongSoNhanVienPhong = ConvertUtility.ToInt32(dtSoNhanVienPhong.Rows[0]["TongSoNhanVien"]);
                }

                double tyTrongCVKeHoachThang = 0;
                foreach (DataRow item in dtCongViec.Rows)
                {
                    DataRow row = dtCongViecNew.NewRow();
                    int idCongViecKPI = ConvertUtility.ToInt32(item["IDCongViecKPI"]);

                    DataTable dtTyTrongKPI = DotDanhGiaController.GetTyTrongCongViec(idCongViecKPI, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(dropTrungTam.SelectedValue), ConvertUtility.ToInt32(dropPhongBan.SelectedValue),idNhanVien);

                    double tyTrongCVDuocGiao = 0;

                    row["TenCVCha"] = ConvertUtility.ToString(item["TenCVCha"]);
                    row["Ten"] = item["Ten"];
                    //double tyTrongCVDuocGiaoCaNhan = 0;
                    //double tyTrongCVDuocGiaoCaNhanSoVoiPhong = 0;
                    //if (dtTyTrongKPI != null && dtTyTrongKPI.Rows.Count > 0)
                    //{
                    //    tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien;
                    //    tyTrongCVKeHoachThang += tyTrongCVDuocGiaoCaNhan;

                    //    double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien * 22 / 100, 2);
                    //    double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 2);
                    //    tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 2);

                    //    tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]), 2);
                    //    row["TyTrong"] = tyTrongCVDuocGiao.ToString();
                    //}
                    //else
                    //{
                    //    tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien;
                    //    tyTrongCVKeHoachThang += tyTrongCVDuocGiaoCaNhan;

                    //    double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien * 22 / 100, 2);
                    //    double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 2);
                    //    tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 2);

                    //    tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]), 2);
                    //    row["TyTrong"] = tyTrongCVDuocGiao.ToString();
                    //}
                    //row["KeHoach"] = item["KeHoach"].ToString();

                    //row["TyTrongCaNhan"] = tyTrongCVDuocGiaoCaNhan.ToString().Replace(",", ".");
                    //row["GioLamViec"] = Math.Round(tyTrongCVDuocGiaoCaNhan * 22 * 8 / 100, 2);

                    double tyTrongCVDuocGiaoCaNhan = 0;
                    double tyTrongCVDuocGiaoCaNhanSoVoiPhong = 0;

                    if (dtTyTrongKPI != null && dtTyTrongKPI.Rows.Count > 0)
                    {
                        tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien;

                        double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien * 22 / 100, 3);
                        double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 3);
                        tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 3);

                        tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]), 3);
                        row["TyTrong"] = tyTrongCVDuocGiao;
                    }
                    else
                    {
                        tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien;

                        double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien * 22 / 100, 3);
                        double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 3);
                        tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 3);

                        tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]), 3);
                        row["TyTrong"] = tyTrongCVDuocGiao;
                    }

                    row["KeHoach"] = item["KeHoach"].ToString();
                    row["TyTrongCaNhan"] = Math.Round(tyTrongCVDuocGiaoCaNhan, 3).ToString().Replace(",", ".");// tyTrongCVDuocGiaoCaNhan.ToString().Replace(",", ".");
                    row["GioLamViec"] = Math.Round(tyTrongCVDuocGiaoCaNhan * 22 * 8 / 100, 3).ToString().Replace(",", ".");

                    row["TyTrongCaNhanSoVoiPhong"] = tyTrongCVDuocGiaoCaNhanSoVoiPhong.ToString().Replace(",", ".");
                    dtCongViecNew.Rows.Add(row);

                }

                #endregion

                rowHeader = dtCongViecNew.NewRow();
                rowHeader["TenCVCha"] = "-----------------Công việc phát sinh----------------";
                rowHeader["Ten"] = "---------------------------";
                rowHeader["TyTrong"] = "0";
                rowHeader["KeHoach"] = "";
                rowHeader["TyTrongCaNhan"] = "0";
                rowHeader["GioLamViec"] = "0";
                rowHeader["TyTrongCaNhanSoVoiPhong"] = "0";
                dtCongViecNew.Rows.Add(rowHeader);

                #region Cong viec phat sinh

                dtCongViec = DotDanhGiaController.GetAllCongViecGiaoChoNhanVienKTXVaPS(idNhanVien, 3, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue));

                ds = DotDanhGiaController.GetPTDG(idNhanVien, 0, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(dropTrungTam.SelectedValue));

                dtSoNhanVien = ds.Tables[1];
                dtTyTrong = ds.Tables[2];
                dtSoNhanVienPhong = ds.Tables[3];

                tongSoNhanVien = 0;
                if (dtSoNhanVien != null && dtSoNhanVien.Rows.Count > 0)
                {
                    tongSoNhanVien = ConvertUtility.ToInt32(dtSoNhanVien.Rows[0]["TongSoNhanVien"]);
                }

                tyTrongCVPhongVoiTrungTam = 0;
                if (dtTyTrong != null && dtTyTrong.Rows.Count > 0)
                {
                    tyTrongCVPhongVoiTrungTam = ConvertUtility.ToInt32(dtTyTrong.Rows[0]["TyTrong"]);
                }

                if (tyTrongCVPhongVoiTrungTam == 0) tyTrongCVPhongVoiTrungTam = 100;

                tongSoNhanVienPhong = 0;
                if (dtSoNhanVienPhong != null && dtSoNhanVienPhong.Rows.Count > 0)
                {
                    tongSoNhanVienPhong = ConvertUtility.ToInt32(dtSoNhanVienPhong.Rows[0]["TongSoNhanVien"]);
                }

                tyTrongCVKeHoachThang = 0;
                foreach (DataRow item in dtCongViec.Rows)
                {
                    DataRow row = dtCongViecNew.NewRow();
                    int idCongViecKPI = ConvertUtility.ToInt32(item["IDCongViecKPI"]);

                    DataTable dtTyTrongKPI = DotDanhGiaController.GetTyTrongCongViec(idCongViecKPI, ConvertUtility.ToInt32(dropDotDanhGia.SelectedValue), ConvertUtility.ToInt32(dropTrungTam.SelectedValue), ConvertUtility.ToInt32(dropPhongBan.SelectedValue), idNhanVien);

                    double tyTrongCVDuocGiao = 0;

                    row["TenCVCha"] = ConvertUtility.ToString(item["TenCVCha"]);
                    row["Ten"] = item["Ten"];
                    //double tyTrongCVDuocGiaoCaNhan = 0;
                    //double tyTrongCVDuocGiaoCaNhanSoVoiPhong = 0;
                    //if (dtTyTrongKPI != null && dtTyTrongKPI.Rows.Count > 0)
                    //{
                    //    tyTrongCVDuocGiaoCaNhan = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien, 2);
                    //    tyTrongCVKeHoachThang += tyTrongCVDuocGiaoCaNhan;

                    //    double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien * 22 / 100, 2);
                    //    double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 2);
                    //    tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 2);

                    //    tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]), 2);
                    //    row["TyTrong"] = tyTrongCVDuocGiao.ToString();
                    //}
                    //else
                    //{
                    //    tyTrongCVDuocGiaoCaNhan = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien, 2);
                    //    tyTrongCVKeHoachThang += tyTrongCVDuocGiaoCaNhan;

                    //    double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien * 22 / 100, 2);
                    //    double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 2);
                    //    tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 2);

                    //    tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]), 2);
                    //    row["TyTrong"] = tyTrongCVDuocGiao.ToString();
                    //}
                    //row["KeHoach"] = item["KeHoach"].ToString();

                    //row["TyTrongCaNhan"] = tyTrongCVDuocGiaoCaNhan.ToString().Replace(",", ".");
                    //row["GioLamViec"] = Math.Round(tyTrongCVDuocGiaoCaNhan * 22 * 8 / 100, 2);

                    double tyTrongCVDuocGiaoCaNhan = 0;
                    double tyTrongCVDuocGiaoCaNhanSoVoiPhong = 0;

                    if (dtTyTrongKPI != null && dtTyTrongKPI.Rows.Count > 0)
                    {
                        tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien;

                        double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]) * tongSoNhanVien * 22 / 100, 3);
                        double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 3);
                        tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 3);

                        tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(dtTyTrongKPI.Rows[0]["TyTrong"]), 3);
                        row["TyTrong"] = tyTrongCVDuocGiao;
                    }
                    else
                    {
                        tyTrongCVDuocGiaoCaNhan = ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien;

                        double songaylamvieccuaNV = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]) * tongSoNhanVien * 22 / 100, 3);
                        double tongsongaylamvieccuaphong = Math.Round(ConvertUtility.ToDouble(tongSoNhanVien) * 22 * tyTrongCVPhongVoiTrungTam / 100, 3);
                        tyTrongCVDuocGiaoCaNhanSoVoiPhong = Math.Round(songaylamvieccuaNV * 100 / tongsongaylamvieccuaphong, 3);

                        tyTrongCVDuocGiao = Math.Round(ConvertUtility.ToDouble(item["TyTrong"]), 3);
                        row["TyTrong"] = tyTrongCVDuocGiao;
                    }

                    row["KeHoach"] = item["KeHoach"].ToString();
                    row["TyTrongCaNhan"] = Math.Round(tyTrongCVDuocGiaoCaNhan, 3).ToString().Replace(",", ".");// tyTrongCVDuocGiaoCaNhan.ToString().Replace(",", ".");
                    row["GioLamViec"] = Math.Round(tyTrongCVDuocGiaoCaNhan * 22 * 8 / 100, 3).ToString().Replace(",", ".");

                    row["TyTrongCaNhanSoVoiPhong"] = tyTrongCVDuocGiaoCaNhanSoVoiPhong.ToString().Replace(",", ".");
                    dtCongViecNew.Rows.Add(row);

                }

                #endregion

                XmlDocument doc = BuildXmlDocument(dtCongViecNew);

                if (!Directory.Exists(Server.MapPath("/UpLoad/Temp/" + itemNhanVien["UserID"].ToString() + "/")))
                {
                    Directory.CreateDirectory(Server.MapPath("/UpLoad/Temp/" + itemNhanVien["UserID"].ToString() + "/"));
                }
                ////ds.Dispose();
                string datetime = DateTime.Now.ToString("yyyyMMddHHmmss");
                FileStream downloadFile =
                    File.Create(Server.MapPath("/UpLoad/Temp/" + itemNhanVien["UserID"].ToString() + "/") + "ReportCongViecNhanVien_" + datetime +
                                ".xls");

                // transform
                XslTransform xsl = new XslTransform();
                xsl.Load(Server.MapPath("/Template/" + "ReportCongViecNhanVien.xsl"));

                DateConverter objDateConverter = new DateConverter();
                XsltArgumentList args = new XsltArgumentList();
                args.AddExtensionObject("urn:ms-kb", objDateConverter);

                xsl.Transform(doc, args, downloadFile, null);
                downloadFile.Flush();
                downloadFile.Close();

                HyperLink hplDownload = new HyperLink();
                hplDownload.Text = "Công việc của " + itemNhanVien["Username"].ToString() + ", click vào link để Tải file về";
                hplDownload.Visible = true;
                hplDownload.NavigateUrl = "/UpLoad/Temp/" + itemNhanVien["UserID"].ToString() + "/ReportCongViecNhanVien_" + datetime + ".xls";

                Literal lit = new Literal();
                lit.Text = "<br />";
                pnLink.Controls.Add(hplDownload);
                pnLink.Controls.Add(lit);

                CreateExcelDoc excell_app = new CreateExcelDoc(sheet, xlWorkBook, itemNhanVien["UserName"].ToString());
                //creates the main header
                excell_app.createHeaders(1, 1, "Nhóm công việc", "A1", "A1", 0, "YELLOW", true, 40, "");
                excell_app.createHeaders(1, 2, "Tên công việc", "B1", "B1", 0, "YELLOW", true, 40, "");
                excell_app.createHeaders(1, 3, "Kế hoạch", "C1", "C1", 0, "YELLOW", true, 40, "");
                excell_app.createHeaders(1, 4, "Tỷ Trọng so với trung tâm", "D1", "D1", 0, "YELLOW", true, 20, "");
                excell_app.createHeaders(1, 5, "Tỷ Trọng so với phòng", "E1", "E1", 0, "YELLOW", true, 20, "");
                excell_app.createHeaders(1, 6, "Tỷ Trọng công việc cá nhân trong tháng", "F1", "F1", 0, "YELLOW", true, 20, "");
                excell_app.createHeaders(1, 7, "Giờ làm việc", "G1", "G1", 0, "YELLOW", true, 20, "");

                int rowIndex = 2;
                foreach (DataRow item in dtCongViecNew.Rows)
                {
                    excell_app.addData(rowIndex, 1, item["TenCVCha"].ToString(), "A" + rowIndex.ToString(), "A" + rowIndex.ToString(), "");
                    excell_app.addData(rowIndex, 2, item["Ten"].ToString(), "B" + rowIndex.ToString(), "B" + rowIndex.ToString() , "");
                    excell_app.addData(rowIndex, 3, item["KeHoach"].ToString(), "C" + rowIndex.ToString(), "C" + rowIndex.ToString(), "");
                    excell_app.addData(rowIndex, 4, item["TyTrong"].ToString(), "D" + rowIndex.ToString() , "D" + rowIndex.ToString(), "#,##0");
                    excell_app.addData(rowIndex, 5, item["TyTrongCaNhanSoVoiPhong"].ToString(), "E" + rowIndex.ToString(), "E" + rowIndex.ToString() , "#,##0");
                    excell_app.addData(rowIndex, 6, item["TyTrongCaNhan"].ToString(), "F" + rowIndex.ToString(), "F" + rowIndex.ToString(), "#,##0");
                    excell_app.addData(rowIndex, 7, item["GioLamViec"].ToString(), "G" + rowIndex.ToString(), "G" + rowIndex.ToString(), "");

                    rowIndex++;
                }

                sheet++;
            }

            string datetimeTTPhong = DateTime.Now.ToString("yyyyMMddHHmmss");
            string fileName = "/UpLoad/Temp/ReportCongViecNhanVien_" + datetimeTTPhong + ".xls";
            CreateExcelDoc.SaveExcel(Server.MapPath(fileName), xlWorkBook);

            HyperLink hplDownloadCVPhongTT = new HyperLink();
            hplDownloadCVPhongTT.Text = "Công việc của Trung Tâm hoặc phòng, click vào link để Tải file về";
            hplDownloadCVPhongTT.Visible = true;
            hplDownloadCVPhongTT.NavigateUrl = fileName;

            pnLink.Controls.Add(hplDownloadCVPhongTT);
        }