Вот набросал требования к системе:
Требуется дисконтная система, работающая в веб-интерфейсе.
Для организации дисконта были выпущены пластиковые карты со штрихкодом EAN13.
ДС включает в себя следующие процессы:
1. Выдача дисконтной карты
2. Административный интерфейс (пользователи, отчеты по клиенту, задание параметров накоплений)
3. Оказания услуги и расчет стоимости
Работа в системе должна быть только от авторизованного пользователя, можно использовать сертификаты для авторизации, дополнительно к базовой аутентификации по логину/паролю.
В ДС должно быть 2 интерфейса: операторский и административный.
Операторский интерфейс предназначен для выдачи дисконтных карт и оказания услуг (расчет стоимости).
Административный интерфейс служит для просмотра полной истории операций, задания лимитов по накоплениям для перехода на другой процент скидки, управление пользователями системы (операторами).
Рассмотри операторский интерфейс:
Окно, справа вверху кнопочка «выйти».
По центру большая кнопка «Новая услуга (оплата)»
Чуть ниже этой кнопки, кнопочка поменьше «Выдача новой дисконтной карты»
Рассмотрим процесс «Выдача дисконтной карты»:
1. После нажатия на кнопку «Выдача дисконтной карты», оператору открывается окно с полями для заполнения информации по клиенту:
a. ФИО
b. Дата рождения
c. Телефон
d. E-mail
e. Кнопочка «Дисконтная карта». Если на нее нажимаешь, то предлагается ввести номер ДК или считать его сканером ШК.
И кнопка «Сохранить» и «Отмена».
2. Оператор, внеся все эти данные по клиенту, нажимает кнопку «сохранить» и диалоговое окно исчезает. На этом процесс заведения нового клиента окончен.
Рассмотрим процесс «Оказание услуги (оплата)»:
1. После нажатия на кнопку «Оказание услуги (оплата)» оператору открывается диалоговое окно, где требуется ввести сумму услуги и на выбор 2 кнопки «Найти клиента вручную» и «Считать дисконтную карту».
2. Если оператор выбирает «Найти клиента вручную», то открывается база клиентов, по которой оператор выбирает нужного клиента.
3. Если оператор выбирает «Считать дисконтную карту», то открывается окно ввода информации по карте, где можно вручную ввести номер карты или считать данные сканером ШК.
4. После выбора клиента, оператор нажимает кнопку «Рассчитать».
5. Меняется окно, где выводится следующая информация:
— первоначальная сумма услуг
— сумма к оплате с учетом скидки
— текущий процент скидки
— процент скидки после совершения оплаты (на случай, если оплата происходит на границе перехода с одного процента на другой)
— сумма накоплений на карте
— требуемая сумма накоплений, чтобы перейти на следующий уровень (это рассчитывается как бы уже совершена текущая оплата), если уровень уже максимальный, то вывести что карта является с максимальной скидкой.
В этом окне 2 кнопочки «Подтвердить» и «Отмена».
Если оператор выбирает «Отмена», то он попадает в главное меню, и все изменения не сохраняются. Если выбирает «Подтвердить», то информация заносится в базу.
Административный интерфейс
Здесь есть несколько функциональных блоков:
— управление пользователями
— просмотр базы и информации по клиентам
— редактирование условий изменения скидки в зависимости от накоплений