As per your views, your site should have below structure.
==> Register/Login
You can build your own register/login functionality.
Also you can use plugins like ZM Ajax Login & Register, User registration & user profile – Profile Builder, WP Custom Register Login for that.
After registering the user, it will be redirected to the dashboard which have some fields.
==> Fill the form which has your respected fields
For the form you should create Posttype like “Approval Form”.
This posttype have different fields like Title, Name of Author, Attachment or Image etc. You can do this by using ACF.
When user will submit the form at that time new post will be generated. By using that post’s ID you can insert all form’s data into post_meta.
==> That form will be delivered to you for final approvation
The newly post have by default “Draft” status. So that it will not show.
After that Admin will approve that post by changing that status to “Publish”.
At that time you can also send the confirmation mail to user by saying that “Story” is approved.
==> Then registered user will have that form details on their account.
After that you just have to show those approved data in anywhere where you want to show.