Files
Lucky_Wheel/apps/admin/dist/assets/SpinListView-WIkO8yaF.js
T

2 lines
5.6 KiB
JavaScript
Raw Normal View History

2026-09-10 22:37:29 +03:30
import{t as h}from"./farsi-number-stB7JMN0.js";import{d as $,j,a as i,b as m,c as d,w as l,m as z,r as c,h as g,g as H,o as n,f as k,e as u,R as Y,Y as q,S as G,F as C,x as P,t as r,s as I,D as J,q as Q,i as X,y as O,_ as Z}from"./index-Dx9ODHpC.js";const ee={class:"spin-list-page"},ae={class:"page-header-title"},te={class:"table-header"},se={class:"filters"},ne=["onClick"],ie={key:1,class:"user-name"},le={key:0,class:"prize-text"},oe={key:1,class:"text-muted"},de={key:1,class:"text-muted"},pe={key:5,class:"code-badge"},re={key:6,class:"date-cell"},ce={key:7,class:"date-cell"},ue=$({__name:"SpinListView",setup(ye){const U=X(),v=g(!1),x=g(!1),w=g([]),S=g(0),A=g([]),t=H({page:1,pageSize:10,campaignId:void 0,search:""});async function E(){var p;try{const e=await z.get("/admin/campaigns",{params:{pageSize:100}});A.value=Array.isArray(e.data)?e.data:((p=e.data)==null?void 0:p.data)||[]}catch{}}async function _(){var p,e,o,f;v.value=!0;try{const y=await z.get("/admin/spins",{params:{page:t.page,pageSize:t.pageSize,campaignId:t.campaignId||void 0,search:t.search||void 0}}),b=Array.isArray(y.data)?y.data:((p=y.data)==null?void 0:p.data)||[];w.value=b,S.value=((e=y.meta)==null?void 0:e.total)||((f=(o=y.data)==null?void 0:o.meta)==null?void 0:f.total)||b.length}finally{v.value=!1}}async function V(){x.value=!0;try{const p=await z.get("/admin/spins/export",{params:{campaignId:t.campaignId||void 0,search:t.search||void 0},responseType:"blob"}),e=window.URL.createObjectURL(new Blob([p.data])),o=document.createElement("a");o.href=e,o.setAttribute("download",`spins-${Date.now()}.xlsx`),document.body.appendChild(o),o.click(),document.body.removeChild(o),window.URL.revokeObjectURL(e),O.success("فایل اکسل با موفقیت دانلود شد.")}catch{O.error("خطا در دریافت فایل اکسل")}finally{x.value=!1}}const W={DIGITAL_CODE:"کد دیجیتال",PHYSICAL:"کالای فیزیکی",DISCOUNT:"کد تخفیف",CASH:"جایزه نقدی",FREE_CHANCE:"شانس مجدد",CUSTOM:"سفارشی"},B=[{title:"شماره همراه",dataIndex:["user","mobile"],key:"userMobile"},{title:"نام کاربر",dataIndex:["user","name"],key:"userName"},{title:"کمپین",dataIndex:["campaign","title"],key:"campaignTitle"},{title:"جایزه / نتیجه",dataIndex:["prize","title"],key:"prizeTitle"},{title:"نوع جایزه",dataIndex:["prize","prizeType"],key:"prizeType"},{title:"نتیجه",dataIndex:"isWin",key:"isWin",align:"center"},{title:"کلید تکرارناپذیری (Idempotency)",dataIndex:"idempotencyKey",key:"idempotencyKey",ellipsis:!0},{title:"آی‌پی کاربر",dataIndex:"ipAddress",key:"ipAddress"},{title:"زمان اسپین",dataIndex:"createdAt",key:"createdAt"}];return j(()=>{E(),_()}),(p,e)=>{const o=c("a-button"),f=c("a-space"),y=c("a-input-search"),b=c("a-select-option"),K=c("a-select"),T=c("a-tag"),F=c("a-table"),M=c("a-card");return n(),i("div",ee,[m("div",ae,[e[6]||(e[6]=m("div",null,[m("h1",{class:"title"},"تاریخچه چرخش‌ها (Spins)"),m("p",{class:"subtitle"},"گزارش لحظه‌ای تمام تلاش‌ها، برندگان، کدها و آی‌پی‌های ثبت‌شده")],-1)),d(f,null,{default:l(()=>[d(o,{onClick:_,loading:v.value},{icon:l(()=>[d(u(Y))]),default:l(()=>[e[4]||(e[4]=k(" به‌روزرسانی ",-1))]),_:1},8,["loading"]),d(o,{type:"primary",loading:x.value,onClick:V},{icon:l(()=>[d(u(q))]),default:l(()=>[e[5]||(e[5]=k(" خروجی اکسل ",-1))]),_:1},8,["loading"])]),_:1})]),d(M,{bordered:!1,class:"main-card"},{default:l(()=>[m("div",te,[m("div",se,[d(y,{value:t.search,"onUpdate:value":e[0]||(e[0]=a=>t.search=a),placeholder:"جستجوی شماره همراه یا نام...",style:{width:"260px"},allowClear:"",onSearch:e[1]||(e[1]=()=>{t.page=1,_()})},{prefix:l(()=>[d(u(G),{style:{color:"#94a3b8","margin-left":"4px"}})]),_:1},8,["value"]),d(K,{value:t.campaignId,"onUpdate:value":e[2]||(e[2]=a=>t.campaignId=a),placeholder:"فیلتر کمپین",allowClear:"",style:{width:"200px"},onChange:e[3]||(e[3]=()=>{t.page=1,_()})},{default:l(()=>[(n(!0),i(C,nul