Browse Source

订单退款

master
lanzu_qinsheng 5 years ago
parent
commit
56481a9cb5
  1. 18
      app/Admin/Common/Rpc.php
  2. 15
      app/Admin/Extensions/OrderStateHandle.php

18
app/Admin/Common/Rpc.php

@ -9,7 +9,9 @@ use Graze\GuzzleHttp\JsonRpc\Client;
class Rpc class Rpc
{ {
const SEPARATE_ACCOUNTS = "/separateaccounts/orderOnlineCompleted";
const SEPARATE_ACCOUNTS = "/order/onlineComplete";
const ORDER_REFUND = "/order/onlineRefund";
/** /**
@ -18,15 +20,23 @@ class Rpc
* @param $uid * @param $uid
* @return string * @return string
*/ */
public static function separateAccounts($oid,$uid){
public static function separateAccounts($global_order_id,$uid){
$client = Client::factory(env('RPC_SITE_HOST')); $client = Client::factory(env('RPC_SITE_HOST'));
$request = $client->request( $request = $client->request(
uniqid(), uniqid(),
self::SEPARATE_ACCOUNTS, self::SEPARATE_ACCOUNTS,
['orderMainId' => $oid,'userId'=>$uid]);
['global_order_id' => $global_order_id,'user_id'=>$uid]);
$response = $client->send($request); $response = $client->send($request);
return $response->getBody()->getContents(); return $response->getBody()->getContents();
} }
public static function orderRefund($global_order_id,$uid){
$client = Client::factory(env('RPC_SITE_HOST'));
$request = $client->request(
uniqid(),
self::ORDER_REFUND,
['global_order_id' => $global_order_id,'user_id'=>$uid]);
$response = $client->send($request);
return $response->getBody()->getContents();
}
} }

15
app/Admin/Extensions/OrderStateHandle.php

@ -39,15 +39,20 @@ class OrderStateHandle extends RowAction
if ($state==4){ if ($state==4){
$order = $orderMain::where('id',$id)->first(); $order = $orderMain::where('id',$id)->first();
//记录分账流水 //记录分账流水
$result = json_decode(Rpc::separateAccounts($id,$order->user_id));
if ($result->result){
return $this->response()->success('操作成功')->refresh();
}else{
$result = json_decode(Rpc::separateAccounts($order->global_order_id,$order->user_id),true)['result'];
if ($result['code']!=0){
Log::error('订单完成时分账接口调用失败',$result); Log::error('订单完成时分账接口调用失败',$result);
return $this->response()->error('操作失败')->refresh(); return $this->response()->error('操作失败')->refresh();
} }
return $this->response()->success('操作成功')->refresh();
}elseif ($state==9){//同意退款 }elseif ($state==9){//同意退款
$order = $orderMain::where('id',$id)->first();
$result = json_decode(Rpc::orderRefund($order->global_order_id,$order->user_id),true)['result'];
if ($result['code']!=0){
Log::error('订单退款接口调用失败',$result);
return $this->response()->error('操作失败')->refresh();
}
return $this->response()->success('操作成功')->refresh();
} }
$res = $orderMain->modifyState($id,$state); $res = $orderMain->modifyState($id,$state);
if ($res==true){ if ($res==true){

Loading…
Cancel
Save