業務邏輯:Ajax每隔10秒鍾請求一次接口,該接口會去查詢數據庫是否有新的訂單,如果有則返回新訂單的數量,后台收到聲音提示,更改后台提醒數量
提醒框可鏈接到訂單列表,后台更改完訂單狀態后會提醒會消失
此邏輯同樣可用於實現后台通知功能,用定時任務也可以實現
1、JS代碼
<audio id="mp3" src="/admin/mp3/remind.mp3"> </audio>
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
var remind = 1; var mp3 = $("#mp3")[0]; var play= 0; if(sessionStorage.num){ $(".remind").text(sessionStorage.num); } $.ajax({ url:"/sendOrderNotice", success:function (data) { sessionStorage.num = data; $(".remind").text(data); remind = data;play=data; remind<=0?$(".remind").hide():$(".remind").show(); } }) setInterval(function () { $.ajax({ url:"/sendOrderNotice", success:function (data) { remind = data; sessionStorage.num = data; if(play==remind){ remind<=0?$(".remind").hide():$(".remind").show() }else{ $(".remind").show().text(remind); mp3.play(); play=remind; } } }) },10000) </script>
2、php接口
/** * 訂單提醒 */
public function sendOrderNotice(){ //查詢order表是否有新訂單
$NewOderCount=Order::getNewOderCount(); if ($NewOderCount) { echo json_encode($NewOderCount); } else { echo 0; } }