How to use Rules to restrict the edit and delete options if a field has value "approved"?
Under permissions give the role ability to update only their own content. Then set a rule when node is published, author of role is set to another site user? That would be a quick implementation.