Taolefan est un programme de remise de compte public WeChat basé sur PHP qui prend en charge les comptes d'abonnement et les comptes de service certifiés ou non.
Remarque : en raison d'un cas de force majeure, ce projet a cessé de se mettre à jour. La version actuelle peut être utilisée normalement. Si vous avez besoin d'une assistance commerciale, veuillez appeler QQ764744445 pour consultation.
Vous consultez actuellement la branche de la version 2.X. Si vous souhaitez l'utiliser avec un compte public non certifié, veuillez passer à la branche 1.X pour la visualiser. 1.X est développé en parallèle avec 2.X et fait uniquement la différence entre les appels authentifiés et non authentifiés vers différentes interfaces.
Ce projet utilise Laravel comme architecture principale de développement, l'interaction avec les comptes publics est implémentée à l'aide d'EasyWechat et le backend de gestion est développé sur la base de X-admin. Ce projet utilise l'accord GPLv3, qui permet la copie, la diffusion, la modification et l'utilisation commerciale. Il est interdit de publier et de vendre des codes modifiés et dérivés en tant que logiciels commerciaux à source fermée.
Ce projet utilise principalement des interfaces de plate-forme telles que Taobao Alliance, Taoke et WeChat pour le développement.
1. /config/config.php #Ce fichier de configuration enregistre les informations de base du site/plateforme, Taobao Alliance et Dataoke APPKEY et d'autres informations
2. /config/wechat.php #Ce fichier de configuration enregistre les informations relatives à la plateforme publique WeChat APPKEY
2. .env #Ce fichier de configuration enregistre les informations relatives à la base de données
1. Transfert de compte officiel (JD/Taobao), l'utilisateur envoie le mot de passe Taobao du client Taobao d'origine ou d'autres clients Taobao au compte officiel, le lien de transfert en arrière-plan calcule le montant de la remise, obtient les informations du coupon et les renvoie à l'utilisateur.
2. Fonction d'enregistrement, suivez pour terminer l'enregistrement et lier WeChat openID (identification unique WeChat). Les utilisateurs peuvent compléter rapidement les informations du compte de retrait via le menu du compte officiel et peuvent également lier leur compte Taobao pour obtenir un special_id (l'identification unique des opérations des membres Taobao)
3. Obtenez automatiquement des commandes et liez des commandes, et stockez automatiquement toutes les commandes dans les données. Les commandes avec l'ID d'opération de membre seront automatiquement liées à openid (plan de sauvegarde) , Suivez automatiquement les commandes en fonction de l'état du produit de l'utilisateur. Lorsque différents utilisateurs achètent le même produit, la commande automatique du produit sera suspendue pour éviter les erreurs de commande.
4. Envoyez manuellement le numéro de commande pour lier la commande
5. Les utilisateurs peuvent consulter les informations de leur commande et retirer de l'argent
6. Panneau de gestion backend
7. Lorsque les utilisateurs interrogent les informations de commande, le statut de la commande de l'utilisateur pour le mois dernier est automatiquement actualisé, et le statut de la commande pour les deux mois précédents est automatiquement actualisé chaque mois, et les commandes confirmées pour réception le mois précédent sont réglées.
8. Notifications automatiques de messages telles que suivre des commandes, retirer de l'argent, inviter des amis, etc.
D'autres fonctions sont encore progressivement développées, et vous pouvez également développer vous-même des fonctions associées. Votre étoile est le moteur de mon développement continu.
Avis:
*La mise à jour indique de légers changements dans la base de données. Avant la mise à jour, veuillez sauvegarder les données et utiliser le dernier fichier SQL pour reconstruire la structure avant d'importer les données à utiliser.
Les utilisateurs qui effectuent une mise à jour de la version 1.x vers la version 2.x doivent veiller à mettre à jour les résultats de la base de données, à parcourir à nouveau le document et à réutiliser le contenu non traité pour éviter les exceptions. Si vous trouvez un bogue, veuillez signaler un problème et. indiquez chaque version de la version 2.x. Après la mise à jour, veuillez exécuter la commande suivante dans le répertoire racine de la page Web pour vider le cache afin d'éviter que certains services ne soient inaccessibles à cause du cache.
php artisan cache:clear
php artisan route:cache
2022.5.5 v2.1.12
Correction du problème où le code hérité de la commande de mise à jour mensuelle provoquait l'échec de la mise à jour normale.
2022.4.19 v2.1.11
Correction du bug selon lequel le montant du paiement/montant du cashback pouvait être affiché sous la forme d'un nombre négatif
2022.4.18 v2.1.10
Renvoyez le résultat du transfert de lien sous forme de lien pour éviter d'être détecté par WeChat. Correction du bug de l'envoi automatique de deux messages après avoir suivi avec succès une commande.
2022.4.17 v2.1.9
Correction de quelques bugs qui n'affectaient pas l'utilisation
Le code QR d'invitation prend en charge la génération d'affiches. Après avoir conçu l'affiche vous-même, réservez la position du code QR et configurez config.php.
*2022.4.14 v2.1.8
Sur la base de la mise à jour de la version 1.1.8, certaines interfaces avancées ont été appelées pour prendre en charge les activités de remise pour inviter des amis. Vous pouvez définir des informations pertinentes dans la configuration et certaines pages peuvent être converties en menus pour un accès direct pouvant être obtenu via une autorisation Web. .
Le suivi automatique des commandes, les commentaires de retrait, etc. sont tous remplacés par l'envoi d'informations sur le modèle. Remarque : veuillez renvoyer la commande "Créer un menu" après la mise à jour de cette version. Une fois la récupération des données de la base de données terminée, veuillez exécuter l'instruction SQL suivante pour initialiser. les données de la fonction d'invitation (veuillez vous assurer de fonctionner)
UPDATE users SET invite_id = NULL WHERE invite_id = ' 0 '
Exigences environnementales : PHP >= 7.4 (prend en charge PHP8) | Compte public MySQL/MariaDB : compte de service certifié (compte d'abonnement, non certifié, veuillez utiliser la branche 1.x)
Téléchargez ou clonez le code du projet dans l'environnement requis
#国外环境
git clone -b master https: //github.com/evendevil66/taolefan.git
#国内环境
git clone -b master https: //gitee.com/cdj8/taolefan.git
Exécutez la commande Composer dans le répertoire du projet pour installer les packages dépendants et les charger automatiquement. S'ils sont utilisés dans l'environnement PHP8, veuillez modifier la version PHP dans composer.json vers la version correspondante.
composer install
composer dump-auto
Copiez le fichier .env.example dans .env
cp .env.example .env
Modifiez la configuration de la base de données et la configuration Redis dans .env et importez taolefan.sql dans le répertoire racine du projet dans la base de données
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端口
Modifier la configuration /config/wechat.php en fonction du contenu de la plateforme publique 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 ' )
Ensuite, veuillez suivre les étapes suivantes :
1. Créez des applications sur la plateforme ouverte Taobao Alliance (le type d'application peut être sélectionné comme site Web). Pour obtenir le site officiel d'AppKey, veuillez postuler vous-même sur la page d'application. Commande de promotion et requête de données du client Taobao [Promoteur] » et « Requête d'informations matérielles du client Taobao [Public] » "(Cette interface a été remplacée par le traitement de l'interface DaTaoke) Autorisations d'interface, si vous avez besoin d'une raison pour postuler, écrivez simplement un court essai et il sera approuvé en quelques secondes
2. Inscrivez-vous à Taobao Open Platform et autorisez Taobao Alliance à obtenir le site officiel d'Appkey. 3. Si vous avez besoin de la fonction de gestion de domaine privé Taobao (suivi automatique), veuillez demander des autorisations de domaine privé dans Taobao Alliance et demander un code d'invitation. . Les codes d'invitation peuvent être appliqués rapidement via le débogage de l'interface officielle. Lorsque vous appelez l'interface, veuillez vous assurer que le paramètre relation_app est commun et que le paramètre code_type est 3.
4. Inscrivez-vous à l'Alliance JD.com, demandez APIKey et autorisez-la à être liée à Taoke.
Modifier la configuration de /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 ', //二维码在海报中宽高
--La méthode d'acquisition MediaId utilise l'outil de débogage de l'interface de la plateforme publique WeChat
首先调用获取access_token接口
然后使用取得的token调用多媒体文件上传接口
将获得的MediaId填写到config文件即可
Après avoir configuré le nom de domaine et le certificat SSL, remplissez votre nom de domaine/wechat pour l'URL de la plateforme publique
Et faites attention à définir le nom de domaine professionnel et le nom de domaine autorisé dans les paramètres de la fonction du compte public WeChat (pas besoin d'ajouter /wechat).
www.***.com/wechat
Utilisez n'importe quel compte pour envoyer "Créer un menu" au compte officiel afin de créer un menu personnalisé. Si vous devez supprimer le menu, veuillez modifier la variable $buttons dans /app/Http/Controllers/WechatController.php.
访问管理员注册页面创建超级管理员
````shell script
http://你的域名/adminReg
#该页面仅能创建一次超级管理员,如果后续忘记超级管理员账号密码
#删除站点目录下/storage/app/admin.lock文件后即可重新创建
Après vous être connecté à l'arrière-plan de gestion, visitez l'adresse suivante pour obtenir template_id
http://你的域名/setIndustry
#请确保访问该页面前,公众号已配置完成并已认证
#访问提示设置成功后,前往公众号后台->广告与服务->模板消息,获得创建的模板id,并分别填入config.php中
Si vous souhaitez activer le mini programme Ele.me pour des remises, veuillez lier le mini programme Ele.me (APPID : wxece3a9a4c82f58c9)
Grâce au mini-programme de partage exclusif du programme Taobao Alliance APP-Eat, Drink and Play-Ele.me WeChat, obtenez le chemin exclusif et configurez-le dans config.php
Réglez la crontab du minuteur pour interroger et stocker les commandes
crontab -e
* * * * * curl 你的域名/getOrderList
#每分钟查询一次订单信息并存入数据库
10 1 1 , 10 , 19 , 28 * * curl 你的域名/updateOrderAll
#每个月1、10、19、28日1点10分执行对上月及上上月订单的信息修改及结算等(仅联盟结算日期为上月的才会被结算)
À ce stade, le projet Taolefan a été déployé et peut être utilisé normalement. Si vous avez suivi le compte public avant de déployer le projet, vous pouvez automatiquement enregistrer le compte dans la base de données en ne le suivant pas et en le suivant à nouveau.