Требуется разработать скрипт-парсер, который будет периодически авторизовываться на определенном сайте, проверять наличие контента, переходить в нужный раздел и заполнять форму данными из админки. В процессе работы необходимо использовать прокси-серверы для обеспечения анонимности.
Форма-калькулятор
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.
Внизу https://mos-radius.ru есть форма с вкладками: Экскурсии / Сертификат на экскурсию
“Экскурсии” переименовываем в “Экскурсии в ассортименте”.
Добавляем между имеющимися двумя вкладку: Экскурсия на заказ.
Это форма-калькулятор. Часть значений указывает пользователь, другие переменные тянем из
https://mos-radius.ru/wp-admin/admin.php?page=transport_settings
Поля формы в данной вкладке:
Кол-во участников экскурсии // варианты: 1-6, 7-12… 41-50.
Кол-во часов // поле со стрелочками вверх-вниз справа от инпута. По-умолчанию: пустое, минимальное значение: N (сделать возможность задать в админке, называем “Длительность минимального заказа, часов”. Целое значение. Сейчас задать: 3). Если пользователь указал меньше, скажем, хочет на 2 часа, то при попытке отправки формы сообщаем: “Минимальное время заказа: N часов. При желании Вы сможете завершить экскурсию раньше”.
Транспорт: “требуется? / не требуется (или у вас свой) / требуется”
Заявка: Пожалуйста, опишите задачу - чего бы вам хотелось от экскурсии.
Дата, время
Заказчик: кто?/юридическое лицо/физическое лицо
Ориентировочная цена: // сюда выводим рассчитанное значение
Если потребуется дополнительная разработка маршрута, цена может незначительно увеличиться // пояснение для клиентов, более мелким шрифтом на 1-2 пт.
Имя
Телефон
Электронный адрес
Кнопка “Заказать экскурсию”
Обязательные поля - дата, время, и телефон.
В https://mos-radius.ru/wp-admin/admin.php?page=transport_settings добавить новые поля.
Там есть две таблицы: Диапазон для обзорной экскурсии * и Диапазон для всех экскурсий *
Меняем их на две новых:
Стоимость гида:
--- Таблицы здесь нельзя вставлять, поэтому дам задачу с таблицами Исполнителю.
Ячейку вида “X-Y человек” надо разбить так, чтобы была возможность задать произвольные X и Y.
Из таблицы следует, что, например, гид для 13-19 человек на 3 часа на русском языке будет стоить клиенту: 10,5 тысяч рублей.
Сейчас цена экскурсии длительностью 2,5 часа на русском языке для 1-6 человек задана в админке: 6000 рублей. В таблице столько же - теперь и во вкладку “Экскурсии из ассортимента” надо тянуть цену из этой таблицы (все ассортиментные экскурсии кроме Обзорной длятся 2.5 часа).
Цена гида для кол-ва часов более 4 высчитывается из поля для 4х часов. Например, если юзер делает в форме заявку “Экскурсия на заказ” на экскурсию на русском языке для 25 человек на 5 часов, где транспорт не требуется, то цена экскурсии составит: 16*5/4 = 20 000 рублей.
Цена на иностранном языке увеличивает цену экскурсии в таблице на заданное значение. Например, цена экскурсии на немецком языке длительностью 5 часов должна увеличить цену экскурсии на 5 000 рублей относительно русского языка такой же длительности.
Обзорная экскурсия и экскурсии на заказ, требующие транспорта, нуждаются не только в стоимости гида, но и в стоимости аренды транспорта.
Цена аренды транспорта зависит от кол-ва пассажиров (потому что кол-во пассажиров определяет нужный вид транспорта) и часов аренды.
Для цены аренды авто понадобится таблица (с возможностью добавления новых интервалов):
Ячейку вида “X-Y человек” надо разбить так, чтобы была возможность задать произвольные X и Y.
Например, если юзер на сайте выбирает экскурсию на заказ для 5 человек на N часов, то цена транспорта будет считаться (N+1)*1200, при этом для N от 1 до 3 включая, она будет одинакова и составит (3+1)*1200 рублей.
Допустим, юзер хочет заказать экскурсию на авто для 9 человек на 5 часов:
- Цена аренды авто составит: (5+1)*1500 = 9 000. Если тоже самое, но кол-во часов 3, то цена аренды: (4+1)*1500 = 7500 рублей.
- Цена аренды гида составит для 5 часов (согласно прошлой таблице): 12*5/4=15 000 рублей. Для 3 часов: 9 000 рублей.
- Итоговая цена экскурсии с использованием авто в данных случая: 24 000 и 16 500 рублей.
Первая строка: должна быть возможность задать интервал даты-времени, в котором цена экскурсии возрастает в N раз (с точностью до сотой).
Вторая строка: нужна возможность увеличить цену для экскурсий в ночное время.
Можно реализовать эти поля иначе, но я подумал, что сделать такую лолгику для времени, где дата задана нулями - это ок.
Если одновременно выбранное время и дата приходятся на две и более корректировок (праздничная дата и ночное время), то они перемножаются.
В форме при выборе даты пропали стрелочки вверх-вниз. Пофиксить. Это случается периодически после каких-нибудь правок.
Операция +/* позволяет прибавить к ценам часа и авто фиксированное значение в рублях или умножить цену экскурсии в N раз.
---
Если на сайте авторизован пользователь и имеет роль: администратор или редактор, то в форме справа от рассчитанной цены через “ гиду: ” более мелко показываем суммарный гонорар гида. В этом гонораре должны учитываться значения из первой таблицы и коэффициенты. Цена аренды транспорта здесь не учитывается.
Также пора выводить в форму экскурсии не из статичного списка в коде формы, а формировать этот список на основе записей из “Экскурсии”. Причем их последовательность определяется в форме также датой записи (по возрастанию). Экскурсии из Базового и Расширенного радиуса длятся 2,5 часа, из Обзорного - 3 часа. Сделать в админке экскурсий возможность отметить галкой или радиокнопкой, отображать ли её на вкладке сертификатов. И в админку экскурсий вывести возможность загрузки изображений сертификатов (необзяталдьное поле) - надо загрузить те сертификаты, которые уже есть.
Выбранный исполнитель
Заявки фрилансеров
Похожие заказы
- Веб-программирование8 заявокЗакрыт3 года назад
- $15
Необходимо внести изменения в логику авторизации и регистрации на сайте, написанном на PHP. При переходе на несуществующую страницу должен производиться проверка в базе данных. Если поля 'phone' и 'password' пустые, пользователь перенаправляется на страницу регистрации с учетом текущей ссылки. В случае заполненных полей, пользователь остается на текущей странице.
Веб-программирование1 исполнительЗакрыт3 года назад - $1000
Требуется разработчик на стеке Laravel/VueJS для исправления багов и внесения корректив в существующий проект. Подробное техническое задание будет предоставлено кандидатам. Рассматриваются только индивидуальные исполнители без посредников.
Веб-программирование6 заявокЗакрыт3 года назад Требуется провести парсинг e-mail с румынского сайта для рассылки. Необходимо извлечь данные из указанного URL и подготовить их для дальнейшего использования в маркетинговых целях.
Веб-программирование7 заявокЗакрыт3 года назадТребуется программист для доработки сайта на CMS NetCat. Задачи включают вывод полей для метатегов title и description для страниц подразделов в галерее, а также перегенерацию карты сайта.
Веб-программирование1 заявкаЗакрыт3 года назадТребуется опытный vue.js разработчик для доработки раздела портфолио на сайте gemsww.com и устранения мелких недочетов. Ожидается выполнение 30-40 часов работы с почасовой оплатой. Ищем только квалифицированных специалистов с опытом работы с vue.js.
Веб-программирование5 заявокЗакрыт3 года назадТребуется доработать функционал OpenCart: добавить возможность удаления заявок в личном кабинете и интегрировать видео с Яндекс Дзен в товары. Важно, чтобы видео можно было загружать наряду с уже существующими сервисами Vimeo и YouTube.
Веб-программирование1 заявкаЗакрыт3 года назадТребуется опытный веб-программист для настройки проксирования с использованием Zennoposter. Задача заключается в том, чтобы цены на нашем сайте обновлялись одновременно с конкурентами. Необходима реализация системы автоматического отслеживания и обновления цен в реальном времени.
Веб-программирование2 заявкиЗакрыт3 года назад