/// <summary> /// Gán Editor để chọn tình trạng làm việc /// </summary> private void SetEditor() { List <DAL.DM_TT_LAMVIEC> data = new KyHieuChamCongController().GetAll(); this.Store2.DataSource = data; this.Store2.DataBind(); foreach (var col in GridPanel1.ColumnModel.Columns) { // Ext.Net.MultiCombo cbWorkingStatus = new MultiCombo(); Ext.Net.ComboBox cbWorkingStatus = new ComboBox(); cbWorkingStatus.StoreID = "Store2"; cbWorkingStatus.Width = 60; cbWorkingStatus.ListWidth = 300; cbWorkingStatus.ID = "cb" + col.ColumnID; cbWorkingStatus.TypeAhead = true; cbWorkingStatus.ForceSelection = true; // cbWorkingStatus.SelectionMode = MultiSelectMode.Selection; cbWorkingStatus.DisplayField = "TEN_TT_LAMVIEC"; cbWorkingStatus.ValueField = "KYHIEU_TT_LAMVIEC"; cbWorkingStatus.Editable = false; cbWorkingStatus.Mode = DataLoadMode.Local; cbWorkingStatus.ItemSelector = "tr.list-item"; cbWorkingStatus.Template.Html = @" <tpl for="".""> <tpl if=""[xindex] == 1""> <table class=""cbStates-list""> <tr> <th>Kí hiệu</th> <th>Tình trạng làm việc</th> </tr> </tpl> <tr class=""list-item""> <td style=""padding:3px 0px;"">{KYHIEU_TT_LAMVIEC}</td> <td>{TEN_TT_LAMVIEC}</td> </tr> <tpl if=""[xcount-xindex]==0""> </table> </tpl> </tpl> "; if (col.ColumnID.StartsWith("Ngay")) { col.Editor.Add(cbWorkingStatus); if (col.ColumnID.Equals("NgayHomNay")) { if (DateTime.Today.Day < 10) { col.DataIndex = "NGAY0" + DateTime.Today.Day; } else { col.DataIndex = "NGAY" + DateTime.Today.Day; } } } } }
//protected void btnDongY_Click(object sender, DirectEventArgs e) //{ // try // { // if (hdfPrkeyCa.Text == "") // { // X.Msg.Alert("Thông báo từ hệ thống", "Không tìm thấy ca làm việc").Show(); // return; // } // int prkeyCa = int.Parse(hdfPrkeyCa.Text); // switch (hdfAction.Text) // { // case "Edit": // EditCaLamViec(prkeyCa); // break; // case "Delete": // DeleteCaLamViec(prkeyCa); // break; // case "Duplicate": // DuplicateCaLamViec(prkeyCa); // break; // default: // break; // } // wdChonCaLamViec.Hide(); // } // catch (Exception ex) // { // X.Msg.Alert("Thông báo từ hệ thống", "Có lỗi xảy ra: " + ex.Message).Show(); // } //} /// <summary> /// Kiểm tra mã ca có bị trùng với các mã ngày nghỉ lễ, chế độ, nghỉ bù không /// </summary> /// <param name="maCa">Mã ca cần kiểm tra</param> /// <param name="lyDo">Lý do trùng nếu mã ca đã bị trùng</param> /// <returns><b>true</b> nếu mã ca đã bị trùng, <b>false</b> nếu mã ca chưa bị trùng</returns> private bool KiemTraTrungNgayNghiLe(string maCa, ref string lyDo) { KyHieuChamCongController kyHieu = new KyHieuChamCongController(); if (maCa == kyHieu.NghiBu) { lyDo = "Mã ca trùng với mã nghỉ bù."; return(true); } else if (maCa == kyHieu.NghiKhongLuong) { lyDo = "Mã ca trùng với mã nghỉ không lương."; return(true); } else if (maCa == kyHieu.NghiLe) { lyDo = "Mã ca trùng với mã nghỉ lễ."; return(true); } else if (maCa == kyHieu.NghiPhep) { lyDo = "Mã ca trùng với mã nghỉ phép."; return(true); } else if (maCa == kyHieu.CheDo) { lyDo = "Mã ca trùng với mã nghỉ chế độ."; return(true); } return(false); }
protected void btnEdit_Click(object sender, DirectEventArgs e) { DAL.DM_TT_LAMVIEC record = new KyHieuChamCongController().GetbyPrKey(int.Parse(hdfRecordID.Text)); txtKYHIEU_TT_LAMVIEC.Text = record.KYHIEU_TT_LAMVIEC; txtTEN_TT_LAMVIEC.Text = record.TEN_TT_LAMVIEC; txtDIEN_GIAI.Text = record.DIEN_GIAI; txtSTT.Text = record.STT.Value.ToString(); chkIsIS_IN_USED.Checked = record.IS_IN_USED; txtQUI_UOC_CHAM_CONG.SetValue(record.QUI_UOC_CHAM_CONG); hdfCommand.Text = "Update"; wdAddWindow.Icon = Icon.Pencil; wdAddWindow.Title = "Sửa kí hiệu chấm công"; wdAddWindow.Show(); }
/// <summary> /// sự kiện click của menu tình trạng làm việc, dành cho chấm công ngày hôm nay /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void Click_Event(object sender, DirectEventArgs e) { try { if (!string.IsNullOrEmpty(hdfIdBangChamCong.Text)) { Ext.Net.MenuItem mnuItem = sender as Ext.Net.MenuItem; DM_TT_LAMVIEC ws = new KyHieuChamCongController().GetByName(mnuItem.Text); string sql = "update ChamCong.BangChamCongExcelTheoThang set NGAY"; if (DateTime.Now.Day > 9) { sql += DateTime.Now.Day + " = N'" + ws.KYHIEU_TT_LAMVIEC + "' where PR_KEY = "; } else { sql += "0" + DateTime.Now.Day + " = N'" + ws.KYHIEU_TT_LAMVIEC + "' where PR_KEY = "; } int start = 0; int limit = 50; List <BangChamCongExcelTheoThang> bangLuong; do { bangLuong = new ChamCongThangController().GetByIdBangChamCong(int.Parse(hdfIdBangChamCong.Text), start, limit); foreach (var item in bangLuong) { DataController.DataHandler.GetInstance().ExecuteNonQuery(sql + item.PR_KEY); } start += limit; } while (bangLuong.Count() != 0); RM.RegisterClientScriptBlock("a", "#{Store1}.reload();"); } else { X.MessageBox.Alert("Cảnh báo", "Bạn chưa chọn bảng lương").Show(); } } catch (Exception ex) { X.MessageBox.Alert("Cảnh báo", ex.Message).Show(); } }
/// <summary> /// daibx 28/06/2013 /// Kiểm tra dữ liệu trong file excel có phù hợp với ký hiệu chấm công trong phần mềm hay không /// /// - Các kí hiệu chấm công được lấy trong bảng DM_TT_LAMVIEC với ràng buộc IS_IN_USED = true (các kí hiệu vẫn đang sử dụng) /// - So sánh các kí hiệu này với các kí hiệu trong excel, nếu có một kí hiệu không phù hợp thì đưa ra thông báo và yêu cầu /// sửa lại cho đúng (không cho nhập dữ liệu sai). nếu không có lỗi nào xảy ra thì đưa ra thông báo và cho người dùng import /// dữ liệu vào /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnTestDuLieu_Click(object sender, DirectEventArgs e) { // kiểm tra đường dẫn và loại file string extension = System.IO.Path.GetExtension(FileUploadField1.PostedFile.FileName).ToLower(); if (!extension.Equals(".xls") && !extension.Equals(".xlsx")) { X.Msg.Alert("Thông báo", "Hãy chọn file excel").Show(); return; } string fn = System.IO.Path.GetFileName(FileUploadField1.PostedFile.FileName); string saveLocation = Server.MapPath("Files") + "\\" + fn; // đọc quy ước chấm công trong bảng DM_TT_LAMVIEC HashSet <string> ds = new HashSet <string>(); List <DAL.DM_TT_LAMVIEC> lists = new KyHieuChamCongController().GetAll(); foreach (var item in lists) { ds.Add(item.KYHIEU_TT_LAMVIEC.ToLower()); } var excel = new ExcelQueryFactory(); excel.FileName = saveLocation; // get config string startCell = ""; string endCell = ""; getConfig(out startCell, out endCell); // đọc file excel var datas = from x in excel.WorksheetRangeNoHeader(startCell, endCell, cbSheetName.Value.ToString()) select x; string invalidSymbol = ""; foreach (var item in datas) { if (item[0] == "") { break; } for (int i = 0; i < item.Count; i++) { if (i >= 2 && !string.IsNullOrEmpty(item[i]) && !ds.Contains(item[i].ToString().ToLower())) { invalidSymbol += item[i] + ", "; } } } if (AfterClickTestData != null) { AfterClickTestData(invalidSymbol, null); } if (invalidSymbol == "") { btnTestDuLieu.Hide(); btnImport.Show(); } }
protected void btnCapNhat_Click(object sender, DirectEventArgs e) { DAL.DM_TT_LAMVIEC obj = new DAL.DM_TT_LAMVIEC(); KyHieuChamCongController ctr = new KyHieuChamCongController(); obj.KYHIEU_TT_LAMVIEC = txtKYHIEU_TT_LAMVIEC.Text; obj.TEN_TT_LAMVIEC = txtTEN_TT_LAMVIEC.Text; obj.DIEN_GIAI = txtDIEN_GIAI.Text; if (!string.IsNullOrEmpty(txtSTT.Text)) { obj.STT = decimal.Parse(txtSTT.Text); } else { obj.STT = 0; } obj.CREATED_USER = CurrentUser.DisplayName; obj.DATE_CREATE = DateTime.Now; obj.IS_IN_USED = chkIsIS_IN_USED.Checked; obj.QUI_UOC_CHAM_CONG = txtQUI_UOC_CHAM_CONG.SelectedItem.Value; obj.MA_DONVI = Session["MaDonVi"].ToString(); try { if (e.ExtraParams["Command"] == "Edit") { obj.PR_KEY = int.Parse(hdfRecordID.Text); ctr.Update(obj); Dialog.ShowNotification(CommonMessage.INSERT_SUCCESSFULLY); wdAddWindow.Hide(); //RM.RegisterClientScriptBlock("fd", string.Format("addUpdatedRecord('{0}', '{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}')", txtKYHIEU_TT_LAMVIEC.Text, txtTEN_TT_LAMVIEC.Text, txtDIEN_GIAI.Text, txtSTT.Text, CurrentUser.DisplayName, DateTime.Now, chkIsIS_IN_USED.Checked, txtQUI_UOC_CHAM_CONG.SelectedItem.Value)); } else { if (ctr.CheckDuplicateSignal(obj.KYHIEU_TT_LAMVIEC, Session["MaDonVi"].ToString())) { X.MessageBox.Alert("Có lỗi xảy ra", "Kí hiệu chấm công bị trùng, bạn vui lòng chọn kí hiệu khác").Show(); return; } int prkey = ctr.Insert(obj); Dialog.ShowNotification(CommonMessage.INSERT_SUCCESSFULLY); if (e.ExtraParams["Close"] == "True") { wdAddWindow.Hide(); } else { RM.RegisterClientScriptBlock("rs", "resetWindowHide();"); } //RM.RegisterClientScriptBlock("fd", string.Format("addRecord('{0}', '{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}','{8}')", txtKYHIEU_TT_LAMVIEC.Text, txtTEN_TT_LAMVIEC.Text, txtDIEN_GIAI.Text, txtSTT.Text, CurrentUser.DisplayName, DateTime.Now, chkIsIS_IN_USED.Checked, txtQUI_UOC_CHAM_CONG.SelectedItem.Value, prkey)); } GridPanel1.Reload(); } catch (System.Data.SqlClient.SqlException ex) { if (ex.Number == 2627) { X.MessageBox.Alert("Có lỗi xảy ra", "Qui ước chấm công bị trùng, bạn hãy chọn quy ước chấm công khác").Show(); } } catch (Exception ex) { X.MessageBox.Alert("Có lỗi xảy ra", ex.Message).Show(); } }
public void BindData() { DataSource = new KyHieuChamCongController().GetAll(); xrl_MA_TT_LAMVIEC.DataBindings.Add("Text", DataSource, "MA_TT_LAMVIEC"); xrl_TEN_TT_LAMVIEC.DataBindings.Add("Text", DataSource, "GHI_CHU"); }