page-timer.js
2.5 KB
define("mk7/page-timer",["mk7/url","mk7/utils"],function(e,r){$$=Dom7;var t=1,i=2,n=3,o=4,a=5,u=6,l=10,s=103,d=104,c=105,m={};return m.tInterval=window.order_polling_interval,m.oldOrderStatus=null,m.runFuns=function(e,r,t){var i=this,n=arguments[3]?arguments[3]:"";i.initFuns(e,r,t,n);var o=i.makeSureNum();clearInterval(window.pollingTimer),window.pollingTimer=setInterval(function(){i.initFuns(e,r,t,n)},1e3*o)},m.initFuns=function(r,a,u,l){var s=this;$$.ajax({method:"GET",url:e.to(a),dataType:"json",data:{id:r},success:function(e){return e.success?(console.log("=========runFun "+u+"=========="),"GET_NUM"==u?s.getOrderNum(e):void("WAIT"==u?(currStatus=[t,i],s.nextStep(e,r,currStatus,l)):"CONFIRM"==u?(currStatus=[n],s.nextStep(e,r,currStatus,l)):"REPAIRING"==u?(currStatus=[o],s.nextStep(e,r,currStatus,l)):"WAIT_PAY"==u?(currStatus=[o],s.nextStep(e,r,currStatus,l)):window.location.href=window.$site.base_url+"/order/default/order-msg/?id="+r)):void s.timerClear()},error:function(e){}})},m.timerClear=function(){window.pollingTimer&&clearInterval(window.pollingTimer)},m.getOrderNum=function(r){var t=this;if(console.log("res.new_order_num = "+r.new_order_num),r.new_order_num>0)return t.timerClear(),void e.state("select/0")},m.nextStep=function(m,w,f,v){var S=this,_=(arguments[3]?arguments[3]:"",parseInt(m.order_status)),p=[u,l,s,d,c];if(m.user_close&&!r.inArray(_,p)&&a!=_)return S.timerClear(),void e.state("wait-pay/"+w);if(m.engineer_close)return S.timerClear(),window.location.href=window.$site.base_url+"/user#view-order/"+w,!1;if(m.admin_close)return S.timerClear(),window.location.href=window.$site.base_url+"/user#view-order/"+w,!1;if(console.log("最新查询订单状态 = "+_),r.inArray(_,f))return void("function"==typeof v&&v(m));if(console.log("订单状态切换["+S.oldOrderStatus+"] -> ["+_+"]"),S.oldOrderStatus=_,_==t)S.timerClear(),e.state("wait/"+w);else if(_==i)if(r.inArray(n,f)){r.toast({content:"用户拒绝报价, 请重新报价",closeDelay:3e3});setTimeout(function(){S.timerClear(),e.state("wait/"+w)},3e3)}else S.timerClear(),e.state("wait/"+w);else if(_==n)S.timerClear(),e.state("confirm/"+w);else if(_==o){r.toast({content:"用户同意报价, 开始维修",closeDelay:3e3}),S.timerClear();setTimeout(function(){e.state("repairing/"+w)})}else _==a?e.state("wait-pay/"+w):window.location.href=window.$site.base_url+"/order/default/order-msg/?id="+w;return!1},m.makeSureNum=function(){var e=this,t=5;return null==e.tInterval||void 0===e.timerClear||""==e.tInterval?t:r.isNumeric(e.tInterval)?1*e.tInterval:t},m});