# 退款管理
一、買家申請退款
文件路徑:shop/controllers/Buyer/Service/ReturnCtl.php
```
<pre class="calibre14">```
<span class="token5">//根據URL參數act,判斷視圖</span>
<span class="token2">if</span> <span class="token1">(</span>$act <span class="token">==</span> <span class="token4">"detail"</span><span class="token1">)</span>
<span class="token1">{</span>
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">detail</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'detail'</span><span class="token1">)</span><span class="token1">;</span>
$d <span class="token">=</span> $data<span class="token1">;</span>
<span class="token1">}</span>
elseif <span class="token1">(</span>$act <span class="token">==</span> <span class="token4">"add"</span><span class="token1">)</span>
<span class="token1">{</span>
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">add</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
<span class="token2">if</span> <span class="token1">(</span>$data <span class="token">==</span> <span class="token">-</span><span class="token6">3</span><span class="token1">)</span>
<span class="token1">{</span>
$this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'error3'</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span><span class="token3">elseif</span><span class="token1">(</span>$data <span class="token">==</span> <span class="token">-</span><span class="token6">4</span><span class="token1">)</span><span class="token1">{</span>
$this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'error4'</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
elseif <span class="token1">(</span>$data <span class="token">==</span> <span class="token">-</span><span class="token6">1</span><span class="token1">)</span>
<span class="token1">{</span>
$this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'error2'</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
elseif <span class="token1">(</span>$data <span class="token">==</span> <span class="token6">0</span><span class="token1">)</span>
<span class="token1">{</span>
$this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'error'</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
$this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'add'</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token1">}</span>
```
```
視圖:shop/views/default/Buyer/Service/ReturnCtl/add.php
退款表單提交:
```
<pre class="calibre14">```
$<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">validator</span><span class="token1">(</span><span class="token1">{</span>
<span class="token1">.</span><span class="token1">.</span><span class="token1">.</span><span class="token1">.</span><span class="token1">.</span><span class="token1">.</span>
<span class="token1">}</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">"click"</span><span class="token1">,</span> <span class="token4">"#handle_submit"</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>e<span class="token1">)</span>
<span class="token1">{</span>
submit_trigger
<span class="token">?</span> $<span class="token1">(</span>e<span class="token1">.</span>delegateTarget<span class="token1">)</span><span class="token1">.</span><span class="token3">trigger</span><span class="token1">(</span><span class="token4">"validate"</span><span class="token1">)</span>
<span class="token1">:</span> submit_trigger <span class="token">=</span> <span class="token6">false</span><span class="token1">;</span>
<span class="token1">}</span><span class="token1">)</span><span class="token1">;</span>
```
```
方法:addReturn()
```
<pre class="calibre14">```
<span class="token5">//如果是貨到付款,確認收貨(付款)后才能退款</span>
<span class="token2">if</span><span class="token1">(</span>$order<span class="token1">[</span><span class="token4">'payment_id'</span><span class="token1">]</span> <span class="token">==</span> PaymentChannlModel<span class="token1">:</span><span class="token1">:</span>PAY_CONFIRM<span class="token1">)</span><span class="token1">{</span>
<span class="token2">if</span><span class="token1">(</span>$order<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token"><</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_RECEIVED<span class="token1">)</span>
<span class="token1">{</span>
$flag2 <span class="token">=</span> <span class="token6">false</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token3">fb</span><span class="token1">(</span>$flag2<span class="token1">)</span><span class="token1">;</span>
<span class="token3">fb</span><span class="token1">(</span><span class="token4">'flag22'</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token5">//退款(貨到付款只支持退貨,不支持退款)</span>
<span class="token2">if</span><span class="token1">(</span>$goods<span class="token1">[</span><span class="token4">'order_goods_status'</span><span class="token1">]</span> <span class="token">==</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_PAYED <span class="token">&&</span> $order<span class="token1">[</span><span class="token4">'payment_id'</span><span class="token1">]</span> <span class="token">!==</span> PaymentChannlModel<span class="token1">:</span><span class="token1">:</span>PAY_CONFIRM<span class="token1">)</span>
<span class="token1">{</span>
<span class="token5">//白條支付不支持退款和退貨</span>
<span class="token2">if</span><span class="token1">(</span><span class="token3">strstr</span><span class="token1">(</span>$order<span class="token1">[</span><span class="token4">'payment_name'</span><span class="token1">]</span><span class="token1">,</span><span class="token4">'白條支付'</span><span class="token1">)</span><span class="token1">)</span><span class="token1">{</span>
$flag2 <span class="token">=</span> <span class="token6">false</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token3">fb</span><span class="token1">(</span>$flag2<span class="token1">)</span><span class="token1">;</span>
<span class="token3">fb</span><span class="token1">(</span><span class="token4">'flag23'</span><span class="token1">)</span><span class="token1">;</span>
$field<span class="token1">[</span><span class="token4">'return_goods_return'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span> <span class="token5">//是否需要退貨 0-不需要 1-需要</span>
$<span class="token2">return</span> <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>orderReturnModel<span class="token">-</span><span class="token">></span><span class="token3">getByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span>
<span class="token4">'order_goods_id'</span> <span class="token">=</span><span class="token">></span> $goods_id<span class="token1">,</span>
<span class="token4">'return_type'</span> <span class="token">=</span><span class="token">></span> Order_ReturnModel<span class="token1">:</span><span class="token1">:</span>RETURN_TYPE_ORDER<span class="token1">,</span>
<span class="token4">'return_state:!='</span> <span class="token">=</span><span class="token">></span> Order_ReturnModel<span class="token1">:</span><span class="token1">:</span>RETURN_SELLER_UNPASS
<span class="token1">)</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
```
```
二、買家審核退款
文件路徑:shop/controllers/Seller/Service/ReturnCtl.php
視圖:shop/views/default/Seller/Service/ReturnCtl/detail.php
處理結果表單提交:
```
<pre class="calibre14">```
$<span class="token1">(</span><span class="token4">'#form'</span><span class="token1">)</span><span class="token1">.</span><span class="token3">validator</span><span class="token1">(</span><span class="token1">{</span>
ignore<span class="token1">:</span> <span class="token4">':hidden'</span><span class="token1">,</span>
theme<span class="token1">:</span> <span class="token4">'yellow_right'</span><span class="token1">,</span>
timely<span class="token1">:</span> <span class="token6">1</span><span class="token1">,</span>
stopOnError<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span>
fields<span class="token1">:</span> <span class="token1">{</span>return_shop_message<span class="token1">:</span> <span class="token4">"required"</span><span class="token1">}</span><span class="token1">,</span>
valid<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span>form<span class="token1">)</span>
<span class="token1">{</span>
<span class="token5">//表單驗證通過,提交表單</span>
<span class="token1">.</span><span class="token1">.</span><span class="token1">.</span><span class="token1">.</span><span class="token1">.</span><span class="token1">.</span>
<span class="token1">}</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">"click"</span><span class="token1">,</span> <span class="token4">"#handle_submit"</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>e<span class="token1">)</span>
<span class="token1">{</span>
<span class="token5">//同意</span>
ajax_url <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Service_Return&met=agreeReturn&typ=json'</span><span class="token1">;</span>
$<span class="token1">(</span>e<span class="token1">.</span>delegateTarget<span class="token1">)</span><span class="token1">.</span><span class="token3">trigger</span><span class="token1">(</span><span class="token4">"validate"</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span><span class="token1">)</span><span class="token1">.</span><span class="token3">on</span><span class="token1">(</span><span class="token4">"click"</span><span class="token1">,</span> <span class="token4">"#handle_close"</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>e<span class="token1">)</span>
<span class="token1">{</span>
<span class="token5">//不同意</span>
ajax_url <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Seller_Service_Return&met=closeReturn&typ=json'</span><span class="token1">;</span>
$<span class="token1">(</span>e<span class="token1">.</span>delegateTarget<span class="token1">)</span><span class="token1">.</span><span class="token3">trigger</span><span class="token1">(</span><span class="token4">"validate"</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span><span class="token1">)</span><span class="token1">;</span>
```
```
三、平臺審核,退款完成
文件路徑:shop/controllers/Api/Trade/ReturnCtl.php
視圖:shop\_admin/view/default/Trade/ReturnCtl/detail.php
JS:shop\_admin/static/default/js/controllers/trade/return/detail.js
四、買家退款管理
文件路徑:shop/controllers/Seller/Service/ReturnCtl.php
- 退款流程:申請退款->賣家同意->平臺同意->退款成功
- 退款狀態:
```
<pre class="calibre14">```
<span class="token5">//模型:shop/models/Order/ReturnModel.php</span>
public <span class="token2">function</span> <span class="token3">__construct</span><span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
parent<span class="token1">:</span><span class="token1">:</span><span class="token3">__construct</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$this<span class="token">-</span><span class="token">></span>return_state <span class="token">=</span> <span class="token3">array</span><span class="token1">(</span>
<span class="token4">'1'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"等待賣家審核"</span><span class="token1">)</span><span class="token1">,</span>
<span class="token4">'2'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"賣家審核通過"</span><span class="token1">)</span><span class="token1">,</span>
<span class="token4">'3'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"賣家審核未通過"</span><span class="token1">)</span><span class="token1">,</span>
<span class="token4">'4'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"等待平臺審核"</span><span class="token1">)</span><span class="token1">,</span>
<span class="token4">'5'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"退款/貨完成"</span><span class="token1">)</span><span class="token1">,</span>
<span class="token1">)</span><span class="token1">;</span>
$this<span class="token">-</span><span class="token">></span>return_type <span class="token">=</span> <span class="token3">array</span><span class="token1">(</span>
<span class="token4">'1'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"退款"</span><span class="token1">)</span><span class="token1">,</span>
<span class="token4">'2'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"退貨"</span><span class="token1">)</span><span class="token1">,</span>
<span class="token4">'3'</span> <span class="token">=</span><span class="token">></span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"虛擬訂單退款"</span><span class="token1">)</span>
<span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
```
```
- 視圖:根據URL獲得參數act的值,判斷視圖
```
<pre class="calibre14">```
<span class="token2">if</span> <span class="token1">(</span>$act <span class="token">==</span> <span class="token4">"detail"</span><span class="token1">)</span>
<span class="token1">{</span>
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">detail</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$this<span class="token">-</span><span class="token">></span>view<span class="token">-</span><span class="token">></span><span class="token3">setMet</span><span class="token1">(</span><span class="token4">'detail'</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
<span class="token5">//orderReturn.php</span>
<span class="token1">}</span>
```
```
1.退款管理列表
方法:orderReturn()、listReturn()
```
<pre class="calibre14">```
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span><span class="token3">listReturn</span><span class="token1">(</span>Order_ReturnModel<span class="token1">:</span><span class="token1">:</span>RETURN_TYPE_ORDER<span class="token1">)</span><span class="token1">;</span>
public <span class="token2">function</span> <span class="token3">listReturn</span><span class="token1">(</span>$type<span class="token1">)</span>
<span class="token1">{</span>
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>orderReturnModel<span class="token">-</span><span class="token">></span><span class="token3">getReturnList</span><span class="token1">(</span>$cond_row<span class="token1">,</span> <span class="token3">array</span><span class="token1">(</span><span class="token4">'return_add_time'</span> <span class="token">=</span><span class="token">></span> <span class="token4">'DESC'</span><span class="token1">)</span><span class="token1">,</span> $page<span class="token1">,</span> $rows<span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
```
```
2.查看退款詳情
視圖:shop/views/default/Seller/Service/ReturnCtl/detail.php
- 賣家同意退款方法:agreeReturn()
```
<pre class="calibre14">```
<span class="token5">//判斷該筆退款金額的訂單是否已經結算</span>
$Order_BaseModel <span class="token">=</span> <span class="token2">new</span> <span class="token3">Order_BaseModel</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$order_base <span class="token">=</span> $Order_BaseModel<span class="token">-</span><span class="token">></span><span class="token3">getOne</span><span class="token1">(</span>$<span class="token2">return</span><span class="token1">[</span><span class="token4">'order_number'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span>
<span class="token5">//判斷該筆訂單是否已經收貨,如果沒有收貨的話,不扣除賣家資金。已確認收貨則扣除賣家資金</span>
<span class="token2">if</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'order_status'</span><span class="token1">]</span> <span class="token">==</span> $Order_StateModel<span class="token1">:</span><span class="token1">:</span>ORDER_FINISH <span class="token1">)</span>
<span class="token1">{</span>
$order_finish <span class="token">=</span> <span class="token6">false</span><span class="token1">;</span>
<span class="token5">//獲取用戶的賬戶資金資源</span>
$key <span class="token">=</span> Yf_Registry<span class="token1">:</span><span class="token1">:</span><span class="token3">get</span><span class="token1">(</span><span class="token4">'shop_api_key'</span><span class="token1">)</span><span class="token1">;</span>
$formvars <span class="token">=</span> <span class="token3">array</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$user_id <span class="token">=</span> Perm<span class="token1">:</span><span class="token1">:</span>$userId<span class="token1">;</span>
$formvars<span class="token1">[</span><span class="token4">'user_id'</span><span class="token1">]</span> <span class="token">=</span> $user_id<span class="token1">;</span>
$formvars<span class="token1">[</span><span class="token4">'app_id'</span><span class="token1">]</span> <span class="token">=</span> Yf_Registry<span class="token1">:</span><span class="token1">:</span><span class="token3">get</span><span class="token1">(</span><span class="token4">'shop_app_id'</span><span class="token1">)</span><span class="token1">;</span>
$money_row <span class="token">=</span> <span class="token3">get_url_with_encrypt</span><span class="token1">(</span>$key<span class="token1">,</span> <span class="token3">sprintf</span><span class="token1">(</span><span class="token4">'%s?ctl=Api_User_Info&met=getUserResourceInfo&typ=json'</span><span class="token1">,</span> Yf_Registry<span class="token1">:</span><span class="token1">:</span><span class="token3">get</span><span class="token1">(</span><span class="token4">'paycenter_api_url'</span><span class="token1">)</span><span class="token1">)</span><span class="token1">,</span> $formvars<span class="token1">)</span><span class="token1">;</span>
$user_money <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span>
$user_money_frozen <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span>
<span class="token2">if</span> <span class="token1">(</span>$money_row<span class="token1">[</span><span class="token4">'status'</span><span class="token1">]</span> <span class="token">==</span> <span class="token4">'200'</span><span class="token1">)</span>
<span class="token1">{</span>
$money <span class="token">=</span> $money_row<span class="token1">[</span><span class="token4">'data'</span><span class="token1">]</span><span class="token1">;</span>
$user_money <span class="token">=</span> $money<span class="token1">[</span><span class="token4">'user_money'</span><span class="token1">]</span><span class="token1">;</span>
$user_money_frozen <span class="token">=</span> $money<span class="token1">[</span><span class="token4">'user_money_frozen'</span><span class="token1">]</span><span class="token1">;</span>
<span class="token1">}</span>
$shop_return_amount <span class="token">=</span> $<span class="token2">return</span><span class="token1">[</span><span class="token4">'return_cash'</span><span class="token1">]</span> <span class="token">-</span> $<span class="token2">return</span><span class="token1">[</span><span class="token4">'return_commision_fee'</span><span class="token1">]</span><span class="token1">;</span>
<span class="token5">//獲取該店鋪最新的結算結束日期</span>
$Order_SettlementModel <span class="token">=</span> <span class="token2">new</span> <span class="token3">Order_SettlementModel</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$settlement_last_info <span class="token">=</span> $Order_SettlementModel<span class="token">-</span><span class="token">></span><span class="token3">getLastSettlementByShopid</span><span class="token1">(</span>Perm<span class="token1">:</span><span class="token1">:</span>$shopId<span class="token1">,</span> $<span class="token2">return</span><span class="token1">[</span><span class="token4">'order_is_virtual'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span>
<span class="token2">if</span><span class="token1">(</span>$settlement_last_info<span class="token1">)</span>
<span class="token1">{</span>
$settlement_unixtime <span class="token">=</span> $settlement_last_info<span class="token1">[</span><span class="token4">'os_end_date'</span><span class="token1">]</span> <span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
$settlement_unixtime <span class="token">=</span> <span class="token4">''</span><span class="token1">;</span>
<span class="token1">}</span>
$settlement_unixtime <span class="token">=</span> <span class="token3">strtotime</span><span class="token1">(</span>$settlement_unixtime<span class="token1">)</span><span class="token1">;</span>
$order_finish_time <span class="token">=</span> $order_base<span class="token1">[</span><span class="token4">'order_finished_time'</span><span class="token1">]</span><span class="token1">;</span>
$order_finish_unixtime <span class="token">=</span> <span class="token3">strtotime</span><span class="token1">(</span>$order_finish_time<span class="token1">)</span><span class="token1">;</span>
<span class="token3">fb</span><span class="token1">(</span>$settlement_unixtime<span class="token1">)</span><span class="token1">;</span>
<span class="token2">if</span><span class="token1">(</span>$settlement_unixtime <span class="token">>=</span> $order_finish_unixtime <span class="token1">)</span>
<span class="token1">{</span>
<span class="token5">//結算時間大于訂單完成時間。需要扣除賣家的現金賬戶</span>
$money <span class="token">=</span> $user_money<span class="token1">;</span>
$pay_type <span class="token">=</span> <span class="token4">'cash'</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
<span class="token5">//結算時間小于訂單完成時間。需要扣除賣家的凍結資金,如果凍結資金不足就扣除賬戶余額</span>
$money <span class="token">=</span> $user_money_frozen <span class="token">+</span> $user_money<span class="token1">;</span>
$pay_type <span class="token">=</span> <span class="token4">'frozen_cash'</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
$order_finish <span class="token">=</span> <span class="token6">true</span><span class="token1">;</span>
<span class="token1">}</span>
```
```
- 賣家不同意退款方法:closeReturn()
`$edit_flag = $this->orderReturnModel->editReturn($order_return_id, $data);`
五、買家退款管理
1.退款申請列表
文件路徑:shop/controllers/Buyer/Service/ReturnCtl.php
視圖:shop/views/default/Buyer/Service/ReturnCtl/index.php
`$data = $this->orderReturnModel->getReturnList($cond_row, array('return_add_time' => 'DESC'), $page, $rows);`
2.退款詳情
文件路徑:shop/controllers/Buyer/Service/ReturnCtl.php
視圖:shop/views/default/Buyer/Service/ReturnCtl/detail.php
```
<pre class="calibre15">```
<span class="token5">//查找退貨單信息</span>
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>orderReturnModel<span class="token">-</span><span class="token">></span><span class="token3">getReturn</span><span class="token1">(</span>$cond_row<span class="token1">)</span><span class="token1">;</span>
<span class="token5">//查找訂單信息</span>
$order_base <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>orderBaseModel<span class="token">-</span><span class="token">></span><span class="token3">getOne</span><span class="token1">(</span>$data<span class="token1">[</span><span class="token4">'order_number'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span>
<span class="token5">//如果下單這為當前用戶 或者此訂單是主管賬號支付訂單并且當前用戶是主管賬號,則當前用戶可以查看該筆訂單的退款退貨狀態</span>
<span class="token2">if</span><span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'buyer_user_id'</span><span class="token1">]</span> <span class="token">==</span> Perm<span class="token1">:</span><span class="token1">:</span>$userId <span class="token">||</span> <span class="token1">(</span>$order_base<span class="token1">[</span><span class="token4">'order_sub_pay'</span><span class="token1">]</span> <span class="token">==</span> Order_StateModel<span class="token1">:</span><span class="token1">:</span>SUB_USER_PAY <span class="token">&&</span> $order_base<span class="token1">[</span><span class="token4">'order_sub_user'</span><span class="token1">]</span> <span class="token">==</span> Perm<span class="token1">:</span><span class="token1">:</span>$userId<span class="token1">)</span><span class="token1">)</span>
<span class="token1">{</span>
<span class="token2">if</span> <span class="token1">(</span>$data<span class="token1">[</span><span class="token4">'return_type'</span><span class="token1">]</span> <span class="token">==</span> Order_ReturnModel<span class="token1">:</span><span class="token1">:</span>RETURN_TYPE_GOODS<span class="token1">)</span>
<span class="token1">{</span>
$data<span class="token1">[</span><span class="token4">'text'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"退貨"</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
$data<span class="token1">[</span><span class="token4">'text'</span><span class="token1">]</span> <span class="token">=</span> <span class="token3">__</span><span class="token1">(</span><span class="token4">"退款"</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">if</span><span class="token1">(</span>$data<span class="token1">[</span><span class="token4">'order_goods_id'</span><span class="token1">]</span><span class="token1">)</span>
<span class="token1">{</span>
$data<span class="token1">[</span><span class="token4">'refund_goods'</span><span class="token1">]</span> <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>orderGoodsModel<span class="token">-</span><span class="token">></span><span class="token3">getOne</span><span class="token1">(</span>$data<span class="token1">[</span><span class="token4">'order_goods_id'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
$data<span class="token1">[</span><span class="token4">'order'</span><span class="token1">]</span> <span class="token">=</span> $order_base<span class="token1">;</span>
$return_limit <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>orderReturnModel<span class="token">-</span><span class="token">></span><span class="token3">getByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span>
<span class="token4">'order_number'</span> <span class="token">=</span><span class="token">></span> $data<span class="token1">[</span><span class="token4">'order'</span><span class="token1">]</span><span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">,</span>
<span class="token4">'return_state:!='</span> <span class="token">=</span><span class="token">></span> Order_ReturnModel<span class="token1">:</span><span class="token1">:</span>RETURN_SELLER_UNPASS
<span class="token1">)</span><span class="token1">)</span><span class="token1">;</span>
$cash <span class="token">=</span> <span class="token6">0</span><span class="token1">;</span>
foreach <span class="token1">(</span>$return_limit as $v<span class="token1">)</span>
<span class="token1">{</span>
$cash <span class="token">+</span><span class="token">=</span> $v<span class="token1">[</span><span class="token4">'return_cash'</span><span class="token1">]</span><span class="token1">;</span>
<span class="token1">}</span>
$data<span class="token1">[</span><span class="token4">'return_limit'</span><span class="token1">]</span> <span class="token">=</span> $cash<span class="token1">;</span>
```
```
- 序言
- 系統要求
- 版本更新日志
- 遠豐商城技術對接說明
- 開發指導
- 框架內容
- 基礎
- 開發規范
- 目錄結構
- 架構
- 架構總覽
- 數據庫
- 數據庫連接
- 基本使用
- 緩存
- 配置
- 路由
- 數據字典
- ucenter
- shop
- paycenter
- ucenter_admin
- shop_admin
- paycenter_admin
- 通訊內容
- 商家中心
- 頂部導航欄
- 店鋪信息欄
- 店鋪及商品提示欄
- 交易提示欄
- 銷售情況統計欄
- 單品銷量排行欄
- 店鋪運營推廣欄
- 平臺聯系方式欄
- 訂單物流
- 商品
- 商品列表
- 商品詳情
- 商品發布與編輯
- 分銷商品
- 關聯版式
- 商品規格
- 圖片空間
- 淘寶導入
- 訂單流程
- 交易訂單
- 訂單退款/退貨
- 促銷
- 團購管理
- 加價購
- 限時折扣
- 滿即送
- 代金券管理
- 分銷
- 店鋪
- 店鋪設置
- 自銷產品供應商
- 實體店鋪
- 品牌申請
- 店鋪信息
- 消費者保障服務
- 門店賬號
- 分銷商--產品供應商
- 分銷明細
- 批發市場
- 售后服務
- 咨詢管理
- 投訴管理
- 退款管理
- 退貨管理
- 云方案架構
- 負載集群
- 云存儲
- 接口
- Api接口說明
- 品牌
- 商品規格
- 商品類型
- 商品分類
- 商品
- 訂單
- 商品/店鋪收藏
- 足跡
- 退款及退貨
- 商家店鋪
- 會員
- 入駐協議
- 訂單接口
- 商品接口
- 訂單物流接口
- 商家中心接口
- 促銷接口
- 快遞鳥物流接口
- 代金券接口
- 首頁版塊
- 團購
- 平臺紅包
- 限時折扣接口
- 拼團接口
- wap首頁模板
- 雜項
- 遠程上傳圖片
- JS
- 銀聯支付
- 多語言
- 商品評分
- 圖片加載
- 買家申請退款退貨
- 商家退款退貨
- 平臺退款退貨
- 添加發票
- 提交訂單
- 確認訂單
- 運費銷售區域
- 獲取會員地址
- 充值
- 導出XLS
- 商城系統集成
- 多語言實現
- 三級分銷推廣鏈接發展推廣員
- app.ini.php
- 去分銷
- 版本更新
- 物流支持
- 運營人員建議
- 業務邏輯
- 統計結算
- 客服消息
- 賬號
- 三級分銷
- IM
- 配置
- 平臺帳號
- 活動數據表說明