98
actionIndex() – отображение списка отчетов доступных для
формирования;
actionClientOrders() – формирование отчета о заказах за прошедший
период;
actionSupplierOrders() – формирование плана закупок на будущий
период;
actionGp() – формирование отчета о чистой прибыли.
Далее опишем модули пользовательской части. В пользовательской части
так же как и в административной - основным модулем является модуль
SiteController.php. Листинг кода данного модуля отображен в приложении 7. В
функции behaviors() идет проверка доступов к функциям, а так же
перенаправление на страницу авторизации, если доступ только для
авторизированных пользователей. Здесь так же имеется функция actionIndex(),
которая отображает главную страницу сайта. Так же имеются функции
авторизации, выхода и регистрации пользователей. Кроме того имеется функция
обратной связи actionContact(), которая отображает форму обратной связи на
странице.
Модули ProductController.php, CategoryController.php, ServiceController.php,
OrderController.php имеют одну функцию actionView(), которая отображает
информацию из базы данных на странице.
Модуль обратной связи иную структуру. В функции sendEmail() система
отправляет письмо на электронную почту менеджера. Листинг данного модуля в
приложении 7.
Модуль сброса пароля отличается от предыдущих модулей. Листинг
данного модуля в приложении 7. В данном модуле проверяется временный код
для сброса пароля отправленный на почту в функции __construct(). Затем
записывается новый пароль в базу данных в функции resetPassword().
Общий модуль в большинстве своем состоит из моделей, которые отвечают
за непосредственную работу с базой данных. Модули Product.php, Category.php,
Service.php, Order.php, CompanyInfo.php имеют функцию findById(), которая ищет
запись в таблице по переданному идентификатору. В модуле Product.php функция
findProducts() отображает все имеющиеся товары, которые должны отображаться