Taolefan — это программа скидок для общедоступных учетных записей WeChat на основе PHP, которая поддерживает сертифицированные или несертифицированные учетные записи подписки и сервисные учетные записи.
Примечание. Из-за форс-мажорных обстоятельств этот проект перестал обновляться. Текущую версию можно использовать в обычном режиме. Если вам нужна коммерческая поддержка, позвоните по телефону QQ764744445 для консультации.
В настоящее время вы просматриваете ветку версии 2.X. Если вы хотите использовать ее с несертифицированной общедоступной учетной записью, переключитесь на ветку 1.X для просмотра. 1.X разрабатывается параллельно с 2.X и различает только аутентифицированные и неаутентифицированные вызовы к разным интерфейсам.
В этом проекте в качестве основной архитектуры разработки используется Laravel, взаимодействие с публичными учетными записями реализовано с помощью EasyWechat, а серверная часть управления разработана на основе X-admin. В этом проекте используется соглашение GPLv3, которое разрешает копирование, распространение, модификацию и коммерческое использование. Запрещается выпускать и продавать модифицированные и производные коды как коммерческое программное обеспечение с закрытым исходным кодом.
В этом проекте для разработки в основном используются интерфейсы платформ, таких как общедоступные открытые платформы Taobao Alliance, Taoke и WeChat.
1. /config/config.php #Этот файл конфигурации сохраняет основную информацию о сайте/платформе, Taobao Alliance и Dataoke APPKEY, а также другую информацию.
2. /config/wechat.php #Этот файл конфигурации сохраняет информацию, связанную с APPKEY общедоступной платформы WeChat.
2. .env #Этот файл конфигурации сохраняет информацию, связанную с базой данных.
1. Передача официальной учетной записи (JD/Taobao). Пользователь отправляет пароль Taobao исходного или других клиентов Taobao в официальную учетную запись, ссылка на фоновую передачу рассчитывает сумму скидки, получает информацию о купоне и возвращает ее пользователю.
2. Функция регистрации, следуйте инструкциям для завершения регистрации и привязки WeChat openID (уникальный идентификатор WeChat). Пользователи могут быстро заполнить информацию об учетной записи для вывода средств через официальное меню учетной записи, а также могут привязать свою учетную запись Taobao для получения Special_id (уникальный идентификатор операций участника Taobao).
3. Автоматически получать заказы и привязывать их, а также автоматически сохранять все заказы в данных. Заказы с идентификатором операции участника будут автоматически привязаны к openid (план резервного копирования). , Автоматически отслеживать заказы на основе статуса продукта пользователя. Когда разные пользователи покупают один и тот же продукт, автоматический заказ продукта приостанавливается, чтобы избежать ошибок при заказе.
4. Вручную отправьте номер заказа для привязки заказа.
5. Пользователи могут запрашивать информацию о своем заказе и снимать наличные.
6. Панель управления серверной частью
7. Когда пользователи запрашивают информацию о заказе, статус заказа пользователя за последний месяц автоматически обновляется, а статус заказа за предыдущие два месяца автоматически обновляется каждый месяц, а заказы, подтвержденные для получения в предыдущем месяце, оплачиваются.
8. Автоматические уведомления о сообщениях, таких как выполнение заказов, снятие наличных, приглашение друзей и т. д.
Дополнительные функции все еще постепенно разрабатываются, и вы также можете разработать соответствующие функции самостоятельно. Ваша звезда является движущей силой моего дальнейшего развития.
Уведомление:
*Обновление указывает на небольшие изменения в базе данных. Перед обновлением создайте резервную копию данных и используйте последний файл sql для восстановления структуры перед импортом данных для использования.
Пользователи, которые обновили версию 1.x до 2.x, обязательно обновите результаты базы данных, еще раз просмотрите документ и повторно используйте необработанный контент, чтобы избежать исключений. Если вы обнаружите ошибку, сообщите о проблеме и сообщите об этом. укажите каждую версию версии 2.x. После обновления выполните следующую команду в корневом каталоге веб-страницы, чтобы очистить кеш и предотвратить невозможность доступа к некоторым службам из-за кеша.
php artisan cache:clear
php artisan route:cache
2022.5.5 v2.1.12
Исправлена проблема, из-за которой устаревший код заказа ежемесячного обновления приводил к сбою обычного обновления.
2022.4.19 v2.1.11
Исправлена ошибка, из-за которой сумма платежа/сумма кэшбэка могла отображаться как отрицательное число.
2022.4.18 v2.1.10
Возвращайте результат передачи ссылки в виде ссылки, чтобы WeChat не обнаружил ее. Исправлена ошибка автоматической отправки двух сообщений после успешного выполнения заказа.
2022.4.17 v2.1.9
Исправлены некоторые ошибки, не влияющие на использование.
QR-код приглашения поддерживает создание плакатов. После самостоятельного создания плаката зарезервируйте положение QR-кода и настройте config.php.
*2022.4.14 v2.1.8
На основе обновления версии 1.1.8 были вызваны некоторые расширенные интерфейсы для поддержки действий по скидкам за приглашение друзей. Вы можете установить соответствующую информацию в конфиге, а некоторые страницы можно преобразовать в меню для прямого доступа. Openid можно получить через веб-авторизацию. .
Автоматическое следование заказу, отзыв о снятии средств и т. д. заменяются отправкой информации о шаблоне. Примечание. Повторно отправьте команду «Создать меню» после обновления этой версии. После завершения восстановления данных базы данных выполните следующую инструкцию SQL для инициализации. данные функции приглашения (пожалуйста, обязательно действуйте)
UPDATE users SET invite_id = NULL WHERE invite_id = ' 0 '
Требования к среде: PHP >= 7.4 (поддерживает PHP8) | MySQL/MariaDB | Redis Общедоступная учетная запись WeChat: сертифицированная учетная запись службы (подписная учетная запись, несертифицированная, используйте ветку 1.x)
Загрузите или клонируйте код проекта в необходимую среду.
#国外环境
git clone -b master https: //github.com/evendevil66/taolefan.git
#国内环境
git clone -b master https: //gitee.com/cdj8/taolefan.git
Выполните команду Composer в каталоге проекта, чтобы установить зависимые пакеты и автоматически загрузить их. При использовании в среде PHP8 измените версию PHP в композиторе.json на соответствующую версию.
composer install
composer dump-auto
Скопируйте файл .env.example в .env.
cp .env.example .env
Измените конфигурацию базы данных и конфигурацию Redis в .env и импортируйте taolefan.sql в корневой каталог проекта в базу данных.
DB_CONNECTION=mysql #默认使用mysql请勿修改 可支持MariaDB
DB_HOST=127.0.0.1 #数据库连接地址
DB_PORT=3306 #数据库连接端口
DB_DATABASE=taolefan #数据库名
DB_USERNAME=root #数据库用户名
DB_PASSWORD= #数据库密码
REDIS_HOST=127.0.0.1 #Redis连接地址
REDIS_PASSWORD=null #Redis密码 未设置默认为null
REDIS_PORT=6379 #Redis端口
Измените конфигурацию /config/wechat.php в соответствии с содержимым общедоступной платформы WeChat.
' app_id ' => env ( ' WECHAT_OFFICIAL_ACCOUNT_APPID ' , ' appid ' ),
' secret ' => env ( ' WECHAT_OFFICIAL_ACCOUNT_SECRET ' , ' secret ' ),
' token ' => env ( ' WECHAT_OFFICIAL_ACCOUNT_TOKEN ' , ' token ' ),
' aes_key ' => env ( ' WECHAT_OFFICIAL_ACCOUNT_AES_KEY ' , ' aeskey ' )
Далее, пожалуйста, выполните следующие шаги:
1. Создайте приложения на открытой платформе Taobao Alliance (тип приложения можно выбрать как веб-сайт). Чтобы получить официальный сайт AppKey, подайте заявку самостоятельно на странице приложения». Клиент Taobao [Промоутер] Заказ на продвижение и запрос данных» и «Клиент Taobao [Общественный] Запрос информации о материалах» «(Этот интерфейс был заменен обработкой интерфейса DaTaoke) Разрешения интерфейса. Если вам нужна причина для подачи заявки, просто напишите короткое эссе, и оно будет одобрено через несколько секунд.
2. Зарегистрируйтесь на открытой платформе Taobao и разрешите Taobao Alliance получить официальный сайт Appkey. 3. Если вам нужна функция управления частным доменом Taobao (автоматическое последующее наблюдение), подайте заявку на получение разрешений для частного домена в Taobao Alliance и подайте заявку на получение кода приглашения. . Коды приглашения можно быстро применить путем отладки официального интерфейса. При вызове интерфейса убедитесь, что параметр Relationship_app является общим, а параметр code_type равен 3.
4. Зарегистрируйтесь в JD.com Alliance, подайте заявку на APIKey и разрешите его привязку к Taoke.
Измените конфигурацию /config/config.php.
' name ' => "淘乐饭" , //产品名称 会反应在用户交互等场景
' url ' => "https: //*.*.*", //站点url 如有饭粒网等网站可添加
' apiUrl ' => "https: //*.*.*", //APIurl 调用本程序使用的url
' dtkAppKey ' => "**** " , //大淘客appKey
'dtkAppSecret' => " **** " , //大淘客AppSecret
'aliAppKey' => " **** " , //淘宝联盟AppKey
'aliAppSecret' => " **** " , //淘宝联盟AppSecret
'pubpid' => 'mm_***_***_***', //公用PID 可与运营ID相同
'specialpid' => ' ******',//会员运营ID
'relationId'=>'****', //渠道ID 代理商使用 暂未开发
'inviter_code'=>'******' //会员私域邀请码
'default_rebate_ratio' => 65, //默认返利比例%,
'eleme_url' => " taoke/pages/shopping-guide/index?scene=****** " ,//饿了么小程序路径(后面会有获取方法)
'unionId' => " ****** " , //京东联盟ID
'jdApiKey' => " ****** " , //京东联盟APIKey
'contactType' => 1, //联系客服类型,为0返回微信号,为1返回二维码图片
'contactId' => " ", //客服微信号
' contactMediaId ' => "", //客服微信二维码图片MediaID(获取方式见Readme文档介绍)
'invite'=> 1 , //是否开启邀请 开启填写1 关闭填写0
'invite_ratio'=> 10 , //邀请返利比例%
'invite_rewards'=> 1 , //邀请奖励金额
'template_id'=>'****** ' , //模板消息ID(后面会有获取方法)
' withdraw_template_id'=>'****** ' //提现模板消息ID(后面会有获取方法)
' invite_template_id'=>'****** ' ,//邀请好友模板消息ID
'createPoster'=> 1 , //是否开启生成海报 开启填写1 关闭填写0 如开启生成海报,请将jpg格式海报模板上传到public下并命名为poster.jpg
'posterx'=>' 206 ', //二维码在海报中x位置
'postery'=>' 1057 ', //二维码在海报中y位置
' posterwh'=>' 200 ', //二维码在海报中宽高
--Метод получения MediaId использует инструмент отладки интерфейса общедоступной платформы WeChat.
首先调用获取access_token接口
然后使用取得的token调用多媒体文件上传接口
将获得的MediaId填写到config文件即可
После настройки доменного имени и SSL-сертификата введите свое доменное имя/wechat для URL-адреса общедоступной платформы.
Обратите внимание на настройку имени бизнес-домена и авторизованного доменного имени в настройках функции общедоступной учетной записи WeChat (нет необходимости добавлять /wechat). Например:
www.***.com/wechat
Используйте любую учетную запись, чтобы отправить «Создать меню» в официальную учетную запись, чтобы создать собственное меню. Если вам нужно удалить меню, измените переменную $buttons в /app/Http/Controllers/WechatController.php.
访问管理员注册页面创建超级管理员
````shell script
http://你的域名/adminReg
#该页面仅能创建一次超级管理员,如果后续忘记超级管理员账号密码
#删除站点目录下/storage/app/admin.lock文件后即可重新创建
После входа в систему управления перейдите по следующему адресу, чтобы получить template_id.
http://你的域名/setIndustry
#请确保访问该页面前,公众号已配置完成并已认证
#访问提示设置成功后,前往公众号后台->广告与服务->模板消息,获得创建的模板id,并分别填入config.php中
Если вы хотите активировать мини-программу Ele.me для получения рибейтов, пожалуйста, дайте ссылку на мини-программу Ele.me (APPID: wxece3a9a4c82f58c9)
С помощью мини-программы Taobao Alliance APP-Eat, Drink and Play-Ele.me WeChat Mini Program Exclusive-Share получите эксклюзивный путь и настройте его в config.php.
Установите таймер crontab для запроса и сохранения заказов.
crontab -e
* * * * * curl 你的域名/getOrderList
#每分钟查询一次订单信息并存入数据库
10 1 1 , 10 , 19 , 28 * * curl 你的域名/updateOrderAll
#每个月1、10、19、28日1点10分执行对上月及上上月订单的信息修改及结算等(仅联盟结算日期为上月的才会被结算)
На данный момент проект Taolefan развернут и может использоваться в обычном режиме. Если вы подписались на общедоступную учетную запись перед развертыванием проекта, вы можете автоматически зарегистрировать учетную запись в базе данных, отписавшись от нее и подписавшись снова.