void AuthService_PostLogin(object sender, BaseEventArgs e) { BaseUser loggedUser = ClientInfo.getInstance().LoggedUser; if(loggedUser.IsInRole(PosRole.Manager)) { // process period for manager here EmployeeManagementEventArgs eventArgs = new EmployeeManagementEventArgs(); eventArgs.Username = ClientInfo.getInstance().LoggedUser.Name; EventUtility.fireEvent(ProcessPeriodEvent,this,eventArgs); LoginModel userInfo = eventArgs.UserInfo; if(eventArgs.DepartmentManagement==null) { DialogResult result = MessageBox.Show("Ca trực đang trống. Bạn có muốn vào ca hay không ? ", "Vào ca trực", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); if(result == DialogResult.Yes) { EventUtility.fireEvent(StartPeriodEvent,this,eventArgs); if(eventArgs.HasErrors) { MessageBox.Show("Có lỗi khi thực hiện vào ca. Liên hệ người quản trị.", "Lỗi"); return; } } } } AuthService.PostLogin -= new EventHandler<BaseEventArgs>(AuthService_PostLogin); }
void mainView_EndPeriodEvent(object sender, EmployeeManagementEventArgs e) { DepartmentManagement curDM = e.DepartmentManagement; curDM.EndTime = DateTime.Now; DepartmentManagementLogic.Update(curDM); if (e.OutMoney > 0) { EmployeeMoneyPK employeeMoneyPk = new EmployeeMoneyPK { DepartmentId = e.DepartmentManagement.DepartmentManagementPK.DepartmentId, EmployeeId = e.DepartmentManagement.DepartmentManagementPK.EmployeeId, WorkingDay = DateUtility.DateOnly(e.DepartmentManagement.DepartmentManagementPK.WorkingDay) }; EmployeeMoney employeeMoney = EmployeeMoneyLogic.FindById(employeeMoneyPk); employeeMoney.DateLogout = curDM.EndTime; employeeMoney.UpdateDate = DateTime.Now; employeeMoney.UpdateId = curDM.UpdateId; employeeMoney.OutMoney = e.OutMoney; EmployeeMoneyLogic.Update(employeeMoney); } }
void mainView_StartPeriodEvent(object sender, EmployeeManagementEventArgs e) { try { DepartmentManagement dm = new DepartmentManagement(); dm.CreateId = e.UserInfo.Username; dm.UpdateId = e.UserInfo.Username; dm.CreateDate = DateTime.Now; dm.UpdateDate = DateTime.Now; dm.StartTime = DateTime.Now; dm.DepartmentManagementPK = new DepartmentManagementPK { DepartmentId = CurrentDepartment.Get().DepartmentId, EmployeeId = e.UserInfo.EmployeeInfo.EmployeePK.EmployeeId, WorkingDay = DateTime.Now }; DepartmentManagementLogic.Add(dm); e.DepartmentManagement = dm; } catch (Exception) { e.HasErrors = true; } }
void mainView_ProcessPeriodEvent(object sender, EmployeeManagementEventArgs e) { string UserId = e.Username; LoginModel UserInfo = LoginLogic.FindById(UserId); if(UserInfo.EmployeeInfo!=null) { e.UserInfo = UserInfo; DepartmentManagement lastManagement = DepartmentManagementLogic.FindLastPeriod(); e.DepartmentManagement = lastManagement; } }
void mainView_ProcessEmployeeMoneyEvent(object sender, EmployeeManagementEventArgs e) { try { if (e.InMoney > 0) { EmployeeMoney employeeMoney = new EmployeeMoney(); employeeMoney.EmployeeMoneyPK = new EmployeeMoneyPK { DepartmentId = e.DepartmentManagement.DepartmentManagementPK.DepartmentId, EmployeeId = e.DepartmentManagement.DepartmentManagementPK.EmployeeId, WorkingDay = DateUtility.DateOnly(e.DepartmentManagement.DepartmentManagementPK.WorkingDay) }; employeeMoney.DateLogin = e.DepartmentManagement.StartTime; employeeMoney.InMoney = e.InMoney; employeeMoney.CreateDate = e.DepartmentManagement.CreateDate; employeeMoney.CreateId = e.DepartmentManagement.CreateId; employeeMoney.UpdateDate = e.DepartmentManagement.UpdateDate; employeeMoney.UpdateId = e.DepartmentManagement.UpdateId; EmployeeMoneyLogic.Add(employeeMoney); } } catch (Exception exception) { e.HasErrors = true; } }
private void mnuLeavePeriod_Click(object sender, EventArgs e) { BaseUser loggedUser = ClientInfo.getInstance().LoggedUser; if (loggedUser.IsInRole(PosRole.Manager)) { DialogResult result = MessageBox.Show("Bạn có muốn kết thúc ca trực hay không ? ", "Thoát ca trực", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); if (result == DialogResult.Yes) { EmployeeManagementEventArgs eventArgs = new EmployeeManagementEventArgs(); eventArgs.Username = ClientInfo.getInstance().LoggedUser.Name; EventUtility.fireEvent(ProcessPeriodEvent, this, eventArgs); LoginModel userInfo = eventArgs.UserInfo; if (eventArgs.DepartmentManagement == null) { MessageBox.Show("Chưa vào ca nên không thể chấm dứt ca.", "Lỗi"); return; } if (!userInfo.EmployeeInfo.EmployeePK.EmployeeId.Equals(eventArgs.DepartmentManagement.DepartmentManagementPK.EmployeeId)) { MessageBox.Show("Ca trực đã có người quản lý.", "Lỗi"); return; } EventUtility.fireEvent(EndPeriodEvent, this, eventArgs); if (eventArgs.HasErrors) { MessageBox.Show("Có lỗi khi thoát ca. Liên hệ người quản trị"); } else { MessageBox.Show("Bạn đã kết thúc ca trực. Nhấn OK để thoát."); } } } else { MessageBox.Show("Không đủ quyền hạn", "Lỗi"); } }
private void mnuEnterPeriod_Click(object sender, EventArgs e) { DialogResult result = MessageBox.Show("Bạn muốn vào ca trực ?", "Ca trực",MessageBoxButtons.YesNo); if(result == DialogResult.No) { return; } BaseUser loggedUser = ClientInfo.getInstance().LoggedUser; if (loggedUser.IsInRole(PosRole.Manager)) { // process period for manager here EmployeeManagementEventArgs eventArgs = new EmployeeManagementEventArgs(); eventArgs.Username = ClientInfo.getInstance().LoggedUser.Name; EventUtility.fireEvent(ProcessPeriodEvent, this, eventArgs); LoginModel userInfo = eventArgs.UserInfo; if (eventArgs.DepartmentManagement == null) { EventUtility.fireEvent(StartPeriodEvent, this, eventArgs); if (eventArgs.HasErrors) { MessageBox.Show("Có lỗi khi thực hiện vào ca. Liên hệ người quản trị.", "Lỗi"); return; } else { MessageBox.Show("Bạn đã vào ca trực. Nhấn OK để thoát."); } } else { if (!userInfo.EmployeeInfo.EmployeePK.EmployeeId.Equals(eventArgs.DepartmentManagement.DepartmentManagementPK.EmployeeId)) { MessageBox.Show("Ca trực đã có người quản lý.", "Lỗi"); } else { MessageBox.Show("Bạn đã vào ca rồi.", "Lỗi"); } } } else { MessageBox.Show("Không đủ quyền hạn", "Lỗi"); } }