Разработка на PHP — удалённая работа в Москве
Дата: 2025-03-24
Детали
Регион
Москва
Занятость
дистанционно
Стоимость
договорная
Дата публикации
2025-03-24
Описание
Веб-разработка. Доработка существующего продукта. Только php без платформ, фреймворков и отсылок к сторонним библиотекам. Нужен поисковик для работы на существующем сайте. вывод информации об обновлениях на сайте в главную ленту новостей.
Похожие заказы
Разработка на Laravel
дистанционно
договорная
Веб-разработка. Доработка существующего продукта, Поддержка. Для поддержки сайта на Laravel приглашается программист. Желательно с навыками верстки. В настоящий момент есть пул задач. В последствии - поддержка. Подробности в личном общении. Оплата сдельная, по договоренности.
Москва
Фрилансеры
2025-03-26
Разработка на Laravel
дистанционно
договорная
Веб-разработка. Доработка существующего продукта. Имеется сайт, требуются доработки.
Москва
Фрилансеры
2025-03-25
Разработка на Laravel
дистанционно
договорная
Веб-разработка. Разработка с нуля. Разработать маркетплейс.
Москва
Фрилансеры
2025-03-25
Разработка на PHP
дистанционно
договорная
Веб-разработка. Разработка с нуля. Разработка веб-приложения согласно представленным требованиям. Тема: Платформа для заказчиков и поставщиков (учебный проект). Используемые технологии: PHP, MySQL, HTML, CSS, JS. Разработка веб-приложения согласно представленным требованиям. Тема: Платформа для заказчиков и поставщиков (учебный проект). Используемые технологии: PHP, MySQL, HTML, CSS, JS.
Москва
Фрилансеры
2025-03-23
Разработка на PHP
дистанционно
договорная
Веб-разработка. Настройка, разработка с нуля. Пожелания и особенности: С помощью WebDav ( возможно есть другие варианты)подключить yandex disk. Задача ежедневное удаление файлов во всех папках. Клиентам создаём папку, привязанную по ссылке. В любой момент он заходит и накидывает файлы. Но в 0.00 все файлы должны удаляться.
Москва
Фрилансеры
2025-03-22
Разработка на PHP
дистанционно
договорная
Веб-разработка. Доработка существующего продукта. Есть бот@vtb_priz_bot для проведения розыгрышей в TG-канале. Задача: разработать админ-панель для автоматизации проведения розыгрышей. Как сейчас работает бот В БД есть таблица giveaways, в которой хранятся все розыгрыши: code (уникальный идентификатор розыгрыша, который устанавливается в метку ?start= для запуска бота) hello_text - текст в формате html, который приходит пользователям при входе в розыгрыш hello_image - путь к файлу изображения, которое приходит вместе с текстом при входе в розыгрыш hello_image_fileid - заполняется автоматически при первой отправке изображения, представляет собой ID файла в Telegram participant_text - текст, который отправляется пользователю при успешном выполнении критериев участия (добавился в список) is_enabled - статус конкурса (активен / не активен) В таблице channels хранятся каналы, подключенные к боту для розыгрышей В таблице giveaway_channels хранится связка каналов и гивов Для текущих задач достаточно будет к созданному гиву подвязывать дефолтный канал с ID №1. В будущем может понадобится интерфейс для администрирования и добавления дополнительных каналов к розыгрышу. В таблице giveaway_participants хранятся участники всех розыгрышей: giveaway_id - ID розыгрыша bot_user_id - ID пользователя is_winner - флаг выигрыша Нужно создать админку, в которой можно: Посмотреть список всех розыгрышей Добавить новый розыгрыш (прикрепить к нему картинку, текст с HTML форматированием, текст для успешного участия) Посмотреть статистику по розыгрышу (сколько участников и тд) Подвести итоги розыгрыша (сгенерировать список победителей и разослать рассылку, об этом ниже) Есть ряд стандартных текстов в боте, которые хочется редактировать в админке Помимо текстов, привязанных к конкретному гиву (стартовое сообщение и сообщение об успешном участии), есть ряд стандартных текстов, например: 'Розыгрыш завершён. Поздравляем победителей.' '🔵 Участвовать' 'Произошла ошибка. Кажется, сейчас большая нагрузка. Пожалуйста, попробуйте позже.' 'Похоже, что вы еще не подписались на наш канал. Подпишитесь, чтобы принять участие в розыгрыше! %s' '🔵 Проверить снова' 'Вы уже участвуете в этом розыгрыше. Дождитесь подведения итогов.' 'Розыгрыш не найден. Возможно он закончился.' Эти стандартные тексты раскиданы по 2 файлам: Telegram/Commands/StartCommand.php, Telegram/Commands/ParticipateCommand.php. Эти тексты хочется также вынести в админку, чтобы из отдельной страницы можно было их отредактировать. Как сейчас работает подведение итогов Для подведения итогов реализованы 2 команды artisan: php artisan giveaway:get_winners и php artisan giveaway:send_winners Подведение итогов устроено следующим образом: Вручную запускается команда get_winners, в которой указывается: ID розыгрыша, кол-во победителей. Команда в случайном порядке перемешивает участников, и набирает из них N победителей. Для выбранных победителей устанавливается пометка “is_winner = 1” Далее вручную в обязательном порядке проверяется сгенерированный список победителей - мы отсматриваем чтобы у них были логины и нормальные имена, вручную открываем их в ТГ смотрим аватарки. Если кто-то из победителей выглядит как бот, мы меняем его в ручном режиме (убираем ему is_winner = 1, запускаем повторно get_winners на недостающее число участников) После того как все победители выбраны и список согласован, мы готовим рассылку Для этого мы прописываем ее в коде команды send_winners - прописываем туда текст сообщения и картинку сообщения. Далее запускаем рассылку через консоль - рассылка уходит только тем пользователям, которые что-то выиграли. Подведение итогов в админке: К карточке конкретного розыгрыша вывести таблицу “Список победителей” Вывести кнопку “Выбрать победителей”, указывается сколько победителей выбрать, и система рандомно их выбирает. Напротив каждого победителя предусмотреть кнопку “Выбрать другого” - система рандомно заменяет именно этого победителя по клику на кнопку, других не трогает. Для списка победителей нужно выводить: id, telegram_id, telegram_username, telegram_first_name, telegram_last_name Ниже нужно вывести кнопку “Разослать сообщение по победителям”, которая ведет на страницу рассылки, где можно указать текст+изображение. Далее рассылка планируется и запускается по всем победителям. Результат задачи Админка, в которой есть ключевые разделы: Список розыгрышей, Рассылка В список розыгрышей можно добавить розыгрыш Можно редактировать уже идущий розыгрыш или вкл/выкл его Можно подвести итоги из админки, выбрать победителей, заменить конкретного победителя на другого По итоговым победителям можно разослать рассылку Также по всем пользователям в системе можно разослать рассылку —---------- Код который можно взять за основу Конкретно в этом боте у нас не реализована админ-панель вообще. Нужно будет развернуть дефолтную систему авторизации Laravel, закрыть доступ к регистрации и восстановлению пароля. В коде других приложений у нас есть реализованная система рассылки (на скрине), туда уже интегрирован html редактор с поддержкой всех тегов telegram, валидацией длины текста, загрузкой картинок. И также уже есть реализация для cron, которая из БД отправляет всех пользователей которым эта рассылка была запланирована. Мы расшарим код этого приложения, фактически рассылку можно будет перенести из него, т.е. не кодить с 0. К рассылке только нужно будет подключить поддержку отправки по конкретной группе пользователей. Также в другом приложении есть примеры дефолтных таблиц/форм для добавления редактирования элементов. Можно будет также взять их за основу и переделать под механику розыгрышей.
Москва
Фрилансеры
2025-03-21