Generous person has been upset over workplace closing early (10)
I believe the answer is:
benefactor
'generous person' is the definition.
'benefactor' can be an answer for 'person' (benefactor is a kind of person). I am not certain of the 'generous' bit.
'been upset over workplace closing early' is the wordplay.
'upset' is an anagram indicator.
'over' is a charade indicator (letters next to each other).
'workplace' becomes 'factory' (type of workplace).
'closing early' means to remove the last letter.
'factory' with its final letter taken off is 'factor'.
'been' anagrammed gives 'bene'.
'bene'+'factor'='BENEFACTOR'
'has' acts as a link.
Can you help me to learn more?
(Other definitions for benefactor that I've seen before include "One provides bread" , "One financially supporting a worthy cause" , "Patronising sort" , "Person giving to a good cause" , "One giving money to a cause" .)