2 lines
8.6 KiB
JavaScript
2 lines
8.6 KiB
JavaScript
import{o as de,ap as pe,q as n,r as v,v as t,D as l,b9 as me,b6 as _e,b7 as fe,b8 as ce,bp as ge,K as ye,L as i,bg as be,s as V,Y as ve,X as ke,ac as Ve,O as m,bj as Ee,bk as we,aa as xe,bq as Ce,br as Re,T as S,bi as Ue,bs as ze,bc as De,bf as Se,P as E,bm as Ae,F as Te,G as Le,bn as Oe,bt as he,M as _,ba as A,p as Pe,E as w,e as je}from"./.pnpm-BGZW0UGg.js";import{a as qe,b as Be,c as Fe,d as Me,e as Ie}from"./asset-B1LB9rHw.js";import{_ as Ye}from"./picker-uwVhCb3U.js";import{U as M}from"./index-DmJsTQNR.js";import"./index-CTzEhZ24.js";import"./index-B99pjMPF.js";import"./index-BauW3iNq.js";import"./index.vue_vue_type_script_setup_true_lang-ByFSC-yR.js";import"./index-ag3Z2xAC.js";import"./index.vue_vue_type_script_setup_true_lang-DBx_F7yj.js";import"./file-BQ0rU-P3.js";import"./usePaging-C4oc3vBq.js";const Ne={class:"asset-resource-container"},Ke={class:"mb-4"},$e={key:1},Ge={class:"mt-4 flex justify-end"},Qe={key:0,class:"w-full"},Xe=["title"],ut=de({__name:"index",setup(He){const x=_(!1),T=_([]),L=_(0),r=A({title:"",dateRange:[]}),u=A({type:"1",page_no:1,page_size:15}),y=_(!1),C=_(!1),R=_(),f=_(!1),U=_(0),O=_([]),s=A({type:1,title:"",file_url:"",cover_url:"",user_ids:[]}),I=(o,e,d)=>{if(Array.isArray(e)){if(!e.length)return d(new Error("请上传资源文件"))}else if(!e)return d(new Error("请输入或上传文件获取链接"));d()},Y=Pe(()=>f.value?{title:[{required:!0,message:"请输入标题",trigger:"blur"}]}:{title:[{required:!0,message:"请输入标题",trigger:"blur"}],file_url:[{required:!0,validator:I,trigger:"change"}]}),N=()=>{const o={...u};return r.title&&(o.title=r.title),r.dateRange&&r.dateRange.length===2&&(o.start_time=r.dateRange[0],o.end_time=r.dateRange[1]),o},c=async()=>{x.value=!0;try{const o=await qe(N());T.value=o.lists,L.value=o.count}catch(o){console.error(o)}finally{x.value=!1}},h=async()=>{try{const o=await Ie({page_no:1,page_size:9999});O.value=o.lists}catch(o){console.error(o)}},P=()=>{u.page_no=1,c()},K=()=>{r.title="",r.dateRange=[],u.page_no=1,c()},$=()=>{u.page_no=1,c()},G=()=>{f.value=!1,U.value=0,Object.assign(s,{type:parseInt(u.type),title:"",file_url:"",cover_url:"",user_ids:[]}),h(),y.value=!0},Q=o=>{var e;f.value=!0,U.value=o.id,Object.assign(s,{type:o.type,title:o.title,file_url:o.file_url,cover_url:o.cover_url||"",user_ids:((e=o.users)==null?void 0:e.map(d=>d.id))||[]}),h(),y.value=!0},j=o=>{var e,d;s.file_url=((e=o==null?void 0:o.data)==null?void 0:e.uri)||((d=o==null?void 0:o.data)==null?void 0:d.url)||"",w.success("上传成功")},X=async o=>{try{await je.confirm("确定要删除该资源吗?用户将无法再看到。","提示",{type:"warning"}),await Be({id:o.id}),w.success("删除成功"),c()}catch{}},H=async()=>{R.value&&await R.value.validate(async o=>{if(o){C.value=!0;try{f.value?(await Fe({id:U.value,title:s.title,user_ids:s.user_ids}),w.success("编辑成功")):(await Me(s),w.success("上传分发成功")),y.value=!1,c()}catch(e){console.error(e)}finally{C.value=!1}}})};return pe(()=>{c()}),(o,e)=>{const d=fe,g=_e,J=ge,p=ye,q=me,B=be,z=ke,W=ve,b=we,Z=xe,ee=Ce,te=Re,le=Ee,ae=ze,D=Se,oe=De,se=Oe,ne=Ae,ie=he,re=Ue;return n(),v("div",Ne,[t(B,{class:"!border-none",shadow:"never"},{default:l(()=>[t(q,{class:"ls-form",model:r,inline:""},{default:l(()=>[t(g,{class:"w-[280px]",label:"标题"},{default:l(()=>[t(d,{placeholder:"请输入标题关键词",modelValue:r.title,"onUpdate:modelValue":e[0]||(e[0]=a=>r.title=a),clearable:"",onKeyup:ce(P,["enter"])},null,8,["modelValue"])]),_:1}),t(g,{label:"上传时间"},{default:l(()=>[t(J,{modelValue:r.dateRange,"onUpdate:modelValue":e[1]||(e[1]=a=>r.dateRange=a),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:"",style:{width:"280px"}},null,8,["modelValue"])]),_:1}),t(g,null,{default:l(()=>[t(p,{type:"primary",onClick:P},{default:l(()=>[...e[11]||(e[11]=[i("查询",-1)])]),_:1}),t(p,{onClick:K},{default:l(()=>[...e[12]||(e[12]=[i("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t(B,{class:"!border-none mt-4",shadow:"never"},{default:l(()=>[V("div",Ke,[t(p,{type:"primary",onClick:G},{default:l(()=>[...e[13]||(e[13]=[i("上传资源",-1)])]),_:1})]),t(W,{modelValue:u.type,"onUpdate:modelValue":e[2]||(e[2]=a=>u.type=a),onTabChange:$},{default:l(()=>[t(z,{label:"图片",name:"1"}),t(z,{label:"视频",name:"2"}),t(z,{label:"语音",name:"3"})]),_:1},8,["modelValue"]),Ve((n(),m(le,{data:T.value},{default:l(()=>[t(b,{prop:"title",label:"标题","min-width":"80"}),t(b,{label:"预览",width:"100"},{default:l(({row:a})=>[a.type==1?(n(),m(Z,{key:0,src:a.file_url,style:{width:"50px",height:"50px"},"preview-src-list":[a.file_url],"preview-teleported":""},null,8,["src","preview-src-list"])):(n(),m(ee,{key:1,href:a.file_url,target:"_blank",type:"primary"},{default:l(()=>[...e[14]||(e[14]=[i("点击预览",-1)])]),_:1},8,["href"]))]),_:1}),t(b,{label:"关联账号","min-width":"150","show-overflow-tooltip":""},{default:l(({row:a})=>{var k,F;return[(k=a.users)!=null&&k.length?(n(),v("span",$e,S((F=a.users)==null?void 0:F.map(ue=>ue.phone).join(", ")),1)):(n(),m(te,{key:0,type:"info",size:"small"},{default:l(()=>[...e[15]||(e[15]=[i("公开资源",-1)])]),_:1}))]}),_:1}),t(b,{prop:"create_time",label:"上传时间",width:"180"}),t(b,{label:"操作",width:"150",fixed:"right"},{default:l(({row:a})=>[t(p,{type:"primary",link:"",onClick:k=>Q(a)},{default:l(()=>[...e[16]||(e[16]=[i("编辑",-1)])]),_:1},8,["onClick"]),t(p,{type:"danger",link:"",onClick:k=>X(a)},{default:l(()=>[...e[17]||(e[17]=[i("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])),[[re,x.value]]),V("div",Ge,[t(ae,{"current-page":u.page_no,"onUpdate:currentPage":e[3]||(e[3]=a=>u.page_no=a),"page-size":u.page_size,"onUpdate:pageSize":e[4]||(e[4]=a=>u.page_size=a),total:L.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:c,onCurrentChange:c},null,8,["current-page","page-size","total"])])]),_:1}),t(ie,{modelValue:y.value,"onUpdate:modelValue":e[10]||(e[10]=a=>y.value=a),title:f.value?"编辑资源":"新增分发资源",width:"600px","destroy-on-close":""},{footer:l(()=>[t(p,{onClick:e[9]||(e[9]=a=>y.value=!1)},{default:l(()=>[...e[25]||(e[25]=[i("取消",-1)])]),_:1}),t(p,{type:"primary",onClick:H,loading:C.value},{default:l(()=>[i(S(f.value?"保存修改":"确定发布"),1)]),_:1},8,["loading"])]),default:l(()=>[t(q,{ref_key:"formRef",ref:R,model:s,rules:Y.value,"label-width":"100px"},{default:l(()=>[f.value?E("",!0):(n(),m(g,{key:0,label:"资源类型",prop:"type"},{default:l(()=>[t(oe,{modelValue:s.type,"onUpdate:modelValue":e[5]||(e[5]=a=>s.type=a)},{default:l(()=>[t(D,{label:1},{default:l(()=>[...e[18]||(e[18]=[i("图片",-1)])]),_:1}),t(D,{label:2},{default:l(()=>[...e[19]||(e[19]=[i("视频",-1)])]),_:1}),t(D,{label:3},{default:l(()=>[...e[20]||(e[20]=[i("语音",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})),t(g,{label:"标题",prop:"title"},{default:l(()=>[t(d,{modelValue:s.title,"onUpdate:modelValue":e[6]||(e[6]=a=>s.title=a),placeholder:"请输入资源标题"},null,8,["modelValue"])]),_:1}),f.value?E("",!0):(n(),m(g,{key:1,label:"资源文件",prop:"file_url"},{default:l(()=>[s.type===1?(n(),v("div",Qe,[t(Ye,{modelValue:s.file_url,"onUpdate:modelValue":e[7]||(e[7]=a=>s.file_url=a),limit:9,type:"image"},null,8,["modelValue"]),e[21]||(e[21]=V("div",{style:{"font-size":"12px",color:"#909399","margin-top":"4px"}},"支持批量上传多张图片,一次最多 9 张,每张图片将生成一条独立资源(多张时标题自动追加序号)",-1))])):s.type===2?(n(),m(M,{key:1,type:"video",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:j},{default:l(()=>[t(p,{type:"primary"},{default:l(()=>[...e[22]||(e[22]=[i("上传视频 (OSS直传)",-1)])]),_:1})]),_:1})):s.type===3?(n(),m(M,{key:2,type:"voice",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:j},{default:l(()=>[t(p,{type:"primary"},{default:l(()=>[...e[23]||(e[23]=[i("上传语音 (OSS直传)",-1)])]),_:1})]),_:1})):E("",!0),s.file_url&&s.type!==1?(n(),v("div",{key:3,class:"ml-4 text-primary truncate max-w-xs",title:s.file_url}," 已上传: "+S(s.file_url),9,Xe)):E("",!0)]),_:1})),t(g,{label:"关联账号",prop:"user_ids"},{default:l(()=>[t(ne,{modelValue:s.user_ids,"onUpdate:modelValue":e[8]||(e[8]=a=>s.user_ids=a),multiple:"",filterable:"",placeholder:"不选择则为公开资源",clearable:"",style:{width:"100%"}},{default:l(()=>[(n(!0),v(Te,null,Le(O.value,a=>(n(),m(se,{key:a.id,label:a.phone,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e[24]||(e[24]=V("div",{style:{"font-size":"12px",color:"#909399","margin-top":"4px"}},"不选择账号则资源为公开资源,所有人可见",-1))]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}});export{ut as default};
|