I am quite confused on how to determine if a single method has one responsibility being done just like the following code from the book Clean Code
public Mon
I generally apply the SRP at the class level. It prevents classes becoming too big and taking on too many roles.
I treat the 'responsibilities' as conceptual. Therefore, I would argue that your method has only one responsibility: to calculate pay.
I try and follow Google's guidelines on this and look for these warning signs that suggest you're wandering away from the SRP:
On another note, however, your code contains a switch statement that suggests you might be wandering away from the OCP...