public static List <EmployeeReportsTo> GetEmployeeReportsToListByFilter(string searchValue, int unassigned, int accountId)
        {
            List <EmployeeReportsTo> list = new List <EmployeeReportsTo>();

            Database  db         = DatabaseFactory.CreateDatabase("Spar-StoreRep");
            string    sqlCommand = "GetEmployeeReportsToListByFilter";
            DbCommand dbCommand  = db.GetStoredProcCommand(sqlCommand);

            db.AddInParameter(dbCommand, "@SearchValue", DbType.String, searchValue);
            db.AddInParameter(dbCommand, "@Unassigned", DbType.Int32, unassigned);
            db.AddInParameter(dbCommand, "@AccountId", DbType.Int32, accountId);
            using (IDataReader dataReader = db.ExecuteReader(dbCommand))
            {
                while (dataReader.Read())
                {
                    EmployeeReportsTo employeeReportsTo = new EmployeeReportsTo();
                    employeeReportsTo.EmployeeNumber          = dataReader["EmployeeNumber"].ToString();
                    employeeReportsTo.FirstName               = dataReader["FirstName"].ToString();
                    employeeReportsTo.LastName                = dataReader["LastName"].ToString();
                    employeeReportsTo.EmployeeId              = Convert.ToInt32(dataReader["EmployeeId"]);
                    employeeReportsTo.ReportsToId             = Convert.ToInt32(dataReader["ReportsToId"]);
                    employeeReportsTo.ReportsToEmployeeNumber = dataReader["ReportsToEmployeeNumber"].ToString();
                    employeeReportsTo.ReportsToFirstName      = dataReader["ReportsToFirstName"].ToString();
                    employeeReportsTo.ReportsToLastName       = dataReader["ReportsToLastName"].ToString();
                    list.Add(employeeReportsTo);
                }
            }
            return(list);
        }
        public static List <EmployeeReportsTo> GetReportsToEmployeeListByEmployeeId(int employeeId)
        {
            List <EmployeeReportsTo> list = new List <EmployeeReportsTo>();

            Database  db         = DatabaseFactory.CreateDatabase("Spar-StoreRep");
            string    sqlCommand = "GetReportsToEmployeeListByEmployeeId";
            DbCommand dbCommand  = db.GetStoredProcCommand(sqlCommand);

            db.AddInParameter(dbCommand, "@EmployeeId", DbType.Int32, employeeId);

            using (IDataReader dataReader = db.ExecuteReader(dbCommand))
            {
                while (dataReader.Read())
                {
                    EmployeeReportsTo employeeReportsTo = new EmployeeReportsTo();
                    employeeReportsTo.EmployeeNumber          = dataReader["EmployeeNumber"].ToString();
                    employeeReportsTo.FirstName               = dataReader["FirstName"].ToString();
                    employeeReportsTo.LastName                = dataReader["LastName"].ToString();
                    employeeReportsTo.EmployeeId              = Convert.ToInt32(dataReader["EmployeeId"]);
                    employeeReportsTo.ReportsToId             = Convert.ToInt32(dataReader["ReportsToId"]);
                    employeeReportsTo.ReportsToEmployeeNumber = dataReader["ReportsToEmployeeNumber"].ToString();
                    employeeReportsTo.ReportsToFirstName      = dataReader["ReportsToFirstName"].ToString();
                    employeeReportsTo.ReportsToLastName       = dataReader["ReportsToLastName"].ToString();
                    list.Add(employeeReportsTo);
                }
            }
            return(list);
        }
        public static EmployeeReportsTo GetEmployeeReportsToTOPByEmployeeId(int employeeId)
        {
            Database  db         = DatabaseFactory.CreateDatabase("Spar-StoreRep");
            string    sqlCommand = "GetEmployeeReportsToTOPByEmployeeId";
            DbCommand dbCommand  = db.GetStoredProcCommand(sqlCommand);

            db.AddInParameter(dbCommand, "@EmployeeId", DbType.Int32, employeeId);
            db.AddOutParameter(dbCommand, "@ReportsToId", DbType.Int32, 4);
            db.ExecuteNonQuery(dbCommand);
            EmployeeReportsTo employeeReportsTo = new EmployeeReportsTo();

            employeeReportsTo.EmployeeId  = employeeId;
            employeeReportsTo.ReportsToId = Convert.ToInt32(db.GetParameterValue(dbCommand, "ReportsToId"));
            return(employeeReportsTo);
        }