Since you are using database trigger on the external database, the logic in your application is very straightforward. On your application you can have domains mapping the readonly database and domains for your local db. This will help to separating the concern for each domain. The logic for manipulating the data and storing them in your application database can be inside a transactional service.
Grails provides great features for multiple databases that can be utilized here.
Hope it helps