Multi-level user group and role in WordPress to create personal posts/contents?
I don’t want to use any plugin to do this and write the functionality on my own. The client asked me to create a system with WP where a user as admin role (similar to CEO for example) will open account for a company. Then he will create sub-level account, say for his manager to login and create custom posts of a specific custom post type which other specific users can access and read.
Basically, three levels (or two) of user accounts where the CEO will create his own account, then create a new account for his manager and manager will log in and write posts which his subordinates can see after opening their own accounts of, say, user/subscriber role.
How is the possibility of doing this in WordPress? I did some research and found a couple of ways. I can do this by making a custom database table and putting user information there as user & access roles. The second option would be adding user_meta to each user by adding their respective company name, role as admin/manager/subscriber and managing the custom posts access from those info.
Is there any better way or this is the right approach?