ThinkPlugsPayment

Latest Stable VersionLatest Unstable VersionTotal DownloadsMonthly DownloadsDaily DownloadsPHP VersionLicense

多端支付中心,此插件为会员尊享插件,未授权不可商用。

支付类型主要定义为两种类型,分别为:线上支付和线下支付。

  • 线下支付包含:账户余额支付、账户积分抵扣。
  • 线上支付包含:各种类型的微信支付、各种类型的支付宝支付、凭证单据支付。

其中 账户余额支付账户积分抵扣 默认支持,由业务系统自行控制是否向用户开发,支付优先级为:积分 > 余额 > 支付。 如果需要彻底关闭 积分抵扣 及 余额支付,需要在在支付配置处取消对应支付方式选项。

目前同一业务订单支持混合支付,由业务系统负责传入对应订单需支付总金额以及此次支付金额。 通过已完成的支付总额来判断该业务订单是否已经支付完成,同时会触发全局支付事件,可在任意初始化文件中通过监听支付事件进行订单状态刷新处理。

开放接口

POSTMAN - 接口文档

支付事件

可以在相应插件的服务内注册事件回调函数,如:代码案例

  • PluginAccountBind 注册用户绑定事件,回调参数 function (array $data);
  • PluginPaymentAudit 注册支付审核事件,回调参数 function (PluginPaymentRecord $payment);
  • PluginPaymentRefuse 注册支付拒审事件,回调参数 function (PluginPaymentRecord $payment);
  • PluginPaymentSuccess 注册支付完成事件,回调参数 function (PluginPaymentRecord $payment);
  • PluginPaymentCancel 注册支付取消事件,回调参数 function (PluginPaymentRecord $payment);
  • PluginPaymentConfirm 注册订单确认事件,回调参数 function (array $data);

定制修改

  • 复制插件 ThinkPlugsPayment 所有源代码到 plugin/think-plugs-payment 目录。
  • 修改插件 composer.json 文件追加 version 配置项,插件 ThinkPlugsPayment 的完整配置如下:
{
  "type": "think-admin-plugin",
  "name": "zoujingli/think-plugs-payment",
  "version": "1.0.0",
  "homepage": "https://thinkadmin.top",
  "description": "Payment Plugin for ThinkAdmin",
  "authors": [
    {
      "name": "Anyon",
      "email": "zoujingli@qq.com"
    }
  ],
  "require": {
    "php": ">7.1",
    "ext-json": "*",
    "zoujingli/think-plugs-admin": "^1.0|@dev",
    "zoujingli/think-plugs-account": "^1.0|@dev"
  },
  "require-dev": {
    "phpunit/phpunit": "*"
  },
  "autoload": {
    "psr-4": {
      "plugin\\payment\\": "src"
    }
  },
  "autoload-dev": {
    "psr-4": {
      "think\\admin\\tests\\": "tests/"
    }
  },
  "extra": {
    "think": {
      "services": [
        "plugin\\payment\\Service"
      ]
    },
    "plugin": {
      "copy": {
        "stc/database": "database/migrations"
      }
    },
    "config": {
      "type": "plugin",
      "name": "系统支付管理",
      "document": "https://thinkadmin.top/plugin/think-plugs-payment.html",
      "license": [
        "VIP"
      ]
    }
  }
}
  • 修改项目根 composer.json 配置,增加 ThinkPlugsPayment 插件本地化路径配置,完整配置如下:
{
  "type": "project",
  "name": "zoujingli/thinkadmin",
  "version": "1.0.0",
  "license": "MIT",
  "homepage": "https://thinkadmin.top",
  "description": "Application Development Framework",
  "keywords": [
    "ThinkAdmin",
    "ThinkLibrary",
    "WeChatDeveloper"
  ],
  "authors": [
    {
      "name": "Anyon",
      "email": "zoujingli@qq.com"
    }
  ],
  "require": {
    "php": ">7.1",
    "ext-gd": "*",
    "ext-json": "*",
    "ext-openssl": "*",
    "zoujingli/think-plugs-account": "^1.0",
    "zoujingli/think-plugs-payment": "^1.0"
  },
  "repositories": [
    {
      "type": "path",
      "url": "plugin/think-plugs-payment"
    }
  ],
  "config": {
    "sort-packages": true,
    "allow-plugins": {
      "zoujingli/think-install": true
    }
  }
}
  • 在项目根目录终端执行 composer update 完成安装。

安装插件

### 安装前建议尝试更新所有组件
composer update --optimize-autoloader

### 安装稳定版本 ( 插件仅支持在 ThinkAdmin v6.1 中使用 )
composer require zoujingli/think-plugs-payment --optimize-autoloader

### 安装测试版本( 插件仅支持在 ThinkAdmin v6.1 中使用 )
composer require zoujingli/think-plugs-payment dev-master --optimize-autoloader

卸载插件

### 注意,插件卸载不会删除数据表,需要手动删除
composer remove zoujingli/think-plugs-payment

插件数据

本插件涉及数据表有:

  • 插件-支付-地址:plugin_payment_address
  • 插件-支付-余额:plugin_payment_balance
  • 插件-支付-积分:plugin_payment_integral
  • 插件-支付-配置:plugin_payment_config
  • 插件-支付-行为:plugin_payment_record

版权说明

ThinkPlugsPaymentThinkAdmin 会员插件。

未获得此插件授权时仅供参考学习不可商用,了解商用授权请阅读 《会员授权》

版权所有 Copyright © 2014-2024 by ThinkAdmin (https://thinkadmin.top) All rights reserved。

Last Updated:
Contributors: 邹景立