Workflow based on User

I’ve got a workflow I would like to set up but I’m not exactly sure how. Here’s there scenario:

  1. A Purchasing User creates a Purchase Order, which gets submitted to the Supplier
  2. The supplier sends a Purchase Invoice, which is entered into the system by our accounting department

At this point, what I want is a workflow for the Purchase Invoice which requires that the Purchasing User that created the Purchase Order (or a Purchasing Manager) be the only one that can approve the PI. I think I know how to set it up so that any Purchasing User could do it, but I want to limit it to the specific user that created the Purchase Order.

This mimics our current paper system where the Purchase Invoice is printed and the Purchase User signs the printed invoice to indicate that the supplier has met the requirements of the invoice before we pay it.

Any suggestions on how to do this?

Some thoughts:

  1. Set Up workflow so that only purchasing user can approve it
  2. I think there is a field called owner on the Purchase Order table, that has the ID of the user that created it. Maybe you can write a custom JS validation on the Purchase Invoice that the person approving it, is same as the owner of the PO linked to the Purchase Invoice.