2 lines
9.5 KiB
JavaScript
2 lines
9.5 KiB
JavaScript
import{_ as ye,r as o,u as me,J as ge,o as ke,m,a as he,b as D,h as be,c as _,d as O,w as g,e as s,z,k as w,g as C,t as S,p as Z,j as we,f as x,i as ee,F as Ce,l as xe,n as R,E as r,q as $e,s as Ve}from"./index-eNDFCmNV.js";import{h as K,i as Se,j as Pe,k as Ee}from"./store-DplUyk1C.js";import{_ as Fe}from"./authCode-1KB-83Pg.js";/* empty css */const V=L=>($e("data-v-51aa72fd"),L=L(),Ve(),L),je=V(()=>s("h4",null,"选择支付方式",-1)),ze={class:"dra-body"},Be={class:"header"},Ae={key:0,style:{display:"inline-block","margin-right":"20px"}},De={style:{display:"inline-block","margin-right":"20px"}},Le=V(()=>s("div",{style:{color:"#999",padding:"2rem 0 0.3rem 0"}},"原价:",-1)),Re={style:{color:"#f5222d","padding-bottom":"2rem"}},Te={style:{"font-size":"1.6rem"}},Ne={style:{display:"inline-block"}},Ue=V(()=>s("div",{style:{color:"#999",padding:"2rem 0 0.3rem 0"}},"活动折扣: ",-1)),Ie={style:{color:"#f5222d","padding-bottom":"2rem"}},Oe={style:{"font-size":"1.6rem"}},Ke={style:{display:"inline-block"}},Me=V(()=>s("div",{style:{color:"#999",padding:"2rem 0 0.3rem 0"}},"应收金额(元):",-1)),qe={style:{color:"#f5222d","padding-bottom":"2rem"}},Je={style:{"font-size":"1.6rem"}},We={key:0,"element-loading-text":"支付中",class:"card1"},Ge=V(()=>s("div",{class:"tips"},null,-1)),He={key:1,class:"card2"},Qe={class:"drawer-body"},Xe={class:"counter"},Ye={class:"received"},Ze={key:0},ea={key:1,style:{"font-size":"1rem",color:"#999"}},aa={key:0,class:"balance"},sa={class:"money"},ta=V(()=>s("div",{class:"tips"},"按回车(Enter)确认支付",-1)),la={key:1,class:"balance"},oa=V(()=>s("div",null,"不够找零, 请支付更多金额",-1)),na=V(()=>s("div",{class:"tips"},"按下小键盘输入金额",-1)),ia=[oa,na],ua={class:"keypad"},ca={class:"left"},ra={class:"right"},da={key:2,class:"card3"},va={class:"codes"},_a={style:{width:"100%",display:"flex","justify-content":"center"}},pa={__name:"pay",emits:["paySuccess"],setup(L,{expose:ae,emit:se}){const v=o(!1),t=o(1),i=o(""),k=o("");me(),o(0);const P=a=>{Ee({id:a}).then(e=>{m.emit("letPrintReceipt",e.data)})},te=()=>{y()},le=()=>{R(()=>{setTimeout(()=>{var a;h.value=!1,i.value="",M.value=!0,(a=k.value)==null||a.focus(),p(t.value)},300)})},p=a=>{t.value=a,t.value==2?window.addEventListener("keydown",U):(window.removeEventListener("keydown",U),R(()=>{var e;i.value="",(e=k.value)==null||e.focus()}))},u=o({}),B=o([]),f=o(""),E=o(null),T=o(!1);let F=0;const oe=a=>{u.value=a.data,B.value=a.cart_id,f.value=a.uid,E.value=a.reservation||null,F=a.is_storage||0,console.log("选择了用户==",f.value||"游客"),T.value=a.isRePay||!1},ne=a=>{u.value.pay_price=a.price,ce.value=a.order_id,F=a.is_storage||0},ie=se,M=o(!1),ue=o(["1","2","3","4","5","6","7","8","9","0","00","."]),q=/^(10|11|12|13|14|15)\d{16}$/,J=/^(25|26|27|28|29|30)\d{14,22}$/,ce=o(""),re=()=>{if(h.value=!0,k.value.blur(),T.value)W();else{let a;if(q.test(i.value))a="9";else if(J.test(i.value))a="13";else return h.value=!1,i.value="",k.value.focus(),r.error("请输入正确的支付码");K({key:u.value.key,cart_id:B.value,pay_type:a,is_storage:F,auth_code:i.value,reservation:E.value,uid:f.value}).then(e=>{e.data.out_trade_no&&e.msg=="支付成功"?(v.value=!1,r({message:"支付成功",type:"success"}),y(e.data),P(e.data.id)):e.msg=="用户支付中"&&e.code==1&&(r.warning(e.msg),m.on("pay_success",l=>{r({message:"支付成功",type:"success"}),P(e.data.id),setTimeout(()=>{m.off("pay_success")},200),v.value=!1,y(l)}))}).catch(e=>{h.value=!1,R(()=>{var l;(l=k.value)==null||l.focus()})})}},W=()=>{let a=17;if(t.value==1)if(q.test(i.value))a="9";else if(J.test(i.value))a="13";else return h.value=!1,i.value="",k.value.focus(),r.error("请输入正确的支付码");Se({order_id:u.value.order_id,pay_type:a,is_storage:F,auth_code:i.value,reservation:E.value,uid:f.value}).then(e=>{var l;(l=e.msg)!=null&&l.includes("成功")?(v.value=!1,r({message:"支付成功",type:"success"}),P(e.data.id),y()):e.msg=="用户支付中"&&e.code==1&&(r.warning(e.msg),m.on("pay_success",$=>{r({message:"支付成功",type:"success"}),P(e.data.id),setTimeout(()=>{m.off("pay_success")},200),v.value=!1,y($)}))}).catch(e=>{i.value="",h.value=!1,R(()=>{var l;(l=k.value)==null||l.focus()})})};o(0);const y=a=>{var e;try{window.removeEventListener("keydown",U),M.value=!1,h.value=!1,i.value="",c.value="",b.value=[],(e=k.value)==null||e.blur(),ie("paySuccess",a),v.value=!1}catch{}},h=o(!1);ae({drawer:v,setForm:oe,setRePay:ne,beforeClose:y});const b=o([]),c=o(""),A=ge(()=>+c.value>0?(+c.value-u.value.pay_price).toFixed(2):-1),G=o(!1),N=a=>{a===-1?b.value=[]:b.value.pop(),c.value=b.value.length?b.value.join(""):0},d=a=>{G.value===!1&&(c.value="",G.value=!0);let e=String(c.value).indexOf(".")+1,l=String(c.value).length-e;console.log(e,l),(e===0||l<2)&&(b.value.join("")<=9999999&&b.value.push(a),c.value=b.value.join("")>99999999?99999999:b.value.join(""))},H=()=>{if(A.value===""||A.value===null||A.value===void 0||+c.value<+u.value.pay_price)return r.error("收款金额应该大于等于应收金额");T.value?W():(c.value="",K({cart_id:B.value,pay_type:"17",is_storage:F,reservation:E.value,uid:f.value}).then(a=>{v.value=!1,r({message:a.msg,type:"success"}),P(a.data.id),t.value=1,y()}).catch(a=>{h.value=!1}))},U=a=>{let l=(a||window.event).keyCode;if(l==37)return p(2);if(l==120)return m.emit("F9");if(l==27)return y();switch(a.stopPropagation(),a.preventDefault(),l){case 96:case 48:d(0);break;case 97:case 49:d(1);break;case 98:case 50:d(2);break;case 99:case 51:d(3);break;case 100:case 52:d(4);break;case 101:case 53:d(5);break;case 102:case 54:d(6);break;case 103:case 55:d(7);break;case 104:case 56:d(8);break;case 105:case 57:d(9);break;case 110:d(".");break;case 190:d(".");break;case 8:N();break;case 13:H();break}},de=()=>{if(!f.value)return r.error("请先选择用户");let a=1;t.value==4&&(a=2),t.value==5&&(a=3),Pe({cart_id:B.value,reservation:E.value,uid:f.value,type:a}).then(e=>{r({message:"发送成功",type:"success"})})},I=o(""),Q=()=>{if(!f.value)return r.error("请先选择用户");let a=18;t.value==4&&(a=19),t.value==5&&(a=3),K({pay_type:a,is_storage:F,sms_code:I.value,cart_id:B.value,reservation:E.value,uid:f.value}).then(e=>{v.value=!1,r({message:e.msg,type:"success"}),P(e.data.id),p(1),y()})},j=o(!1),X=()=>{if(!(!v.value||j.value&&i.value.length>0)&&t.value!=1)return p(t.value-1)},Y=()=>{if(!(!v.value||j.value&&i.value.length>0)&&t.value!=5)return p(t.value+1)};return ke(()=>{m.on("left",X),m.on("right",Y)}),he(()=>{m.off("left",X),m.off("right",Y)}),(a,e)=>{const l=D("el-input"),$=D("el-button"),ve=D("Delete"),_e=D("el-icon"),pe=D("el-drawer"),fe=be("loading");return _(),O(pe,{size:"60rem",modelValue:v.value,"onUpdate:modelValue":e[12]||(e[12]=n=>v.value=n),direction:"rtl",onOpen:le,"before-close":y},{header:g(()=>[je]),default:g(()=>[s("div",ze,[s("div",Be,[s("div",{class:z(["left",{active:t.value==1}]),onClick:e[0]||(e[0]=n=>p(1))}," 微信/支付宝 ",2),s("div",{class:z(["center",{active:t.value==2}]),onClick:e[1]||(e[1]=n=>p(2))}," 现金收款 ",2),s("div",{class:z(["center",{active:t.value==3}]),style:{"border-left":"none"},onClick:e[2]||(e[2]=n=>p(3))}," 采购款 ",2),s("div",{class:z(["center",{active:t.value==4}]),style:{"border-left":"none"},onClick:e[3]||(e[3]=n=>p(4))}," 礼品券兑换 ",2),s("div",{class:z(["right",{active:t.value==5}]),onClick:e[4]||(e[4]=n=>p(5))}," 余额 ",2)]),s("div",null,[u.value.activities==1&&t.value!=4?(_(),w("div",Ae,[s("div",De,[Le,s("div",Re,[C(" ¥"),s("span",Te,S(u.value.total_price),1)])]),s("div",Ne,[Ue,s("div",Ie,[C(S(u.value.activity)+"¥",1),s("span",Oe,S(u.value.activity_price),1)])])])):Z("",!0),s("div",Ke,[Me,s("div",qe,[C(" ¥"),s("span",Je,S(t.value==4?u.value.total_price:u.value.pay_price),1)])])]),t.value==1?we((_(),w("div",We,[x(l,{ref_key:"codeRef",ref:k,modelValue:i.value,"onUpdate:modelValue":e[5]||(e[5]=n=>i.value=n),autofocus:"",class:"code-input",placeholder:"请点击输入框聚焦扫码或输入编码号",onKeyup:ee(re,["enter"]),onFocus:e[6]||(e[6]=n=>j.value=!0),onBlur:e[7]||(e[7]=n=>j.value=!1)},null,8,["modelValue"]),Ge])),[[fe,h.value]]):t.value==2?(_(),w("div",He,[s("div",Qe,[s("div",Xe,[s("div",Ye,[c.value?(_(),w("span",Ze,S(c.value),1)):(_(),w("span",ea,"按下键盘输入客户支付金额"))]),A.value>=0?(_(),w("div",aa,[s("div",null,[C(" 需找零(元):"),s("span",sa,"¥"+S(A.value),1)]),ta])):(_(),w("div",la,ia)),s("div",ua,[s("div",ca,[(_(!0),w(Ce,null,xe(ue.value,n=>(_(),O($,{key:n,onClick:fa=>d(n)},{default:g(()=>[C(S(n),1)]),_:2},1032,["onClick"]))),128))]),s("div",ra,[x($,{onClick:N},{default:g(()=>[x(_e,null,{default:g(()=>[x(ve)]),_:1})]),_:1}),x($,{onClick:e[8]||(e[8]=n=>N(-1))},{default:g(()=>[C("C")]),_:1}),x($,{class:z(["enter",{"enter-disable":+c.value<+u.value.pay_price}]),disabled:+c.value<+u.value.pay_price,onClick:H},{default:g(()=>[C(" 确认 ")]),_:1},8,["class","disabled"])])])])])])):t.value==3||t.value==4||t.value==5?(_(),w("div",da,[s("div",va,[x(l,{modelValue:I.value,"onUpdate:modelValue":e[9]||(e[9]=n=>I.value=n),autofocus:"",class:"code-input",placeholder:"请输入验证码",onKeyup:ee(Q,["enter"]),onFocus:e[10]||(e[10]=n=>j.value=!0),onBlur:e[11]||(e[11]=n=>j.value=!1)},null,8,["modelValue"]),(_(),O(Fe,{style:{"margin-left":"1rem"},onSendCode:de,start:f.value>0,key:u.value.order_id,class:"get-code-btn"},null,8,["start"]))]),x($,{type:"primary",onClick:Q,class:"code-pay"},{default:g(()=>[C("确认支付")]),_:1})])):Z("",!0)])]),footer:g(()=>[s("div",_a,[x($,{class:"cancel-btn",onClick:te},{default:g(()=>[C("取消收款")]),_:1})])]),_:1},8,["modelValue"])}}},ha=ye(pa,[["__scopeId","data-v-51aa72fd"]]);export{ha as p};
|