.
Разработка сервиса сайта на PHP на примере партнерской программы. Урок 16. Заявки на выплату денег
Автор megabax   
24.08.2013 г.
Структура программы на примере простейшей программы

Разработка сервиса сайта на PHP на примере партнерской программы. Урок 16. Заявки на выплату денежных средств.

Что бы смотреть урок полностью, подпишитесь на платный раздел.

В платном разделе статья находиться здесь.


Исходники к уроку вы можете скачать в платном разделе.

Сегодня мы с вами начнем разрабатывать подсистему выплаты денежных средств. Выплаты будут происходить по заявкам. Партнер подает заявку, администратор проверяет ее, производит выплату (например, через электронные деньги или перечисление на банковский счет парнера) и закрывает заявку. Иными словами, исполнения заявок у нас будет в полуручном режиме. Заявки у нас будут храниться в таблице _epp_orders:

Разработка сервиса сайта на PHP на примере партнерской программы. Урок 16. Заявки на выплату денежных средств.

Думаю, поля этой таблицу не требует никаких пояснений, кроме, разве что поля status. У нас заявка может быть в одном из четырех состояний:

  • Заявка подана (код 1).

  • Заявка в обработке (код 2).

  • Заявка оплачена (код 3).

  • Заявка отменена (код 4).

В каком состоянии заявка - это и есть поле status.

Для управления заявкой мы используем довольно такие большой класс EP_Orders, разместим его в файле order.php...

...

... Этот класс содержит методы для проверки, можно ли отменить заявку (нельзя отменять заявку, которая уже в обработке или исполнена); для ввода регистрации новой заявки, для смены состояния заявки; для проведения заявки (этот метод списывает сумму выплаченного вознаграждения, когда заявка переходит в состояние "исполнена"); а так же метод для показа списка заявок заданного партнера.

Обратите внимание, что мы используем новый тип поля status, который предназначен для отображения статуса заявки. В таблице базы данных статус заявки храниться в виде числа, а нам надо отобразить его в виде текста, понятному пользователю:

Разработка сервиса сайта на PHP на примере партнерской программы. Урок 16. Заявки на выплату денежных средств.

так что придется слегка переделать класс EP_TableView...

...

... Сюда мы добавили обработку экшена orders (эти строки выделены маркером).  Сразу же реализуем метод orders, который и обработает экшен orders - вывод списка ордеров:

        function orders() {

            $order=new EP_Order($this->encoding);

            $order->db=$this->db;

            $mysqli=$this->db->mysqli_connect();

            $order->Show($mysqli,$this->users->get_user_id());

            $mysqli->close();

        }

Нам еще потребуется обработка двух экшенов neworder и cancelorder, ссылки на эти экшены у нас будут выводить при показе списка заявок....

...

... так же изменим немного файл index.php (давно мы его не правили). Но сейчас нам нужно, что бы при попытке удалить заявку, которую удалить нельзя, пользователю вышло сообщение:

Разработка сервиса сайта на PHP на примере партнерской программы. Урок 16. Заявки на выплату денежных средств.

Вот новая редакция этого файла...

...

...И наконец, для того, что бы просто протестировать метод Post класса EP_Order предусмотрим скрипт chageorderstatus.php...

...

...И форму для вызова этого скрипта: chageorderstatus.html:

...

...Это в общем, такая чисто админская демо форма, позволяющая менять статус заявки с заданным номером:

Разработка сервиса сайта на PHP на примере партнерской программы. Урок 16. Заявки на выплату денежных средств.

Последнее обновление ( 24.08.2013 г. )