Files
wordpress-theme-aksrt/assets/admin/build/CmsCredits.BYsXdX89.js
T
kate522 27d8a9ea71 build(admin): track the SPA build output so git deploys carry it
assets/admin/build was gitignored, so servers deployed by git pull kept
running a stale admin bundle — the icon picker integration in the tabbar
and floating-button settings pages never reached them. Track the build
directory (rebuild with: cd assets/admin && npm run build) and commit the
current bundle containing the universal icon picker.
2026-09-06 14:35:15 +08:00

2 lines
10 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{a as U}from"./shared-api.DnsQ5cxS.js";import{u as R}from"./vendor-naive.CKYCZmXD.js";import{o as W,X as E,Y as o,a4 as a,a3 as n,a1 as m,r as v,e as L,W as I,f as C}from"./vendor-vue.BxZIRU0_.js";import"./vendor-misc.bELTaXdf.js";const T={class:"aksrt-page-container"},D={class:"aksrt-form-footer"},K={__name:"CmsCredits",setup(F){const b=R(),t=L({enabled:!0,currency_name:"",register_bonus:10,daily_signin:{enabled:!0,base:1,streak:{3:2,7:5,30:20}},comment_reward:{enabled:!0,amount:1,daily_cap:5,min_length:10,on_approved:!0},referral_reward:{enabled:!0,promoter_amount:5,referred_amount:2,level_points:0,require_verify:!0,ip_daily_cap:3},download_default_cost:0}),g=v("{}"),k=v(!1),y=v(!1),$=v([]),c=v(1),N=v(1),u=L({asset:null,transaction_id:"",operation_key:"",ref_type:"",ref_key:"",actor_user_id:""}),z=[{label:"积分",value:"points"},{label:"余额",value:"balance"}],B=[{title:"交易号",key:"transaction_label",width:100,fixed:"left"},{title:"幂等键",key:"operation_key",width:260,ellipsis:{tooltip:!0}},{title:"资产",key:"assets_label",width:100},{title:"原因",key:"reason",width:150,ellipsis:{tooltip:!0}},{title:"业务引用",key:"reference_label",width:200,ellipsis:{tooltip:!0}},{title:"操作者",key:"actor_label",width:100},{title:"增减 / 手续费",key:"delta_label",width:180,ellipsis:{tooltip:!0}},{title:"变动后余额",key:"balance_label",width:150,ellipsis:{tooltip:!0}},{title:"备注",key:"remark",width:180,ellipsis:{tooltip:!0}},{title:"UTC 时间",key:"created_at",width:190}];function j(d,e){if(d==="balance")return typeof e=="string"&&/^[+-]?\d+\.\d{2}$/.test(e)?e:"0.00";const i=String(e??"0");return/^-?\d+$/.test(i)?i:"0"}async function w(){y.value=!0;try{const d={page:c.value,per_page:20};Object.entries(u).forEach(([r,p])=>{p!==null&&String(p).trim()!==""&&(d[r]=p)});const e=await U.getCreditLog(d),i=(e==null?void 0:e.data)||e||{};$.value=(i.items||[]).map(r=>{const p=Array.isArray(r.entries)?r.entries:[];return{...r,transaction_label:`#${r.id}`,assets_label:(r.assets||[]).join(" / "),reference_label:[r.ref_type,r.ref_key].filter(Boolean).join(":")||"—",actor_label:r.actor_user_id?`#${r.actor_user_id}`:"系统",delta_label:p.map(s=>{const _=j(s.asset,s.delta),f=s.asset==="points"&&!_.startsWith("-")&&_!=="0"?`+${_}`:_;return`${s.asset}:${f}`}).join(";"),balance_label:p.map(s=>`${s.asset}:${j(s.asset,s.balance_after)}`).join(";")}}),N.value=Math.max(1,Math.ceil(Number(i.total||0)/Number(i.per_page||20)))}catch(d){b.error(d.message||"加载账本失败")}finally{y.value=!1}}function O(){c.value=1,w()}function J(){Object.assign(u,{asset:null,transaction_id:"",operation_key:"",ref_type:"",ref_key:"",actor_user_id:""}),O()}async function M(){var d;try{const e=await U.getCreditSettings(),i=(e==null?void 0:e.data)||e||{};Object.assign(t,i),g.value=JSON.stringify(((d=t.daily_signin)==null?void 0:d.streak)||{},null,0)}catch(e){b.error(e.message||"加载失败")}}async function P(){k.value=!0;try{let d={};try{d=JSON.parse(g.value||"{}")}catch{}t.daily_signin.streak=d,await U.saveCreditSettings(t),b.success("已保存")}catch(d){b.error(d.message||"保存失败")}finally{k.value=!1}}return W(()=>{M(),w()}),(d,e)=>{const i=m("n-switch"),r=m("n-form-item"),p=m("n-input"),s=m("n-input-number"),_=m("n-form"),f=m("n-card"),V=m("n-select"),x=m("n-button"),S=m("n-space"),q=m("n-data-table"),A=m("n-pagination");return I(),E("div",T,[e[36]||(e[36]=o("h2",{class:"aksrt-page-title"},"积分配置",-1)),e[37]||(e[37]=o("p",{class:"aksrt-page-desc"}," 配置积分规则与发放策略。可自定义货币名称(如”金币”、”魔石”等)。用户余额与手工调整在 WordPress 原生”用户”菜单中管理。 ",-1)),a(f,{class:"aksrt-section-card"},{default:n(()=>[e[26]||(e[26]=o("div",{class:"aksrt-section-header"},[o("h3",null,"主开关 + 基础设置")],-1)),a(_,{model:t,"label-placement":"left","label-width":"200",class:"aksrt-form"},{default:n(()=>[a(r,{label:"启用积分系统"},{default:n(()=>[a(i,{value:t.enabled,"onUpdate:value":e[0]||(e[0]=l=>t.enabled=l)},null,8,["value"])]),_:1}),a(r,{label:"自定义货币名称"},{feedback:n(()=>[...e[25]||(e[25]=[o("span",{class:"aksrt-hint-text"},'自定义货币显示名称,如"金币"、"魔石"等。留空则使用默认名称"积分"。',-1)])]),default:n(()=>[a(p,{value:t.currency_name,"onUpdate:value":e[1]||(e[1]=l=>t.currency_name=l),placeholder:"积分",maxlength:"20"},null,8,["value"])]),_:1}),a(r,{label:"注册赠送积分"},{default:n(()=>[a(s,{value:t.register_bonus,"onUpdate:value":e[2]||(e[2]=l=>t.register_bonus=l),min:0,max:1e4},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1}),a(f,{title:"统一资产账本",class:"aksrt-section-card"},{default:n(()=>[a(S,{vertical:"",size:12},{default:n(()=>[a(S,{wrap:""},{default:n(()=>[a(V,{value:u.asset,"onUpdate:value":e[3]||(e[3]=l=>u.asset=l),options:z,clearable:"",placeholder:"资产",style:{width:"130px"}},null,8,["value"]),a(p,{value:u.transaction_id,"onUpdate:value":e[4]||(e[4]=l=>u.transaction_id=l),placeholder:"交易号",clearable:"",style:{width:"130px"}},null,8,["value"]),a(p,{value:u.operation_key,"onUpdate:value":e[5]||(e[5]=l=>u.operation_key=l),placeholder:"幂等键",clearable:"",style:{width:"240px"}},null,8,["value"]),a(p,{value:u.ref_type,"onUpdate:value":e[6]||(e[6]=l=>u.ref_type=l),placeholder:"引用类型",clearable:"",style:{width:"130px"}},null,8,["value"]),a(p,{value:u.ref_key,"onUpdate:value":e[7]||(e[7]=l=>u.ref_key=l),placeholder:"引用键",clearable:"",style:{width:"180px"}},null,8,["value"]),a(p,{value:u.actor_user_id,"onUpdate:value":e[8]||(e[8]=l=>u.actor_user_id=l),placeholder:"操作者 ID",clearable:"",style:{width:"130px"}},null,8,["value"]),a(x,{type:"primary",loading:y.value,onClick:O},{default:n(()=>[...e[27]||(e[27]=[C("查询",-1)])]),_:1},8,["loading"]),a(x,{onClick:J},{default:n(()=>[...e[28]||(e[28]=[C("重置",-1)])]),_:1})]),_:1}),a(q,{columns:B,data:$.value,loading:y.value,"row-key":l=>l.id,"scroll-x":1600,size:"small"},null,8,["data","loading","row-key"]),a(A,{page:c.value,"onUpdate:page":[e[9]||(e[9]=l=>c.value=l),w],"page-count":N.value,"page-size":20},null,8,["page","page-count"])]),_:1})]),_:1}),a(f,{class:"aksrt-section-card"},{default:n(()=>[e[30]||(e[30]=o("div",{class:"aksrt-section-header"},[o("h3",null,"每日签到")],-1)),a(_,{model:t.daily_signin,"label-placement":"left","label-width":"200",class:"aksrt-form"},{default:n(()=>[a(r,{label:"启用"},{default:n(()=>[a(i,{value:t.daily_signin.enabled,"onUpdate:value":e[10]||(e[10]=l=>t.daily_signin.enabled=l)},null,8,["value"])]),_:1}),a(r,{label:"基础奖励"},{default:n(()=>[a(s,{value:t.daily_signin.base,"onUpdate:value":e[11]||(e[11]=l=>t.daily_signin.base=l),min:0,max:1e4},null,8,["value"])]),_:1}),a(r,{label:"连续奖励(JSON)"},{feedback:n(()=>[...e[29]||(e[29]=[o("span",{class:"aksrt-hint-text"},"连续 N 天时额外发放的积分。",-1)])]),default:n(()=>[a(p,{type:"textarea",value:g.value,"onUpdate:value":e[12]||(e[12]=l=>g.value=l),placeholder:'{"3":2,"7":5,"30":20}',autosize:{minRows:2}},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1}),a(f,{class:"aksrt-section-card"},{default:n(()=>[e[31]||(e[31]=o("div",{class:"aksrt-section-header"},[o("h3",null,"评论奖励")],-1)),a(_,{model:t.comment_reward,"label-placement":"left","label-width":"200",class:"aksrt-form"},{default:n(()=>[a(r,{label:"启用"},{default:n(()=>[a(i,{value:t.comment_reward.enabled,"onUpdate:value":e[13]||(e[13]=l=>t.comment_reward.enabled=l)},null,8,["value"])]),_:1}),a(r,{label:"单次奖励"},{default:n(()=>[a(s,{value:t.comment_reward.amount,"onUpdate:value":e[14]||(e[14]=l=>t.comment_reward.amount=l),min:0,max:1e4},null,8,["value"])]),_:1}),a(r,{label:"每日上限"},{default:n(()=>[a(s,{value:t.comment_reward.daily_cap,"onUpdate:value":e[15]||(e[15]=l=>t.comment_reward.daily_cap=l),min:0,max:100},null,8,["value"])]),_:1}),a(r,{label:"最少字符数"},{default:n(()=>[a(s,{value:t.comment_reward.min_length,"onUpdate:value":e[16]||(e[16]=l=>t.comment_reward.min_length=l),min:0,max:500},null,8,["value"])]),_:1}),a(r,{label:"审核通过后发放"},{default:n(()=>[a(i,{value:t.comment_reward.on_approved,"onUpdate:value":e[17]||(e[17]=l=>t.comment_reward.on_approved=l)},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1}),a(f,{class:"aksrt-section-card"},{default:n(()=>[e[32]||(e[32]=o("div",{class:"aksrt-section-header"},[o("h3",null,"Ref 推广奖励")],-1)),a(_,{model:t.referral_reward,"label-placement":"left","label-width":"200",class:"aksrt-form"},{default:n(()=>[a(r,{label:"启用"},{default:n(()=>[a(i,{value:t.referral_reward.enabled,"onUpdate:value":e[18]||(e[18]=l=>t.referral_reward.enabled=l)},null,8,["value"])]),_:1}),a(r,{label:"推广人奖励"},{default:n(()=>[a(s,{value:t.referral_reward.promoter_amount,"onUpdate:value":e[19]||(e[19]=l=>t.referral_reward.promoter_amount=l),min:0,max:1e4},null,8,["value"])]),_:1}),a(r,{label:"新用户奖励"},{default:n(()=>[a(s,{value:t.referral_reward.referred_amount,"onUpdate:value":e[20]||(e[20]=l=>t.referral_reward.referred_amount=l),min:0,max:1e4},null,8,["value"])]),_:1}),a(r,{label:"推广等级积分"},{default:n(()=>[a(s,{value:t.referral_reward.level_points,"onUpdate:value":e[21]||(e[21]=l=>t.referral_reward.level_points=l),min:0,max:1e4},null,8,["value"])]),_:1}),a(r,{label:"需邮箱验证后发放"},{default:n(()=>[a(i,{value:t.referral_reward.require_verify,"onUpdate:value":e[22]||(e[22]=l=>t.referral_reward.require_verify=l)},null,8,["value"])]),_:1}),a(r,{label:"同 IP 当日上限"},{default:n(()=>[a(s,{value:t.referral_reward.ip_daily_cap,"onUpdate:value":e[23]||(e[23]=l=>t.referral_reward.ip_daily_cap=l),min:0,max:100},null,8,["value"])]),_:1})]),_:1},8,["model"])]),_:1}),a(f,{class:"aksrt-section-card"},{default:n(()=>[e[34]||(e[34]=o("div",{class:"aksrt-section-header"},[o("h3",null,"下载消费(参考)")],-1)),a(_,{model:t,"label-placement":"left","label-width":"200",class:"aksrt-form"},{default:n(()=>[a(r,{label:`默认积分价参考(${t.currency_name||"积分"})`},{feedback:n(()=>[...e[33]||(e[33]=[o("span",{class:"aksrt-hint-text"},"实际价格以文章「付费内容设置」的积分价或现金价为准;下载解锁走收银台订单,不按次扣费。",-1)])]),default:n(()=>[a(s,{value:t.download_default_cost,"onUpdate:value":e[24]||(e[24]=l=>t.download_default_cost=l),min:0,max:1e5},null,8,["value"])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1}),o("div",D,[a(x,{type:"primary",loading:k.value,onClick:P},{default:n(()=>[...e[35]||(e[35]=[C("保存配置",-1)])]),_:1},8,["loading"])])])}}};export{K as default};