2 lines
7.9 KiB
JavaScript
2 lines
7.9 KiB
JavaScript
import{A as v,_ as ie,r as n,D as de,o as ve,m as E,a as pe,b as j,j as _e,c as k,d as Q,w as b,e as l,l as U,g as L,t as F,p as fe,h as A,f as x,k as me,F as ge,i as ye,n as V,E as m,s as he,u as ke}from"./index-CxOzLThu.js";function Ge(t){return v.post("user/cart/create",t)}function He(t){return v.get("user/cart/lst",{params:t})}function Je(t,i){return v.post(`user/cart/change/${t}`,i)}function Qe(t){return v.post("v2/order/check",t)}function Xe(t){return v.post("user/cart/delete",t)}function X(t){return v.post("v2/order/create",t)}function be(t,i){return v.post(`order/pay/${t}`,i)}function we(t){return v.get("micropay_query",{params:t})}function Ye(t,i){return v.get(`admin/${t}/order_list`,{params:i})}function Ze(t,i){return v.get(`verifier/${t}/order/${i}`)}function ea(t){return v.get("order_lading",{params:t})}const T=t=>{if(!t)return;let i=new window.SpeechSynthesisUtterance(t);window.speechSynthesis.speak(i)},q=t=>(he("data-v-448c5090"),t=t(),ke(),t),Ce=q(()=>l("h4",null,"选择支付方式",-1)),Ae={class:"dra-body"},xe={class:"header"},Se=q(()=>l("div",{style:{color:"#999",padding:"2rem 0 0.3rem 0"}},"应收金额(元):",-1)),$e={style:{color:"#f5222d","padding-bottom":"2rem"}},Le={style:{"font-size":"1.6rem"}},Ve={key:0,"element-loading-text":"支付中",class:"card1"},De=q(()=>l("div",{class:"tips"},null,-1)),Be={key:1,class:"card2"},Ee={class:"drawer-body"},je={class:"counter"},Pe={class:"received"},Fe={key:0},Te={key:1,style:{"font-size":"1rem",color:"#999"}},ze={key:0,class:"balance"},Ie={class:"money"},Ne={key:1,class:"balance"},Oe={class:"keypad"},Ue={class:"left"},qe={class:"right"},Re={style:{width:"100%",display:"flex","justify-content":"center"}},Ke={__name:"pay",emits:["paySuccess"],setup(t,{expose:i,emit:Y}){const g=n(!1),y=n(1),o=n(""),d=n(""),Z=()=>{w()},ee=()=>{V(()=>{setTimeout(()=>{var e;u.value=!1,o.value="",I.value=!0,(e=d.value)==null||e.focus(),S(y.value)},300)})},S=e=>{y.value=e,y.value==2?window.addEventListener("keydown",O):(window.removeEventListener("keydown",O),V(()=>{var a;o.value="",(a=d.value)==null||a.focus()}))},h=n({}),z=n([]),ae=e=>{h.value=e.data,z.value=e.cart_id},se=e=>{h.value.order_price=e.price,p.value=e.order_id},te=Y,I=n(!1),le=n(["1","2","3","4","5","6","7","8","9","0","00","."]);let $=0;const R=/^(10|11|12|13|14|15)\d{16}$/,K=/^(25|26|27|28|29|30)\d{14,22}$/,p=n(""),oe=()=>{if(u.value=!0,d.value.blur(),p.value)M(p.value);else{let e;if(R.test(o.value))e="micropay";else if(K.test(o.value))e="alipayBar";else return u.value=!1,o.value="",d.value.focus(),m.error("请输入正确的支付码");X({address_id:"",key:h.value.key,cart_id:z.value,pay_type:e,auth_code:o.value,source:300}).then(a=>{if(a.status==200&&(a.message=="支付成功"||a.message=="success"))g.value=!1,m({message:a.message=="success"?"支付成功":a.message,type:"success"}),T(a.data.message||a.data.result.message),w();else if(a.data.group_order_sn)p.value=a.data.group_order_id,D.value=0,$=0,P(a.data.group_order_sn);else return p.value=a.data.result.order_id,u.value=!1,m({message:a.message,type:"error"})}).catch(a=>{u.value=!1,V(()=>{var s;(s=d.value)==null||s.focus()})})}},M=e=>{let a;if(y.value==1){let s;if(R.test(o.value))s="micropay";else if(K.test(o.value))s="alipayBar";else return u.value=!1,o.value="",d.value.focus(),m.error("请输入正确的支付码");a={type:s,auth_code:o.value}}else a={type:"cash_payment"};be(e,a).then(s=>{s.status==200&&(s.message=="支付成功"||s.message=="success")?(g.value=!1,m({message:s.message=="success"?"支付成功":s.message,type:"success"}),T(s.data.message||s.data.result.message),w()):(p.value=s.data.group_order_id,D.value=0,$=0,P(s.data.group_order_sn))}).catch(s=>{o.value="",u.value=!1,V(()=>{var C;(C=d.value)==null||C.focus()})})},D=n(0),P=e=>{e&&(D.value++,$+=5e3,we({order_sn:e}).then(a=>{a.data.paid==1||a.message=="支付成功"?(m({message:a.message,type:"success"}),T(a.data.message),w()):(m({message:a.message,type:"error"}),o.value="",u.value=!1,V(()=>{var s;(s=d.value)==null||s.focus()}))}).catch(a=>{I.value&&D.value<3?setTimeout(()=>{P(e)},15e3-$>0?15e3-$:0):(o.value="",u.value=!1,V(()=>{var s;(s=d.value)==null||s.focus()}))}))},w=()=>{var e;window.removeEventListener("keydown",O),I.value=!1,u.value=!1,o.value="",r.value="",_.value=[],(e=d.value)==null||e.blur(),te("paySuccess"),g.value=!1},u=n(!1);i({drawer:g,setForm:ae,setRePay:se,beforeClose:w});const _=n([]),r=n(""),B=de(()=>+r.value>0?(r.value-h.value.order_price).toFixed(2):-1),W=n(!1),N=e=>{e===-1?_.value=[]:_.value.pop(),r.value=_.value.length?_.value.join(""):0},c=e=>{W.value===!1&&(r.value="",W.value=!0);let a=String(r.value).indexOf(".")+1,s=String(r.value).length-a;console.log(a,s),(a===0||s<2)&&(_.value.join("")<=9999999&&_.value.push(e),r.value=_.value.join("")>99999999?99999999:_.value.join(""))},G=()=>{if(B.value===""||B.value===null||B.value===void 0||+r.value<+h.value.order_price)return m.error("收款金额应该大于等于应收金额");p.value?M(p.value):X({address_id:"",key:h.value.key,cart_id:z.value,pay_type:"cash_payment",source:300}).then(e=>{if(e.status==200&&e.message=="支付成功")g.value=!1,m({message:e.message,type:"success"}),T(e.data.message),w();else if(e.data.group_order_sn)p.value=e.data.group_order_id,D.value=0,$=0,P(e.data.group_order_sn);else return p.value=e.data.result.order_id,r.value="",_.value=[],u.value=!1,m({message:e.message,type:"error"})}).catch(e=>{u.value=!1})},O=e=>{let s=(e||window.event).keyCode;if(s==37)return S(2);if(s==120)return E.emit("F9");if(s==27)return w();switch(e.stopPropagation(),e.preventDefault(),s){case 96:case 48:c(0);break;case 97:case 49:c(1);break;case 98:case 50:c(2);break;case 99:case 51:c(3);break;case 100:case 52:c(4);break;case 101:case 53:c(5);break;case 102:case 54:c(6);break;case 103:case 55:c(7);break;case 104:case 56:c(8);break;case 105:case 57:c(9);break;case 110:c(".");break;case 190:c(".");break;case 8:N();break;case 13:G();break}},H=()=>{if(g.value&&y.value==2)return S(1)},J=()=>{if(g.value&&y.value==1)return S(2)};return ve(()=>{E.on("left",H),E.on("right",J)}),pe(()=>{E.off("left",H),E.off("right",J)}),(e,a)=>{const s=j("el-input"),C=j("el-button"),re=j("Delete"),ne=j("el-icon"),ue=j("el-drawer"),ce=_e("loading");return k(),Q(ue,{size:800,modelValue:g.value,"onUpdate:modelValue":a[4]||(a[4]=f=>g.value=f),direction:"rtl",onOpen:ee,"before-close":w},{header:b(()=>[Ce]),default:b(()=>[l("div",Ae,[l("div",xe,[l("div",{class:U(["left",{active:y.value==1}]),onClick:a[0]||(a[0]=f=>S(1))}," 微信/支付宝 ",2),l("div",{class:U(["right",{active:y.value==2}]),onClick:a[1]||(a[1]=f=>S(2))}," 现金收款 ",2)]),Se,l("div",$e,[L(" ¥"),l("span",Le,F(h.value.order_price),1)]),y.value==1?fe((k(),A("div",Ve,[x(s,{ref_key:"codeRef",ref:d,modelValue:o.value,"onUpdate:modelValue":a[2]||(a[2]=f=>o.value=f),autofocus:"",class:"code-input",placeholder:"请点击输入框聚焦扫码或输入编码号",onKeyup:me(oe,["enter"])},null,8,["modelValue"]),De])),[[ce,u.value]]):(k(),A("div",Be,[l("div",Ee,[l("div",je,[l("div",Pe,[r.value?(k(),A("span",Fe,F(r.value),1)):(k(),A("span",Te,"按下键盘输入客户支付金额"))]),B.value>=0?(k(),A("div",ze,[L(" 需找零(元):"),l("span",Ie,"¥"+F(B.value),1)])):(k(),A("div",Ne,"不够找零, 请支付更多金额")),l("div",Oe,[l("div",Ue,[(k(!0),A(ge,null,ye(le.value,f=>(k(),Q(C,{key:f,onClick:Me=>c(f)},{default:b(()=>[L(F(f),1)]),_:2},1032,["onClick"]))),128))]),l("div",qe,[x(C,{onClick:N},{default:b(()=>[x(ne,null,{default:b(()=>[x(re)]),_:1})]),_:1}),x(C,{onClick:a[3]||(a[3]=f=>N(-1))},{default:b(()=>[L("C")]),_:1}),x(C,{class:U(["enter",{"enter-disable":+r.value<+h.value.order_price}]),disabled:+r.value<+h.value.order_price,onClick:G},{default:b(()=>[L("确认")]),_:1},8,["class","disabled"])])])])])]))])]),footer:b(()=>[l("div",Re,[x(C,{class:"cancel-btn",onClick:Z},{default:b(()=>[L("取消收款")]),_:1})])]),_:1},8,["modelValue"])}}},aa=ie(Ke,[["__scopeId","data-v-448c5090"]]);export{He as a,Je as b,Xe as c,Ge as d,Ye as e,ea as f,we as g,Qe as o,aa as p,Ze as v};
|