Я создаю приложение, в котором объекты имеют поиск статуса.Чтобы дать некоторый контекст, давайте использовать следующий пример.
Приложение службы поддержки, в котором создаются задания, и перемещаются по следующему рабочему процессу:
Новое - Задание созданоно неназначенные
Выполняется - Задание назначено работнику и выполняется
Завершено - Задание выполнено для выставления счета
Закрыто - Заданиевыставлен счет
Итак, я создаю таблицу состояния со следующими данными:
int ID
строка Имя
и столбец поиска в таблице заданий
int ID
string Имя
int CustomerID
int StatusID -> ищет статус
Итак, в реальном мире, скажем, у нас есть следующие требования.
- Пользователи должны получить отчет дляпоказать все незавершенные работы (задания, которые являются новыми или InProgress)
- Вниз, кто-то захочет добавить новый статус, который яНапример, в середине завершено и закрыто.
Исходя из этого, мои первоначальные мысли состоят в том, чтобы создать новый столбец в таблице состояния с именем SortOrder или аналогичным и назначить ему такие номера, как
Новое - 10
В процессе - 20
Завершено - 30
Закрыто -40
Это будет означать, что для случая № 1 выше, я мог бы просто запросить базу данных для всех заданий, статус которых больше или равен 30. Это также было бы здорово для случая № 2, потому что это означает, что еслиЯ ввел новый статус между завершенным и закрытым, он не нарушит этот отчет.
Я вижу, что он часто встречается в разных приложениях.Кто-нибудь реализовывал подобное решение или сталкивался с этой проблемой раньше?