Да красота не принципиальна - главное функциональность - поиск товаров. Разделение ролей админ, менеджер, директор и т.д. И у каждого роля своя страница с функциями....
Примерно так организовать:
Создаваемое программное обеспечение должно реализовывать следующие функции:
• Регистрацию пользователей (с проверкой работоспособности почтового ящика и/или телефона)
• Разделение пользователей по правам
o Администратор
Редактирование прав доступа пользователей
o Директор
Редактирование наценки поставщика
Отчет о действиях пользователей
o Менеджер
Редактирование наценки на известные товары
Редактирование поставщиков (кроме наценки)
Выгрузка заказов
Редактирование справочника сокращений.
Отчет о товарах
o Оператор
Просмотр заказов
Редактирование состояния заказов
Редактирование дополнительных данных об известных товарах
o Заказчик
Формирование заказа
Просмотр своих заказов
• Ведение справочника поставщиков
• Загрузку прайсов поставщиков в единый прайс
• Поиск по единому прайсу
• Автоматическую (при загрузке прайса поставщика) и ручную (в любой момент времени) наценку товара (или списку товаров: по поставщику, по наименованию, по группе, по тегам, по производителю)
• Ручное связывание известных товаров с изображениями (к одному товару может быть несколько изображений) и штрих-кодом
• Формирование отчетов
o Товары заказанные за период
o Действия пользователей
o Движения товаров (приход, расход, остаток) за период
• Ведение справочника сокращений
• Выгрузку заказов в XML-формате
o Номер заказа
Поставщик
Итого сумма по цене поставщика
Итого сумма по цене продажи
Табличная часть
• Товар
• Цена поставщика
• Цена продажи
• Количество
• Сумма
• Заказчик
Схема работы.
Ежедневно, менеджер выполняет:
• загрузку обновленных прайсов поставщиков (прайсы в формате MS Excel, но с различным содержанием и форматированием).
o В прайсах перечислены товары, имеющиеся на складах поставщика, либо присутствует ячейка с указанием наличия товара.
o Наименования товаров приведены в сокращенном виде, при загрузке должен выполняться анализ и сопоставление известным товарам. Товары, не имеющие известного сопоставления должны загружаться в развернутом виде («Крем д/обуви» - «Крем для обуви»)
• формируваие XML-файл с заказами.
• редактирование справочника используемых сокращений
В течение дня, менеджер/оператор выполняет:
• прием товаров от поставщиков
o после принятия товара, он считается известным, и появляется возможность заполнить к нему дополнительную информацию (изображения, описание, штрих-код и т.д.)
• отгрузку товаров заказчикам
• редактирование информации о состоянии заказов
Заказчики выполняют действия по формированию заказов.
Как считаете без SQL можно тут обойтись - одним xml?