/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void Delete(object sender, DirectEventArgs e) { // delete symbol if (!int.TryParse(hdfKeyRecord.Text, out var id) || id <= 0) { return; } TimeSheetSymbolController.Delete(id); // get all event have that symbol var timeSheetEvents = TimeSheetEventController.GetAll(null, null, null, null, null, id, false, null, null, null, null, null, null, null); // delete time sheet event if (timeSheetEvents != null) { foreach (var timeSheetEvent in timeSheetEvents) { TimeSheetEventController.Delete(timeSheetEvent.Id); } } // reload gridTimeSheetSymbol.Reload(); RM.RegisterClientScriptBlock("Grid_Reload", "ReloadGrid();"); }
/// <summary> /// /// </summary> /// <param name="recordId"></param> /// <param name="workShiftModel"></param> /// <param name="timeConvert"></param> private void ProcessOverTime(int recordId, TimeSheetWorkShiftModel workShiftModel, double timeConvert) { var overTimeConvert = Math.Round((timeConvert - workShiftModel.TimeConvert), 2); //Add moi timeSheetEvent var groupSymbolCondition = "[Group]='{0}'".FormatWith(Constant.TimesheetOverTime); var groupSymbol = hr_TimeSheetGroupSymbolServices.GetByCondition(groupSymbolCondition); if (groupSymbol != null) { var symbol = TimeSheetSymbolController.GetByCondition(null, groupSymbol.Id); if (symbol != null) { CreateTimeSheetEvent(recordId, workShiftModel.Id, groupSymbol.Id, symbol.Id, 0, overTimeConvert, symbol.Name); } } }
/// <summary> /// /// </summary> private void UpdateSymbol() { if (string.IsNullOrEmpty(hdfKeyRecord.Text)) { return; } var symbol = TimeSheetSymbolController.GetById(Convert.ToInt32(hdfKeyRecord.Text)); EditDataSymbol(symbol); if (TimeSheetSymbolController.Update(symbol) == null) { Dialog.Alert("Ký hiệu chấm công đã tồn tại! Vui lòng chọn ký hiệu chấm công khác!"); return; } wdTimeSheetSymbol.Hide(); ResetForm(); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void EditTimeSheetSymbol_Click(object sender, DirectEventArgs e) { if (!string.IsNullOrEmpty(hdfKeyRecord.Text)) { var symbol = TimeSheetSymbolController.GetById(Convert.ToInt32(hdfKeyRecord.Text)); if (symbol != null) { txtNumberOfDay.Text = (symbol.WorkConvert.ToString(CultureInfo.InvariantCulture).Replace("-", "")).Replace(".", ","); txtTimeConvert.Text = symbol.TimeConvert.ToString(CultureInfo.InvariantCulture).Replace(".", ","); chk_Status.Checked = symbol.Status == TimeSheetStatus.Active; txtSymbolCode.Text = symbol.Code; txtSymbolName.Text = symbol.Name; if (!string.IsNullOrEmpty(symbol.Color)) { dropDownSymbol.Text = symbol.Color.TrimStart('#'); } txtNote.Text = symbol.Description; txtOrder.Text = symbol.Order.ToString(); hdfGroupSymbolId.Text = symbol.GroupSymbolId.ToString(); cbxGroupSymbol.Text = symbol.GroupSymbolName; if (!symbol.TypeWork) { chkAddWork.Checked = true; } else { chkMinusWork.Checked = true; } } } // show window btnUpdate.Show(); btnUpdateClose.Hide(); btnUpdateNew.Hide(); wdTimeSheetSymbol.Title = @"Cập nhật ký hiệu chấm công"; wdTimeSheetSymbol.Show(); }
/// <summary> /// /// </summary> /// <param name="e"></param> private void InsertSymbol(DirectEventArgs e) { var symbol = new TimeSheetSymbolModel(new hr_TimeSheetSymbol { Code = txtSymbolCode.Text, CreatedDate = DateTime.Now, CreatedBy = CurrentUser.User.UserName }); //edit data EditDataSymbol(symbol); if (TimeSheetSymbolController.Create(symbol) == null) { Dialog.Alert("Ký hiệu chấm công đã tồn tại! Vui lòng chọn ký hiệu chấm công khác!"); return; } if (e.ExtraParams["Close"] != "True") { return; } wdTimeSheetSymbol.Hide(); ResetForm(); }
/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnAccept_Click(object sender, DirectEventArgs e) { try { foreach (var workShift in chkWorkShiftRowSelection.SelectedRows) { foreach (var symbol in chkSelectionModelSymbol.SelectedRows) { var timeSheetSymbol = TimeSheetSymbolController.GetById(int.Parse(symbol.RecordID)); var timeSheetGroupSymbol = TimeSheetGroupSymbolController.GetById(timeSheetSymbol.GroupSymbolId); var timeSheetEvent = new TimeSheetEventModel { RecordId = int.Parse(hdfRecordId.Text), WorkShiftId = int.Parse(workShift.RecordID), SymbolId = timeSheetSymbol.Id, GroupSymbolId = timeSheetSymbol.GroupSymbolId, WorkConvert = timeSheetSymbol.WorkConvert, TimeConvert = timeSheetSymbol.TimeConvert, Type = timeSheetGroupSymbol.Group == Constant.TimesheetOverTime ? TimeSheetAdjustmentType.AdjustmentOverTime : TimeSheetAdjustmentType.Adjustment, Description = timeSheetGroupSymbol.Group == Constant.TimesheetOverTime ? "Thêm giờ" : "Hiệu chỉnh" }; var newTimeSheetEvent = TimeSheetEventController.Create(timeSheetEvent); // update annual leave if (timeSheetGroupSymbol.Group == Constant.TimesheetLeave) { // update annual leave history var annualLeaveHistory = new AnnualLeaveHistoryModel { RecordId = newTimeSheetEvent.RecordId, TimeSheetEventId = newTimeSheetEvent.Id, UsedLeaveDate = newTimeSheetEvent.StartDate, UsedLeaveDay = newTimeSheetEvent.WorkConvert, CreatedBy = CurrentUser.User.UserName }; AnnualLeaveHistoryController.Create(annualLeaveHistory); // get annual leave configure by record id and year var annualLeaveConfigures = AnnualLeaveConfigureController.GetAll(null, annualLeaveHistory.RecordId.ToString(), null, annualLeaveHistory.UsedLeaveDate.Year, false, null, 1); if (annualLeaveConfigures == null || annualLeaveConfigures.Count == 0) { continue; } // get first item in list var annualLeaveConfigure = annualLeaveConfigures.First(); // calc used and remain leave day annualLeaveConfigure.UsedLeaveDay += annualLeaveHistory.UsedLeaveDay; if (annualLeaveConfigure.AnnualLeaveDay > 0) { annualLeaveConfigure.RemainLeaveDay = annualLeaveConfigure.AnnualLeaveDay - annualLeaveConfigure.UsedLeaveDay; } annualLeaveConfigure.EditedBy = CurrentUser.User.UserName; // update annual leave configure AnnualLeaveConfigureController.Update(annualLeaveConfigure); } } } gridTimeSheet.Reload(); gridUpdateTimeSheet.Reload(); } catch (Exception ex) { Dialog.ShowNotification("Có lỗi xảy ra" + ex.Message); } }