2 lines
11 KiB
JavaScript
2 lines
11 KiB
JavaScript
import{_ as e}from"./index.vue_vue_type_script_setup_true_lang.BjBzON4v.js";import{C as t,r as a,T as s,V as l,u as r,U as n,a3 as i,a4 as o,t as c,l as m,_ as d,$ as u,q as p,g as f,h,a8 as v,a9 as x,aa as g,a as _,D as y}from"./element-plus.DhcJM-BD.js";import{o as b,e9 as k,dY as w,r as F,B as j,a5 as z,t as L,H as $,K as C,I,J as A,Z as M,u as B,Y as T,v as q,R as N,am as V,X as D,W as E,L as S,M as Q,a9 as W,ac as X}from"./.pnpm.DGfAnZKL.js";import{f as J,N as R}from"./index.BPA2kTd2.js";import{g as Y}from"./common.BWIReEgr.js";import{q as H}from"./quickStartManager.B8O8jYqN.js";import{_ as K}from"./_plugin-vue_export-helper.BCo6x5W8.js";import"./echarts.BBlM_eP9.js";import"./codemirror.CR5zRbyM.js";const P={class:"app-container"},U={class:"flex flex-wrap justify-between items-center"},Z={class:"flex items-center md:mb-0"},G={class:"text-20px font-bold"},O={class:"statItem text-14px text-gray-600 text-right"},ee={class:"mt-5px text-20px"},te={class:"mt-4"},ae={class:"flex items-center"},se={class:"flex justify-between items-center"},le={class:"flex justify-between items-center"},re={class:"bg-[var(--el-fill-color-light)] rounded-lg p-4 border border-[var(--el-border-color)] hover:shadow-md transition-shadow"},ne={class:"flex justify-between items-start mb-2"},ie={class:"flex items-center gap-2"},oe={class:"font-medium text-[var(--el-text-color-primary)]"},ce={class:"text-xs text-[var(--el-text-color-regular)]"},me={class:"text-sm text-[var(--el-text-color-regular)] mb-3 line-clamp-2"},de={class:"flex justify-between items-center text-xs"},ue={class:"text-[var(--el-text-color-regular)]"},pe={class:"text-sm truncate text-[var(--el-text-color-regular)]"},fe={class:"flex justify-between items-center"},he={class:"flex items-center gap-2"},ve=K(b({name:"Workplace",inheritAttrs:!1,__name:"workplace",setup(b){const K=J(),ve=Y(),{t:xe}=k(),ge=w(),_e=F([]),ye=F(H.getQuickLinks()),be=e=>{if(!e)return"";const t=new Date(e),a=(new Date).getTime()-t.getTime(),s=Math.floor(a/6e4),l=Math.floor(a/36e5),r=Math.floor(a/864e5);return s<1?"刚刚":s<60?`${s}分钟前`:l<24?`${l}小时前`:r<7?`${r}天前`:t.toLocaleDateString()},ke=()=>{ge.push({name:"Notice"}).catch(()=>{_.warning("公告通知跳转失败,请检查路由配置")})},we=e=>{switch(e){case"1":default:return"通知";case"2":return"公告"}},Fe=e=>{switch(e){case"1":default:return"primary";case"2":return"success"}},je=()=>{const e=["#FF5733","#33FF57","#3357FF","#FF33E6","#FFFF33","#33FFFF","#FF3333","#5733FF","#33FFE6","#E633FF"];return e[Math.floor(Math.random()*e.length)]},ze=e=>{ye.value=e};j(()=>{(async()=>{try{const e=await R.listNotice({page_no:1,page_size:10,status:"0"});0===e.data.code&&(_e.value=e.data.data.items)}catch(e){}})(),H.addListener(ze)}),z(()=>{H.removeListener(ze)});const Le={avatar:K.basicInfo.avatar||"https://gw.alipayobjects.com/zos/rmsportal/BiazfanxmamNRoxxVxka.png",name:K.basicInfo.name||"吴彦祖",username:K.basicInfo.username||"账号信息",description:K.basicInfo.description||"用户说明",dept_name:K.basicInfo.dept_name||"软件专业部",last_login:K.basicInfo.last_login||"2023-01-01 00:00:00"},$e=[{id:"xxx1",title:"Mysql",avatar:"https://labs.mysql.com/common/themes/sakila/favicon.ico",description:"最流行的关系型数据库",updatedAt:"几秒前",member:"科学搬砖组",href:"https://www.mysql.com/",memberLink:""},{id:"xxx2",title:"Fastapi",avatar:"https://fastapi.tiangolo.com/img/favicon.png",description:"一个现代、快速(高性能)的 web 框架",updatedAt:"6 年前",member:"全组都是吴彦祖",href:"https://fastapi.tiangolo.com/zh/",memberLink:""},{id:"xxx3",title:"Element-plus",avatar:"https://element-plus.org/images/element-plus-logo-small.svg",description:"面向设计师和开发者的组件库",updatedAt:"几秒前",member:"中二少女团",href:"https://element-plus.org/zh-CN/",memberLink:""},{id:"xxx4",title:"Vue",avatar:"https://cn.vuejs.org/logo.svg",description:"渐进式 JavaScript 框架",updatedAt:"6 年前",member:"程序员日常",href:"https://cn.vuejs.org/",memberLink:""},{id:"xxx5",title:"Vite",avatar:"https://vitejs.cn/vite3-cn/logo.svg",description:"Vite 下一代的前端工具链",updatedAt:"6 年前",member:"高逼格设计天团",href:"https://cn.vitejs.dev/",memberLink:""},{id:"xxx6",title:"Python",avatar:"https://python.p2hp.com/static/favicon.ico",description:"一种解释型、面向对象类型编程语言",updatedAt:"6 年前",member:"骗你来学计算机",href:"",memberLink:""}],Ce=X({tooltip:{trigger:"item"},legend:{data:["个人","团队","部门"]},radar:{shape:"circle",indicator:[{name:"引用",max:10},{name:"热度",max:10},{name:"贡献",max:10},{name:"产量",max:10},{name:"口碑",max:10}]},series:[{name:"Budget vs spending",type:"radar",areaStyle:{},symbol:"none",emphasis:{focus:"self"},data:[{value:[10,7,5,4,8],name:"个人"},{value:[3,1,3,6,9],name:"团队"},{value:[4,7,5,6,1],name:"部门"}]}]});return(b,k)=>{const w=t,F=a,j=s,z=c,X=r,J=o,R=m,Y=i,K=l,ze=n,Ie=f,Ae=p,Me=u,Be=d,Te=h,qe=e;return L(),$("div",P,[C("div",null,[I(j,{shadow:"hover"},{default:A(()=>[C("div",U,[C("div",Z,[I(w,{size:"large",src:Le.avatar,class:"mr-20px"},null,8,["src"]),C("div",null,[C("div",G,M(B(ve))+M(Le.name)+","+M("祝你开心每一天!"),1),I(F,null,{default:A(()=>[T(M(Le.username)+" | "+M(Le.dept_name)+" | "+M(Le.description),1)]),_:1})])]),C("div",O,[I(F,null,{default:A(()=>[...k[3]||(k[3]=[T("最近登录时间",-1)])]),_:1}),C("div",ee,M(Le.last_login),1)])])]),_:1})]),C("div",te,[I(ze,{gutter:16,justify:"space-between"},{default:A(()=>[I(K,{xl:16,lg:16,md:24,sm:24,xs:24},{default:A(()=>[I(j,{shadow:"hover",title:"进行中的项目"},{header:A(()=>[k[5]||(k[5]=C("span",{class:"font-bold"},"进行中的项目",-1)),I(z,{href:"",type:"primary",underline:"never",style:{float:"right"}},{default:A(()=>[...k[4]||(k[4]=[T(" 全部项目 ",-1)])]),_:1})]),default:A(()=>[0===$e.length?(L(),q(X,{key:0,"image-size":80,description:"暂无数据"})):(L(),q(ze,{key:1},{default:A(()=>[(L(),$(N,null,V($e,e=>I(K,{key:`card-${e.id}`,xl:8,lg:8,md:12,sm:24,xs:24},{default:A(()=>[(L(),q(j,{key:e.id,shadow:"hover"},{default:A(()=>[I(Y,{column:1},{default:A(()=>[I(J,null,{default:A(()=>[C("div",ae,[I(w,{src:e.avatar,size:"small",class:"mr-20px"},null,8,["src"]),I(z,{href:e.href,underline:"never"},{default:A(()=>[T(M(e.title),1)]),_:2},1032,["href"])])]),_:2},1024),I(J,null,{default:A(()=>[I(R,{placement:"top",content:e.description},{default:A(()=>[I(F,{"line-clamp":"1",class:"truncate-text"},{default:A(()=>[T(M(e.description),1)]),_:2},1024)]),_:2},1032,["content"])]),_:2},1024),I(J,null,{default:A(()=>[C("div",se,[I(z,{href:e.memberLink,underline:"never"},{default:A(()=>[T(M(e.member||""),1)]),_:2},1032,["href"]),C("span",null,M(e.updatedAt),1)])]),_:2},1024)]),_:2},1024)]),_:2},1024))]),_:2},1024)),64))]),_:1}))]),_:1}),I(j,{shadow:"hover",class:"mt-4"},{header:A(()=>[C("div",le,[k[7]||(k[7]=C("span",{class:"font-bold"},"通知公告",-1)),I(Ie,{type:"primary",link:"",onClick:k[0]||(k[0]=e=>ke())},{default:A(()=>[...k[6]||(k[6]=[T("更多",-1)])]),_:1})])]),default:A(()=>[0===_e.value.length?(L(),q(X,{key:0,"image-size":80,description:"暂无数据"})):D("",!0),I(Be,null,{default:A(()=>[(L(!0),$(N,null,V(_e.value,(e,t)=>(L(),q(Me,{key:e.id,type:0===t?"primary":"info"},{default:A(()=>{var t;return[C("div",re,[C("div",ne,[C("div",ie,[C("span",oe,M(e.notice_title),1),I(Ae,{size:"small",type:Fe(e.notice_type)},{default:A(()=>[T(M(we(e.notice_type)),1)]),_:2},1032,["type"])]),C("span",ce,M(be(e.created_time)),1)]),C("div",me,M(e.notice_content),1),C("div",de,[C("span",ue,M(null==(t=e.created_by)?void 0:t.name)+" 发布 ",1),I(R,{placement:"top",content:e.description||e.notice_content},{default:A(()=>[I(Ie,{target:"_blank",type:"primary",link:"",onClick:k[1]||(k[1]=e=>ke())},{default:A(()=>[...k[8]||(k[8]=[T(" 详情↗ ",-1)])]),_:1})]),_:1},8,["content"])])])]}),_:2},1032,["type"]))),128))]),_:1})]),_:1}),I(j,{shadow:"hover",class:"mt-4"},{header:A(()=>[...k[9]||(k[9]=[C("span",{class:"font-bold"},"团队",-1)])]),default:A(()=>[0===$e.length?(L(),q(X,{key:0,"image-size":80,description:"暂无数据"})):(L(),q(ze,{key:1,gutter:16},{default:A(()=>[(L(),$(N,null,V($e,e=>I(K,{key:`members-item-${e.id}`,span:8,class:"mb-3"},{default:A(()=>[I(z,{underline:"never",href:e.href,class:"flex items-center hover:bg-[var(--el-fill-color-light)] p-2 rounded transition-colors"},{default:A(()=>[I(w,{src:e.avatar,size:"small",class:"mr-2"},null,8,["src"]),C("span",pe,M(e.member),1)]),_:2},1032,["href"])]),_:2},1024)),64))]),_:1}))]),_:1})]),_:1}),I(K,{xl:8,lg:8,md:12,sm:12,xs:24},{default:A(()=>[I(j,{shadow:"hover",class:"mb-4"},{header:A(()=>[C("div",fe,[C("div",he,[I(R,{content:"快速访问常用功能,标签右键收藏可添加快捷栏菜单。",placement:"top"},{default:A(()=>[I(Te,{class:"cursor-help",size:"16"},{default:A(()=>[I(B(x))]),_:1})]),_:1}),k[10]||(k[10]=C("span",{class:"font-bold"},"快速开始 / 便捷导航",-1))]),I(Ie,{size:"small",type:"danger",plain:"",onClick:k[2]||(k[2]=e=>{y.confirm("确定要清空收藏吗?","清空收藏确认",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{H.clearQuickLinks(),_.success("已清空收藏")}).catch(()=>{})})},{default:A(()=>[I(Te,null,{default:A(()=>[I(B(g))]),_:1}),T(" "+M(B(xe)("common.clear")),1)]),_:1})])]),default:A(()=>[ye.value.length>0?(L(),q(ze,{key:0,gutter:8},{default:A(()=>[(L(!0),$(N,null,V(ye.value,(e,t)=>(L(),q(K,{key:t,span:6,class:"group mb-4"},{default:A(()=>[I(Ie,{plain:"",type:"default",class:"w-full relative",onClick:t=>(e=>{e.href?(ge.push(e.href).catch(()=>{_.warning(`路由 ${e.href} 不存在,请检查配置`)}),_.success(`进入:${e.title}`)):_.info(`${e.title} 功能待开发`)})(e)},{default:A(()=>[e.icon&&e.icon.startsWith("el-icon")?(L(),q(Te,{key:0,color:je()},{default:A(()=>[(L(),q(E(e.icon.replace("el-icon-",""))))]),_:2},1032,["color"])):e.icon?(L(),$("div",{key:1,class:Q(`i-svg:${e.icon} mr-2`),style:S({color:je()})},null,6)):(L(),$("div",{key:2,class:Q("i-svg:menu mr-2"),style:S({color:je()})},null,4)),C("span",null,M(e.title),1),I(Te,{color:"var(--el-color-danger)",class:"absolute top-0 right-0 opacity-0 group-hover:opacity-100",onClick:W(t=>(e=>{y.confirm(`确定要取消收藏"${e.title}"吗?`,"取消收藏确认",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(()=>{e.id&&(H.removeQuickLink(e.id),_.success(`已取消收藏:${e.title}`))}).catch(()=>{})})(e),["stop"])},{default:A(()=>[I(B(v))]),_:1},8,["onClick"])]),_:2},1032,["onClick"])]),_:2},1024))),128))]),_:1})):(L(),q(X,{key:1,"image-size":80,description:"暂无数据"}))]),_:1}),I(j,{class:"mb-4 font-bold",header:"XX 指数"},{default:A(()=>[I(qe,{class:"chart",options:Ce,height:"450px",autoresize:"","init-options":{renderer:"canvas"}},null,8,["options"])]),_:1})]),_:1})]),_:1})])])}}}),[["__scopeId","data-v-9a4adbac"]]);export{ve as default};
|