国产精品成人VA在线观看,亚洲日韩在线中文字幕综合,亚洲AV电影天堂男人的天堂,久久人人爽人人爽人人av东京热

News新聞

業(yè)界新聞動態(tài)、技術(shù)前沿
Who are we?

您的位置:首頁      樂道系統(tǒng)FAQ      ECSHOP自動收貨解決方案 【附代碼】

ECSHOP自動收貨解決方案 【附代碼】

標(biāo)簽: 發(fā)布日期:2017-04-15 00:00:00 1507

  ecshop系統(tǒng),本身不帶自動確認(rèn)收貨的,網(wǎng)上也找了一下,很多很復(fù)雜,且需要在服務(wù)器端設(shè)置定時任務(wù),如果是虛擬主機(jī),基本上就歇菜了。


  某寶有一些賣自動收貨的插件,不太了解其機(jī)制,不過也比較貴,要1-200一個。沒辦法,就自己開發(fā)吧。以下為解決方案。


解決思路:

  跟淘寶的類似,默認(rèn)設(shè)置7天后還沒有自動確認(rèn)收貨,那么就會系統(tǒng)強(qiáng)制確認(rèn)收貨。只不過這個強(qiáng)制確認(rèn)收貨,沒有在系統(tǒng)里設(shè)置常駐內(nèi)存的程序,也沒有設(shè)置系統(tǒng)自動任務(wù),為變通的方案。設(shè)定為用戶在登錄成功后,進(jìn)入用戶中心頁面,就會掃描自己名下,有沒有超過7天還未確認(rèn)收貨的訂單,如果有,則啟動確認(rèn)收貨程序。沒有,則跳過。


方案說明:

  1、這個強(qiáng)制確認(rèn)收貨,其實(shí)不是完整版的強(qiáng)制確認(rèn)收貨,不一定是到了15天系統(tǒng)就自動確認(rèn)收貨了,而是在下一次用戶登錄的時候檢索是否有超時的訂單,所以,這個自動確認(rèn)收貨的時間,其實(shí)不一定是準(zhǔn)確的。只不過不需要用戶再主動點(diǎn)一下;


  2、本來有考慮到在網(wǎng)站首頁或者其他頁面嵌入一個觸發(fā)點(diǎn),然后啟動自動確認(rèn)收貨程序,但是考慮到,如果系統(tǒng)用戶比較多(或者訂單比較多),這個遍歷的過程可能就會比較長了,系統(tǒng)開銷大,也可能頁面超時,所以就弄的這個變通方案。


  3、ECSHOP有一個計(jì)劃任務(wù)的功能,但是之前沒有用過,再次優(yōu)化的方案,可以寫一個程序,然后開啟計(jì)劃任務(wù),這樣也可用滿足要求。


  所以,這個是不圓滿版的解決方案,只是修改起來比較簡單,菜鳥都會,另外因?yàn)槭怯脩舻卿浻|發(fā)的,所以對系統(tǒng)資源占用不高,所以,有需要的童鞋可以拿去。


搜索“if ($action == 'default')”,然后在“$info = get_user_default($user_id);”后面,插入以下代碼即可

$orders = get_user_orders($user_id,1000,0);
foreach($orders as $ord){
  if($ord['order_status_flg']==5 && $ord['order_status'] == '已確認(rèn),已付款,已發(fā)貨'){
    //此條件下的為未確認(rèn)收貨的訂單,開始啟動自動收貨程序
    $ord['order_time'] = strtotime($ord['order_time']);
    $thistime = time();
    if($thistime>($ord['order_time']+86400*7)){//如果訂單日期往后7天大于當(dāng)前時間  則表示有超時未確認(rèn)的訂單
    affirm_received($ord['order_id'], $user_id);//強(qiáng)制確認(rèn)收貨
    }
  }
}

程序affirm_received即為確認(rèn)收貨程序。