| 12345678 |
- import{_ as L,i as X,r as a,j as V,o as c,d as _,w as r,k as U,c as g,m as P,f as l,b as n,l as m,t as b,p as j,q as Y,s as Z,u as x,v as N,x as ee,y as te,z as se,A as le,B as oe,C as ne,a as D,F as z,n as O}from"./index-34ec9885.js";const ie={data(){return{url:"",loading:!1,visible:!1,item:{}}},methods:{handleOpen(t={}){this.item=t,this.visible=!0,this.url=location.origin+"/view.html?id="+this.item.id},handleContent(){location.href="/index.zip"},handleExport(){this.loading=!0,X(this.item.id).then(t=>{const e=t.data.data;let d={detail:JSON.parse(e.config.detail),component:JSON.parse(e.config.component)};const u=new Blob([`//将大屏配置文件view.js 放入部署容器根目录
- const option =${JSON.stringify(d,null,4)}`],{type:"text/plain;charset=utf-8"});saveAs(u,"view.js"),this.loading=!1,this.$message.success("大屏导出成功")}).catch(t=>{console.log(t),this.$message.error("大屏导出失败"),this.loading=!1})}}},ae={class:"item"},re={class:"content"},de={style:{width:"100%"}},ce={style:{width:"100%"}},ue={class:"item"},he={class:"content"},pe={style:{width:"100%"}},ge={class:"item"},_e={class:"content"},me=["href"];function fe(t,e,d,u,s,i){const f=a("el-button"),h=a("el-dialog"),v=V("highlight"),k=V("loading");return c(),_(h,{title:`【${s.item.title}】打包部署`,modelValue:s.visible,"onUpdate:modelValue":e[0]||(e[0]=y=>s.visible=y),"close-on-click-modal":!1,class:"avue-dialog",width:"50%"},{default:r(()=>[U((c(),g("div",P({class:"avue-tip"},t.$loadingParams),[l("div",ae,[e[4]||(e[4]=l("div",{class:"header"}," 第一步:下载部署容器(必须) ",-1)),l("div",re,[l("div",de,[n(f,{type:"primary",icon:"el-icon-suitcase",onClick:i.handleContent},{default:r(()=>[...e[1]||(e[1]=[m("下载容器",-1)])]),_:1},8,["onClick"])]),e[3]||(e[3]=l("p",null,"下载部署容器。配置 Nginx,参考如下:",-1)),l("div",ce,[U((c(),g("p",null,[...e[2]||(e[2]=[l("pre",null,[l("code",null,`
- location / {
- root /;
- index index.html;
- try_files $uri $uri/ /index.html;
- }
- `),m()],-1)])])),[[v]])])])]),l("div",ue,[e[7]||(e[7]=l("div",{class:"header"}," 第二步:下载大屏配置文件 ",-1)),l("div",he,[l("div",pe,[n(f,{type:"primary",icon:"el-icon-download",onClick:i.handleExport},{default:r(()=>[...e[5]||(e[5]=[m("下载大屏配置文件",-1)])]),_:1},8,["onClick"])]),e[6]||(e[6]=l("p",null,"1.【本地文件】下载大屏配置文件。将大屏配置文件view.js 放入部署容器根目录。",-1)),l("p",null,"2.【云端加载】无需下载大屏配置文件,访问第一步下载的容器中index.html文件,url中带大屏参数/index.html?id="+b(s.item.id),1)])]),l("div",ge,[e[9]||(e[9]=l("div",{class:"header"}," iframe嵌入 ",-1)),l("div",_e,[l("p",null,[e[8]||(e[8]=m("嵌入地址:",-1)),l("a",{href:s.url,target:"_blank"},b(s.url),9,me)])])])],16)),[[k,s.loading]])]),_:1},8,["title","modelValue"])}const be=L(ie,[["render",fe]]),ve={props:{category:String},data(){return{loading:!1,box:!1}},methods:{uploadFile(t){this.loading=!0;const e=new FileReader;e.readAsText(t.raw,"UTF-8"),e.onload=d=>{const u=d.target.result;let s=JSON.parse(u)||{},i=s.detail,f=s.component;if(!s.detail){this.loading=!1,this.$message.error("导入文件格式错误");return}let h={category:this.category,title:i.name,name:i.name,width:i.width,height:i.height,component:JSON.stringify(f)};j(h).then(v=>{this.loading=!1;let y=v.data.data.id;this.$message.success("导入成功"),this.box=!1,setTimeout(()=>{let C=this.$router.resolve({path:"/build/"+y});window.open(C.href,"_blank")},300)}).catch(()=>{this.loading=!1})}}}};function ye(t,e,d,u,s,i){const f=a("el-icon-upload"),h=a("el-icon"),v=a("el-upload"),k=a("el-dialog"),y=V("loading");return c(),_(k,{title:"导入大屏",width:"30%",class:"avue-dialog","close-on-click-modal":!1,modelValue:s.box,"onUpdate:modelValue":e[0]||(e[0]=C=>s.box=C)},{default:r(()=>[U((c(),g("div",Y(Z(t.$loadingParams)),[s.box?(c(),_(v,{key:0,drag:"",action:"#","show-file-list":!1,"auto-upload":!1,"on-change":i.uploadFile},{default:r(()=>[n(h,null,{default:r(()=>[n(f)]),_:1}),e[1]||(e[1]=l("div",{class:"el-upload__text"},[m("将文件拖到此处,或"),l("em",null,"点击上传")],-1))]),_:1},8,["on-change"])):x("",!0)],16)),[[y,s.loading]])]),_:1},8,["modelValue"])}const we=L(ve,[["render",ye]]),ke={name:"list",components:{exportTip:be,importTip:we},data(){return{search:{},screenList:[{label:"Desktop(默认)",width:1920,height:1080,icon:"desktop"},{label:"MacBook pro",width:1440,height:900,icon:"mac"},{label:"iPad pro",width:1366,height:1024,icon:"pad"},{label:"手机 Max",width:430,height:932,icon:"phone"},{label:"自定义",width:"-",height:"-",icon:"slot"}],loading1:!1,loading:!1,index:-1,height:0,typeList:[],box:!1,url:N,addColumn:[{label:"分组",prop:"category",span:24,type:"select",dicUrl:N+"/category/list",props:{label:"categoryKey",value:"categoryValue"},rules:[{required:!0,message:"请选择分组",trigger:"blur"}]},{label:"大屏名称",span:24,prop:"title",rules:[{required:!0,message:"请输入大屏名称",trigger:"blur"}]},{label:"密码",span:24,type:"password",labelWidth:100,prop:"password"},{label:"大屏尺寸",span:24,prop:"screen"},{label:"",span:14,prop:"width",display:!1,placeholder:"请输入宽度",rules:[{required:!0,message:"请输入宽度",trigger:"blur"}]},{label:"",span:10,labelWidth:1,display:!1,prop:"height",placeholder:"请输入高度",rules:[{required:!0,message:"请输入高度",trigger:"blur"}]},{label:"缩略图",span:24,prop:"backgroundUrl"}],editColumn:[{label:"分组",prop:"category",span:24,type:"select",dicUrl:N+"/category/list",props:{label:"categoryKey",value:"categoryValue"},rules:[{required:!0,message:"请选择分组",trigger:"blur"}]},{label:"大屏名称",span:24,prop:"title",rules:[{required:!0,message:"请输入大屏名称",trigger:"blur"}]},{label:"密码",span:24,type:"password",labelWidth:100,prop:"password"},{label:"发布状态",prop:"status",span:24,type:"select",dicData:[{label:"未发布",value:0},{label:"已发布",value:1}]},{label:"缩略图",span:24,prop:"backgroundUrl"}],option:{emptyBtn:!1,submitBtn:!1,labelWidth:100,column:[]},page:{page:1,size:50,total:0},form:{},activeName:"",list:[],importBox:!0,publicPath:"/DataV/"}},created(){this.getCategory()},computed:{isEdit(){return!!this.form.id},screenActive(){let t=this.screenList.length,e=this.screenList.findIndex(d=>d.width==this.form.width&&d.height==this.form.height);return e==-1?t-1:e}},methods:{handleImport(){this.$refs.importTip.box=!0},handleTabClick(t){this.activeName=t.props.name,this.page.currentPage=1,this.getList()},onProgress(){this.loading1=!0},onSuccess(t){const e=t.data.link;this.loading1=!1,this.form.backgroundUrl=e},validData(t){const e=[];for(var d=0;d<20;d++)e.push(d);return e.includes(t)},getCategory(){ee().then(t=>{const e=t.data.data;this.typeList=e,this.activeName=(e[0]||{}).categoryValue,this.getList()})},handleExport(t){this.$refs.exportTip.handleOpen(t)},handleCopy(t){if(this.$website.isDemo){this.$message.error(this.$website.isDemoTip);return}this.$confirm("确认复制当前大屏","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{te(t.id).then(e=>{this.$message.success("复制成功");const d=e.data.data;this.handleEdit({id:d})})}).catch(()=>{})},handleDel(t,e){this.$confirm("是否确认永久删除?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{if(this.validData(e)&&this.$website.isDemo)return this.$message.error(this.$website.isDemoTip),!1;se(t.id).then(()=>{this.list.splice(e,1),this.$message.success("删除成功")})}).catch(()=>{})},handleAdd(){this.form={id:"",name:"",backgroundUrl:"",width:"1920",height:"1080",category:this.activeName},this.option.column=this.addColumn,this.box=!0},handleUpdate(t,e){this.form=t,this.index=e,this.form.category=this.form.category+"",this.option.column=this.editColumn,this.box=!0},handleSetScreen(t){let e=this.option.column,d=this.findObject(e,"width"),u=this.findObject(e,"height");d.display=!1,u.display=!1,t.width=="-"&&t.height=="-"?(d.display=!0,u.display=!0,this.form.width="",this.form.height=""):(this.form.width=t.width,this.form.height=t.height)},handleEdit(t){let e=this.$router.resolve({path:"/build/"+t.id});window.open(e.href,"_blank")},handleViews(t){let e=this.$router.resolve({path:"/view/"+t.id});window.open(e.href,"_blank")},handleSave(t,e){if(this.isEdit){if(this.validData(Number(this.index))&&this.$website.isDemo)return this.$message.error(this.$website.isDemoTip),e(),this.box=!1,!1;le(this.form).then(()=>{e(),this.box=!1,this.$message.success("修改成功"),this.getList()})}else j(this.form).then(d=>{const u=d.data.data.id;this.box=!1,setTimeout(()=>{this.handleEdit({id:u})})})},handleCurrentChange(t){this.page.page=t,this.getList()},handleSizeChange(t){this.page.size=t,this.getList()},getList(t){this.loading=!0,this.list=[],oe({title:this.search.name,category:this.activeName,current:this.page.page,size:this.page.size}).then(e=>{this.loading=!1;const d=e.data.data;this.page.total=d.total;let u=d.records;u.forEach(s=>s._menu=!1),this.list=u})}}},Ce={class:"content__box content__nav"},xe={class:"avue-flex"},Ve=["src"],Ue={class:"content__page"},Se={class:"list-search"},Te={class:"content__box"},Ne=["onMouseenter","onMouseleave"],De={class:"content__info"},ze=["src"],Le={key:0,class:"content__menu"},Be={class:"content__right"},Ee={class:"content__start"},Oe=["onClick"],Pe=["onClick"],je={class:"content__main"},Ae={class:"content__name"},qe={class:"content__menulist"},$e=["src"],Fe={class:"create-screen"},Ke=["onClick"],Me={class:"item-title"},Je={class:"item-size"},Ie={class:"avue-dialog__footer avue-dialog__footer--center"};function We(t,e,d,u,s,i){const f=a("el-icon-search"),h=a("el-icon"),v=a("el-input"),k=a("el-pagination"),y=a("el-tab-pane"),C=a("el-tabs"),A=a("el-header"),B=a("el-icon-edit"),S=a("el-tooltip"),q=a("el-icon-delete"),$=a("el-icon-copy-document"),F=a("el-icon-view"),E=a("svg-icon"),K=a("el-empty"),M=a("el-main"),T=a("el-button"),J=a("el-upload"),I=a("avue-form"),W=a("el-dialog"),R=a("export-tip"),G=a("import-tip"),H=a("el-container"),Q=V("loading");return c(),_(H,{class:"list"},{default:r(()=>[n(A,{class:"content__header"},{default:r(()=>[l("div",Ce,[l("div",xe,[l("div",{class:"content__add",onClick:e[0]||(e[0]=(...o)=>i.handleAdd&&i.handleAdd(...o))},[l("img",{src:`${s.publicPath}img/project.png`,height:"40px",alt:""},null,8,Ve),e[8]||(e[8]=l("div",null,[l("p",null,"创建大屏"),l("span",null,"智慧可视化大屏 多平台展示")],-1))])]),l("div",Ue,[l("div",Se,[n(v,{modelValue:s.search.name,"onUpdate:modelValue":e[1]||(e[1]=o=>s.search.name=o),onKeyup:ne(i.getList,["enter"]),placeholder:"请输入名称"},{suffix:r(()=>[n(h,{onClick:i.getList,class:"el-input__icon"},{default:r(()=>[n(f)]),_:1},8,["onClick"])]),_:1},8,["modelValue","onKeyup"])]),s.page.total>0?(c(),_(k,{key:0,layout:"total, prev, pager, next,jumper",background:"",size:"small",onSizeChange:i.handleSizeChange,onCurrentChange:i.handleCurrentChange,"page-size":s.page.size,"current-page":s.page.page,"onUpdate:currentPage":e[2]||(e[2]=o=>s.page.page=o),total:s.page.total},null,8,["onSizeChange","onCurrentChange","page-size","current-page","total"])):x("",!0)])]),n(C,{class:"list-tabs",modelValue:s.activeName,"onUpdate:modelValue":e[3]||(e[3]=o=>s.activeName=o),onTabClick:i.handleTabClick},{default:r(()=>[(c(!0),g(z,null,D(s.typeList,(o,p)=>(c(),_(y,{key:p,label:o.categoryKey,name:o.categoryValue},null,8,["label","name"]))),128))]),_:1},8,["modelValue","onTabClick"])]),_:1}),U((c(),_(M,P({class:"content"},t.$loadingParams),{default:r(()=>[l("div",Te,[s.list.length>0?(c(!0),g(z,{key:0},D(s.list,(o,p)=>(c(),g("div",{class:"content__item",key:p,onMouseenter:w=>o._menu=!0,onMouseleave:w=>o._menu=!1},[l("div",De,[l("img",{src:t.computedImgUrl(o.backgroundUrl)||`${s.publicPath}img/bg-default.png`,alt:""},null,8,ze),o._menu?(c(),g("div",Le,[l("div",Be,[n(S,{content:"修改"},{default:r(()=>[n(h,{onClick:w=>i.handleUpdate(o,p)},{default:r(()=>[n(B)]),_:1},8,["onClick"])]),_:2},1024),n(S,{content:"删除"},{default:r(()=>[n(h,{onClick:w=>i.handleDel(o,p)},{default:r(()=>[n(q)]),_:1},8,["onClick"])]),_:2},1024),n(S,{content:"复制"},{default:r(()=>[n(h,{onClick:w=>i.handleCopy(o,p)},{default:r(()=>[n($)]),_:1},8,["onClick"])]),_:2},1024)]),l("div",Ee,[l("div",{class:"content__btn",onClick:w=>i.handleViews(o,p)},[n(h,null,{default:r(()=>[n(F)]),_:1})],8,Oe),l("div",{class:"content__btn",onClick:w=>i.handleEdit(o)},[n(h,null,{default:r(()=>[n(B)]),_:1})],8,Pe)])])):x("",!0)]),l("div",je,[l("span",Ae,b(o.title),1),l("div",qe,[l("span",{class:O(["content__status",{"is-active":o.status}])},[e[9]||(e[9]=l("span",{class:"icon"},null,-1)),m(" "+b(o.status==1?"已发布":"未发布"),1)],2)])])],40,Ne))),128)):(c(),_(K,{key:1,class:"content__empty",description:"暂无数据"},{image:r(()=>[n(E,{"icon-class":"empty"})]),_:1}))])]),_:1},16)),[[Q,s.loading]]),n(W,{title:i.isEdit?"编辑大屏":"创建大屏",width:i.isEdit?"50%":"70%",class:"avue-dialog","close-on-click-modal":!1,modelValue:s.box,"onUpdate:modelValue":e[7]||(e[7]=o=>s.box=o)},{default:r(()=>[s.box?(c(),_(I,{key:0,ref:"form",option:s.option,modelValue:s.form,"onUpdate:modelValue":e[4]||(e[4]=o=>s.form=o),onSubmit:i.handleSave},{backgroundUrl:r(()=>[s.form.backgroundUrl?(c(),g("img",{key:0,src:t.computedImgUrl(s.form.backgroundUrl),style:{width:"200px"},alt:""},null,8,$e)):x("",!0),n(J,{"on-success":i.onSuccess,"on-progress":i.onProgress,"show-file-list":!1,action:s.url+"/visual/put-file/screenShot",multiple:"","list-type":"picture"},{default:r(()=>[n(T,{loading:s.loading1,icon:"el-icon-upload",type:"primary"},{default:r(()=>[...e[10]||(e[10]=[m("点击上传",-1)])]),_:1},8,["loading"])]),_:1},8,["on-success","on-progress","action"])]),screen:r(()=>[l("div",Fe,[(c(!0),g(z,null,D(s.screenList,(o,p)=>(c(),g("div",{class:O(["item",{"is-active":p===i.screenActive}]),onClick:w=>i.handleSetScreen(o),key:p},[n(E,{class:"item-icon","icon-class":o.icon},null,8,["icon-class"]),l("div",Me,b(o.label),1),l("div",Je,b(o.width)+" x "+b(o.height),1)],10,Ke))),128))])]),_:1},8,["option","modelValue","onSubmit"])):x("",!0),l("span",Ie,[n(T,{type:"primary",onClick:e[5]||(e[5]=o=>t.$refs.form.submit()),icon:"el-icon-check"},{default:r(()=>[m(b(i.isEdit?"更新大屏":"创建大屏"),1)]),_:1}),n(T,{icon:"el-icon-close",onClick:e[6]||(e[6]=o=>s.box=!1)},{default:r(()=>[...e[11]||(e[11]=[m("关 闭",-1)])]),_:1})])]),_:1},8,["title","width","modelValue"]),n(R,{ref:"exportTip"},null,512),n(G,{ref:"importTip",category:s.activeName},null,8,["category"])]),_:1})}const Ge=L(ke,[["render",We]]);export{Ge as default};
|