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);
 }
Beispiel #2
0
        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);
            }
        }
Beispiel #3
0
 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;
     }
 }
Beispiel #4
0
 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;
     }
 }
Beispiel #5
0
 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");
     }
 }