<template>
|
<div>
|
<el-row>
|
<el-col v-for="item in homeData" :span="item.num" :xs="24">
|
<div class="basic-container">
|
<el-card class="basic-container__card" :body-style="{height:+(height*item.ratio-(item.title?78:38))+'px'}">
|
<div slot="header" class="clearfix" v-if="item.title || item.icon">
|
<span>{{item.title}}</span>
|
<icon-show :name="item.icon" style="display: inline-block"></icon-show>
|
</div>
|
<component :height="height*item.ratio" :is="item.module" :key="item.module" :title="item.title" :icon="item.icon"></component>
|
|
</el-card>
|
</div>
|
</el-col>
|
</el-row>
|
</div>
|
</template>
|
|
<script>
|
import {getAllData} from "@/api/homeConfig";
|
import UndoTaskPortlet from './components/UndoTaskPortlet.vue';
|
import taskPortlet from './components/taskPortlet.vue';
|
import test from './components/test.vue';
|
export default {
|
name: "workIndex",
|
components:{UndoTaskPortlet,taskPortlet,test},
|
data(){
|
return {
|
height:document.body.clientHeight-115,
|
homeData:[]
|
}
|
},
|
created() {
|
this.getList();
|
},
|
methods:{
|
getList() {
|
getAllData().then(res => {
|
const data = res.data.data;
|
if(data.length>0){
|
this.homeData = data;
|
}else {
|
this.homeData = [{
|
orderNum:1,
|
module: "UndoTaskPortlet",
|
title: "待办流程任务",
|
num:24,
|
icon: "",
|
ratio:1.00
|
}];
|
}
|
this.loading = false;
|
});
|
}
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
::v-deep {
|
.iconShow{
|
margin-left: 5px;
|
position: relative;
|
top:4px;
|
}
|
.el-col {
|
margin-bottom: 0px;
|
}
|
}
|
</style>
|