Convert a number to a letter postgresql

i have a function that convert a number to a letter.

i want to optimise this function. see query: https://dbfiddle.uk/?rdbms=postgres_12&fiddle=2586d3e0b98df1c899defc7b4078e1ef

i want to have decimal part also.
now this function just return integer part.
example :
if i have 203.145, i want to get in letter ‘Two hundred three point one hundred forty-five’,
now this function just return ‘Two hundred three’