upload project source code
This commit is contained in:
1
后端源码/yifan.action-ai.cn/index/js/index.cY-W5q_U.js
Normal file
1
后端源码/yifan.action-ai.cn/index/js/index.cY-W5q_U.js
Normal file
@@ -0,0 +1 @@
|
||||
import{V as e,T as a,a3 as l,a4 as t,h as r,ao as i,w as n,x as o,av as s,M as u,a0 as d,U as _,E as m}from"./element-plus.BfMFfVUv.js";import{Y as c}from"./yifan_membership.DarHXUyl.js";import{J as f,t as p,S as b,_ as v,$ as g,a0 as x,a6 as h,T as y,a9 as q,aa as V,a1 as j,r as N,ak as w,j as F}from"./.pnpm.BudmgPu7.js";import{_ as U}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./index.CjKO7M_A.js";import"./codemirror.BdleaLZh.js";const M={class:"app-container"},P={class:"mt-4"},T=U(f({name:"YifanMembershipUserCenter",inheritAttrs:!1,__name:"index",setup(f){const U=N(!1),T=N(!1),k={junior:"初级会员",senior:"高级会员"},C=w({member_level:"junior",free_rename_quota:0,daily_detect_remaining:0,discount_rate:1}),D=w({original_price:0,use_free_quota:!0,free_quota:0,discount_rate:1});function Y(e,a=0){const l=Number(e);return Number.isNaN(l)?a:l}function $(e,a=1){const l=Y(e,a);return Math.min(1,Math.max(0,Number(l.toFixed(2))))}const A=F(()=>{const e=Number(Y(D.original_price,0).toFixed(2)),a=D.use_free_quota&&Y(D.free_quota,0)>0,l=a?0:Number((e*$(D.discount_rate,1)).toFixed(2));return{originalPrice:e.toFixed(2),finalPrice:l.toFixed(2),freeTag:a?"本次使用免费名额":"本次未使用免费名额"}});async function B(){U.value=!0;try{const e=(await c.getMyBenefits()).data.data;C.member_level=e.member_level||"junior",C.free_rename_quota=Y(e.free_rename_quota,0),C.daily_detect_remaining=Y(e.daily_detect_remaining,0),C.discount_rate=$(e.discount_rate,1),D.discount_rate=C.discount_rate,D.free_quota=C.free_rename_quota}catch(e){m.error((null==e?void 0:e.message)||"会员权益加载失败")}finally{U.value=!1}}async function E(){T.value=!0;try{await c.consumeDailyDetect(),await B()}catch(e){const a=(null==e?void 0:e.message)||"检测次数扣减失败";a.includes("今日免费检测次数已用完")?m.warning("今日免费检测次数已用完,请明日再试或使用付费/会员能力"):m.error(a)}finally{T.value=!1}}return p(()=>{B()}),(m,c)=>{const f=t,p=l,N=r,w=a,F=e,Y=s,B=o,I=u,J=n,S=d,z=_,G=i;return b(),v("div",M,[g(z,{gutter:16},{default:x(()=>[g(F,{xs:24,lg:10},{default:x(()=>[h((b(),y(w,null,{header:x(()=>[...c[4]||(c[4]=[j("div",{class:"card-header"},"个人中心 - 会员权益",-1)])]),default:x(()=>[g(p,{column:1,border:""},{default:x(()=>[g(f,{label:"会员等级"},{default:x(()=>[q(V(k[C.member_level]||C.member_level),1)]),_:1}),g(f,{label:"免费改名名额"},{default:x(()=>[q(V(C.free_rename_quota),1)]),_:1}),g(f,{label:"今日检测剩余次数"},{default:x(()=>[q(V(C.daily_detect_remaining),1)]),_:1}),g(f,{label:"会员折扣"},{default:x(()=>{return[q(V((e=C.discount_rate,`${(100*$(e)).toFixed(2)}%`)),1)];var e}),_:1})]),_:1}),j("div",P,[g(N,{type:"primary",loading:T.value,onClick:E},{default:x(()=>[...c[5]||(c[5]=[q(" 使用一次每日检测 ",-1)])]),_:1},8,["loading"]),c[6]||(c[6]=j("div",{class:"hint-text mt-2"}," 若提示“今日免费检测次数已用完”,请明日再试或引导用户付费/开通会员。 ",-1))])]),_:1})),[[G,U.value]])]),_:1}),g(F,{xs:24,lg:14},{default:x(()=>[g(w,null,{header:x(()=>[...c[7]||(c[7]=[j("div",{class:"card-header"},"改名下单价格展示(前端)",-1)])]),default:x(()=>[g(J,{model:D,"label-width":"120px","label-suffix":":"},{default:x(()=>[g(B,{label:"原价 original_price"},{default:x(()=>[g(Y,{modelValue:D.original_price,"onUpdate:modelValue":c[0]||(c[0]=e=>D.original_price=e),min:0,step:1,precision:2},null,8,["modelValue"])]),_:1}),g(B,{label:"是否使用免费名额"},{default:x(()=>[g(I,{modelValue:D.use_free_quota,"onUpdate:modelValue":c[1]||(c[1]=e=>D.use_free_quota=e)},null,8,["modelValue"])]),_:1}),g(B,{label:"免费名额剩余"},{default:x(()=>[g(Y,{modelValue:D.free_quota,"onUpdate:modelValue":c[2]||(c[2]=e=>D.free_quota=e),min:0,step:1,precision:0},null,8,["modelValue"])]),_:1}),g(B,{label:"会员折扣"},{default:x(()=>[g(Y,{modelValue:D.discount_rate,"onUpdate:modelValue":c[3]||(c[3]=e=>D.discount_rate=e),min:0,max:1,step:.01,precision:2},null,8,["modelValue"])]),_:1})]),_:1},8,["model"]),g(S,{type:"info",closable:!1,class:"mb-3"},{title:x(()=>[q(" 展示建议:原价 "+V(A.value.originalPrice)+" 元,折后价 "+V(A.value.finalPrice)+" 元, "+V(A.value.freeTag),1)]),_:1}),c[8]||(c[8]=j("div",{class:"hint-text"}," 下单请求参数请携带 `original_price`,后端会自动优先扣免费名额,不足时按会员折扣计算并写消费记录。 ",-1))]),_:1})]),_:1})]),_:1})])}}}),[["__scopeId","data-v-7b627a0e"]]);export{T as default};
|
||||
Reference in New Issue
Block a user