//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); }