致力于提供有竞争力的软件解决方案和服务,德尚网络欢迎您!
技术/产品咨询
技术/产品咨询
    • - 微信扫一扫 -

      QQ:181814630

      电话:15116362044

DSKMS演示
  • DSKMS(内容付费系统)演示地址及账号
    DSKMS交流群:553212556
    演示角色 演示地址 账号 密码
    后台PC端 点击进入 dskms 123456
    用户PC端 点击进入 buyer 123456
    机构PC端 点击进入 buyer 123456
    用户手机端 点击进入 buyer 123456
    机构手机端 点击进入 buyer 123456
    DSKMS(内容付费系统)uniapp移动端二维码演示地址
    • 用户端

    • 机构端

    • 用户端安卓APP
      (使用浏览器打开)

    • 商家端安卓APP
      (使用浏览器打开)

DSShop演示
  • DSShop(单店铺系统)演示地址及账号
    DSShop交流群:549770277
    演示角色 演示地址 账号 密码
    后台PC端 点击进入 dsshop 123456
    用户PC端 点击进入 buyer 123456
    手机端 点击进入 buyer 123456
    DSShop(单店铺系统)uniapp版移动端二维码演示地址
    • 用户端

    • 用户手机端安卓APP
      (使用浏览器打开)

DSESN演示
  • DSESN(社区团购系统)uniapp版演示地址及账号
    dsesn交流群:553212556
    演示角色 演示地址 账号 密码
    管理员后台 点击进入 dsesn 123456
    供应商后台 点击进入 buyer 123456
    用户端 点击进入 test001 123456
    仓库端 点击进入 13700000000 123456
    团长端 点击进入 13800000000 123456
    DSESN(社区团购系统))uniapp移动端二维码演示地址
    • 用户端

    • 仓库端

    • 团长端

DSO2O演示
  • DSO2O(外卖/上门服务/跑腿系统)演示地址及账号
    DSO2O交流群:549770277
    演示角色 演示地址 账号 密码
    后台PC端 点击进入 dso2o 123456
    用户PC端 点击进入 buyer 123456
    卖家PC端 点击进入 buyer 123456
    服务机构PC端 点击进入 后台添加
    用户手机端 点击进入 buyer 123456
    商家手机端 点击进入 buyer 123456
    配送员 点击进入 测试配送员 123456
    服务机构手机端 点击进入 test1 123456
    DSO2O(外卖/上门服务/跑腿系统)uniapp移动端二维码演示地址
    • 用户端

    • 商家端

    • 配送员管理端

    • 服务机构端

    • 用户端安卓APP
      (使用浏览器打开)

    • 商家端安卓APP
      (使用浏览器打开)

    • 配送员管理安卓APP
      (使用浏览器打开)

    • 服务机构安卓APP
      (使用浏览器打开)

DSMall演示
  • DSMall(多店铺商城系统)演示地址及账号
    DSMall交流群:10235778
    演示角色 演示地址 账号 密码
    后台PC端 点击进入 dsmall 123456
    用户PC端 点击进入 buyer 123456
    商家PC端 点击进入 buyer 123456
    用户手机端 点击进入 buyer 123456
    商家手机端 点击进入 buyer 123456
    门店手机端 点击进入 seller 123456
    DSMall(多店铺商城系统)uniapp移动端二维码演示地址
    • 用户端

    • 商家端

    • 门店端

    • 用户安卓APP
      (使用浏览器打开)

    • 商家安卓APP
      (使用浏览器打开)

    • 门店安卓APP
      (使用浏览器打开)

增加支付插件

如果需要为系统增加新的支付能力,可以将支付插件放到\plugins\payments目录中。

首先新增一个目录,名称最好为新支付插件的名称,该目录中至少需要包含两个文件,{支付插件名称}.php以及payment.info.php{支付插件名称}.php的名称需要与它的上级目录名称一致。

payment.info.php用数组保存支付插件信息,payment_code{支付插件名称}payment_name为支付插件的展示名称,payment_desc为支付插件的介绍,payment_is_online表示是否是线上支付方式,payment_platform为支付插件应用的场景,值有pc(电脑端)、h5(手机端)、appapp端),payment_author为作者名称,payment_website为支付插件官网链接,payment_version为支付插件的版本信息,payment_config为支付插件需要用到的配置参数,其中的name为配置参数名,type为配置参数的输入类型,有text(文本型)、textarea(多行文本型)、file(文件型)。

return array(
    'payment_code' => 'wxpay_h5',
    'payment_name' => '微信H5支付',
    'payment_desc' => '微信H5支付',
    'payment_is_online' => '1',
    'payment_platform' => 'h5', #支付平台 pc h5 app
    'payment_author' => '长沙德尚',
    'payment_website' => 'http://www.alipay.com',
    'payment_version' => '1.0',
    'payment_config' => array(
        array('name' => 'wx_appid', 'type' => 'text', 'value' => '', 'desc' => '描述'),
        array('name' => 'wx_appsecret', 'type' => 'text', 'value' => '', 'desc' => '描述'),
        array('name' => 'wx_mch_id', 'type' => 'text', 'value' => '', 'desc' => '描述'),
        array('name' => 'wx_key', 'type' => 'text', 'value' => '', 'desc' => '描述'),
    ),
);

 

在{支付插件名称}.php文件中,需要实现get_payformreturn_verifyverify_notify方法。

系统调用get_payform生成支付单,其中$order_info参数为待支付订单信息,含有pay_sn(商户订单号)、api_pay_amount(交易金额)、order_type(订单类型)、subject(订单描述)。

        //构造参数
        $payRequestBuilder = new AlipayTradePagePayContentBuilder();
        $payRequestBuilder->setBody($order_info['order_type']);
        $payRequestBuilder->setSubject($order_info['subject']);
        $payRequestBuilder->setTotalAmount($order_info['api_pay_amount']);
        $payRequestBuilder->setOutTradeNo($order_info['order_type'] . '-' . $order_info['pay_sn']);

 

verify_notify和return_verify都要返回结果数组,其中trade_status表示支付验证状态,0为失败1为成功,out_trade_no为商户订单号,trade_no交易凭证单号,total_fee为交易金额,order_type为订单类型。

        $return_result = array(
                'trade_status' => '0',
            );

 

            $return_result = array(
                    'out_trade_no' => $out_trade_no, #商户订单号
                    'trade_no' => input('param.trade_no'), #交易凭据单号
                    'total_fee' => input('param.total_amount'), #涉及金额
                    'order_type' => $order_type,
                    'trade_status' => '1',
                );



上一篇:计划任务模块

下一篇:目录结构