Challenge: I need to know how many tickets each assignee has worked on and completed during a sprint to better understand individual productivity. My current workflow doesn't allow that.
Description: The way our current workflow (photo attached below) is set up is that we have multiple statuses (one to-do, a couple of in-progress statuses, and one final done status). And Assignees for each status keep changing. For example, the ticket is worked on by person A, and then with the next status, it's assigned to person B for raising a PR.
therefore, in our current workflow, there is no way of finding out how much of the work each person did. There are time hours logged per person that you can see, but that is not a good enough estimate to judge the completion of a particular ticket or measure of individual productivity. 
Solution so far: The only thing I can think of to better understand individual productivity is to simplify the workflows to just To do, In progress, and Done. And create separate sub-tasks within the stories for actions such as "Raising PR", "Testing", etc. So this way each assignee starts and finishes an issue, and its not transitioned between people. And I get to know how many tickets are completed per assignee per sprint. Is there a better way to do this?