邹方成 6ee627139c
Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 40s
feat: 新增支付测试小程序与微信支付集成
feat(pay): 添加支付API基础结构
feat(miniapp): 创建支付测试小程序页面与配置
feat(wechatpay): 配置微信支付参数与证书
fix(guild): 修复成员列表查询条件
docs: 更新代码规范文档与需求文档
style: 统一前后端枚举显示与注释格式
refactor(admin): 重构用户奖励发放接口参数处理
test(title): 添加称号效果参数验证测试
2025-11-17 00:42:08 +08:00

2 lines
7.8 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.

var e=(e,s,a)=>new Promise((l,t)=>{var i=e=>{try{o(a.next(e))}catch(s){t(s)}},r=e=>{try{o(a.throw(e))}catch(s){t(s)}},o=e=>e.done?l(e.value):Promise.resolve(e.value).then(i,r);o((a=a.apply(e,s)).next())});import{d as s,aD as a,C as l,a as t,o as i,e as r,f as o,p as n,z as u,k as m,h as d,y as c,m as p,l as v,ab as f,u as _,aX as j,aY as b,aZ as x,aJ as y,O as g}from"./index-DBHnxsy6.js";/* empty css */import{E as h,a as w}from"./el-table-column-DWU1JSNJ.js";/* empty css */import"./el-tooltip-l0sNRNKZ.js";/* empty css *//* empty css *//* empty css *//* empty css */import{E as k}from"./el-alert-BBo7e8Ze.js";/* empty css *//* empty css */import{E as z}from"./message-box-CHGPmvsv.js";/* empty css *//* empty css *//* empty css */import{i as C,j as E,k as I}from"./adminActivities-C7lwI2HP.js";import{E as D}from"./index-D2YpA_om.js";import{E as J,a as O}from"./index-C_e2vaW2.js";import{E as A}from"./index-Bh7aAHNM.js";import{E as B}from"./index-r0EsCkBw.js";import"./index-sqhzrW2O.js";import"./index-nZra831X.js";import"./index-B99ckkYy.js";import"./index-MOpuiu9Z.js";import"./use-form-item-ByasanrX.js";import"./use-form-common-props-BOfz9xGR.js";import"./_initCloneObject-7oWMW-Ot.js";import"./isArrayLikeObject-BJDhNHaT.js";import"./raf-CXqF1NB1.js";import"./_baseIteratee-DRiXPtOg.js";import"./index-DZO7eApA.js";import"./debounce-CkazOn_9.js";import"./index-DKaQAdbW.js";import"./index-DfWQjCuY.js";import"./index-BC2pRl3S.js";import"./index-qSQlj0RO.js";import"./index-DeCbFeva.js";import"./vnode-CqxKQBn0.js";import"./scroll-Cceui3yC.js";import"./validator-D_3Fyw1a.js";import"./index-DvlZWusB.js";const G={class:"p-4"},K={class:"flex items-center justify-between"},L={class:"flex items-center space-x-2"},N={key:0,class:"mb-6"},P={class:"flex items-center justify-between"},T={key:1,class:"mb-6"},Z={key:2,class:"mb-6"},q={class:"flex items-center"},H={key:3,class:"mb-6"},R={class:"flex items-center"},V=s({__name:"index",setup(s){const V=a(),X=l(),Y=Number(V.params.activityId),$=Number(V.params.issueId),F=t(null),M=t(!1),Q=t([]),S=t(!1),U=t(""),W=()=>e(this,null,function*(){try{U.value="";const e=yield C(Y,$);F.value=e,e&&ee()}catch(e){const s=e.businessCode||e.code||e.data&&e.data.code||e.status,a=e.message||e.data&&e.data.message||"获取随机承诺失败";if(20515===s)return void(F.value=null);20514===s?(U.value="当前期数状态不允许生成随机承诺",g.info("当前期数状态不允许生成随机承诺")):(U.value=a,g.error(a))}}),ee=()=>e(this,null,function*(){try{S.value=!0;const e=yield E(Y,$);Q.value=e||[]}catch(e){g.warning("获取历史版本失败:"+(e.message||"未知错误")),Q.value=[]}finally{S.value=!1}}),se=()=>e(this,null,function*(){try{U.value="",yield z.confirm("确定要生成随机承诺吗?此操作不可撤销,生成后将用于该期数的所有抽奖活动。","确认生成",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}),M.value=!0;yield I(Y,$);g.success("随机承诺生成成功!"),U.value="",yield W()}catch(e){if("cancel"!==e){const s=e.businessCode||e.code||e.data&&e.data.code||e.status,a=e.message||e.data&&e.data.message||"生成随机承诺失败";20514===s?(U.value='当前期数状态不允许生成随机承诺,请确保期数状态为"未开始"',g.warning(U.value)):20515===s?(U.value="期数不存在或已被删除",g.error(U.value)):a.includes("已存在随机承诺")?(U.value="该期数已存在随机承诺,不可重复生成",g.warning(U.value)):a.includes("未配置奖励")?(U.value="该期数未配置奖励,请先配置奖励后再生成随机承诺",g.warning(U.value)):a.includes("总权重必须大于0")?(U.value="奖池配置无效总权重必须大于0",g.warning(U.value)):(U.value=a,g.error(U.value))}}finally{M.value=!1}}),ae=()=>{X.back()};return i(()=>{W()}),(e,s)=>{const a=f,l=B,t=D,i=k,g=O,z=J,C=w,E=h,I=A;return o(),r("div",G,[n(I,null,{header:u(()=>[d("div",K,[s[3]||(s[3]=d("span",{class:"text-lg font-medium"},"随机承诺管理",-1)),d("div",L,[n(l,{type:"primary",onClick:se,loading:M.value,disabled:!!F.value},{default:u(()=>[n(a,{class:"mr-1"},{default:u(()=>[n(_(x))]),_:1}),s[1]||(s[1]=v(" 生成随机承诺 ",-1))]),_:1},8,["loading","disabled"]),n(l,{onClick:ae},{default:u(()=>[n(a,{class:"mr-1"},{default:u(()=>[n(_(y))]),_:1}),s[2]||(s[2]=v(" 返回 ",-1))]),_:1})])])]),default:u(()=>[F.value?(o(),r("div",N,[n(i,{title:"当前期数已生成随机承诺",type:"success",closable:!1,class:"mb-4"},{default:u(()=>[d("div",P,[d("span",null,"版本号: v"+p(F.value.state_version),1),Q.value.length>1?(o(),c(t,{key:0,type:"info",size:"small"},{default:u(()=>[v(" 共 "+p(Q.value.length)+" 个版本 ",1)]),_:1})):m("",!0)])]),_:1}),n(z,{column:2,border:""},{default:u(()=>[n(g,{label:"算法版本"},{default:u(()=>[v(p(F.value.algo_version),1)]),_:1}),n(g,{label:"期数ID"},{default:u(()=>[v(p(F.value.issue_id),1)]),_:1}),n(g,{label:"服务器种子哈希"},{default:u(()=>[n(t,{size:"small",class:"font-mono text-xs"},{default:u(()=>[v(p(F.value.server_seed_hash),1)]),_:1})]),_:1}),n(g,{label:"奖励根哈希"},{default:u(()=>[n(t,{size:"small",class:"font-mono text-xs"},{default:u(()=>[v(p(F.value.items_root),1)]),_:1})]),_:1}),n(g,{label:"总权重"},{default:u(()=>[v(p(F.value.weights_total),1)]),_:1}),n(g,{label:"版本号"},{default:u(()=>[n(t,{type:"primary",size:"small"},{default:u(()=>[v(" v"+p(F.value.state_version),1)]),_:1})]),_:1})]),_:1})])):(o(),r("div",T,[n(i,{title:"尚未生成随机承诺",type:"warning",closable:!1,class:"mb-4"},{default:u(()=>[...s[4]||(s[4]=[d("div",null,"当前期数尚未生成随机承诺,请点击下方按钮生成",-1)])]),_:1})])),Q.value.length>1?(o(),r("div",Z,[n(I,{shadow:"never",class:"bg-gray-50"},{header:u(()=>[d("div",q,[n(a,{class:"mr-2"},{default:u(()=>[n(_(j))]),_:1}),s[5]||(s[5]=d("span",{class:"font-medium"},"历史版本记录",-1))])]),default:u(()=>[n(E,{data:Q.value,style:{width:"100%"},size:"small"},{default:u(()=>[n(C,{prop:"state_version",label:"版本号",width:"80"},{default:u(({row:e})=>{var s;return[n(t,{type:e.state_version===(null==(s=F.value)?void 0:s.state_version)?"primary":"info",size:"small"},{default:u(()=>[v(" v"+p(e.state_version),1)]),_:2},1032,["type"])]}),_:1}),n(C,{prop:"server_seed_hash",label:"服务器种子哈希"},{default:u(({row:e})=>[n(t,{size:"small",class:"font-mono text-xs"},{default:u(()=>[v(p(e.server_seed_hash.substring(0,16))+"... ",1)]),_:2},1024)]),_:1}),n(C,{prop:"items_root",label:"奖励根哈希"},{default:u(({row:e})=>[n(t,{size:"small",class:"font-mono text-xs"},{default:u(()=>[v(p(e.items_root.substring(0,16))+"... ",1)]),_:2},1024)]),_:1}),n(C,{prop:"weights_total",label:"总权重",width:"100"})]),_:1},8,["data"])]),_:1})])):m("",!0),U.value?(o(),r("div",H,[n(i,{title:U.value,type:"error",closable:!0,onClose:s[0]||(s[0]=e=>U.value=""),class:"mb-4"},null,8,["title"])])):m("",!0),n(I,{shadow:"never",class:"bg-blue-50"},{header:u(()=>[d("div",R,[n(a,{class:"mr-2"},{default:u(()=>[n(_(b))]),_:1}),s[6]||(s[6]=d("span",{class:"font-medium"},"业务规则说明",-1))])]),default:u(()=>[s[7]||(s[7]=d("div",{class:"text-sm text-gray-600 space-y-2"},[d("p",null,[d("strong",null,"1. 生成限制:"),v('只能在期数状态为"未开始"时生成,且每个期数只能生成一次')]),d("p",null,[d("strong",null,"2. 生成时机:"),v("建议在期数开始前生成随机承诺,确保公平性")]),d("p",null,[d("strong",null,"3. 验证机制:"),v("用户可通过 receipt.json 文件离线验证抽奖结果")]),d("p",null,[d("strong",null,"4. 安全机制:"),v("采用 Commit-Reveal 模式,确保随机性不可预测")]),d("p",null,[d("strong",null,"5. 版本管理:"),v("系统会记录版本历史,抽奖始终使用最新版本")])],-1))]),_:1})]),_:1})])}}});export{V as default};