mi-assessment/server/MiAssessment/src/MiAssessment.Admin/wwwroot/assets/index-kGU0g60M.js
2026-03-17 23:49:37 +08:00

2 lines
9.6 KiB
JavaScript

import{d as we,r as p,a as G,o as he,g as n,B as H,c as g,k as d,b as c,e as l,C as V,z as k,w as a,t as i,l as z,D as Ce,N as Ie,f as Ve,J as xe,L as Ue,s as Se,G as D,x as u,F as N,y as Q,E as R,_ as ze}from"./index-D3kwcp-p.js";import{c as De,d as Ne,f as Re,h as Le}from"./distribution-BAkpY53N.js";import{g as W}from"./user-DuGoK7rK.js";const Be={class:"page-container"},Fe={class:"page-header"},$e={class:"header-actions"},Te={class:"sub-text"},Ee={key:1,class:"sub-text"},je={class:"sub-text"},Oe={key:1,class:"sub-text"},Ae={key:0,class:"batch-actions"},Ge={class:"pagination-container"},Me={style:{display:"flex","justify-content":"space-between","align-items":"center"}},Ke={style:{color:"#909399","font-size":"12px"}},Pe={style:{color:"#909399","font-size":"12px"}},Je={key:1,class:"codes-list"},qe=we({__name:"index",setup(He){const L=p(!1),M=p([]),K=p(0),x=p([]),o=G({page:1,pageSize:10,code:void 0,batchNo:void 0,assignUserId:void 0,status:void 0}),C=p(!1),B=p(!1),F=p(),I=G({count:10}),X={count:[{required:!0,message:"请输入生成数量",trigger:"blur"}]},w=p(null),U=p(!1),h=p(!1),$=p(!1),T=p(),m=G({inviteCodeIds:[],userId:void 0}),Y={userId:[{required:!0,message:"请选择用户",trigger:"change"}]},E=p(!1),b=p([]),Z=async s=>{if(!s||s.length<1){b.value=[];return}E.value=!0;try{const e=await W({page:1,pageSize:20,nickname:s});if(e.code===0&&(b.value=e.data.list),b.value.length===0){const f=await W({page:1,pageSize:20,uid:s});f.code===0&&(b.value=f.data.list)}}finally{E.value=!1}},ee=s=>({1:"info",2:"warning",3:"success"})[s]||"",y=async()=>{L.value=!0;try{const s=await De(o);s.code===0&&(M.value=s.data.list,K.value=s.data.total)}finally{L.value=!1}},P=()=>{o.page=1,y()},te=()=>{o.code=void 0,o.batchNo=void 0,o.assignUserId=void 0,o.status=void 0,o.page=1,y()},le=s=>{o.pageSize=s,y()},ae=s=>{o.page=s,y()},se=s=>{x.value=s},oe=()=>{I.count=10,C.value=!0},ne=async()=>{if(F.value){await F.value.validate(),B.value=!0;try{const s=await Ne(I);s.code===0&&(R.success("生成成功"),C.value=!1,w.value=s.data,U.value=!0,y())}finally{B.value=!1}}},ie=s=>{m.inviteCodeIds=[s.id],m.userId=void 0,b.value=[],h.value=!0},de=()=>{m.inviteCodeIds=x.value.map(s=>s.id),m.userId=void 0,b.value=[],h.value=!0},ue=async()=>{if(T.value){await T.value.validate(),$.value=!0;try{(await Re({inviteCodeIds:m.inviteCodeIds,userId:m.userId})).code===0&&(R.success("分配成功"),h.value=!1,y())}finally{$.value=!1}}},re=async()=>{try{const s=await Le(o),e=s.data instanceof Blob?s.data:new Blob([s.data]),f=window.URL.createObjectURL(e),r=document.createElement("a");r.href=f,r.download=`邀请码_${new Date().toISOString().slice(0,10)}.xlsx`,r.click(),window.URL.revokeObjectURL(f),R.success("导出成功")}catch{R.error("导出失败")}};return he(()=>{y()}),(s,e)=>{const f=n("el-icon"),r=n("el-button"),j=n("el-input"),_=n("el-form-item"),O=n("el-form"),J=n("el-card"),v=n("el-table-column"),ce=n("el-text"),pe=n("el-tag"),me=n("el-table"),fe=n("el-pagination"),ve=n("el-input-number"),A=n("el-dialog"),ge=n("el-option"),_e=n("el-select"),q=n("el-descriptions-item"),be=n("el-descriptions"),ye=n("el-scrollbar"),S=H("permission"),ke=H("loading");return d(),g("div",Be,[c("div",Fe,[e[16]||(e[16]=c("h2",null,"邀请码管理",-1)),c("div",$e,[V((d(),k(r,{type:"primary",onClick:oe},{default:a(()=>[l(f,null,{default:a(()=>[l(z(Ce))]),_:1}),e[14]||(e[14]=i("批量生成 ",-1))]),_:1})),[[S,"distribution:create"]]),V((d(),k(r,{type:"success",onClick:re},{default:a(()=>[l(f,null,{default:a(()=>[l(z(Ie))]),_:1}),e[15]||(e[15]=i("导出 ",-1))]),_:1})),[[S,"distribution:view"]])])]),l(J,{class:"search-card",shadow:"never"},{default:a(()=>[l(O,{model:o,inline:""},{default:a(()=>[l(_,{label:"邀请码"},{default:a(()=>[l(j,{modelValue:o.code,"onUpdate:modelValue":e[0]||(e[0]=t=>o.code=t),placeholder:"请输入邀请码",clearable:"",onKeyup:Ve(P,["enter"])},null,8,["modelValue"])]),_:1}),l(_,{label:"批次号"},{default:a(()=>[l(j,{modelValue:o.batchNo,"onUpdate:modelValue":e[1]||(e[1]=t=>o.batchNo=t),placeholder:"请输入批次号",clearable:""},null,8,["modelValue"])]),_:1}),l(_,{label:"分配用户ID"},{default:a(()=>[l(j,{modelValue:o.assignUserId,"onUpdate:modelValue":e[2]||(e[2]=t=>o.assignUserId=t),modelModifiers:{number:!0},placeholder:"请输入用户ID",clearable:""},null,8,["modelValue"])]),_:1}),l(_,{label:"状态"},{default:a(()=>[l(xe,{modelValue:o.status,"onUpdate:modelValue":e[3]||(e[3]=t=>o.status=t),"dict-type":"invite_code_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),l(_,null,{default:a(()=>[l(r,{type:"primary",onClick:P},{default:a(()=>[l(f,null,{default:a(()=>[l(z(Ue))]),_:1}),e[17]||(e[17]=i("搜索",-1))]),_:1}),l(r,{onClick:te},{default:a(()=>[l(f,null,{default:a(()=>[l(z(Se))]),_:1}),e[18]||(e[18]=i("重置",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),l(J,{class:"table-card",shadow:"never"},{default:a(()=>[V((d(),k(me,{data:M.value,"row-key":"id",onSelectionChange:se},{default:a(()=>[l(v,{type:"selection",width:"50",selectable:t=>t.status===1},null,8,["selectable"]),l(v,{prop:"code",label:"邀请码",width:"150"},{default:a(({row:t})=>[l(ce,{class:"code-text",copyable:""},{default:a(()=>[i(u(t.code),1)]),_:2},1024)]),_:1}),l(v,{prop:"batchNo",label:"批次号",width:"180"}),l(v,{label:"分配用户","min-width":"120"},{default:a(({row:t})=>[t.assignUserId?(d(),g(N,{key:0},[c("div",null,u(t.assignUserNickname),1),c("div",Te,"ID: "+u(t.assignUserId),1)],64)):(d(),g("span",Ee,"-"))]),_:1}),l(v,{prop:"assignTime",label:"分配时间",width:"170"},{default:a(({row:t})=>[i(u(t.assignTime||"-"),1)]),_:1}),l(v,{label:"使用用户","min-width":"120"},{default:a(({row:t})=>[t.useUserId?(d(),g(N,{key:0},[c("div",null,u(t.useUserNickname),1),c("div",je,"ID: "+u(t.useUserId),1)],64)):(d(),g("span",Oe,"-"))]),_:1}),l(v,{prop:"useTime",label:"使用时间",width:"170"},{default:a(({row:t})=>[i(u(t.useTime||"-"),1)]),_:1}),l(v,{label:"状态",width:"100",align:"center"},{default:a(({row:t})=>[l(pe,{type:ee(t.status)},{default:a(()=>[i(u(t.statusName),1)]),_:2},1032,["type"])]),_:1}),l(v,{prop:"createTime",label:"创建时间",width:"170"}),l(v,{label:"操作",width:"100",fixed:"right"},{default:a(({row:t})=>[t.status===1?V((d(),k(r,{key:0,link:"",type:"primary",onClick:Qe=>ie(t)},{default:a(()=>[...e[19]||(e[19]=[i("分配",-1)])]),_:1},8,["onClick"])),[[S,"distribution:update"]]):D("",!0)]),_:1})]),_:1},8,["data"])),[[ke,L.value]]),x.value.length>0?(d(),g("div",Ae,[c("span",null,"已选择 "+u(x.value.length)+" 项",1),V((d(),k(r,{type:"primary",size:"small",onClick:de},{default:a(()=>[...e[20]||(e[20]=[i("批量分配",-1)])]),_:1})),[[S,"distribution:update"]])])):D("",!0),c("div",Ge,[l(fe,{"current-page":o.page,"onUpdate:currentPage":e[4]||(e[4]=t=>o.page=t),"page-size":o.pageSize,"onUpdate:pageSize":e[5]||(e[5]=t=>o.pageSize=t),"page-sizes":[10,20,50,100],total:K.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:le,onCurrentChange:ae},null,8,["current-page","page-size","total"])])]),_:1}),l(A,{modelValue:C.value,"onUpdate:modelValue":e[8]||(e[8]=t=>C.value=t),title:"批量生成邀请码",width:"400px"},{footer:a(()=>[l(r,{onClick:e[7]||(e[7]=t=>C.value=!1)},{default:a(()=>[...e[21]||(e[21]=[i("取消",-1)])]),_:1}),l(r,{type:"primary",loading:B.value,onClick:ne},{default:a(()=>[...e[22]||(e[22]=[i("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(O,{model:I,rules:X,ref_key:"generateFormRef",ref:F,"label-width":"100px"},{default:a(()=>[l(_,{label:"生成数量",prop:"count"},{default:a(()=>[l(ve,{modelValue:I.count,"onUpdate:modelValue":e[6]||(e[6]=t=>I.count=t),min:1,max:1e3,"controls-position":"right",style:{width:"100%"}},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(A,{modelValue:h.value,"onUpdate:modelValue":e[11]||(e[11]=t=>h.value=t),title:"分配邀请码",width:"500px"},{footer:a(()=>[l(r,{onClick:e[10]||(e[10]=t=>h.value=!1)},{default:a(()=>[...e[23]||(e[23]=[i("取消",-1)])]),_:1}),l(r,{type:"primary",loading:$.value,onClick:ue},{default:a(()=>[...e[24]||(e[24]=[i("确定",-1)])]),_:1},8,["loading"])]),default:a(()=>[l(O,{model:m,rules:Y,ref_key:"assignFormRef",ref:T,"label-width":"100px"},{default:a(()=>[l(_,{label:"邀请码数量"},{default:a(()=>[c("span",null,u(m.inviteCodeIds.length)+" 个",1)]),_:1}),l(_,{label:"分配用户",prop:"userId"},{default:a(()=>[l(_e,{modelValue:m.userId,"onUpdate:modelValue":e[9]||(e[9]=t=>m.userId=t),filterable:"",remote:"","reserve-keyword":"",placeholder:"输入昵称/手机号/UID搜索用户","remote-method":Z,loading:E.value,style:{width:"100%"}},{default:a(()=>[(d(!0),g(N,null,Q(b.value,t=>(d(),k(ge,{key:t.id,label:`${t.nickname} (${t.uid})`,value:t.id},{default:a(()=>[c("div",Me,[c("span",null,[i(u(t.nickname)+" ",1),c("span",Ke,u(t.uid),1)]),c("span",Pe,u(t.phone||"未绑定手机"),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue","loading"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue"]),l(A,{modelValue:U.value,"onUpdate:modelValue":e[13]||(e[13]=t=>U.value=t),title:"生成结果",width:"500px"},{footer:a(()=>[l(r,{type:"primary",onClick:e[12]||(e[12]=t=>U.value=!1)},{default:a(()=>[...e[26]||(e[26]=[i("确定",-1)])]),_:1})]),default:a(()=>[w.value?(d(),k(be,{key:0,column:1,border:""},{default:a(()=>[l(q,{label:"批次号"},{default:a(()=>[i(u(w.value.batchNo),1)]),_:1}),l(q,{label:"生成数量"},{default:a(()=>[i(u(w.value.count),1)]),_:1})]),_:1})):D("",!0),w.value?(d(),g("div",Je,[e[25]||(e[25]=c("div",{class:"codes-header"},"生成的邀请码:",-1)),l(ye,{height:"200px"},{default:a(()=>[(d(!0),g(N,null,Q(w.value.codes,t=>(d(),g("div",{class:"code-item",key:t},u(t),1))),128))]),_:1})])):D("",!0)]),_:1},8,["modelValue"])])}}}),Ze=ze(qe,[["__scopeId","data-v-f8b49e32"]]);export{Ze as default};