void loadGrid() { DataTable dt = LibQLSX.Select("select top 1 * from vChucVu where Account = '" + Global.LoginName + "'"); if (dt.Rows.Count == 0) { MessageBox.Show("Tài khoản trên QLSX và quản lý thiết kế của bạn đang khác nhau", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } string[] _paraName = new string[6]; object[] _paraValue = new object[6]; _paraName[0] = "@StartDate"; _paraValue[0] = TextUtils.ToDate2(dtpStartDate.EditValue); _paraName[1] = "@EndDate"; _paraValue[1] = TextUtils.ToDate2(dtpEndDate.EditValue); _paraName[2] = "@UserId"; _paraValue[2] = TextUtils.ToString(dt.Rows[0]["UserId"]); _paraName[3] = "@DepartmentId"; _paraValue[3] = TextUtils.ToString(cboDepartment.EditValue); _paraName[4] = "@GroupUserId"; _paraName[5] = "@LeaderId"; if (TextUtils.HasPermission("frmWorkingDiariesManager_ViewAll")) { _paraValue[2] = "1"; _paraValue[4] = ""; _paraValue[5] = ""; } else { string departmentCode = TextUtils.ToString(dt.Rows[0]["DCode"]); string groupCode = TextUtils.ToString(dt.Rows[0]["GroupCode"]); if (departmentCode == "" && groupCode == "") { _paraValue[4] = "0"; _paraValue[5] = "0"; } else { _paraValue[4] = groupCode != "" ? TextUtils.ToString(dt.Rows[0]["UserId"]) : ""; _paraValue[5] = departmentCode != "" ? TextUtils.ToString(dt.Rows[0]["UserId"]) : ""; } } DataTable Source = LibQLSX.LoadDataFromSP("spGetWorkingDiaries", "Source", _paraName, _paraValue); grdData.DataSource = Source; }
private void btnEdit_Click(object sender, EventArgs e) { int id = TextUtils.ToInt(grvData.GetFocusedRowCellValue(colID)); if (id == 0) { return; } WorkingDiariesModel model = (WorkingDiariesModel)WorkingDiariesBO.Instance.FindByPK(id); if (model.IsApproved) { MessageBox.Show("Nhật ký công việc đã được duyệt, bạn không thể sửa được.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } DataTable dt = LibQLSX.Select("select top 1 UserId from Users where Account = '" + Global.AppUserName + "'"); if (dt.Rows.Count <= 0) { MessageBox.Show("Bạn chưa có tài khoản trên phần mềm quản lý sản xuất.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } else { if (!TextUtils.HasPermission("frmWorkingDiariesManager_AddAll")) { string account = TextUtils.ToString(grvData.GetFocusedRowCellValue(colAccount1)); if (account.ToUpper() != Global.AppUserName.ToUpper()) { MessageBox.Show("Bạn không có quyền sửa nhật ký công việc này.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } } } _rownIndex = grvData.FocusedRowHandle; frmWorkingDiaries frm = new frmWorkingDiaries(); frm.WorkingDiaries = model; frm.LoadDataChange += main_LoadDataChange; frm.Show(); }
void save() { if (!TextUtils.HasPermission("frmProjectProblem_EditAll")) { if (Global.AppUserName != ProjectProblem.UpdatedBy && ProjectProblem.ID > 0) { MessageBox.Show("Bạn không có quyền sửa vấn đề này!", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return; } } ProcessTransaction pt = new ProcessTransaction(); pt.OpenConnection(); pt.BeginTransaction(); try { if (!ValidateForm()) { return; } grvData.FocusedRowHandle = -1; ProjectProblem.Code = ""; ProjectProblem.ProjectId = TextUtils.ToString(cboProject.EditValue); ProjectProblem.ModuleCode = TextUtils.ToString(cboModule.EditValue); ProjectProblem.Content = txtContent.Text.Trim(); ProjectProblem.DatePhatSinh = (DateTime?)dtpDatePhatSinh.EditValue; ProjectProblem.Reason = txtReason.Text.Trim(); ProjectProblem.Solution = txtSolution.Text.Trim(); ProjectProblem.Status = cboStatus.SelectedIndex; ProjectProblem.IsTonDong = chkTonDong.Checked; ProjectProblem.IsTinhTrang = chkIsTinhTrang.Checked; ProjectProblem.Monitor = TextUtils.ToString(cboUser.EditValue); ProjectProblem.DepartmentId = TextUtils.ToString(cboPhongBan.EditValue); ProjectProblem.UpdatedDate = DateTime.Now; ProjectProblem.UpdatedBy = Global.AppUserName; if (ProjectProblem.ID <= 0) { ProjectProblem.CreatedDate = DateTime.Now; ProjectProblem.CreatedBy = Global.AppUserName; ProjectProblem.ID = (int)pt.Insert(ProjectProblem); } else { pt.Update(ProjectProblem); } pt.CommitTransaction(); _isSaved = true; MessageBox.Show("Lưu trữ thành công!", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show("Lưu trữ không thành công!" + Environment.NewLine + ex.Message, TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { pt.CloseConnection(); } if (_isSaved) { if (this.LoadDataChange != null) { this.LoadDataChange(null, null); } } }
bool ValidateForm() { if (!TextUtils.HasPermission("frmWorkingDiariesManager_IsApproved") && cboStatus.SelectedIndex > 1) { MessageBox.Show("Bạn chỉ có quyền nhập nhật ký công việc thời gian hành chính.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (WorkingDiaries.IsApproved) { MessageBox.Show("Nhật ký công việc đã được duyệt, bạn không thể sửa được nữa.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (cboPhongBan.EditValue == null) { MessageBox.Show("Xin hãy chọn một phòng ban.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (cboUser.EditValue == null) { MessageBox.Show("Xin hãy chọn một nhân viên.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (txtUserCode.Text.Trim() == "") { MessageBox.Show("Nhân viên chưa có mã.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (txtProjectCode.Text.Trim() == "" && cboStatus.SelectedIndex != 8) { MessageBox.Show("Dự án chưa có mã.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (cboProject.EditValue == null && cboStatus.SelectedIndex != 8) { MessageBox.Show("Xin hãy chọn một dự án.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (cboStatus.SelectedIndex <= 0) { MessageBox.Show("Xin hãy chọn một trạng thái.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (dtpWorkingDate.EditValue == null) { MessageBox.Show("Bạn chưa điền ngày làm việc.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (dtpStartTime.EditValue == null) { MessageBox.Show("Bạn chưa điền thời gian bắt đầu.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (dtpEndTime.EditValue == null) { MessageBox.Show("Bạn chưa điền thời gian kết thúc.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (TextUtils.ToDecimal(txtWorkTime.EditValue) == 0) { MessageBox.Show("Bạn chưa điền tổng thời gian.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (txtWorkingContent.Text.Trim() == "") { MessageBox.Show("Bạn chưa điền nội dung công việc.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (TextUtils.ToDecimal(txtWorkTime.EditValue) <= 0) { MessageBox.Show("Thời gian làm việc phải lớn hơn 0.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } //1.Thời gian hành chính (8:00 - 17:00) //2.Tăng ca tối, thường (17:30 - 22:00, 6:00 - 8:00) //3.Tăng ca đêm ngày thường (22:00 - 6:00) //4.Tăng ca ngày nghỉ (6:00 - 22:00) //5.Tăng ca ngày lễ (6:00 - 22:00) //6.Tăng ca đêm ngày nghỉ (22:00 - 6:00) //7.Tăng ca đêm ngày lễ (22:00 - 6:00) //8.Nghỉ phép (8:00 - 17:00) //9.Nghỉ không lương (8:00 - 17:00) //10.Nghỉ chế độ (8:00 - 17:00) //List<int> listHour = new List<int>(new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23 }); DateTime cDate = (DateTime)dtpWorkingDate.EditValue; DateTime startDate = new DateTime(cDate.Year, cDate.Month, cDate.Day, TextUtils.ToDate3(dtpStartTime.EditValue).Hour, TextUtils.ToDate3(dtpStartTime.EditValue).Minute, 0); DateTime endDate = new DateTime(cDate.Year, cDate.Month, cDate.Day, TextUtils.ToDate3(dtpEndTime.EditValue).Hour, TextUtils.ToDate3(dtpEndTime.EditValue).Minute, 0); string sql = ""; if (WorkingDiaries.ID > 0) { sql = "select top 1 ID from WorkingDiaries where ((StartTime <= '" + startDate.ToString("yyyy-MM-dd HH:mm") + "' and EndTime > '" + startDate.ToString("yyyy-MM-dd HH:mm") + "') or " + "(StartTime < '" + endDate.ToString("yyyy-MM-dd HH:mm") + "' and EndTime >= '" + endDate.ToString("yyyy-MM-dd HH:mm") + "')) " //+ "and (DATEDIFF(day, '" + cDate.ToString("yyyy-MM-dd") + "', WorkingDate) = 0 " + "and UserId = '" + TextUtils.ToString(cboUser.EditValue) + "' and ID <> " + WorkingDiaries.ID; } else { sql = "select top 1 ID from WorkingDiaries where ((StartTime <= '" + startDate.ToString("yyyy-MM-dd HH:mm") + "' and EndTime > '" + startDate.ToString("yyyy-MM-dd HH:mm") + "') or " + "(StartTime < '" + endDate.ToString("yyyy-MM-dd HH:mm") + "' and EndTime >= '" + endDate.ToString("yyyy-MM-dd HH:mm") + "')) " //+ "and (DATEDIFF(day, '" + cDate.ToString("yyyy-MM-dd") + "', WorkingDate) = 0 " + "and UserId = '" + TextUtils.ToString(cboUser.EditValue) + "'"; } DataTable dt = LibQLSX.Select(sql); if (dt.Rows.Count > 0) { MessageBox.Show("Khung thời gian đang bị trùng lặp.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } if (cboStatus.SelectedIndex == 1 || cboStatus.SelectedIndex == 8 || cboStatus.SelectedIndex == 9 || cboStatus.SelectedIndex == 10) { List <int> listHour = new List <int>(new int[] { 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 }); if (!listHour.Contains(startDate.Hour) || !listHour.Contains(endDate.Hour) || startDate.Hour > endDate.Hour || (endDate.Hour == 17 && endDate.Minute > 0) || (startDate.Hour == 11 && startDate.Minute > 30) || (startDate.Hour == 12 && startDate.Minute < 30) || (endDate.Hour == 11 && endDate.Minute > 30) || (endDate.Hour == 12 && endDate.Minute < 30) ) { MessageBox.Show("Thời gian bắt đầu hoặc thời gian kết thúc không hợp lệ.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } } if (cboStatus.SelectedIndex == 2) { List <int> listHour = new List <int>(new int[] { 6, 7, 8, 17, 18, 19, 20, 21, 22 }); if (!listHour.Contains(startDate.Hour) || !listHour.Contains(endDate.Hour) || startDate.Hour > endDate.Hour || (startDate.Hour == 17 && startDate.Minute < 30)) { MessageBox.Show("Thời gian bắt đầu hoặc thời gian kết thúc không hợp lệ.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } } if (cboStatus.SelectedIndex == 4 || cboStatus.SelectedIndex == 5) { List <int> listHour = new List <int>(new int[] { 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22 }); if (!listHour.Contains(startDate.Hour) || !listHour.Contains(endDate.Hour) || startDate.Hour > endDate.Hour || (endDate.Hour == 22 && endDate.Minute > 0) || (startDate.Hour == 11 && startDate.Minute > 30) || (startDate.Hour == 12 && startDate.Minute < 30) || (endDate.Hour == 11 && endDate.Minute > 30) || (endDate.Hour == 12 && endDate.Minute < 30) ) { MessageBox.Show("Thời gian bắt đầu hoặc thời gian kết thúc không hợp lệ.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } } if (cboStatus.SelectedIndex == 3 || cboStatus.SelectedIndex == 6 || cboStatus.SelectedIndex == 7) { List <int> listHour = new List <int>(new int[] { 0, 1, 2, 3, 4, 5, 6, 22, 23 }); if (!listHour.Contains(startDate.Hour) || !listHour.Contains(endDate.Hour) || (endDate.Hour == 6 && endDate.Minute > 0)) { MessageBox.Show("Thời gian bắt đầu hoặc thời gian kết thúc không hợp lệ.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } } if (cboStatus.SelectedIndex == 7 || cboStatus.SelectedIndex == 6) { if (endDate.Hour - startDate.Hour < 0) { MessageBox.Show("Thời gian bắt đầu hoặc thời gian kết thúc không hợp lệ.", TextUtils.Caption, MessageBoxButtons.OK, MessageBoxIcon.Stop); return(false); } } return(true); }