Вход Блог
Строительство и ремонт
Репетиторы
Красота
Фрилансеры
Разные специалисты
Уход за животными
Тренеры
Автоинструкторы

Разработка на PHP — удалённая работа в Москве

Дата: 2025-03-21
Детали
Регион
Москва
Занятость
дистанционно
Стоимость
договорная
Дата публикации
2025-03-21
Описание
Веб-разработка. Доработка существующего продукта. Есть бот@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. К рассылке только нужно будет подключить поддержку отправки по конкретной группе пользователей. Также в другом приложении есть примеры дефолтных таблиц/форм для добавления редактирования элементов. Можно будет также взять их за основу и переделать под механику розыгрышей.
Похожие заказы

Разработка на Laravel

дистанционно
договорная
Веб-разработка. Доработка существующего продукта. Нам нужен опытный разработчик Laravel для продолжения разработки существующей CRM-системы. Проект уже начат, нужно разобраться в коде, устранять баги, добавлять новые функции и поддерживать систему. Обязательные навыки: глубокое знание PHP и Laravel, опыт работы с MySQL, умение работать с Git, понимание REST API, базовые навыки администрирования Linux-серверов. Желательно: опыт работы с Vue или Livewire, знание CRM или ERP систем, понимание фоновых задач и очередей, опыт с Docker будет плюсом. Мы ищем специалиста, который умеет быстро вникнуть в существующую систему, писать чистый и поддерживаемый код, надёжно и открыто общаться в процессе. Просим прислать ссылки на примеры проектов на Laravel, указать годы опыта и доступность. Желательно выполнить небольшой платный технический обзор кода, чтобы оценить стиль работы и коммуникацию.
Москва Фрилансеры

Разработка на PHP

дистанционно
договорная
Веб-разработка. Доработка существующего продукта. Техническое задание: Интеграция МИС ASAPPS с ЕГИСЗ 1. Описание задачи Необходимо разработать и внедрить интеграционный модуль для МИС ASAPPS для обеспечения автоматического обмена данными с подсистемами Единой государственной информационной системы в сфере здравоохранения (ЕГИСЗ). Цель: Соответствие требованиям Минздрава РФ, успешное прохождение тестирования на стенде ЕГИСЗ и запуск промышленного обмена. 2. Объект интеграции МИС: ASAPPS. Особенности учета: В системе ведется учет медицинских услуг (в т.ч. согласно номенклатуре Приказа Минздрава РФ № 804н) asapps.ru . Потребуется настройка корректного маппинга внутренних справочников услуг, должностей и диагнозов на справочники НСИ ЕГИСЗ. Что предоставляем: Документацию по API/БД МИС ASAPPS, доступы к тестовой среде, тестовые сертификаты ЭЦП и доступы к личному кабинету организации в ЕГИСЗ. 3. Требуемые направления интеграции (приоритетные подсистемы) НСИ ЕГИСЗ: Настройка регулярной синхронизации нормативно-справочной информации (МКБ-10, номенклатура услуг, должности, специальности). ФРМР (Федеральный регистр медицинских работников): Передача и актуализация данных о врачах и медперсонале, привязка к ФИО и СНИЛС. РЭМД / СЭМД (Регистр электронных мед. документов): Формирование и отправка медицинских документов (протоколы, осмотры, выписки) в форматах CDA или FHIR. ИЭМК (Интегрированная электронная мед. карта): Отправка сведений о приемах, направлениях и оказанных медицинских услугах. 4. Технические требования Реализация обмена через защищенные каналы с использованием средств криптозащиты (КриптоПро, ЭЦП, шифрование). Формирование XML/CDA документов строго по актуальным методическим рекомендациям и технологическим картам Минздрава. Реализация очереди сообщений, подробного логирования (журнал аудита обмена) и механизма повторных отправок (retry) при сетевых сбоях. Обработка ошибок валидации от ЕГИСЗ с выводом понятных статусов и уведомлений для пользователей в интерфейсе МИС ASAPPS. Соблюдение требований 152-ФЗ «О персональных данных». 5. Этапы работ Аудит и проектирование: Анализ архитектуры МИС ASAPPS, составление спецификации маппинга полей и справочников. Разработка: Написание интеграционного шлюза/адаптера. Тестирование: Отправка тестовых пакетов данных на стенде ЕГИСЗ, устранение ошибок валидации (итерации с техподдержкой ЕГИСЗ). Сдача в эксплуатацию: Подписание актов, передача исходного кода (по договоренности) и инструкций для администраторов клиники. 6. Требования к исполнителю Обязательно: Подтвержденный опыт интеграции любых МИС с ЕГИСЗ (поделитесь примерами успешных внедрений). Глубокое знание структур XML ЕГИСЗ, форматов CDA и основ HL7 FHIR. Понимание нормативной базы (Приказы Минздрава, 323-ФЗ). Опыт работы с криптографией и VipNet/КриптоПро. Готовность работать официально (договор с ИП/ООО или через Безопасную Сделку profi.ru). 7. Условия сотрудничества Формат: Полностью удаленная работа. Сроки: Ожидаемый срок реализации «под ключ» — до 01.09.
Москва Фрилансеры

Разработка на PHP

дистанционно
договорная
Веб-разработка. урок. Json api(интерфейс JsonSerializable).
Москва Фрилансеры

Разработка на PHP

дистанционно
договорная
Веб-разработка. Доработка существующего продукта. Имеется сайт Интернет-магазина на PHP + MySQL (CMS LiteCart 2.1.6). Необходимо доработать функционал оформления заказов и привязать к сайту Яндекс Карты с обозначенными на них пунктами выдачи СДЭК. Сделать так, чтоб у клиентов появилась возможность выбирать пункт выдачи СДЭК на картах для получения посылок. Сохранять информацию о выбранном пункте выдачи в БД сайта. Необходима обработка справочника адресов с сайта, по которым на картах должны будут отображаться ближайшие к заданному адресу пункты выдачи. Требуется специалист, который имел опыт подобной разработки и знает API СДЭК и Яндекс Карт.
Москва Фрилансеры

Разработка на Yii

дистанционно
договорная
Веб-разработка. Доработка существующего продукта. Пожелания и особенности: Ставка 500 р/час, работы достаточно много. Договор + NDA. Код после подписания NDA. Самозанятые или ГПХ (Компании к рассмотрению не принимаются) Что необходимо знать (во что ткнут носом буквально в документации): API, JS. Основная задача это связка сервисов с существующим бэком. Прямые или нативные интеграции. Облачная УКЭП, что знаете? СЭМД, РЭМД, ФРМР, ФРМО - ЕГИСЗ? Опыт работы с платёжными сервисами, в частности Серверной фискализации (на уровне понимания что и к чему) После доработки договор на поддержку, прямое участие в интеграциях с компаниями.
Москва Фрилансеры

Разработка на PHP

дистанционно
договорная
Веб-разработка. Разработка с нуля, тестирование, настройка, доработка существующего продукта. PHP-разработчик Bitrix24 (Middle+ / Senior) — удалённо, проектная работа Ищу разработчика уровня Middle+ и выше с реальным коммерческим опытом на Bitrix24, облако, коробка и БУС (Битрикс, Управление сайтом). Новичков и специалистов «по документации» не рассматриваю — только тех, кто работает с платформой на практике от 2–3 лет. Формат сотрудничества - Удалённо, договорные отношения, самозанятый (СМЗ) или ИП, договор оказания услуг - Оплата на выбор, почасовая ставка или фикс за проект - Работа по задачам, а не по часам присутствия - Условия и ставка обсуждаются индивидуально после знакомства и оценки задач Что предстоит делать - Разработка модулей, компонентов и решений на 1С-Bitrix (коробка, облако, БУС) - Разработка сайтов и приложений на PHP с нуля, доработка и рефакторинг существующих проектов - Интеграции между системами через REST / SOAP API и вебхуки - Настройка и доработка бизнес-процессов и роботов CRM (дизайнер + код, активити, роботы) - Автоматизация процессов (Bitrix24, N8N) - Разработка приложений для Bitrix24 (маркетплейс и локальные приложения) - Ведение технической документации, сопровождение проектов Требования Bitrix24 — ключевое: - Bitrix Framework (D7), ORM, компоненты, шаблоны, ядро - Bitrix24 REST API, CRM, бизнес-процессы, задачи, вебхуки - Коробочная версия, архитектура ядра, разработка без нарушения обновляемости - Облачная версия, приложения через REST, ограничения маркетплейса - БУС, разработка и поддержка сайтов на Битрикс, Управление сайтом Разработка: - PHP, ООП, MVC, паттерны проектирования, PSR-стандарты - JavaScript (ES6+), HTML, CSS, AJAX - MySQL, проектирование схем, индексы, оптимизация запросов - Git, ветвление, pull requests, code review Безопасность: - Понимание уязвимостей (SQL-инъекции, XSS, CSRF) и защиты в контексте Bitrix - Проверка прав доступа (CheckPermissions, ролевая модель) Будет плюсом (не обязательно, но повысит приоритет отклика): - Очереди сообщений, RabbitMQ, Kafka, Redis (pub/sub), опыт построения асинхронных интеграций - Опыт разработки приложений для Bitrix24 Маркетплейса (публикация, модерация, ограничения) - Работа с разными версиями и движками БД, MySQL 5.7/8+, MariaDB, PostgreSQL; репликация, миграции - AI-инструменты разработки (Cursor, Claude Code, Copilot) — используете их осознанно, а не вслепую - Высоконагруженные проекты, кэширование (Redis, Memcached), профилирование, оптимизация - N8N и другие low-code платформы автоматизации - AmoCRM, RetailCRM, интеграции с 1С - Docker, CI/CD, базовые DevOps-практики Важно — читайте перед откликом 1. Портфолио обязательно. Присылайте примеры завершённых проектов, ссылки на репозитории и код, написанный лично вами. Отклики без примеров работ, будут рассматриваться в самую последнюю очередь. 2. Никакого ИИ в переписке. Общаемся напрямую, без сгенерированных ответов, не выдавайте желаемое за действительное — реальный уровень всё равно проверяется вопросами. 3. Перед передачей проекта будет техническое общение, задам вопросы по архитектуре, API и вашему опыту. Только после этого — задачи в работу. Если вы разбираетесь в Bitrix24 по опыту, а не по документации, и готовы отвечать за результат — пишите.
Краснодар Фрилансеры

Разработка на Yii

дистанционно
договорная
Веб-разработка. Доработка существующего продукта. Пожелания и особенности: Ищу разработчика для регулярной поддержки текущего продукта на YIi2. Оформление по договору как ИП, оплата по часам. Постоплата раз в месяц по актам, ЭДО. Система ИСПДн, подписание поручения на обработку ПДн, соглашений о неразглашении и тп.
Москва Фрилансеры