|
|
@@ -16,7 +16,7 @@
|
|
|
<el-col :xs="24" :sm="12" :md="9" :lg="9">
|
|
|
<el-card class="card-group">
|
|
|
<p class="card-title">待办事项</p>
|
|
|
- <el-row :gutter="20">
|
|
|
+ <el-row v-if="dataList.length > 0" :gutter="20">
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="12" v-for="(v,i) in dataList" :key="i">
|
|
|
<div class="card-panel">
|
|
|
<div class="card-panel-icon-wrapper icon-people" @click="clickNum(v)">
|
|
|
@@ -38,6 +38,9 @@
|
|
|
</div>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
+ <div style="padding: 25px;" v-else>
|
|
|
+ <el-empty description="暂无数据"></el-empty>
|
|
|
+ </div>
|
|
|
</el-card>
|
|
|
</el-col>
|
|
|
|
|
|
@@ -48,9 +51,11 @@
|
|
|
<el-tab-pane>
|
|
|
<span slot="label" class="tab_font">通知公告</span>
|
|
|
<div class="tab-panel">
|
|
|
- <div v-if="msgsList && msgsList.length > 0" class="msg-item" v-for="(v,i) in msgsList" :key="v.id" @click="showMsg(v)">
|
|
|
+ <div v-if="msgsList.length > 0">
|
|
|
+ <div class="msg-item" v-for="(v,i) in msgsList" :key="v.id" @click="showMsg(v)">
|
|
|
<span class="item-title">{{v.title}}</span>
|
|
|
<span class="item-time">{{v.publishTime}}</span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<el-empty v-else description="暂无数据"></el-empty>
|
|
|
</div>
|
|
|
@@ -58,12 +63,15 @@
|
|
|
<el-tab-pane label="知识库">
|
|
|
<span slot="label" class="tab_font">知识库</span>
|
|
|
<div class="tab-panel">
|
|
|
- <div class="file-item" v-for="(v,i) in fileList" :key="i">
|
|
|
- <a :href="imageUrl(v.url)" target="_blank">
|
|
|
- <span><i class="el-icon-document"></i>{{v.name}}</span>
|
|
|
- <span>{{v.createTime}}</span>
|
|
|
- </a>
|
|
|
+ <div v-if="fileList.length > 0">
|
|
|
+ <div class="file-item" v-for="(v,i) in fileList" :key="i">
|
|
|
+ <a :href="imageUrl(v.url)" target="_blank">
|
|
|
+ <span><i class="el-icon-document"></i>{{v.name}}</span>
|
|
|
+ <span>{{v.createTime}}</span>
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
+ <el-empty v-else description="暂无数据"></el-empty>
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
|
@@ -105,6 +113,7 @@ import CountTo from 'vue-count-to'
|
|
|
import {homeData,fileList} from '@/api/login'
|
|
|
import {imageUrl} from "@/utils/ruoyi";
|
|
|
import dayjs from 'dayjs'
|
|
|
+import {mapGetters} from "vuex";
|
|
|
export default {
|
|
|
name: 'Index',
|
|
|
components: {
|
|
|
@@ -165,6 +174,9 @@ export default {
|
|
|
mounted(){
|
|
|
this.getData();
|
|
|
},
|
|
|
+ computed: {
|
|
|
+ ...mapGetters(["roleList",'isAdmin']),
|
|
|
+ },
|
|
|
methods: {
|
|
|
imageUrl,
|
|
|
clickNum(item){
|
|
|
@@ -185,22 +197,31 @@ export default {
|
|
|
this.selectMsg = null;
|
|
|
},
|
|
|
getData(){
|
|
|
- homeData().then(res=>{
|
|
|
- this.dataList = res.data;
|
|
|
- });
|
|
|
- fileList().then(res=>{
|
|
|
- let {index1,index2} = res.data;
|
|
|
- if(index1){
|
|
|
- this.msgsList = index1;
|
|
|
- }
|
|
|
- if(!index2)return;
|
|
|
- this.fileList = index2.map(v=>{
|
|
|
- return JSON.parse(v)
|
|
|
+ console.log(this.roleList,'1213')
|
|
|
+ if(this.roleList.length > 0 && this.roleList[0] !== "ROLE_DEFAULT"){
|
|
|
+ homeData().then(res=>{
|
|
|
+ this.dataList = res.data;
|
|
|
});
|
|
|
- this.fileList.forEach(v=>{
|
|
|
- v.createTime = dayjs(v.createTime).format('YYYY-MM-DD')
|
|
|
+ fileList().then(res=>{
|
|
|
+ let {index1,index2} = res.data;
|
|
|
+ if(index1){
|
|
|
+ this.msgsList = index1;
|
|
|
+ }
|
|
|
+ if(!index2)return;
|
|
|
+ this.fileList = index2.map(v=>{
|
|
|
+ return JSON.parse(v)
|
|
|
+ });
|
|
|
+ this.fileList.forEach(v=>{
|
|
|
+ v.createTime = dayjs(v.createTime).format('YYYY-MM-DD')
|
|
|
+ })
|
|
|
})
|
|
|
- })
|
|
|
+ } else {
|
|
|
+ if(!this.isAdmin){
|
|
|
+ this.$alert('请尽快联系管理员设置角色信息', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -256,6 +277,7 @@ export default {
|
|
|
background: linear-gradient(to right, #71bfe3, #fff);
|
|
|
}
|
|
|
.card-group{
|
|
|
+ height: 528px;
|
|
|
.card-title{
|
|
|
margin: 0;
|
|
|
}
|