2 lines
11 KiB
JavaScript
2 lines
11 KiB
JavaScript
import{D as ge,B as ye,C as ve,R as be,i as ke,L as Ve,m as we,l as Ee,M as xe,N as Ce,v as Re,S as Ue,T as Se,U as he,G as De,I as ze,P as Ae,Q as Te,V as Be,E as V,a as F}from"./element-plus-Bolc0EfP.js";import{_ as Ie}from"./DataPanel.vue_vue_type_script_setup_true_lang-W9hX7GcI.js";import{_ as Le}from"./FilterPanel.vue_vue_type_script_setup_true_lang-Ddv5cKss.js";import{w as Oe}from"./@vue/runtime-dom-DDAG46FW.js";import{a as Pe,b as M,c as Ne,d as Fe,e as Me}from"./asset-CWk0xFbU.js";import{_ as $e}from"./picker-CB1VezxD.js";import{U as $}from"./index-BK2tOS24.js";import{f as je,b as qe,ak as r,I as k,a as t,aN as l,O as n,aP as Ye,G as f,H as w,J as j,F as Ge,ap as Qe,A as Ke}from"./@vue/runtime-core-C6bnekPw.js";import{Q as x}from"./@vue/shared-mAAVTE9n.js";import{n as m,r as z}from"./@vue/reactivity-DiY1c2vO.js";import"./@element-plus/icons-vue-B0jSCQ-G.js";import"./lodash-es-C2A-Pj28.js";import"./@popperjs/core-C5az9QE8.js";import"./dayjs-DG77mNTn.js";import"./lodash-D3kF6u-c.js";import"./@ctrl/tinycolor-BuyEbX8F.js";import"./async-validator-CFA_igpM.js";import"./normalize-wheel-es-BQoi3Ox2.js";import"./index-B6p-ZV3k.js";import"./jspdf-BsthCvR5.js";import"./@babel/runtime-BanGtE2-.js";import"./fflate-_ayOYiT1.js";import"./vue-router-QlpZ4wdW.js";import"./pinia-B8cvXbiZ.js";import"./axios-C80V62Fs.js";import"./@vueuse/core-1S4fJlii.js";import"./@vueuse/shared-Cl3lVqjz.js";import"./css-color-function-DI01JAaZ.js";import"./balanced-match-BdS7OldZ.js";import"./color-B2zxaWkI.js";import"./clone-DBZ6_OiU.js";import"./color-convert-OrFsTA_V.js";import"./color-name-Dju3oUBS.js";import"./color-string-pUQDDJII.js";import"./ms-CzQ2E3wO.js";import"./vue-clipboard3-DByT_rEQ.js";import"./clipboard-CHgxszqY.js";import"./echarts-CNLwa9wG.js";import"./tslib-BDyQ-Jie.js";import"./zrender-DRNXw7y3.js";import"./highlight.js-Bxt7hFFy.js";import"./@highlightjs/vue-plugin-C4onkBvW.js";import"./index-BEsrPt83.js";import"./index-BidU9ngF.js";import"./index.vue_vue_type_script_setup_true_lang-EJPdzUeK.js";import"./index-CGJON9HS.js";import"./index.vue_vue_type_script_setup_true_lang-Lcfr_gGB.js";import"./file-BE-zRsES.js";import"./usePaging-VsbTxSU0.js";import"./vuedraggable-5bKFmC7X.js";import"./vue-BVs68q8v.js";import"./@vue/compiler-dom-CqayqxS7.js";import"./@vue/compiler-core-CvbQOXIO.js";import"./sortablejs-dsEAUXlE.js";import"./cos-js-sdk-v5-DSMN0LUT.js";const He={class:"asset-resource-container"},Je={key:0,class:"text-sm text-gray-500"},We={key:1},Xe={key:0,class:"w-full"},Ze=["title"],ll=je({__name:"index",setup(et){const C=m(!1),A=m([]),T=m(0),c=m([]),s=z({title:"",dateRange:[]}),u=z({type:"1",page_no:1,page_size:15}),v=m(!1),R=m(!1),U=m(),g=m(!1),S=m(0),B=m([]),i=z({type:1,title:"",file_url:"",cover_url:"",user_ids:[]}),q=(a,e,p)=>{if(Array.isArray(e)){if(!e.length)return p(new Error("请上传资源文件"))}else if(!e)return p(new Error("请输入或上传文件获取链接"));p()},Y=Ke(()=>g.value?{title:[{required:!0,message:"请输入标题",trigger:"blur"}]}:{title:[{required:!0,message:"请输入标题",trigger:"blur"}],file_url:[{required:!0,validator:q,trigger:"change"}]}),G=()=>{const a={...u};return s.title&&(a.title=s.title),s.dateRange&&s.dateRange.length===2&&(a.start_time=s.dateRange[0],a.end_time=s.dateRange[1]),a},_=async()=>{C.value=!0;try{const a=await Pe(G());A.value=a.lists,T.value=a.count,c.value=[]}catch(a){console.error(a)}finally{C.value=!1}},I=async()=>{try{const a=await Me({page_no:1,page_size:9999});B.value=a.lists}catch(a){console.error(a)}},L=()=>{u.page_no=1,_()},Q=()=>{s.title="",s.dateRange=[],u.page_no=1,_()},K=()=>{u.page_no=1,_()},H=()=>{g.value=!1,S.value=0,Object.assign(i,{type:parseInt(u.type),title:"",file_url:"",cover_url:"",user_ids:[]}),I(),v.value=!0},J=a=>{var e;g.value=!0,S.value=a.id,Object.assign(i,{type:a.type,title:a.title,file_url:a.file_url,cover_url:a.cover_url||"",user_ids:((e=a.users)==null?void 0:e.map(p=>p.id))||[]}),I(),v.value=!0},O=a=>{var e,p;i.file_url=((e=a==null?void 0:a.data)==null?void 0:e.uri)||((p=a==null?void 0:a.data)==null?void 0:p.url)||"",V.success("上传成功")},W=async a=>{try{await F.confirm("确定要删除该资源吗?用户将无法再看到。","提示",{type:"warning"}),await M({id:a.id}),V.success("删除成功"),_()}catch{}},X=a=>{c.value=a.map(e=>Number(e.id)).filter(e=>e>0)},Z=async()=>{if(c.value.length)try{await F.confirm(`确定要删除选中的 ${c.value.length} 个资源吗?用户将无法再看到。`,"提示",{type:"warning"}),await M({id:c.value}),V.success("删除成功"),_()}catch{}},ee=async()=>{U.value&&await U.value.validate(async a=>{if(a){R.value=!0;try{g.value?(await Ne({id:S.value,title:i.title,user_ids:i.user_ids}),V.success("编辑成功")):(await Fe(i),V.success("上传分发成功")),v.value=!1,_()}catch(e){console.error(e)}finally{R.value=!1}}})};return qe(()=>{_()}),(a,e)=>{const p=ve,y=ye,te=be,d=ke,P=ge,le=Le,h=Ee,ae=we,b=Ce,oe=Re,ie=Ue,re=Se,ne=xe,se=he,ue=Ie,D=ze,pe=De,de=Te,me=Ae,_e=Be,fe=Ve;return r(),k("div",He,[t(le,null,{default:l(()=>[t(P,{class:"ls-form",model:s,inline:""},{default:l(()=>[t(y,{class:"w-[280px]",label:"标题"},{default:l(()=>[t(p,{placeholder:"请输入标题关键词",modelValue:s.title,"onUpdate:modelValue":e[0]||(e[0]=o=>s.title=o),clearable:"",onKeyup:Oe(L,["enter"])},null,8,["modelValue"])]),_:1}),t(y,{label:"上传时间"},{default:l(()=>[t(te,{modelValue:s.dateRange,"onUpdate:modelValue":e[1]||(e[1]=o=>s.dateRange=o),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",clearable:"",style:{width:"280px"}},null,8,["modelValue"])]),_:1}),t(y,null,{default:l(()=>[t(d,{type:"primary",onClick:L},{default:l(()=>[...e[11]||(e[11]=[n("查询",-1)])]),_:1}),t(d,{onClick:Q},{default:l(()=>[...e[12]||(e[12]=[n("重置",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),Ye((r(),f(ue,null,{toolbar:l(()=>[t(d,{type:"primary",onClick:H},{default:l(()=>[...e[13]||(e[13]=[n("上传资源",-1)])]),_:1}),t(d,{type:"danger",disabled:c.value.length===0,onClick:Z},{default:l(()=>[...e[14]||(e[14]=[n(" 批量删除 ",-1)])]),_:1},8,["disabled"]),c.value.length>0?(r(),k("span",Je,"已选 "+x(c.value.length)+" 条",1)):w("",!0)]),footer:l(()=>[t(se,{"current-page":u.page_no,"onUpdate:currentPage":e[3]||(e[3]=o=>u.page_no=o),"page-size":u.page_size,"onUpdate:pageSize":e[4]||(e[4]=o=>u.page_size=o),total:T.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:_,onCurrentChange:_},null,8,["current-page","page-size","total"])]),default:l(()=>[t(ae,{modelValue:u.type,"onUpdate:modelValue":e[2]||(e[2]=o=>u.type=o),onTabChange:K},{default:l(()=>[t(h,{label:"图片",name:"1"}),t(h,{label:"视频",name:"2"}),t(h,{label:"语音",name:"3"})]),_:1},8,["modelValue"]),t(ne,{data:A.value,onSelectionChange:X},{default:l(()=>[t(b,{type:"selection",width:"55"}),t(b,{prop:"title",label:"标题","min-width":"80"}),t(b,{label:"预览",width:"100"},{default:l(({row:o})=>[o.type==1?(r(),f(oe,{key:0,src:o.file_url,style:{width:"50px",height:"50px"},"preview-src-list":[o.file_url],"preview-teleported":""},null,8,["src","preview-src-list"])):(r(),f(ie,{key:1,href:o.file_url,target:"_blank",type:"primary"},{default:l(()=>[...e[15]||(e[15]=[n("点击预览",-1)])]),_:1},8,["href"]))]),_:1}),t(b,{label:"关联账号","min-width":"150","show-overflow-tooltip":""},{default:l(({row:o})=>{var E,N;return[(E=o.users)!=null&&E.length?(r(),k("span",We,x((N=o.users)==null?void 0:N.map(ce=>ce.phone).join(", ")),1)):(r(),f(re,{key:0,type:"info",size:"small"},{default:l(()=>[...e[16]||(e[16]=[n("公开资源",-1)])]),_:1}))]}),_:1}),t(b,{prop:"create_time",label:"上传时间",width:"180"}),t(b,{label:"操作",width:"150",fixed:"right"},{default:l(({row:o})=>[t(d,{type:"primary",link:"",onClick:E=>J(o)},{default:l(()=>[...e[17]||(e[17]=[n("编辑",-1)])]),_:1},8,["onClick"]),t(d,{type:"danger",link:"",onClick:E=>W(o)},{default:l(()=>[...e[18]||(e[18]=[n("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1},8,["data"])]),_:1})),[[fe,C.value]]),t(_e,{modelValue:v.value,"onUpdate:modelValue":e[10]||(e[10]=o=>v.value=o),title:g.value?"编辑资源":"新增分发资源",width:"600px","destroy-on-close":""},{footer:l(()=>[t(d,{onClick:e[9]||(e[9]=o=>v.value=!1)},{default:l(()=>[...e[26]||(e[26]=[n("取消",-1)])]),_:1}),t(d,{type:"primary",onClick:ee,loading:R.value},{default:l(()=>[n(x(g.value?"保存修改":"确定发布"),1)]),_:1},8,["loading"])]),default:l(()=>[t(P,{ref_key:"formRef",ref:U,model:i,rules:Y.value,"label-width":"100px"},{default:l(()=>[g.value?w("",!0):(r(),f(y,{key:0,label:"资源类型",prop:"type"},{default:l(()=>[t(pe,{modelValue:i.type,"onUpdate:modelValue":e[5]||(e[5]=o=>i.type=o)},{default:l(()=>[t(D,{label:1},{default:l(()=>[...e[19]||(e[19]=[n("图片",-1)])]),_:1}),t(D,{label:2},{default:l(()=>[...e[20]||(e[20]=[n("视频",-1)])]),_:1}),t(D,{label:3},{default:l(()=>[...e[21]||(e[21]=[n("语音",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1})),t(y,{label:"标题",prop:"title"},{default:l(()=>[t(p,{modelValue:i.title,"onUpdate:modelValue":e[6]||(e[6]=o=>i.title=o),placeholder:"请输入资源标题"},null,8,["modelValue"])]),_:1}),g.value?w("",!0):(r(),f(y,{key:1,label:"资源文件",prop:"file_url"},{default:l(()=>[i.type===1?(r(),k("div",Xe,[t($e,{modelValue:i.file_url,"onUpdate:modelValue":e[7]||(e[7]=o=>i.file_url=o),limit:9,type:"image"},null,8,["modelValue"]),e[22]||(e[22]=j("div",{style:{"font-size":"12px",color:"#909399","margin-top":"4px"}},"支持批量上传多张图片,一次最多 9 张,每张图片将生成一条独立资源(多张时标题自动追加序号)",-1))])):i.type===2?(r(),f($,{key:1,type:"video",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:O},{default:l(()=>[t(d,{type:"primary"},{default:l(()=>[...e[23]||(e[23]=[n("上传视频 (OSS直传)",-1)])]),_:1})]),_:1})):i.type===3?(r(),f($,{key:2,type:"voice",direct:"",multiple:!1,limit:1,"show-progress":!0,onSuccess:O},{default:l(()=>[t(d,{type:"primary"},{default:l(()=>[...e[24]||(e[24]=[n("上传语音 (OSS直传)",-1)])]),_:1})]),_:1})):w("",!0),i.file_url&&i.type!==1?(r(),k("div",{key:3,class:"ml-4 text-primary truncate max-w-xs",title:i.file_url}," 已上传: "+x(i.file_url),9,Ze)):w("",!0)]),_:1})),t(y,{label:"关联账号",prop:"user_ids"},{default:l(()=>[t(me,{modelValue:i.user_ids,"onUpdate:modelValue":e[8]||(e[8]=o=>i.user_ids=o),multiple:"",filterable:"",placeholder:"不选择则为公开资源",clearable:"",style:{width:"100%"}},{default:l(()=>[(r(!0),k(Ge,null,Qe(B.value,o=>(r(),f(de,{key:o.id,label:o.phone,value:o.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e[25]||(e[25]=j("div",{style:{"font-size":"12px",color:"#909399","margin-top":"4px"}},"不选择账号则资源为公开资源,所有人可见",-1))]),_:1})]),_:1},8,["model","rules"])]),_:1},8,["modelValue","title"])])}}});export{ll as default};
|