# 投訴管理
一、買家投訴
文件路徑:shop/controllers/Buyer/Service/ComplainCtl.php
視圖:shop/views/default/Buyer/Service/ComplainCtl/add.php
投訴表單提交:`$('#form').validator({})`
方法:addComplain()
```
<pre class="calibre14">```
$add_flag <span class="token">=</span> $complain_id <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainBaseModel<span class="token">-</span><span class="token">></span><span class="token3">addBase</span><span class="token1">(</span>$field<span class="token1">,</span> <span class="token6">true</span><span class="token1">)</span><span class="token1">;</span>
<span class="token3">check_rs</span><span class="token1">(</span>$add_flag<span class="token1">,</span> $rs_row<span class="token1">)</span><span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'complain_id'</span><span class="token1">]</span> <span class="token">=</span> $complain_id<span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'goods_id'</span><span class="token1">]</span> <span class="token">=</span> $goods<span class="token1">[</span><span class="token4">'goods_id'</span><span class="token1">]</span><span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'goods_name'</span><span class="token1">]</span> <span class="token">=</span> $goods<span class="token1">[</span><span class="token4">'goods_name'</span><span class="token1">]</span><span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'goods_price'</span><span class="token1">]</span> <span class="token">=</span> $goods<span class="token1">[</span><span class="token4">'goods_price'</span><span class="token1">]</span><span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'goods_num'</span><span class="token1">]</span> <span class="token">=</span> $goods<span class="token1">[</span><span class="token4">'order_goods_num'</span><span class="token1">]</span><span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'goods_image'</span><span class="token1">]</span> <span class="token">=</span> $goods<span class="token1">[</span><span class="token4">'goods_image'</span><span class="token1">]</span><span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'complain_message'</span><span class="token1">]</span> <span class="token">=</span> $complain_content<span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'order_goods_id'</span><span class="token1">]</span> <span class="token">=</span> $goods_id<span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'order_goods_type'</span><span class="token1">]</span> <span class="token">=</span> <span class="token6">1</span><span class="token1">;</span>
$field2<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span> <span class="token">=</span> $goods<span class="token1">[</span><span class="token4">'order_id'</span><span class="token1">]</span><span class="token1">;</span>
$add_flag <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainGoodsModel<span class="token">-</span><span class="token">></span><span class="token3">addGoods</span><span class="token1">(</span>$field2<span class="token1">)</span><span class="token1">;</span>
```
```
二、平臺審核
文件路徑:shop/controllers/Api/Trade/ComplainCtl.php
視圖:shop\_admin/view/default/Trade/ComplainCtl/complain.php
JS:shop\_admin/static/default/js/controllers/trade/complain/complain\_list.js
三、賣家申訴
文件路徑:shop/controllers/Seller/Service/ComplainCtl.php
視圖:shop/views/default/Seller/Service/ComplainCtl/detail.php
`<input id="handle_submit" type="button" class="button button_red bbc_seller_submit_btns" value="<?=__('確認提交')?>">`
申訴提交表單驗證:
```
<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> field<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="token3">ajax</span><span class="token1">(</span><span class="token1">{</span>
url<span class="token1">:</span> ajax_url<span class="token1">,</span>
data<span class="token1">:</span> $<span class="token1">(</span><span class="token4">"#form"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span>
success<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span>a<span class="token1">)</span>
<span class="token1">{</span>
<span class="token2">if</span> <span class="token1">(</span>a<span class="token1">.</span>status <span class="token">==</span> <span class="token6">200</span><span class="token1">)</span>
<span class="token1">{</span>
location<span class="token1">.</span>href <span class="token">=</span> <span class="token4">"./index.php?ctl=Seller_Service_Complain&met=index&act=detail&id=<?=$data['id']?>"</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</span><span class="token1">(</span><span class="token4">'<?=__('</span>操作失敗!<span class="token4">')?>'</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>
$<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/Seller/Service/ComplainCtl.php
視圖:shop/views/default/Seller/Service/ComplainCtl/detail.php
方法:publishComplainTalk()
```
<pre class="calibre14">```
$<span class="token1">(</span><span class="token4">"#btn_publish"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">click</span><span class="token1">(</span><span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
<span class="token2">if</span> <span class="token1">(</span>$<span class="token1">(</span><span class="token4">"#complain_talk"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span> <span class="token">==</span> <span class="token4">''</span><span class="token1">)</span>
<span class="token1">{</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</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>
<span class="token3">publish_complain_talk</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="token5">//發布對話</span>
<span class="token2">function</span> <span class="token3">publish_complain_talk</span><span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
$<span class="token1">.</span><span class="token3">ajax</span><span class="token1">(</span><span class="token1">{</span>
type<span class="token1">:</span> <span class="token4">'POST'</span><span class="token1">,</span>
url<span class="token1">:</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Buyer_Service_Complain&met=publishComplainTalk&typ=json'</span><span class="token1">,</span>
cache<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span>
data<span class="token1">:</span> <span class="token4">"complain_id="</span> <span class="token">+</span> complain_id <span class="token">+</span> <span class="token4">"&complain_talk="</span> <span class="token">+</span> <span class="token3">encodeURIComponent</span><span class="token1">(</span>$<span class="token1">(</span><span class="token4">"#complain_talk"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">)</span><span class="token1">,</span>
dataType<span class="token1">:</span> <span class="token4">'json'</span><span class="token1">,</span>
error<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</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>
success<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span>d<span class="token1">)</span>
<span class="token1">{</span>
<span class="token2">if</span> <span class="token1">(</span>d<span class="token1">.</span>msg <span class="token">==</span> <span class="token4">'success'</span><span class="token1">)</span>
<span class="token1">{</span>
$<span class="token1">(</span><span class="token4">"#complain_talk"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token4">''</span><span class="token1">)</span><span class="token1">;</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">success</span><span class="token1">(</span><span class="token4">"<?=__('對話發送成功')?>"</span><span class="token1">)</span><span class="token1">;</span>
<span class="token3">get_complain_talk</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</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>
<span class="token1">}</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
```
```
```
<pre class="calibre14">```
$Complain_TalkModel <span class="token">=</span> <span class="token2">new</span> <span class="token3">Complain_TalkModel</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$flag <span class="token">=</span> $Complain_TalkModel<span class="token">-</span><span class="token">></span><span class="token3">addTalk</span><span class="token1">(</span>$filed<span class="token1">)</span><span class="token1">;</span>
```
```
- 買家:
文件路徑:shop/controllers/Buyer/Service/ComplainCtl.php
視圖:shop/views/default/Buyer/Service/ComplainCtl/detail.php
```
<pre class="calibre14">```
$<span class="token1">(</span><span class="token4">"#btn_publish"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">click</span><span class="token1">(</span><span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
<span class="token2">if</span> <span class="token1">(</span>$<span class="token1">(</span><span class="token4">"#complain_talk"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span> <span class="token">==</span> <span class="token4">''</span><span class="token1">)</span>
<span class="token1">{</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</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>
<span class="token3">publish_complain_talk</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="token5">//發布對話</span>
<span class="token2">function</span> <span class="token3">publish_complain_talk</span><span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
$<span class="token1">.</span><span class="token3">ajax</span><span class="token1">(</span><span class="token1">{</span>
type<span class="token1">:</span> <span class="token4">'POST'</span><span class="token1">,</span>
url<span class="token1">:</span> SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Buyer_Service_Complain&met=publishComplainTalk&typ=json'</span><span class="token1">,</span>
cache<span class="token1">:</span> <span class="token6">false</span><span class="token1">,</span>
data<span class="token1">:</span> <span class="token4">"complain_id="</span> <span class="token">+</span> complain_id <span class="token">+</span> <span class="token4">"&complain_talk="</span> <span class="token">+</span> <span class="token3">encodeURIComponent</span><span class="token1">(</span>$<span class="token1">(</span><span class="token4">"#complain_talk"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token1">)</span><span class="token1">)</span><span class="token1">,</span>
dataType<span class="token1">:</span> <span class="token4">'json'</span><span class="token1">,</span>
error<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</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>
success<span class="token1">:</span> <span class="token2">function</span> <span class="token1">(</span>d<span class="token1">)</span>
<span class="token1">{</span>
<span class="token2">if</span> <span class="token1">(</span>d<span class="token1">.</span>msg <span class="token">==</span> <span class="token4">'success'</span><span class="token1">)</span>
<span class="token1">{</span>
$<span class="token1">(</span><span class="token4">"#complain_talk"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">val</span><span class="token1">(</span><span class="token4">''</span><span class="token1">)</span><span class="token1">;</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">success</span><span class="token1">(</span><span class="token4">"<?=__('對話發送成功')?>"</span><span class="token1">)</span><span class="token1">;</span>
<span class="token3">get_complain_talk</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
Public<span class="token1">.</span>tips<span class="token1">.</span><span class="token3">error</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>
<span class="token1">}</span><span class="token1">)</span><span class="token1">;</span>
<span class="token1">}</span>
```
```
方法:publishComplainTalk()
```
<pre class="calibre14">```
$Complain_TalkModel <span class="token">=</span> <span class="token2">new</span> <span class="token3">Complain_TalkModel</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$flag <span class="token">=</span> $Complain_TalkModel<span class="token">-</span><span class="token">></span><span class="token3">addTalk</span><span class="token1">(</span>$filed<span class="token1">)</span><span class="token1">;</span>
```
```
四、平臺仲裁
文件路徑:shop/controllers/Api/Trade/ComplainCtl.php
視圖:shop\_admin/view/default/Trade/ComplainCtl/getComplainInfo.php
JS:shop\_admin/static/default/js/controllers/trade/complain/progress.js
關閉投訴、處理意見:
```
<pre class="calibre14">```
$<span class="token1">(</span><span class="token4">'#close_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_bottom'</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">true</span><span class="token1">,</span>
fields<span class="token1">:</span> <span class="token1">{</span>
<span class="token4">'final_handle_message'</span><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>
parent<span class="token1">.</span>$<span class="token1">.</span>dialog<span class="token1">.</span><span class="token3">confirm</span><span class="token1">(</span><span class="token4">'確認關閉此投訴?'</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span><span class="token1">)</span>
<span class="token1">{</span>
Public<span class="token1">.</span><span class="token3">ajaxPost</span><span class="token1">(</span>SITE_URL <span class="token">+</span> <span class="token4">'?ctl=Trade_Complain&met=handleComplain&typ=json'</span><span class="token1">,</span> $<span class="token1">(</span><span class="token4">"#close_form"</span><span class="token1">)</span><span class="token1">.</span><span class="token3">serialize</span><span class="token1">(</span><span class="token1">)</span><span class="token1">,</span> <span class="token2">function</span> <span class="token1">(</span>data<span class="token1">)</span>
<span class="token1">{</span>
<span class="token2">if</span> <span class="token1">(</span>data<span class="token1">.</span>status <span class="token">==</span> <span class="token6">200</span><span class="token1">)</span>
<span class="token1">{</span>
parent<span class="token1">.</span>Public<span class="token1">.</span><span class="token3">tips</span><span class="token1">(</span><span class="token1">{</span>content<span class="token1">:</span> <span class="token4">'操作成功!'</span><span class="token1">}</span><span class="token1">)</span><span class="token1">;</span>
window<span class="token1">.</span>location<span class="token1">.</span>href <span class="token">=</span> SITE_URL <span class="token">+</span> <span class="token4">"?ctl=Trade_Complain&met=complain&state=5"</span><span class="token1">;</span>
<span class="token1">}</span>
<span class="token2">else</span>
<span class="token1">{</span>
parent<span class="token1">.</span>Public<span class="token1">.</span><span class="token3">tips</span><span class="token1">(</span><span class="token1">{</span>type<span class="token1">:</span> <span class="token6">1</span><span class="token1">,</span> content<span class="token1">:</span> data<span class="token1">.</span>msg <span class="token">||</span> <span class="token4">'操作無法成功,請稍后重試!'</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="token2">function</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">"a#btn_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="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/Seller/Service/ComplainCtl.php
- 投訴狀態:1-新投訴、2-待申訴、3-對話中、4-待仲裁、5-已關閉
```
<pre class="calibre14">```
const COMPLAIN_FRESH <span class="token">=</span> <span class="token6">1</span><span class="token1">;</span>
const COMPLAIN_APPEAL <span class="token">=</span> <span class="token6">2</span><span class="token1">;</span>
const COMPLAIN_TALK <span class="token">=</span> <span class="token6">3</span><span class="token1">;</span>
const COMPLAIN_HANDLE <span class="token">=</span> <span class="token6">4</span><span class="token1">;</span>
const COMPLAIN_FINISH <span class="token">=</span> <span class="token6">5</span><span class="token1">;</span>
public static $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="token4">'new'</span><span class="token1">,</span>
<span class="token4">'2'</span> <span class="token">=</span><span class="token">></span> <span class="token4">'appeal'</span><span class="token1">,</span><span class="token5">//投訴通過轉給被投訴人</span>
<span class="token4">'3'</span> <span class="token">=</span><span class="token">></span> <span class="token4">'talk'</span><span class="token1">,</span><span class="token5">//被投訴人已申訴</span>
<span class="token4">'4'</span> <span class="token">=</span><span class="token">></span> <span class="token4">'handle'</span><span class="token1">,</span><span class="token5">//提交仲裁</span>
<span class="token4">'5'</span> <span class="token">=</span><span class="token">></span> <span class="token4">'finish'</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">//index.php(視圖)</span>
<span class="token1">}</span>
```
```
1.投訴管理列表
視圖:shop/views/default/Seller/Service/ComplainCtl/index.php
方法:index()
```
<pre class="calibre14">```
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainBaseModel<span class="token">-</span><span class="token">></span><span class="token3">getBaseList</span><span class="token1">(</span>$cond_row<span class="token1">,</span> <span class="token3">array</span><span class="token1">(</span><span class="token4">'complain_datetime'</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>
```
```
2.查看投訴詳情
視圖:shop/views/default/Seller/Service/ComplainCtl/detail.php
方法:detail()
```
<pre class="calibre14">```
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainBaseModel<span class="token">-</span><span class="token">></span><span class="token3">getComplainBase</span><span class="token1">(</span>$cond_row<span class="token1">)</span><span class="token1">;</span>
$data<span class="token1">[</span><span class="token4">'good'</span><span class="token1">]</span> <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainGoodsModel<span class="token">-</span><span class="token">></span><span class="token3">getOneByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">"complain_id"</span> <span class="token">=</span><span class="token">></span> $complain_id<span class="token1">)</span><span class="token1">)</span><span class="token1">;</span>
```
```
六、用戶投訴管理
1.投訴列表
文件路徑:shop/controllers/Buyer/Service/ComplainCtl.php -> index()
視圖:shop/views/default/Buyer/Service/ComplainCtl/index.php
```
<pre class="calibre14">```
$Yf_Page <span class="token">=</span> <span class="token2">new</span> <span class="token3">Yf_Page</span><span class="token1">(</span><span class="token1">)</span><span class="token1">;</span>
$Yf_Page<span class="token">-</span><span class="token">></span>listRows <span class="token">=</span> <span class="token6">10</span><span class="token1">;</span>
$rows <span class="token">=</span> $Yf_Page<span class="token">-</span><span class="token">></span>listRows<span class="token1">;</span>
$offset <span class="token">=</span> <span class="token3">request_int</span><span class="token1">(</span><span class="token4">'firstRow'</span><span class="token1">,</span> <span class="token6">0</span><span class="token1">)</span><span class="token1">;</span>
$page <span class="token">=</span> <span class="token3">ceil_r</span><span class="token1">(</span>$offset <span class="token">/</span> $rows<span class="token1">)</span><span class="token1">;</span>
$state <span class="token">=</span> <span class="token3">request_int</span><span class="token1">(</span><span class="token4">"status"</span><span class="token1">)</span><span class="token1">;</span>
$cond_row<span class="token1">[</span><span class="token4">'user_id_accuser'</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="token5">//店鋪ID</span>
<span class="token2">if</span> <span class="token1">(</span>$state<span class="token1">)</span>
<span class="token1">{</span>
$cond_row<span class="token1">[</span><span class="token4">'complain_state'</span><span class="token1">]</span> <span class="token">=</span> $state<span class="token1">;</span>
<span class="token1">}</span>
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainBaseModel<span class="token">-</span><span class="token">></span><span class="token3">getBaseList</span><span class="token1">(</span>$cond_row<span class="token1">,</span> <span class="token3">array</span><span class="token1">(</span><span class="token4">'complain_datetime'</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>
```
```
2.投訴詳情
文件路徑:shop/controllers/Buyer/Service/ComplainCtl.php
視圖:shop/views/default/Buyer/Service/ComplainCtl/index.php
方法:detail()
```
<pre class="calibre15">```
<span class="token5">//根據獲取到的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>
$data <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainBaseModel<span class="token">-</span><span class="token">></span><span class="token3">getComplainBase</span><span class="token1">(</span>$cond_row<span class="token1">)</span><span class="token1">;</span>
$data<span class="token1">[</span><span class="token4">'good'</span><span class="token1">]</span> <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>complainGoodsModel<span class="token">-</span><span class="token">></span><span class="token3">getOneByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">"complain_id"</span> <span class="token">=</span><span class="token">></span> $complain_id<span class="token1">)</span><span class="token1">)</span><span class="token1">;</span>
$data<span class="token1">[</span><span class="token4">'id'</span><span class="token1">]</span> <span class="token">=</span> $complain_id<span class="token1">;</span>
$data<span class="token1">[</span><span class="token4">'order'</span><span class="token1">]</span> <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">getOneByWhere</span><span class="token1">(</span><span class="token3">array</span><span class="token1">(</span><span class="token4">'order_id'</span> <span class="token">=</span><span class="token">></span> $data<span class="token1">[</span><span class="token4">'good'</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="token1">)</span><span class="token1">;</span>
$data<span class="token1">[</span><span class="token4">'ordergoods'</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">getOneByWhere</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> $data<span class="token1">[</span><span class="token4">'good'</span><span class="token1">]</span><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">'shop'</span><span class="token1">]</span> <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>shopBaseModel<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">'user_id_accused'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span>
$shop_company <span class="token">=</span> $this<span class="token">-</span><span class="token">></span>shopCompanyModel<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">'user_id_accused'</span><span class="token1">]</span><span class="token1">)</span><span class="token1">;</span>
$data<span class="token1">[</span><span class="token4">'shop'</span><span class="token1">]</span><span class="token1">[</span><span class="token4">'shop_company_address'</span><span class="token1">]</span> <span class="token">=</span> $shop_company<span class="token1">[</span><span class="token4">'shop_company_address'</span><span class="token1">]</span><span class="token1">;</span>
```
```
- 序言
- 系統要求
- 版本更新日志
- 遠豐商城技術對接說明
- 開發指導
- 框架內容
- 基礎
- 開發規范
- 目錄結構
- 架構
- 架構總覽
- 數據庫
- 數據庫連接
- 基本使用
- 緩存
- 配置
- 路由
- 數據字典
- ucenter
- shop
- paycenter
- ucenter_admin
- shop_admin
- paycenter_admin
- 通訊內容
- 商家中心
- 頂部導航欄
- 店鋪信息欄
- 店鋪及商品提示欄
- 交易提示欄
- 銷售情況統計欄
- 單品銷量排行欄
- 店鋪運營推廣欄
- 平臺聯系方式欄
- 訂單物流
- 商品
- 商品列表
- 商品詳情
- 商品發布與編輯
- 分銷商品
- 關聯版式
- 商品規格
- 圖片空間
- 淘寶導入
- 訂單流程
- 交易訂單
- 訂單退款/退貨
- 促銷
- 團購管理
- 加價購
- 限時折扣
- 滿即送
- 代金券管理
- 分銷
- 店鋪
- 店鋪設置
- 自銷產品供應商
- 實體店鋪
- 品牌申請
- 店鋪信息
- 消費者保障服務
- 門店賬號
- 分銷商--產品供應商
- 分銷明細
- 批發市場
- 售后服務
- 咨詢管理
- 投訴管理
- 退款管理
- 退貨管理
- 云方案架構
- 負載集群
- 云存儲
- 接口
- Api接口說明
- 品牌
- 商品規格
- 商品類型
- 商品分類
- 商品
- 訂單
- 商品/店鋪收藏
- 足跡
- 退款及退貨
- 商家店鋪
- 會員
- 入駐協議
- 訂單接口
- 商品接口
- 訂單物流接口
- 商家中心接口
- 促銷接口
- 快遞鳥物流接口
- 代金券接口
- 首頁版塊
- 團購
- 平臺紅包
- 限時折扣接口
- 拼團接口
- wap首頁模板
- 雜項
- 遠程上傳圖片
- JS
- 銀聯支付
- 多語言
- 商品評分
- 圖片加載
- 買家申請退款退貨
- 商家退款退貨
- 平臺退款退貨
- 添加發票
- 提交訂單
- 確認訂單
- 運費銷售區域
- 獲取會員地址
- 充值
- 導出XLS
- 商城系統集成
- 多語言實現
- 三級分銷推廣鏈接發展推廣員
- app.ini.php
- 去分銷
- 版本更新
- 物流支持
- 運營人員建議
- 業務邏輯
- 統計結算
- 客服消息
- 賬號
- 三級分銷
- IM
- 配置
- 平臺帳號
- 活動數據表說明