Stefanos Tsitsipas will face Casper Ruud in the Barcelona Open final a week after beating him to win the Monte Carlo Masters.