Files
Lucky_Wheel/apps/admin/dist/assets/SpinListView-CL9S5010.js
T
2026-09-11 11:22:33 +03:30

2 lines
5.6 KiB
JavaScript

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-iu4REYcj.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,null,P(A.value,a=>(n(),I(b,{key:a.id,value:a.id},{default:l(()=>[k(r(a.title),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])])]),d(F,{dataSource:w.value,columns:B,loading:v.value,rowKey:"id",size:"middle",pagination:{current:t.page,pageSize:t.pageSize,total:S.value,showTotal:a=>`مجموع: ${u(h)(a)} چرخش`,onChange:a=>{t.page=a,_()}}},{bodyCell:l(({column:a,record:s})=>{var L,D,R,N;return[a.key==="userMobile"?(n(),i("span",{key:0,class:"mobile-cell user-mobile-link",onClick:me=>s.userId?u(U).push(`/users/${s.userId}`):null},r(u(h)((L=s.user)==null?void 0:L.mobile)),9,ne)):a.key==="userName"?(n(),i("span",ie,r(((D=s.user)==null?void 0:D.name)||"—"),1)):a.key==="prizeTitle"?(n(),i(C,{key:2},[(R=s.prize)!=null&&R.title?(n(),i("span",le,r(s.prize.title),1)):(n(),i("span",oe,"بدون جایزه (پوچ)"))],64)):a.key==="prizeType"?(n(),i(C,{key:3},[(N=s.prize)!=null&&N.prizeType?(n(),I(T,{key:0},{default:l(()=>[k(r(W[s.prize.prizeType]||s.prize.prizeType),1)]),_:2},1024)):(n(),i("span",de,"—"))],64)):a.key==="isWin"?(n(),I(T,{key:4,color:s.isWin?"green":"default",class:"status-tag"},{default:l(()=>[m("span",{class:"status-dot",style:J({backgroundColor:s.isWin?"#10b981":"#94a3b8"})},null,4),k(" "+r(s.isWin?"برنده":"پوچ"),1)]),_:2},1032,["color"])):a.key==="idempotencyKey"?(n(),i("code",pe,r(s.idempotencyKey),1)):a.key==="ipAddress"?(n(),i("span",re,r(u(h)(s.ipAddress)),1)):a.key==="createdAt"?(n(),i("span",ce,r(u(h)(new Date(s.createdAt).toLocaleString("fa-IR"))),1)):Q("",!0)]}),_:1},8,["dataSource","loading","pagination"])]),_:1})])}}}),ke=Z(ue,[["__scopeId","data-v-aaf12675"]]);export{ke as default};