1 line
15 KiB
JavaScript
1 line
15 KiB
JavaScript
define(["core","tpl"],function(r,e){var c={goods:!1,optionid:0,init:function(e){c.goods=goods=e.goods,c.storeid=0,c.optionid=e.optionid,c.jie=e.goods.jie,c.chance=e.goods.chance,c.num=0,c.showMoney=c.goods.money,c.realMoney=c.goods.money,c.credit=c.goods.credit,c.dispatch=c.goods.dispatch,c.wait=0,c.openHtml=0;var t=-1!==navigator.userAgent.toLowerCase().indexOf("micromessenger");c.openHtml=t?1:0;var o=!1;void 0!==window.selectedStoreData&&(o=window.selectedStoreData,c.storeid=o.id,$("#storename").text(o.storename),delete window.selectedStoreData);var i=!1;if(void 0!==window.selectedAddressData)i=window.selectedAddressData;else if(void 0!==window.editAddressData)(i=window.editAddressData).address=i.areas.replace(/ /gi,"")+" "+i.address;else if("0"==c.goods.type){var s=c.getCookie("id"),n=c.getCookie("mobile"),a=decodeURIComponent(c.getCookie("realname")),d=decodeURIComponent(c.getCookie("addressd"));0<s&&(i={id:s,mobile:n,address:d,realname:a})}i&&(c.address=i,c.addressid=i.id,c.addressid&&r.json("creditshop/create/dispatch",{goodsid:c.goods.id,addressid:c.addressid,optionid:c.optionid},function(e){if(1!=e.status){t=e.result;return c.address="",c.addressid=0,$("#address_select").text("请选择收货地址"),$("#carrier_realname").show().find("input").val(""),$("#carrier_mobile").show().find("input").val(""),void FoxUI.toast.show(t.nodispatch)}var t=e.result;c.dispatch=t.dispatch;var o=parseFloat(t.dispatch)+parseFloat(goods.money);0<t.dispatch&&($(".dispatchprice").html("¥"+t.dispatch),$(".moneydispatch").html(o)),$("#address_select").html(c.address.address),$("#carrier_realname").show().find("input").val(c.address.realname),$("#carrier_mobile").show().find("input").val(c.address.mobile)}),$("#addressInfo a").attr("href",r.getUrl("member/address/selector")),$("#addressInfo a").click(function(){window.orderSelectedAddressID=i.id})),c.goods.timestate&&$(".fui-timer").timer({onEnd:function(){$(".fui-navbar .btn").removeClass("btn-danger").addClass("btn-disabled").removeAttr("id").text("活动已结束")}}),null==c.changeNum&&($(document).on("click",".minus",function(){c.changeNum(-1)}),$(document).on("click",".plus",function(){c.changeNum(1)})),$(".num").on("blur",function(e){var t=e.currentTarget.value;c.onchangeNum(t)}),c.onchangeNum=function(t){var e=t;c.chance=Number(c.chance),e=Number(e),0<c.chance&&e>c.chance?FoxUI.toast.show("每人限兑"+c.chance+"件!"):0<!e||(c.num=e,i&&(c.address=i,c.addressid=i.id,c.addressid&&r.json("creditshop/create/dispatch",{goodsid:c.goods.id,addressid:c.addressid,optionid:c.optionid,num:c.num},function(e){if(1!=e.status){t=e.result;return c.address="",c.addressid=0,$("#address_select").text("请选择收货地址"),$("#carrier_realname").show().find("input").val(""),$("#carrier_mobile").show().find("input").val(""),void FoxUI.toast.show(t.nodispatch)}var t=e.result;c.dispatch=t.dispatch;var o=parseFloat(t.dispatch)+parseFloat(goods.money);0<t.dispatch&&($(".dispatchprice").html("¥"+t.dispatch),$(".moneydispatch").html(o)),$("#address_select").html(c.address.address),$("#carrier_realname").show().find("input").val(c.address.realname),$("#carrier_mobile").show().find("input").val(c.address.mobile)}),$("#addressInfo a").attr("href",r.getUrl("member/address/selector")),$("#addressInfo a").click(function(){window.orderSelectedAddressID=i.id})),r.post("creditshop.create",{num:c.num,id:c.goods.id,optionid:c.optionid},function(e){c.goods=goods=e.result,c.showMoney=c.goods.money*c.num,c.credit=c.goods.credit*c.num,c.realMoney=Number(c.showMoney)+Number(c.dispatch),$("#showmoney").text(c.showMoney),$("#showcredit").text(c.credit),$(".moneydispatch").text(c.format(c.realMoney,2)),$("#realcredit").text(c.credit),$("#num").val(t),$("#num").attr("data-value",t)}))},c.changeNum=function(e){var t=c.num+e;0<!t||(0<c.chance&&t>c.chance?FoxUI.toast.show("每人限兑"+c.chance+"件!"):(c.num=t,i&&(c.address=i,c.addressid=i.id,c.addressid&&r.json("creditshop/create/dispatch",{goodsid:c.goods.id,addressid:c.addressid,optionid:c.optionid,num:c.num},function(e){if(1!=e.status){t=e.result;return c.address="",c.addressid=0,$("#address_select").text("请选择收货地址"),$("#carrier_realname").show().find("input").val(""),$("#carrier_mobile").show().find("input").val(""),void FoxUI.toast.show(t.nodispatch)}var t=e.result;c.dispatch=t.dispatch;var o=parseFloat(t.dispatch)+parseFloat(goods.money);0<t.dispatch&&($(".dispatchprice").html("¥"+t.dispatch),$(".moneydispatch").html(o)),$("#address_select").html(c.address.address),$("#carrier_realname").show().find("input").val(c.address.realname),$("#carrier_mobile").show().find("input").val(c.address.mobile)}),$("#addressInfo a").attr("href",r.getUrl("member/address/selector")),$("#addressInfo a").click(function(){window.orderSelectedAddressID=i.id})),r.post("creditshop.create",{num:c.num,id:c.goods.id,optionid:c.optionid},function(e){c.goods=goods=e.result,c.showMoney=c.goods.money*c.num,c.credit=c.goods.credit*c.num,c.realMoney=Number(c.showMoney)+Number(c.dispatch),$("#showmoney").text(c.showMoney),$("#showcredit").text(c.credit),$(".moneydispatch").text(c.format(c.realMoney,2)),$("#realcredit").text(c.credit),$("#num").val(c.num),$("#num").attr("data-value",c.num)})))},c.changeNum(1),c.format=function(e,t,o,i){e=(e+"").replace(/[^0-9+\-Ee.]/g,"");var s,n,a,d=isFinite(+e)?+e:0,r=isFinite(+t)?Math.abs(t):0,c=void 0===i?",":i,l=void 0===o?".":o,p="";return 3<(p=(r?(s=d,n=r,a=Math.pow(10,n),""+Math.round(s*a)/a):""+Math.round(d)).split("."))[0].length&&(p[0]=p[0].replace(/\B(?=(?:\d{3})+(?!\d))/g,c)),(p[1]||"").length<r&&(p[1]=p[1]||"",p[1]+=new Array(r-p[1].length+1).join("0")),p.join(l)},c.paycheck=function(e){if(c.paytype=e,goods.canbuy)if("1"!=goods.followneed||goods.followed)if(c.realname=$.trim($("#carrier_realname").val()),c.mobile=$.trim($("#carrier_mobile").val()),0!=goods.type)c.pay(goods);else{if(1==goods.isverify&&0==goods.goodstype){if(""==c.realname&&0==$("#carrier_realname").attr("data-show"))return void FoxUI.toast.show("请填写真实姓名!");if(""==c.mobile&&0==$("#carrier_mobile").attr("data-show"))return void FoxUI.toast.show("请填写联系电话!");if(0==c.storeid)return void FoxUI.toast.show("请选择兑换门店!")}else if(0==goods.isverify&&0==goods.goodstype&&!c.addressid)return void FoxUI.toast.show("请选择收货地址!");FoxUI.message.show({title:"确认要兑换吗?",icon:"icon icon-information",content:"",buttons:[{text:"确定",extraClass:"btn-danger",onclick:function(){c.wait=1,c.pay(goods)}},{text:"取消",extraClass:"btn-default",onclick:function(){}}]})}else FoxUI.message.show({title:"提示",icon:"icon icon-information",content:goods.followtext,buttons:[{text:"立即去关注",extraClass:"btn-danger",onclick:function(){location.href=goods.followurl}}]});else FoxUI.toast.show(goods.buymsg)},$(document).click(function(){$("input").each(function(){$(this).attr("data-value",$(this).val())})}),$("input").each(function(){var e=$(this).attr("data-value")||"";""!=e&&$(this).val(e)}),$("#openActionSheet").off("click").on("click",function(){console.log(c.wait),1!=c.wait&&(0==goods.type?0<goods.money||0<c.dispatch?c.openActionSheet(!1):c.paycheck():0<goods.money?c.openActionSheet(!1):c.paycheck())}),$("#optionid").off("click").on("click",function(){c.optionPicker(),r.json("creditshop/detail/option",{goodsid:c.goods.id},function(e){0!=e.status?(c.specs=e.result.specs,c.options=e.result.options,c.good=e.result.goods,c.goods.id=c.goods.id,$(".option_thumb").attr("src",c.good.thumb),$(".option_credit").html(c.good.credit),$(".option_money").html(c.good.money),$(".option_total").html(c.good.total),r.tpl(".option-picker-options","option-picker-tpl",e.result),$(".spec-item").off("click").on("click",function(){c.chooseSpec(this)})):FoxUI.toast.show("未找到商品!")}),c.optionPicker1.show()})},getCookie:function(e){for(var t=e+"=",o=document.cookie.split(";"),i=0;i<o.length;i++){for(var s=o[i];" "==s.charAt(0);)s=s.substring(1);if(-1!=s.indexOf(t))return s.substring(t.length,s.length)}return""},getListlog:function(e,t){r.json("creditshop/detail/getlistlog",{page:e,goodsid:t},function(e){var t=e.result;t.total<=0?$(".logmore").hide():(t.list.length<=0||t.list.length<t.pagesize)&&$(".logmore").hide(),c.logpage++,r.tpl("#loglist","tpl_loglist",t,1<c.logpage)})},getListreply:function(e,t){r.json("creditshop/detail/getlistreply",{page:e,goodsid:t},function(e){var t=e.result;t.total<=0?$(".replymore").hide():(t.list.length<=0||t.list.length<t.pagesize)&&$(".replymore").hide(),c.replypage++,r.tpl("#comments_reply","tpl_replylist",t,1<c.replypage)})},openActionSheet:function(e){1==c.openHtml?FoxUI.actionsheet.show("选择支付方式",[{text:"微信支付",extraClass:"wechat",onclick:function(){c.paycheck("wechat")}},{text:"支付宝支付",extraClass:"alipay",onclick:function(){c.paycheck("alipay")}},{text:"余额支付",extraClass:"balance",onclick:function(){c.paycheck("balance")}}],e):FoxUI.actionsheet.show("选择支付方式",[{text:"支付宝支付",extraClass:"alipay",onclick:function(){c.paycheck("alipay")}},{text:"余额支付",extraClass:"balance",onclick:function(){c.paycheck("balance")}}],e)},optionPicker:function(){c.optionPicker1=new FoxUIModal({content:$("#option-picker").html(),extraClass:"picker-modal",maskClick:function(){c.optionPicker1.close()}}),$(".icon-roundclose").click(function(){c.optionPicker1.close()}),$(".confirmbtn").click(function(){c.optionPicker1.close()})},initOption:function(){$(".spec-item").removeClass("btn-danger");var e=c.optionid,o=!1;if($.each(c.options,function(){if(this.id==e)return o=this.specs.split("_"),!1}),o){var i=[];if($(".spec-item").each(function(){var e=$(this),t=e.data("id");$.each(o,function(){this==t&&(i.push(e),e.addClass("btn-danger"))})}),0<i.length){var t=i[i.length-1];c.chooseSpec(t,!1)}}},chooseSpec:function(e,t){var o=$(e);o.closest(".spec").find(".spec-item").removeClass("btn-danger"),o.addClass("btn-danger");var i=o.data("thumb")||"";i?$(".option_thumb").attr("src",i):i=c.goods.thumb,c.optionthumb=i;var s=$(".spec-item.btn-danger"),n=[];if(s.length==c.specs.length&&(s.each(function(){n.push($(this).data("id"))}),$.each(c.options,function(){if(this.specs.split("_").sort().join("_")==n.sort().join("_")){var e="-1"==this.total?"无限":this.stock;$(".total").html(e),"-1"!=this.total&&this.total<=0?$(".confirmbtn").show().addClass("disabled").html("库存不足"):$(".confirmbtn").removeClass("disabled").html("确定"),$(".option_money").html(this.money),$(".option_credit").html(this.credit),c.option=this,c.optionid=this.id}})),c.option){var a=[];s.each(function(){a.push($.trim($(this).html()))}),$(".info-titles").html("已选 "+c.option.title),$(".option_total").html(c.option.total),$("#optionid").html(c.option.title),t&&c.params.onSelected&&c.params.onSelected(c.params.total,c.params.optionid,c.params.titles)}},pay:function(){r.json("creditshop/detail/pay",{id:c.goods.id,optionid:c.optionid,addressid:c.addressid,storeid:c.storeid,realname:c.realname,mobile:c.mobile,paytype:c.paytype,num:c.num},function(e){var t=e.result;if(c.logid=t.logid,1==e.status)if(t.wechat){if(r.ish5app())return void appPay("wechat",t.payinfo.ordersn,t.payinfo.money,!0);var o=t.wechat;if(o.weixin){function i(){WeixinJSBridge.invoke("getBrandWCPayRequest",{appId:o.appid?o.appid:o.appId,timeStamp:o.timeStamp,nonceStr:o.nonceStr,package:o.package,signType:o.signType,paySign:o.paySign},function(e){"get_brand_wcpay_request:ok"==e.err_msg?c.lottery(c.goods):"get_brand_wcpay_request:cancel"==e.err_msg?FoxUI.toast.show("取消支付"):c.jie&&r.json("creditshop/detail/pay",{id:c.goods.id,optionid:c.optionid,addressid:c.addressid,storeid:c.storeid,realname:c.realname,mobile:c.mobile,jie:1,num:c.num},function(e){c.logid=e.result.logid,c.payWechatJie(e.result.wechat)},!1,!0)})}"undefined"==typeof WeixinJSBridge?document.addEventListener?document.addEventListener("WeixinJSBridgeReady",i,!1):document.attachEvent&&(document.attachEvent("WeixinJSBridgeReady",i),document.attachEvent("onWeixinJSBridgeReady",i)):i()}!o.weixin_jie&&1!=o.jie||c.payWechatJie(o)}else if(t.alipay){if(r.ish5app())return void FoxUI.toast.show("暂不支持!");var s=t.alipay;s.success||FoxUI.toast.show("支付参数错误!"),location.href=r.getUrl("order/pay_alipay",{id:goods.id,logid:t.logid,type:20,url:s.url})}else c.lottery(c.goods);else FoxUI.toast.show(e.result.message)},!0,!0)},payWechatJie:function(e){var t=r.getUrl("index/qr",{url:e.code_url});$("#qrmoney").text(c.goods.money),$(".fui-header").hide(),$("#btnWeixinJieCancel").unbind("click").click(function(){clearInterval(c.settime),$(".order-weixinpay-hidden").hide(),$(".fui-header").show()}),$(".order-weixinpay-hidden").show(),c.settime=setInterval(function(){c.lottery(c.goods)},2e3),$(".verify-pop").find(".close").unbind("click").click(function(){$(".order-weixinpay-hidden").hide(),$(".fui-header").show(),clearInterval(c.settime)}),$(".verify-pop").find(".qrimg").attr("src",t).show()},lottery:function(e){0==e.type?r.json("creditshop/detail/lottery",{logid:c.logid,id:c.goods.id,num:c.num},function(e){var t=e.result;if(-1==t.status)return FoxUI.toast.show(e.result.message),void(window.location.href=r.getUrl("creditshop/log/detail",{id:c.logid,shine:1}));if(clearInterval(c.settime),$(".fui-header").show(),$(".order-weixinpay-hidden").hide(),2==t.status)setTimeout(function(){FoxUI.message.show({title:"恭喜您,兑换成功!",icon:"icon icon-success",content:"",buttons:[{text:"确定",extraClass:"btn-danger",onclick:function(){location.href=r.getUrl("creditshop/log/detail",{id:c.logid,shine:1})}}]})},1);else if(3==t.status){var o="优惠券";1==t.goodstype?o="优惠券":2==t.goodstype?o="余额":3==t.goodstype&&(o="红包"),setTimeout(function(){FoxUI.message.show({title:"恭喜您,"+o+"兑换成功!",icon:"icon icon-success",content:"",buttons:[{text:"确定",extraClass:"btn-danger",onclick:function(){c.wait=0,location.href=r.getUrl("creditshop/log/detail",{id:c.logid,shine:1})}}]})},1)}},!1,!0):(FoxUI.message.show({title:"",icon:"icon icon-clock",content:"努力抽奖中,请稍后....",buttons:[]}),setTimeout(function(){r.json("creditshop/detail/lottery",{id:c.goods.id,logid:c.logid,num:c.num},function(e){var t=e.result;if(-1!=e.status)if(clearInterval(c.settime),2!=t.status){if(3==t.status){var o="优惠券";return 1==t.goodstype?o="优惠券":2==t.goodstype?o="余额":3==t.goodstype&&(o="红包"),void FoxUI.message.show({title:"恭喜您,"+o+"已经发到您账户啦!",icon:"icon icon-success",content:"",buttons:[{text:"确定",extraClass:"btn-danger",onclick:function(){location.href=r.getUrl("creditshop/log/detail",{id:c.logid,shine:1})}}]})}FoxUI.message.show({title:"很遗憾,您没有中奖!",icon:"icon icon-wrong",content:"",buttons:[{text:"确定",extraClass:"btn-danger",onclick:function(){location.reload()}}]})}else FoxUI.message.show({title:"恭喜您,您中奖啦!",icon:"icon icon-success",content:"",buttons:[{text:"确定",extraClass:"btn-danger",onclick:function(){location.href=r.getUrl("creditshop/log/detail",{id:c.logid,shine:1})}}]});else FoxUI.toast.show(e.result.message)},!1,!0)},1e3))}};return c}); |