Beispiel #1
0
        /// <summary>
        /// IsValidApproveTimesheetsManager
        /// </summary>
        /// <param name="employeeIdToApprove">employeeIdToApprove</param>
        /// <param name="employeeIdApproveManager">employeeIdApproveManager</param>
        /// <returns>TRUE OR FALSE</returns>
        public bool IsValidApproveTimesheetsManager(int employeeIdToApprove, int employeeIdApproveManager)
        {
            EmployeeGateway employeeGatewayForEmployeeApproveManager = new EmployeeGateway(new DataSet());
            employeeGatewayForEmployeeApproveManager.LoadByEmployeeId(employeeIdApproveManager);

            EmployeeGateway employeeGatewayForEmployeeToApprove = new EmployeeGateway(new DataSet());
            employeeGatewayForEmployeeToApprove.LoadByEmployeeId(employeeIdToApprove);

            if (!employeeGatewayForEmployeeApproveManager.GetApproveTimesheets(employeeIdApproveManager))
            {
                return false;
            }
            else
            {
                if (employeeIdToApprove == employeeIdApproveManager)
                {
                    return true;
                }
                else
                {
                    string employeeToApproveType = employeeGatewayForEmployeeToApprove.GetType(employeeIdToApprove);
                    string employeeApproveManagerType = employeeGatewayForEmployeeApproveManager.GetType(employeeIdApproveManager);

                    string employeeToApproveCategory = employeeGatewayForEmployeeToApprove.GetCategory(employeeIdToApprove);

                    if (ContainsType(employeeToApproveType, employeeApproveManagerType))
                    {
                        EmployeeGateway employeeGateway = new EmployeeGateway();
                        if (employeeGateway.IsEmployeeWithApproveTimesheetInCategory(employeeIdApproveManager, employeeToApproveCategory))
                        {
                            return true;
                        }
                        else
                        {
                            return false;
                        }
                    }
                    else
                    {
                        return false;
                    }
                }
            }
        }