Only update the blueprint lastUpdated column if the sale value was modified
Pull out 'last updated' timestamp handling into a common abstract superclass