А каковы критерии неуникальности? то есть, в каком случае нужно генерировать номер как плюс один к предыдущему, а в каких случаях - какой то другой который уже есть? Странная задача.
Критерий уникальности по приходящим из сторонней базы данным. Т.е.определенная группа записей может иметь один ID.