hrjy 2 rokov pred
rodič
commit
675a838b97

+ 4 - 2
app/api/controller/PublicController.php

@@ -338,10 +338,12 @@ class PublicController
      */
     public function version(Request $request)
     {
-        $config = SystemConfigService::more(['version', 'apk']);
+        $config = SystemConfigService::more(['version', 'apk','ios_version', 'ios_app']);
         $data = [
             'version' => $config['version'],
-            'url' =>   $request->domain().'/'.$config['apk']
+            'url' =>   $request->domain().'/'.$config['apk'],
+            'ios_version' => $config['ios_version'],
+            'ios_url' =>   $request->domain().'/'.$config['ios_app']
         ];
         $msg = [
             'status' => 200,

+ 93 - 88
app/api/controller/order/StoreOrderController.php

@@ -194,7 +194,8 @@ class StoreOrderController
         $order = StoreOrder::cacheKeyCreateOrder($request->uid(), $key, $addressId, $payType, (int)$useIntegral, $couponId, $mark, $combinationId, $pinkId, $seckill_id, $bargainId, false, $isChannel, $shipping_type, $real_name, $phone, $storeId);
         if ($order === false) return app('json')->fail(StoreOrder::getErrorInfo('订单生成失败'));
         $orderId = $order['order_id'];
-        $info = compact('orderId', 'key');
+        $order_id = $order['order_id'];
+        $info = compact('order_id', 'key');
         if ($orderId) {
             event('OrderCreated', [$order]); //订单创建成功事件
             event('ShortMssageSend', [$orderId, 'AdminPlaceAnOrder']);//发送管理员通知
@@ -271,45 +272,60 @@ class StoreOrderController
                         return app('json')->status('ali_pay', '订单创建成功', $info);
                     }
                     break;
-                case "ylpay":
-                    $pay = new AliLife();
-                    $pay->body = [
-                        'orderCode' => $order['order_id'].'-'.time(),
-                        'totalAmount' => '000000000100',
-                        'payMode'     => 'sand_upsdk',
-                        'subject' => '购买商品',
-                        'body' => '购买商品',
-                        'clientIp' => $_SERVER['REMOTE_ADDR'],
-                        'notifyUrl' => SystemConfigService::get('site_url').'sdNotify',
-                        'frontUrl' => SystemConfigService::get('site_url'),
+                case "ailpay":
+                    $data = [
+                        'version' => '10',
+                        'mer_no' => '6888804045113',
+                        'mer_key' => 'Ids+y1lR4thuaHGxXaCwCLbkdFXTjze96Tua3U88ZHsvaHvYxNi7HiMBOnabYUckONdHUdUR/0g=',
+                        'mer_order_no' => $order['order_id'].'-'.time(),
+                        'create_time' => date('YmdHis',time()),
+                        'order_amt' => $order['pay_price'],
+                        'notify_url' => SystemConfigService::get('site_url').'/api/sdNotify',
+                        'return_url' => '',
+                        'create_ip' => str_replace('.','_', $_SERVER['REMOTE_ADDR']),
+                        'store_id' => '000000',
+                        'pay_extra' => json_encode(['mer_app_id' => '', 'openid' => '', 'buyer_id' => '', 'wx_app_id' => '', 'gh_ori_id' => '', 'path_url'=> '', 'miniProgramType' => '']),
+                        'accsplit_flag' => 'NO',
+                        'sign_type' => 'MD5',
                     ];
-                    $res = $pay->request('orderPay');
-                    if ($res['code'] == 1){
-                        $data = json_decode($res['data']);
-                        return app('json')->status('ylpay', ['config' => json_decode($data->body->credential),'order_id' => $order['order_id']]);
-                    }else{
-                        return app('json')->fail($res['msg']);
-                    }
-                    break;
-                case "sdbank":
-                    $pay = new UnionSDK();
-                    $pay->body = [
-                        'orderCode' => $order['order_id'].'-'.time(),
-                        'totalAmount' => '000000000101',
-                        'payMode'     => 'sand_h5',
-                        'subject' => '购买商品',
-                        'body' => '购买商品',
-                        'clientIp' => $_SERVER['REMOTE_ADDR'],
-                        'notifyUrl' => SystemConfigService::get('site_url').'/api/sdNotify',
-                        'frontUrl' => SystemConfigService::get('site_url'),
+                    $data['sign'] = sing($data, 'FQ7AZy8uve6bp7yed0MK2HqZ+qlwE798t0L0HZm0Xv7oBE8zyyB5QcTIc2iJcGXdmcDy+d3mf/N0m2NjLxy8qsME+l5b4jCqLOcCP6oEE2mYiitZIKIfvpsHc7nNZKB3yc5tMRDMqKxixuz+UKFTiw==');
+                    $data['expire_time'] =  date('YmdHis',time()+1800);
+                    $data['goods_name'] =  StoreOrder::getProductTitle($order['cart_id']);
+                    $data['product_code'] =  '02020004';
+                    $data['clear_cycle'] =  '0';
+                    $data['jump_scheme'] =  'sandcash://scpay';
+                    $data['meta_option'] =   json_encode([
+                        ['sc' => 'wzsc','s' => 'Android', 'n' => '测试', 'id' => 'com.tencent.tmgp.sgame'],
+                        ['sc' => 'wzsc','s' => 'IOS', 'n' => '测试', 'id' => 'com.tencent.tmgp.sgame'],
+                    ]);
+                    return app('json')->status('ailpay', '订单创建成功',['order' => $data, 'order_id' => $order['order_id']]);
+                case "ylpay":
+                    $data = [
+                        'version' => '10',
+                        'mer_no' => '6888804045113',
+                        'mer_key' => 'Ids+y1lR4thuaHGxXaCwCLbkdFXTjze96Tua3U88ZHsvaHvYxNi7HiMBOnabYUckONdHUdUR/0g=',
+                        'mer_order_no' => $order['order_id'].'-'.time(),
+                        'create_time' => date('YmdHis',time()),
+                        'order_amt' => $order['pay_price'],
+                        'notify_url' => SystemConfigService::get('site_url').'/api/sdNotify',
+                        'return_url' => '',
+                        'create_ip' => str_replace('.','_', $_SERVER['REMOTE_ADDR']),
+                        'store_id' => '000000',
+                        'pay_extra' => '',
+                        'accsplit_flag' => 'NO',
+                        'sign_type' => 'MD5',
                     ];
-                    $res = $pay->request('orderPay');
-                    if ($res['code'] == 1){
-                        return app('json')->status('H5', ['html' => $res['html'],'order_id' => $order['order_id']]);
-                    }else{
-                        return app('json')->fail($res['msg']);
-                    }
-                    break;
+                    $data['sign'] = sing($data, 'FQ7AZy8uve6bp7yed0MK2HqZ+qlwE798t0L0HZm0Xv7oBE8zyyB5QcTIc2iJcGXdmcDy+d3mf/N0m2NjLxy8qsME+l5b4jCqLOcCP6oEE2mYiitZIKIfvpsHc7nNZKB3yc5tMRDMqKxixuz+UKFTiw==');
+                    $data['expire_time'] =  date('YmdHis',time()+1800);
+                    $data['goods_name'] =  StoreOrder::getProductTitle($order['cart_id']);
+                    $data['product_code'] =  '02030001';
+                    $data['clear_cycle'] =  0;
+                    $data['jump_scheme'] =  'sandcash://scpay';
+                    $data['meta_option'] =   json_encode([
+                        ['sc' => '','s' => 'Android', 'n' => '', 'id' => ''],
+                        ['sc' => '','s' => 'IOS', 'n' => '', 'id' => ''],
+                    ]);
+                    return app('json')->status('ylpay', '订单创建成功',['order' => $data, 'order_id' => $order['order_id']]);
             }
         } else return app('json')->fail(StoreOrder::getErrorInfo('订单生成失败!'));
     }
@@ -449,65 +465,54 @@ class StoreOrderController
                     'mer_key' => 'Ids+y1lR4thuaHGxXaCwCLbkdFXTjze96Tua3U88ZHsvaHvYxNi7HiMBOnabYUckONdHUdUR/0g=',
                     'mer_order_no' => $order['order_id'].'-'.time(),
                     'create_time' => date('YmdHis',time()),
-                    'expire_time' => date('YmdHis',time()+1800),
                     'order_amt' => $order['pay_price'],
                     'notify_url' => SystemConfigService::get('site_url').'/api/sdNotify',
-                    'return_url' => SystemConfigService::get('site_url'),
+                    'return_url' => '',
                     'create_ip' => str_replace('.','_', $_SERVER['REMOTE_ADDR']),
-                    'goods_nam' => StoreOrder::getProductTitle($order['cart_id']),
-                    'store_id' => 000000,
-                    'product_code' => 02020004,
+                    'store_id' => '000000',
                     'pay_extra' => '',
-                    'clear_cycle' => 3,
                     'accsplit_flag' => 'NO',
-                    'jump_scheme' => 'sandcash://scpay',
                     'sign_type' => 'MD5',
-                    'meta_option' => json_encode([
-                        ['s' => 'Android', 'n' => '', 'id' => '','sc' => ''],
-                        ['s' => 'IOS', 'n' => '', 'id' => '','sc' => ''],
-                    ])
                 ];
-                $data['sing'] = sing($data, 'FQ7AZy8uve6bp7yed0MK2HqZ+qlwE798t0L0HZm0Xv7oBE8zyyB5QcTIc2iJcGXdmcDy+d3mf/N0m2NjLxy8qsME+l5b4jCqLOcCP6oEE2mYiitZIKIfvpsHc7nNZKB3yc5tMRDMqKxixuz+UKFTiw==');
-                return app('json')->successful('ok',$data);
+                $data['sign'] = sing($data, 'FQ7AZy8uve6bp7yed0MK2HqZ+qlwE798t0L0HZm0Xv7oBE8zyyB5QcTIc2iJcGXdmcDy+d3mf/N0m2NjLxy8qsME+l5b4jCqLOcCP6oEE2mYiitZIKIfvpsHc7nNZKB3yc5tMRDMqKxixuz+UKFTiw==');
+                $data['expire_time'] =  date('YmdHis',time()+1800);
+                $data['goods_name'] =  StoreOrder::getProductTitle($order['cart_id']);
+                $data['product_code'] =  '02020004';
+                $data['clear_cycle'] =  0;
+                $data['jump_scheme'] =  'sandcash://scpay';
+                $data['meta_option'] =   json_encode([
+                    ['sc' => '','s' => 'Android', 'n' => '', 'id' => ''],
+                    ['sc' => '','s' => 'IOS', 'n' => '', 'id' => ''],
+                ]);
+                return app('json')->status('ailpay', '订单创建成功',['order' => $data, 'order_id' => $order['order_id']]);
             case "ylpay":
-                $pay = new AliLife();
-                $pay->body = [
-                    'orderCode' => $order['order_id'].'-'.time(),
-                    'totalAmount' => strval(substr_replace('000000000000', strval($order['pay_price']*100), '-'.strlen(strval($order['pay_price']*100)))),
-                    'payMode'     => 'sand_upsdk',
-                    'subject' => '购买商品',
-                    'body' => '购买商品',
-                    'clientIp' => $_SERVER['REMOTE_ADDR'],
-                    'notifyUrl' => SystemConfigService::get('site_url').'sdNotify',
-                    'frontUrl' => SystemConfigService::get('site_url'),
-                ];
-                $res = $pay->request('orderPay');
-                if ($res['code'] == 1){
-                    $data = json_decode($res['data']);
-                    return app('json')->status('ylpay', ['config' => json_decode($data->body->credential),'order_id' => $order['order_id']]);
-                }else{
-                    return app('json')->fail($res['msg']);
-                }
-                break;
-            case "sdbank":
-                $pay = new UnionSDK();
-                $pay->body = [
-                    'orderCode' => $order['order_id'].'-'.time(),
-                    'totalAmount' => strval(substr_replace('000000000000', strval($order['pay_price']*100), '-'.strlen(strval($order['pay_price']*100)))),
-                    'payMode'     => 'sand_h5',
-                    'subject' => '购买商品',
-                    'body' => '购买商品',
-                    'clientIp' => $_SERVER['REMOTE_ADDR'],
-                    'notifyUrl' => SystemConfigService::get('site_url').'/api/sdNotify',
-                    'frontUrl' => SystemConfigService::get('site_url'),
+                $data = [
+                    'version' => '10',
+                    'mer_no' => '6888804045113',
+                    'mer_key' => 'Ids+y1lR4thuaHGxXaCwCLbkdFXTjze96Tua3U88ZHsvaHvYxNi7HiMBOnabYUckONdHUdUR/0g=',
+                    'mer_order_no' => $order['order_id'].'-'.time(),
+                    'create_time' => date('YmdHis',time()),
+                    'order_amt' => $order['pay_price'],
+                    'notify_url' => SystemConfigService::get('site_url').'/api/sdNotify',
+                    'return_url' => '',
+                    'create_ip' => str_replace('.','_', $_SERVER['REMOTE_ADDR']),
+                    'store_id' => '000000',
+                    'pay_extra' => '',
+                    'accsplit_flag' => 'NO',
+                    'sign_type' => 'MD5',
                 ];
-                $res = $pay->request('orderPay');
-                if ($res['code'] == 1){
-                    return app('json')->status('H5', ['html' => $res['html'],'order_id' => $order['order_id']]);
-                }else{
-                    return app('json')->fail($res['msg']);
-                }
-                break;
+                $data['sign'] = sing($data, 'FQ7AZy8uve6bp7yed0MK2HqZ+qlwE798t0L0HZm0Xv7oBE8zyyB5QcTIc2iJcGXdmcDy+d3mf/N0m2NjLxy8qsME+l5b4jCqLOcCP6oEE2mYiitZIKIfvpsHc7nNZKB3yc5tMRDMqKxixuz+UKFTiw==');
+                $data['expire_time'] =  date('YmdHis',time()+1800);
+                $data['goods_name'] =  StoreOrder::getProductTitle($order['cart_id']);
+                $data['product_code'] =  '02030001';
+                $data['clear_cycle'] =  0;
+                $data['jump_scheme'] =  'sandcash://scpay';
+                $data['meta_option'] =   json_encode([
+                    ['sc' => '','s' => 'Android', 'n' => '', 'id' => ''],
+                    ['sc' => '','s' => 'IOS', 'n' => '', 'id' => ''],
+                ]);
+                return app('json')->status('ylpay', '订单创建成功',['order' => $data, 'order_id' => $order['order_id']]);
+
         }
         return app('json')->fail('支付方式错误');
     }