canyin-project/ybcy/models/common/Ali.php

580 lines
28 KiB
PHP
Raw Permalink Normal View History

2024-11-01 16:07:54 +08:00
<?php
namespace app\models\common;
use Yii;
use yii\db\ActiveRecord;
use Alipay\EasySDK\Kernel\Factory;
use Alipay\EasySDK\Kernel\Util\ResponseChecker;
use Alipay\EasySDK\Kernel\Config;
use yii\web\UploadedFile;
use app\models\common\Config as ybConfig;
class Ali extends ActiveRecord{
public function result($code=1,$msg='成功',$data=[])
{
return [
'code'=>$code,
'msg'=>$msg,
'data'=>$data,
];
}
public static function getOptions($uniacid){
$set=ybConfig::getSystemSet('aliSet',$uniacid);
if(Yii::$app->params['isDev']==true){
$url=Yii::$app->request->hostInfo.'/addons/yb_wm/index.php/channelApi/pay-notice/ali-notice';
}else{
$url=Yii::$app->request->hostInfo.'/index.php/channelApi/pay-notice/ali-notice';
}
$options = new Config();
$options->protocol = 'https';
$options->gatewayHost = 'openapi.alipay.com';
$options->signType = 'RSA2';
$options->appId = $set['appId'];
// 为避免私钥随源码泄露,推荐从文件中读取私钥字符串而不是写入源码中
$options->merchantPrivateKey = str_replace(PHP_EOL, '', $set['privateKey']);//私钥
// $options->alipayCertPath = '<-- 请填写您的支付宝公钥证书文件路径,例如:/foo/alipayCertPublicKey_RSA2.crt -->';
// $options->alipayRootCertPath = '<-- 请填写您的支付宝根证书文件路径,例如:/foo/alipayRootCert.crt" -->';
// $options->merchantCertPath = '<-- 请填写您的应用公钥证书文件路径,例如:/foo/appCertPublicKey_2019051064521003.crt -->';
// 注:如果采用非证书模式,则无需赋值上面的三个证书路径,改为赋值如下的支付宝公钥字符串即可
$options->alipayPublicKey = str_replace(PHP_EOL, '', $set['publicKey']);//公钥
//可设置异步通知接收服务地址(可选)
$options->notifyUrl = $url;
//可设置AES密钥调用AES加解密相关接口时需要可选
$options->encryptKey = $set['encryptKey'];
return $options;
}
//登录
public static function login($uniacid,$code){
Factory::setOptions(self::getOptions($uniacid));
try {
$result = Factory::base()->oauth()->getToken($code);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res['alipay_system_oauth_token_response']['user_id']);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//支付
public static function pay($uniacid,$outTradeNo, $money,$note,$openId,$orderType){
Factory::setOptions(self::getOptions($uniacid));
$set=ybConfig::getSystemSet('aliSet',$uniacid);
$passback_params['uniacid']=$uniacid;
$passback_params['orderType']=$orderType;
$extend_params['sys_service_provider_id']=$set['rebate_pid'];//服务商id
$extend_params['food_order_type']='home_delivery';
$business_params['tinyAppId']=$set['appId'];
try {
$result = Factory::payment()->common()->optional('extend_params',$extend_params)->optional('business_params',$business_params)->optional('passback_params',http_build_query($passback_params))->create($note, $outTradeNo, $money, $openId);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
return self::result(1,'成功',json_decode($result->httpBody,true));
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//字节跳动支付//
public static function zjPay($uniacid,$outTradeNo, $money,$note,$orderType){
Factory::setOptions(self::getOptions($uniacid));
$passback_params['uniacid']=$uniacid;
$passback_params['orderType']=$orderType;
try {
$result = Factory::payment()->app()->optional('passback_params',http_build_query($passback_params))->pay($note, $outTradeNo, $money);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
// $res=Factory::util()->generic()->execute("alipay.trade.create",'', $arr);
// print_R(http_build_query(json_decode($result->httpBody,true)));die;
return self::result(1,'成功',$result->body);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//同步订单
public static function sync($uniacid,$orderId,$type){
$goodsData=[];
if($type==1){
$order=(new \yii\db\Query())
->from('{{%ybwm_takeout_order}}')
->where(['id'=>$orderId])->one();
$mobile=$order['receivedTel'];
}else{
$order=(new \yii\db\Query())
->from('{{%ybwm_instore_order}}')
->where(['id'=>$orderId])->one();
$user=(new \yii\db\Query())
->select('userTel')
->from('{{%ybwm_member}}')
->where(['id'=>$order['userId']])->one();
$mobile=$user['userTel'];
}
$set=ybConfig::getSystemSet('aliSet',$uniacid);
$store=(new \yii\db\Query())
->select('isMain')
->from('{{%ybwm_store}}')
->where(['id'=>$order['storeId']])->one();
if($store['isMain']==1){
$shop_id=$set['shop_id'];
}else{
$ali_store=(new \yii\db\Query())
->select('shop_id')
->from('{{%ybwm_ali_store}}')
->where(['storeId'=>$order['storeId']])->one();
if(!$ali_store['shop_id']){
return true;
}
$shop_id=$ali_store['shop_id'];
}
$orderGoods=(new \yii\db\Query())
->from('{{%ybwm_order_goods}}')
->where(['orderId'=>$orderId,'item'=>$type])
->all();
for($i=0;$i<count($orderGoods);$i++){
$goodsData[]=[
'sku_id'=>'',
'item_id'=>'',
'item_name'=>$orderGoods[$i]['name'],
'unit_price'=>$orderGoods[$i]['money'],
'quantity'=>$orderGoods[$i]['num'],
'ext_info'=>[
[
'ext_key'=>'dish_type',
'ext_value'=>'other',
]
]
];
}
$user=(new \yii\db\Query())
->select('openId')
->from('{{%ybwm_member}}')
->where(['id'=>$order['userId']])->one();
Factory::setOptions(self::getOptions($uniacid));
$data['out_biz_no']=$order['outTradeNo'];
$data['trade_no']=$order['transaction_id'];
$data['buyer_id']=$user['openId'];
$data['amount']=$order['money'];
$data['order_type']='TRADE_ORDER';
$data['partner_id']=$set['appId'];
$data['seller_id']=$set['appId'];
$data['item_order_list']=$goodsData;
$data['ext_info']=[
[
'ext_key'=>'tiny_app_id',
'ext_value'=>$set['appId'],
],
[
'ext_key'=>'merchant_order_status',
'ext_value'=>'MERCHANT_PAID',
],
[
'ext_key'=>'merchant_biz_type',
'ext_value'=>'qr_food_order',
],
[
'ext_key'=>'business_info',
'ext_value'=>['rebate_pid'=>$set['rebate_pid']],//服务商id
],
];
$data['shop_info']['merchant_shop_id']=$shop_id;//门店id
$data['buyer_info']['mobile']=$mobile?:15337777777;
try {
$result = Factory::util()->generic()->execute('alipay.merchant.order.sync',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage());
}
}
//回调验签
public static function verifyNotify($uniacid,$data){
Factory::setOptions(self::getOptions($uniacid));
try {
$result = Factory::payment()->common()->verifyNotify($data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
return self::result(1,'成功');
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//支付宝解密
public static function decrypt($uniacid,$data){
Factory::setOptions(self::getOptions($uniacid));
try {
$result = Factory::util()->aes()->decrypt($data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
// $res=json_decode($result->httpBody,true);
return self::result(1,'成功',$result);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//退款
public static function refund($uniacid,$outTradeNo,$money){
Factory::setOptions(self::getOptions($uniacid));
try {
$result = Factory::payment()->common()->refund($outTradeNo,$money);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
return self::result(1,'成功');
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//模板消息
public static function template($uniacid,$openId,$templateId,$page,$data){
Factory::setOptions(self::getOptions($uniacid));
try {
$result = Factory::marketing()->templatemessage()->send($openId,'',$templateId,$page,$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
return self::result(1,'成功');
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//小程序码
public static function qrcode($uniacid,$page,$scene,$describe='描述'){
Factory::setOptions(self::getOptions($uniacid));
try {
$result = Factory::base()->qrcode()->create($page,'x='.$scene,$describe);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res['alipay_open_app_qrcode_create_response']['qr_code_url']);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//添加门店
public static function saveStore($uniacid,$storeData,$storeId){
$auth=(new \yii\db\Query())
->select('merchant_no')
->from('{{%ybwm_ali_auth}}')
->where(['storeId'=>$storeId])->one();
if(!$auth['merchant_no']){
return '请先获取代运营授权';
}
Factory::setOptions(self::getOptions($uniacid));
$data['business_address']['city_code']=$storeData['city_code'];
$data['business_address']['district_code']=$storeData['district_code'];
$data['business_address']['address']=$storeData['address'];
$data['business_address']['province_code']=$storeData['province_code'];
$data['shop_category']=$storeData['shop_category'];
$data['store_id']=$storeData['store_no'];
$data['shop_type']='01';
$data['ip_role_id']=$auth['merchant_no'];
// $data['ip_role_id']=$set['rebate_pid'];
$data['shop_name']=$storeData['shop_name'];
$data['contact_mobile']=$storeData['contact_mobile'];
try {
$result = Factory::util()->generic()->execute('ant.merchant.expand.shop.create',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//修改门店
public static function modifyStore($uniacid,$storeData,$storeId){
$auth=(new \yii\db\Query())
->select('merchant_no')
->from('{{%ybwm_ali_auth}}')
->where(['storeId'=>$storeId])->one();
if(!$auth['merchant_no']){
return '请先获取代运营授权';
}
Factory::setOptions(self::getOptions($uniacid));
$data['business_address']['city_code']=$storeData['city_code'];
$data['business_address']['district_code']=$storeData['district_code'];
$data['business_address']['address']=$storeData['address'];
$data['business_address']['province_code']=$storeData['province_code'];
$data['shop_category']=$storeData['shop_category'];
$data['shop_id']=$storeData['shop_id'];
$data['shop_type']='01';
$data['shop_name']=$storeData['shop_name'];
$data['contact_mobile']=$storeData['contact_mobile'];
try {
$result = Factory::util()->generic()->execute('ant.merchant.expand.shop.modify',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//授权
public static function authorization($uniacid,$account){
Factory::setOptions(self::getOptions($uniacid));
$data['out_biz_no']=date("YmdHis") . randomAESKey(6);
$data['operate_type']='OPERATION_AUTH';
$data['access_product_code']='OPENAPI_AUTH_DEFAULT';
$data['alipay_account']=$account;
try {
$result = Factory::util()->generic()->execute('alipay.open.sp.operation.apply',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
// print_R($result);die;
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res['alipay_open_sp_operation_apply_response']['batch_no']);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
//查看授权结果授权//2021050507785253
public static function getAuthorization($uniacid,$batch_no){
Factory::setOptions(self::getOptions($uniacid));
$data['batch_no']=$batch_no;
$data['operate_type']='OPERATION_AUTH';
try {
$result = Factory::util()->generic()->execute('alipay.open.sp.operation.result.query',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res['alipay_open_sp_operation_result_query_response']);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
} catch (\Exception $e) {
return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
}
}
// //添加素材
// public static function upload($uniacid,$url){
// $url='https://images.ddycms.cn/yb_wm/39/2021/03/17/202103171510524481.jpg';
// echo file_get_contents($url);die;
// // print_r(self::getOptions($uniacid));die;
//// header( "Content-type: image/jpeg");
// $url='/www/wwwroot/bkycms.com/addons/yb_wm/web/static/yb_wm/39/2020/10/13/202010131404482215.png';
//// $p_size = filesize($url);
//// $img_binary = fread(fopen($url, "r"), $p_size);
// // print_R($img_binary);die;
// Factory::setOptions(self::getOptions($uniacid));
// //1. 设置参数(全局只需设置一次)
// try {
// //2. 发起API调用
// $result = Factory::util()->generic()->fileExecute('alipay.merchant.item.file.upload',['scene'=>'APP_ORDER'],null,['file_content'=>$url]);
// $responseChecker = new ResponseChecker();
// //3. 处理响应或异常
// if ($responseChecker->success($result)) {
// // print_R($result);die;
// $res=json_decode($result->httpBody,true);
//
// return self::result(1,'成功',$res);
// } else {
// return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
// }
// } catch (Exception $e) {
// return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
// }
// }
// //添加商品
// public static function saveGoods($uniacid,$goodsId){
// Factory::setOptions(self::getOptions($uniacid));
// //1. 设置参数(全局只需设置一次)
// try {
// //2. 发起API调用
// $result = Factory::util()->generic()->fileExecute('alipay.merchant.item.file.upload',['scene'=>'SYNC_ORDER','file_content'=>''],[],[]);
// $responseChecker = new ResponseChecker();
// //3. 处理响应或异常
// if ($responseChecker->success($result)) {
// // print_R($result);die;
// $res=json_decode($result->httpBody,true);
//
// return self::result(1,'成功',$res);
// } else {
// return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
// }
// } catch (Exception $e) {
// return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
// }
// }
// //查询订单
// public static function getOrder($uniacid){
// Factory::setOptions(self::getOptions($uniacid));
// //1. 设置参数(全局只需设置一次)
// try {//query
// //2. 发起API调用
// $result = Factory::payment()->common()->query('20210329173516159370');
// $responseChecker = new ResponseChecker();
// //3. 处理响应或异常
// if ($responseChecker->success($result)) {
//
// $res=json_decode($result->httpBody,true);
// print_R($res);die;
// return self::result(1,'成功',$res);
// } else {
// return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
// }
// } catch (Exception $e) {
// return self::result(2,"调用失败,". $e->getMessage(). PHP_EOL);
// }
// }
/**
* 分账关系绑定
* @param $uniacid
* @param $receiverList[type,account,name,memo] 支持二维数组
* type:分账方类型。userId表示是支付宝账号对应的支付宝唯一用户号loginName表示是支付宝登录号在分账关系查询接口中不返回此值。
* account:分账方帐号。当分账方类型是userId时本参数为用户的支付宝账号对应的支付宝唯一用户号以2088开头的纯16位数字当分账方类型是loginName时本参数为用户的支付宝登录号。
* name:分账方全称,新增分账关系时作为请求参数必填,解绑分账关系时作为请求参数可不填,分账关系查询时不作为返回结果返回
* memo:分账关系描述(可选)
* @return \Alipay\EasySDK\Util\Generic\Models\AlipayOpenApiGenericResponse
* @throws \Exception result_code SUCCESS分账关系绑定成功FAIL分账关系绑定失败。
*/
public static function RelationBind($uniacid,$receiverList=[]){
if(empty($uniacid) || empty($receiverList)){
return self::result(2,'缺少参数');
}
Factory::setOptions(self::getOptions($uniacid));
$data['out_request_no']=base64_encode(time());
$data['receiver_list']= $receiverList;
$result = Factory::util()->generic()->execute('alipay.trade.royalty.relation.bind',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res['alipay_trade_royalty_relation_batchquery_response']);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
}
/**
* 分账关系查询
* @param $uniacid
* @param int $pagNum
* @param int $pageSize
* $pagNum 几页,起始页为 1。不填默认为 1
* $pageSize 页面大小。每页记录数,取值范围是(0,100]。不填默认为20
*/
public static function RelationBatchquery($uniacid,$pageNum=1,$pageSize=20){
Factory::setOptions(self::getOptions($uniacid));
$data['out_request_no']=base64_encode(time());
$data['page_num']=$pageNum;
$data['page_size']=$pageSize;
$result = Factory::util()->generic()->execute('alipay.trade.royalty.relation.batchquery',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res['alipay_trade_royalty_relation_batchquery_response']);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
}
/**
* 分账关系解绑
* @param $uniacid
* @param $receiverList[type,account,name,memo] 支持二维数组
* type:分账方类型。userId表示是支付宝账号对应的支付宝唯一用户号loginName表示是支付宝登录号在分账关系查询接口中不返回此值。
* account:分账方帐号。当分账方类型是userId时本参数为用户的支付宝账号对应的支付宝唯一用户号以2088开头的纯16位数字当分账方类型是loginName时本参数为用户的支付宝登录号。
* name:分账方全称,新增分账关系时作为请求参数必填,解绑分账关系时作为请求参数可不填,分账关系查询时不作为返回结果返回
* memo:分账关系描述(可选)
* @return \Alipay\EasySDK\Util\Generic\Models\AlipayOpenApiGenericResponse
* @throws \Exception result_code SUCCESS分账关系绑定成功FAIL分账关系绑定失败。
*/
public static function RelationNnbind($uniacid,$receiverList=[]){
if(empty($uniacid) || empty($receiverList)){
return self::result(2,'缺少参数');
}
Factory::setOptions(self::getOptions($uniacid));
$data['out_request_no']=base64_encode(time());
$data['receiver_list']= $receiverList;
$result = Factory::util()->generic()->execute('alipay.trade.royalty.relation.unbind',[],$data);
$responseChecker = new ResponseChecker();
if ($responseChecker->success($result)) {
$res=json_decode($result->httpBody,true);
return self::result(1,'成功',$res['alipay_trade_royalty_relation_batchquery_response']);
} else {
return self::result(2,"调用失败,原因:". $result->msg."".$result->subMsg.PHP_EOL);
}
}
/**
* 统一分账
* @param $uniacid
* @param $tradeNo :支付宝订单号
* @param $royaltyParameters[[royalty_type,trans_out,trans_out_type,trans_in_type,trans_in,desc,royalty_scene]] :分账明细信息。 仅支持二维数组
* royalty_type:分账类型.普通分账为transfer;补差为replenish;为空默认为分账transfer;
* trans_out:支出方账户。如果支出方账户类型为userId本参数为支出方的支付宝账号对应的支付宝唯一用户号以2088开头的纯16位数字如果支出方类型为loginName本参数为支出方的支付宝登录号。 泛金融类商户分账时,该字段不要上送。
* trans_out_type :支出方账户类型。userId表示是支付宝账号对应的支付宝唯一用户号;loginName表示是支付宝登录号 泛金融类商户分账时,该字段不要上送。
* trans_in_type:收入方账户类型。userId表示是支付宝账号对应的支付宝唯一用户号;cardAliasNo表示是卡编号;loginName表示是支付宝登录号
* trans_in:收入方账户。如果收入方账户类型为userId本参数为收入方的支付宝账号对应的支付宝唯一用户号以2088开头的纯16位数字如果收入方类型为cardAliasNo本参数为收入方在支付宝绑定的卡编号如果收入方类型为loginName本参数为收入方的支付宝登录号
* amount:分账的金额,单位为元
* desc:分账描述(可选)
* royalty_scene: 可选值:达人佣金、平台服务费、技术服务费、其他(可选)
* operator_id:操作员 ID商家自定义操作员编号。可选
* @return array
* @throws \Exception
*/
public static function OrderSettle($uniacid,$tradeNo='',$royaltyParameters=[]){
if(empty($tradeNo) || empty($uniacid) || empty($royaltyParameters)){
return self::result(2,'缺少参数');
}
if(!is_array($royaltyParameters) || !isset($royaltyParameters[0]) || !is_array($royaltyParameters[0]) ){
return self::result(2,'分账用户信息错误');
}
$data['out_request_no'] = time();
$data['trade_no']= $tradeNo;
$data['royalty_parameters']= $royaltyParameters;
Factory::setOptions(self::getOptions($uniacid));
$result = Factory::util()->generic()->execute('alipay.trade.order.settle','',$data);
$responseChecker = new ResponseChecker();
$res=json_decode($result->httpBody,true);
if ($responseChecker->success($result)) {
return self::result(1,'成功',$res['alipay_trade_order_settle_response']);
} else {
return self::result(2,$res);
}
}
}