Ejemplo n.º 1
0
        private void RemoveEmployeeFromTerminal()
        {
            try
            {
                _dtCtrl = Properties.Settings.Default.IsClient ? RemoteDataController.Instance : LocalDataController.Instance;
                List <UndeletedEmployeeNumber> undelEmployeeNumberList = null;
                lock (_dtCtrl)
                {
                    undelEmployeeNumberList = _dtCtrl.GetUndeletedEmployeeNumberList();
                }

                foreach (UndeletedEmployeeNumber undelEmployeeNumber in undelEmployeeNumberList)
                {
                    Terminal terminal = null;

                    lock (_dtCtrl)
                    {
                        terminal = _dtCtrl.GetTerminal(undelEmployeeNumber.TerminalID);
                    }

                    _terCtrl = new TerminalController();
                    if (_terCtrl.RemoveEmployee(terminal, undelEmployeeNumber.EmployeeNumber))
                    {
                        bool deleted = false;
                        lock (_dtCtrl)
                        {
                            deleted = _dtCtrl.DeleteUndeletedEmployeeNumber(undelEmployeeNumber);
                        }

                        if (deleted == false)
                        {
                            throw new Exception();
                        }
                    }
                    else
                    {
                        throw new Exception();
                    }
                }

                Thread.Sleep(_timeToSleep2);
                RemoveEmployeeFromTerminal();
            }
            catch
            {
                Thread.Sleep(_timeToSleep1);
                RemoveEmployeeFromTerminal();
            }
        }
Ejemplo n.º 2
0
        private void RemoveEmployeeFromTerminal()
        {
            try
            {
                _dtCtrl = Properties.Settings.Default.IsClient ? RemoteDataController.Instance : LocalDataController.Instance;
                List<UndeletedEmployeeNumber> undelEmployeeNumberList = null;
                lock (_dtCtrl)
                {
                    undelEmployeeNumberList = _dtCtrl.GetUndeletedEmployeeNumberList();
                }

                foreach (UndeletedEmployeeNumber undelEmployeeNumber in undelEmployeeNumberList)
                {
                    Terminal terminal = null;

                    lock (_dtCtrl)
                    {
                        terminal = _dtCtrl.GetTerminal(undelEmployeeNumber.TerminalID);
                    }

                    _terCtrl = new TerminalController();
                    if (_terCtrl.RemoveEmployee(terminal, undelEmployeeNumber.EmployeeNumber))
                    {
                        bool deleted = false;
                        lock (_dtCtrl)
                        {
                            deleted = _dtCtrl.DeleteUndeletedEmployeeNumber(undelEmployeeNumber);
                        }

                        if (deleted == false)
                            throw new Exception();
                    }
                    else
                    {
                        throw new Exception();
                    }
                }

                Thread.Sleep(_timeToSleep2);
                RemoveEmployeeFromTerminal();
            }
            catch
            {
                Thread.Sleep(_timeToSleep1);
                RemoveEmployeeFromTerminal();
            }
        }
Ejemplo n.º 3
0
        private void ClearDB()
        {
            _dtCtrl.BeginTransaction();
            try
            {
                Invoke(new SetTextCallBack(SetText), new object[] { txtProgress, "Clearing..." });

                //clear undel employee
                foreach (UndeletedEmployeeNumber undelEmp in _dtCtrl.GetUndeletedEmployeeNumberList())
                {
                    _dtCtrl.DeleteUndeletedEmployeeNumber(undelEmp);
                }

                //clear uncal att records
                _dtCtrl.DeleteAllUncalculatedAttendanceRecord();

                //clear att reports
                _dtCtrl.DeleteAllAttendanceReport();

                //clear att records
                _dtCtrl.DeleteAllAttendanceRecord();

                //clear employee
                foreach (Employee emp in _dtCtrl.GetEmployeeList())
                {
                    //clear employee terminal
                    _dtCtrl.DeleteEmployeeTerminalByEmployee(emp.EmployeeNumber);

                    _dtCtrl.DeleteEmployee(emp.PayrollNumber);
                }

                //clear employee number

                //clear department
                foreach (Department dep in _dtCtrl.GetDepartmentList())
                {
                    if (dep.ID != 1)
                    {
                        _dtCtrl.DeleteDepartment(dep.ID);
                    }
                }

                //clear company
                foreach (Company com in _dtCtrl.GetCompanyList())
                {
                    if (com.ID != 1)
                    {
                        _dtCtrl.DeleteCompany(com.ID);
                    }
                }

                //clear working calendar
                foreach (WorkingCalendar wCal in _dtCtrl.GetWorkingCalendarList())
                {
                    List <Shift> shiftList = _dtCtrl.GetShiftListByWorkingCalendar(wCal.ID);

                    foreach (Shift shift in shiftList)
                    {
                        _dtCtrl.DeleteShift(shift.ID);
                    }

                    _dtCtrl.DeleteWorkingCalendar(wCal.ID);
                }

                //clear pay period

                _dtCtrl.CommitTransaction();

                Invoke(new SetTextCallBack(SetText), new object[] { txtProgress, "Clearing Complete." });
            }
            catch (Exception ex)
            {
                _dtCtrl.RollbackTransaction();
                Invoke(new AddTextCallBack(SetText), new object[] { txtProgress, "Error: " + ex.Message });
            }
        }