2 lines
7.4 KiB
JavaScript
2 lines
7.4 KiB
JavaScript
var l=(l,a,e)=>new Promise((t,u)=>{var s=l=>{try{c(e.next(l))}catch(a){u(a)}},n=l=>{try{c(e.throw(l))}catch(a){u(a)}},c=l=>l.done?t(l.value):Promise.resolve(l.value).then(s,n);c((e=e.apply(l,a)).next())});import{g as a,x as e,c as t,r as u,s,t as n,a as c,N as o,k as i,u as d,f as r,p as v,M as p,l as f,e as _,L as m,I as k,m as g,o as b,J as h,H as y,G as C,j as x,n as F}from"./index-BO30mZd-.js";import{u as V}from"./price.Cati0CRI.js";import{u as q}from"./bluetooth.Cbh6t6ls.js";import{u as w}from"./order.DHmZQ2we.js";import{u as j}from"./region.2R5r6WCo.js";import{_ as I}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./index.BxcZGXPo.js";const P=I(a({__name:"weigh",setup(a){const I=V(),P=q(),$=w(),N=j(),S=e(""),U=e(0),M=e(0),W=e(""),z=e("manual"),B=e(""),G=e(""),H=t(()=>I.getPriceByCategory(S.value)),J=t(()=>{if(!H.value)return 0;const l="kg"===H.value.unit?"bluetooth"===z.value?U.value:parseFloat(B.value)||0:M.value,a=parseFloat(G.value)||H.value.price||0;return Number((l*a).toFixed(2))});u(a=>l(this,null,function*(){(null==a?void 0:a.category)&&(S.value=a.category),yield I.loadPrices(),P.init()}));const L=()=>{b({url:"/pages/bluetooth/bluetooth"})},O=()=>{P.resetWeight(),U.value=0},R=()=>{M.value>0&&(M.value--,W.value=M.value.toString())},T=()=>{M.value++,W.value=M.value.toString()},A=()=>{const l=parseInt(W.value)||0;M.value=Math.max(0,l)},D=l=>{M.value+=l,W.value=M.value.toString()},E=l=>{z.value=l,"manual"===l&&(B.value=U.value>0?U.value.toString():"")},K=()=>{const l=parseFloat(B.value);!isNaN(l)&&l>=0&&(U.value=l)},Q=l=>{const a=parseFloat(B.value)||0;B.value=(a+l).toFixed(2),K()},X=()=>l(this,null,function*(){if(!H.value)return void h({title:"请选择回收种类",icon:"none"});const a="kg"===H.value.unit?"bluetooth"===z.value?U.value:parseFloat(B.value)||0:M.value;if(a<=0)return void h({title:"kg"===H.value.unit?"请输入重量":"请输入数量",icon:"none"});const e={category:H.value.category,name:H.value.name,weight:"kg"===H.value.unit?a:void 0,count:"piece"===H.value.unit?M.value:void 0,unit:H.value.unit,price:parseFloat(G.value)||H.value.price,amount:J.value};y({title:"确认回收",content:`确定回收${H.value.name} ${a}${"kg"===H.value.unit?"kg":"个"},金额¥${J.value.toFixed(2)}?`,success:a=>l(this,null,function*(){if(a.confirm){C({title:"保存中..."});const l=N.getRegion(),a=yield $.createOrder([e],l);x(),a?(h({title:"回收成功",icon:"success"}),setTimeout(()=>{F()},1500)):h({title:"保存失败",icon:"none"})}})})});return s(()=>{const l=()=>{U.value=P.currentWeight};P.$subscribe(()=>{l()}),l()}),n(()=>{I.loadPrices()}),(l,a)=>{const e=f,t=i,u=k,s=g;return d(),c(t,{class:"container"},{default:o(()=>{var l;return[r(t,{class:"status-bar"},{default:o(()=>[r(t,{class:v(["bluetooth-status",{connected:p(P).isConnected}])},{default:o(()=>[r(e,{class:"status-icon"},{default:o(()=>[_(m(p(P).isConnected?"🔵":"⚪"),1)]),_:1}),r(e,null,{default:o(()=>[_(m(p(P).isConnected?"已连接":"未连接"),1)]),_:1})]),_:1},8,["class"])]),_:1}),"kg"===(null==(l=H.value)?void 0:l.unit)?(d(),c(t,{key:0,class:"display-card"},{default:o(()=>[r(t,{class:"price-input-wrap"},{default:o(()=>[r(e,{class:"price-label"},{default:o(()=>[_("单价")]),_:1}),r(t,{class:"price-input"},{default:o(()=>{var l;return[r(e,{class:"price-symbol"},{default:o(()=>[_("¥")]),_:1}),r(u,{type:"digit",modelValue:G.value,"onUpdate:modelValue":a[0]||(a[0]=l=>G.value=l),placeholder:"默认 ¥"+((null==(l=H.value)?void 0:l.price)||0)+"/kg",class:"price-input-field"},null,8,["modelValue","placeholder"]),r(e,{class:"price-unit"},{default:o(()=>[_("/kg")]),_:1})]}),_:1})]),_:1}),r(t,{class:"mode-switch"},{default:o(()=>[r(t,{class:v(["mode-btn",{active:"bluetooth"===z.value}]),onClick:a[1]||(a[1]=l=>E("bluetooth"))},{default:o(()=>[r(e,null,{default:o(()=>[_("蓝牙称重")]),_:1})]),_:1},8,["class"]),r(t,{class:v(["mode-btn",{active:"manual"===z.value}]),onClick:a[2]||(a[2]=l=>E("manual"))},{default:o(()=>[r(e,null,{default:o(()=>[_("手动输入")]),_:1})]),_:1},8,["class"])]),_:1}),"bluetooth"===z.value?(d(),c(t,{key:0,class:"display-value-wrap"},{default:o(()=>[r(e,{class:"display-value"},{default:o(()=>[_(m(U.value.toFixed(2)),1)]),_:1}),r(e,{class:"display-unit"},{default:o(()=>[_("kg")]),_:1})]),_:1})):(d(),c(t,{key:1,class:"manual-input"},{default:o(()=>[r(u,{type:"digit",modelValue:B.value,"onUpdate:modelValue":a[3]||(a[3]=l=>B.value=l),placeholder:"请输入重量",onInput:K},null,8,["modelValue"]),r(e,{class:"input-unit"},{default:o(()=>[_("kg")]),_:1})]),_:1})),"bluetooth"===z.value?(d(),c(t,{key:2,class:"control-row"},{default:o(()=>[r(t,{class:"control-btn",onClick:L},{default:o(()=>[r(s,{class:"control-icon-img",src:"./static/icons/bluetooth.png",mode:"aspectFit"}),r(e,null,{default:o(()=>[_("蓝牙连接")]),_:1})]),_:1}),r(t,{class:"control-btn",onClick:O},{default:o(()=>[r(s,{class:"control-icon-img",src:"./static/icons/zero.png",mode:"aspectFit"}),r(e,null,{default:o(()=>[_("归零")]),_:1})]),_:1})]),_:1})):(d(),c(t,{key:3,class:"quick-input"},{default:o(()=>[r(t,{class:"quick-btn",onClick:a[4]||(a[4]=l=>Q(.5))},{default:o(()=>[_("+0.5kg")]),_:1}),r(t,{class:"quick-btn",onClick:a[5]||(a[5]=l=>Q(1))},{default:o(()=>[_("+1kg")]),_:1}),r(t,{class:"quick-btn",onClick:a[6]||(a[6]=l=>Q(2))},{default:o(()=>[_("+2kg")]),_:1}),r(t,{class:"quick-btn",onClick:a[7]||(a[7]=l=>Q(5))},{default:o(()=>[_("+5kg")]),_:1})]),_:1}))]),_:1})):(d(),c(t,{key:1,class:"display-card"},{default:o(()=>[r(t,{class:"price-input-wrap"},{default:o(()=>[r(e,{class:"price-label"},{default:o(()=>[_("单价")]),_:1}),r(t,{class:"price-input"},{default:o(()=>{var l;return[r(e,{class:"price-symbol"},{default:o(()=>[_("¥")]),_:1}),r(u,{type:"digit",modelValue:G.value,"onUpdate:modelValue":a[8]||(a[8]=l=>G.value=l),placeholder:"默认 ¥"+((null==(l=H.value)?void 0:l.price)||0)+"/个",class:"price-input-field"},null,8,["modelValue","placeholder"]),r(e,{class:"price-unit"},{default:o(()=>[_("/个")]),_:1})]}),_:1})]),_:1}),r(t,{class:"display-icon"},{default:o(()=>[_("🥫")]),_:1}),r(t,{class:"display-title"},{default:o(()=>[_("个数统计")]),_:1}),r(t,{class:"manual-input"},{default:o(()=>[r(u,{type:"number",modelValue:W.value,"onUpdate:modelValue":a[9]||(a[9]=l=>W.value=l),placeholder:"请输入数量",onInput:A},null,8,["modelValue"]),r(e,{class:"input-unit"},{default:o(()=>[_("个")]),_:1})]),_:1}),r(t,{class:"count-controls"},{default:o(()=>[r(t,{class:"count-btn minus",onClick:R},{default:o(()=>[r(e,null,{default:o(()=>[_("-")]),_:1})]),_:1}),r(t,{class:"count-btn plus",onClick:T},{default:o(()=>[r(e,null,{default:o(()=>[_("+")]),_:1})]),_:1})]),_:1}),r(t,{class:"quick-input"},{default:o(()=>[r(t,{class:"quick-btn",onClick:a[10]||(a[10]=l=>D(1))},{default:o(()=>[_("+1")]),_:1}),r(t,{class:"quick-btn",onClick:a[11]||(a[11]=l=>D(5))},{default:o(()=>[_("+5")]),_:1}),r(t,{class:"quick-btn",onClick:a[12]||(a[12]=l=>D(10))},{default:o(()=>[_("+10")]),_:1}),r(t,{class:"quick-btn",onClick:a[13]||(a[13]=l=>D(50))},{default:o(()=>[_("+50")]),_:1})]),_:1})]),_:1})),r(t,{class:"amount-card"},{default:o(()=>[r(t,{class:"amount-title"},{default:o(()=>[_("💰 预估金额")]),_:1}),r(t,{class:"amount-value-wrap"},{default:o(()=>[r(e,{class:"amount-currency"},{default:o(()=>[_("¥")]),_:1}),r(e,{class:"amount-num"},{default:o(()=>[_(m(J.value.toFixed(2)),1)]),_:1})]),_:1})]),_:1}),r(t,{class:"confirm-btn",onClick:X},{default:o(()=>[r(e,null,{default:o(()=>[_("确认回收")]),_:1})]),_:1})]}),_:1})}}}),[["__scopeId","data-v-ae576800"]]);export{P as default};
|