bindbox-game/build/resources/admin/assets/EffectManagerDialog-B8hoH5eF.js
邹方成 2a89a1ab9d
Some checks failed
Build docker and publish / linux (1.24.5) (push) Failing after 39s
feat(admin): 更新前端资源文件及修复相关功能
refactor(service): 修改banner和guild删除逻辑为软删除
fix(service): 修复删除操作使用软删除而非物理删除

build: 添加SQLite测试仓库实现
docs: 新增奖励管理字段拆分和批量抽奖UI改造文档

ci: 更新CI忽略文件
style: 清理无用资源文件
2025-11-19 01:35:55 +08:00

2 lines
7.1 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,t,i)=>new Promise((s,a)=>{var r=e=>{try{o(i.next(e))}catch(t){a(t)}},l=e=>{try{o(i.throw(e))}catch(t){a(t)}},o=e=>e.done?s(e.value):Promise.resolve(e.value).then(r,l);o((i=i.apply(e,t)).next())});import{d as t,a as i,c as s,w as a,y as r,f as l,z as o,h as n,p,J as u,l as d,ab as m,u as c,aY as f,dv as _,m as j,e as v,F as y,G as x,aV as g,O as b}from"./index-CZ0Lvzl5.js";/* empty css *//* empty css */import{E as h,a as w}from"./el-table-column-CioBjwcM.js";/* empty css */import"./el-tooltip-l0sNRNKZ.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{E as k}from"./message-box-mfsaE52U.js";/* empty css *//* empty css *//* empty css */import{titlesApi as z}from"./titles-BnzYQ5A4.js";import A from"./EffectEditDialog-CKoMjh_c.js";import{E}from"./index-CWBrZtwn.js";import{E as $}from"./index-BQ-mpgoy.js";import{E as C}from"./index-DO8sDDAh.js";import{_ as I}from"./_plugin-vue_export-helper-BCo6x5W8.js";import"./index-BierC7rd.js";import"./index-BW22oPP6.js";import"./index-C6fEXl-e.js";import"./index-K2zzami3.js";import"./use-form-item-BsnpemL_.js";import"./use-form-common-props-U6f9D53_.js";import"./_initCloneObject-DfOnBHdn.js";import"./isArrayLikeObject-CQAE3P4Q.js";import"./raf-C-iJO6ki.js";import"./_baseIteratee-iUx42eT-.js";import"./index-DH_vX4BK.js";import"./debounce-BWBxuUbE.js";import"./index-BZS0BBj4.js";import"./index-MV2EqMi7.js";import"./index-ZgXgJNHL.js";import"./index-6-f3xsy2.js";import"./index-CgoUqbdT.js";import"./vnode-C4RX5enz.js";import"./scroll-bFiZhqzI.js";import"./validator-BHWhHngj.js";import"./index-DaNWXg3-.js";/* empty css */import"./el-divider--3NMYJzN.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import"./activity-B4-0dphm.js";import"./adminActivities-BFodRb8S.js";import"./index-DhBIlDpg.js";import"./index-pVAXVlCV.js";import"./token-DWNpOE8r.js";import"./index-BiRLqYIK.js";import"./index-BlgPu7T-.js";import"./index-_aFOeltJ.js";import"./use-dialog-BDM4AbF-.js";import"./refs-Cw5r5QN8.js";const O={class:"effect-manager"},V={class:"toolbar"},q={class:"params-view"},D={class:"params-view"},G=I(t({__name:"EffectManagerDialog",props:{visible:{type:Boolean},title:{}},emits:["update:visible"],setup(t,{emit:I}){const G=t,J=I,S=i(!1),B=i([]),F=i(!1),K=i(null),L=s({get:()=>G.visible,set:e=>J("update:visible",e)}),M={1:{name:"领券",tag:"warning"},2:{name:"抽奖折扣",tag:"success"},3:{name:"签到倍数",tag:"primary"},4:{name:"领道具卡",tag:"info"},5:{name:"概率加成",tag:"warning"},6:{name:"双倍概率",tag:"danger"}},P={0:"最大值",1:"累加封顶",2:"首个匹配"};function T(e){var t;return(null==(t=M[e])?void 0:t.name)||"未知"}function U(e){var t;return(null==(t=M[e])?void 0:t.tag)||"info"}function Y(e){try{return JSON.parse(e||"{}")}catch(t){return{}}}function H(e){const t=Y(e.scopes_json||"{}"),i=t.exclude||{};return{activity_ids:Array.isArray(t.activity_ids)?t.activity_ids:[],issue_ids:Array.isArray(t.issue_ids)?t.issue_ids:[],exclude_issue_ids:Array.isArray(i.issue_ids)?i.issue_ids:[]}}function N(e,t){const i={template_id:"模板ID",frequency:"频次",period:"周期",times:"次数",discount_type:"折扣类型",value_x1000:"折扣值×1000",max_discount_x1000:"最高减免×1000",multiplier_x1000:"倍率×1000",daily_cap_points:"每日积分上限",target_prize_ids:"目标奖品",boost_x1000:"加成×1000",cap_x1000:"封顶×1000",chance_x1000:"概率×1000",period_cap_times:"周期次数上限"}[e]||e;return"number"==typeof t?`${i}: ${t}`:Array.isArray(t)?`${i}: ${t.length}`:`${i}: ${t}`}function W(){return e(this,null,function*(){if(G.title){S.value=!0;try{const e=yield z.getTitleEffects(G.title.id);B.value=e.list||[]}catch(e){b.error("加载效果列表失败"),B.value=[]}finally{S.value=!1}}})}function X(){K.value=null,F.value=!0}function Q(){W()}return a(L,e=>{e&&G.title&&W()}),(i,s)=>{var a;const I=m,J=E,M=$,R=w,Z=h,ee=C,te=g;return l(),r(ee,{title:`称号效果管理 - ${null==(a=t.title)?void 0:a.name}`,modelValue:L.value,"onUpdate:modelValue":s[1]||(s[1]=e=>L.value=e),width:"90%","close-on-click-modal":!1},{default:o(()=>[n("div",O,[n("div",V,[p(J,{type:"primary",onClick:X},{default:o(()=>[p(I,null,{default:o(()=>[p(c(f))]),_:1}),s[2]||(s[2]=d("添加效果 ",-1))]),_:1}),p(J,{type:"info",onClick:Q},{default:o(()=>[p(I,null,{default:o(()=>[p(c(_))]),_:1}),s[3]||(s[3]=d("刷新 ",-1))]),_:1})]),u((l(),r(Z,{data:B.value,border:""},{default:o(()=>[p(R,{prop:"effect_type",label:"效果类型",width:"120"},{default:o(({row:e})=>[p(M,{type:U(e.effect_type)},{default:o(()=>[d(j(T(e.effect_type)),1)]),_:2},1032,["type"])]),_:1}),p(R,{prop:"params",label:"参数配置","min-width":"200"},{default:o(({row:e})=>[n("div",q,[(l(!0),v(y,null,x(Y(e.params_json),(e,t)=>(l(),r(M,{key:t,size:"small"},{default:o(()=>[d(j(N(String(t),e)),1)]),_:2},1024))),128))])]),_:1}),p(R,{label:"作用范围","min-width":"220"},{default:o(({row:e})=>[n("div",D,[(l(!0),v(y,null,x(H(e).activity_ids,e=>(l(),r(M,{type:"info",size:"small",key:"a-"+e},{default:o(()=>[d("活动:"+j(e),1)]),_:2},1024))),128)),(l(!0),v(y,null,x(H(e).issue_ids,e=>(l(),r(M,{type:"success",size:"small",key:"i-"+e},{default:o(()=>[d("期:"+j(e),1)]),_:2},1024))),128)),(l(!0),v(y,null,x(H(e).exclude_issue_ids,e=>(l(),r(M,{type:"danger",size:"small",key:"x-"+e},{default:o(()=>[d("排除期:"+j(e),1)]),_:2},1024))),128))])]),_:1}),p(R,{prop:"stacking_strategy",label:"叠加策略",width:"100"},{default:o(({row:e})=>{return[d(j((t=e.stacking_strategy,P[t]||"未知")),1)];var t}),_:1}),p(R,{prop:"cap_value_x1000",label:"上限值",width:"100"},{default:o(({row:e})=>[d(j(e.cap_value_x1000/1e3),1)]),_:1}),p(R,{prop:"sort",label:"排序",width:"80",sortable:""}),p(R,{prop:"status",label:"状态",width:"80"},{default:o(({row:e})=>[p(M,{type:1===e.status?"success":"danger",size:"small"},{default:o(()=>[d(j(1===e.status?"启用":"停用"),1)]),_:2},1032,["type"])]),_:1}),p(R,{prop:"created_at",label:"创建时间",width:"160"}),p(R,{label:"操作",width:"150",fixed:"right"},{default:o(({row:t})=>[p(J,{type:"primary",size:"small",onClick:e=>{return i=t,K.value=i,void(F.value=!0);var i}},{default:o(()=>[...s[4]||(s[4]=[d("编辑",-1)])]),_:1},8,["onClick"]),p(J,{type:"danger",size:"small",onClick:i=>function(t){return e(this,null,function*(){try{yield k.confirm(`确定要删除效果"${T(t.effect_type)}"吗?`,"删除确认",{type:"warning"}),yield z.deleteTitleEffect(G.title.id,t.id),b.success("删除成功"),W()}catch(e){"cancel"!==e&&b.error("删除失败")}})}(t)},{default:o(()=>[...s[5]||(s[5]=[d("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[te,S.value]])]),p(A,{visible:F.value,"onUpdate:visible":s[0]||(s[0]=e=>F.value=e),title:t.title,effect:K.value,"occupied-types":B.value.map(e=>e.effect_type),onSuccess:W},null,8,["visible","title","effect","occupied-types"])]),_:1},8,["title","modelValue"])}}}),[["__scopeId","data-v-f2f200b4"]]);export{G as default};