工作台:联调 待办 已办api
This commit is contained in:
parent
b4dc1b3d83
commit
819806a367
|
@ -0,0 +1,46 @@
|
||||||
|
// /resource/getByDept
|
||||||
|
import http from '@/utils/request';
|
||||||
|
|
||||||
|
function Request({
|
||||||
|
methods, url, data, success, fali
|
||||||
|
}) {
|
||||||
|
let _key = methods == 'get' ? 'params' : 'data';
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
http[methods](url, {
|
||||||
|
[_key]: data
|
||||||
|
}).then(res => {
|
||||||
|
resolve(res)
|
||||||
|
}, err => {
|
||||||
|
reject(err)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// /resource/getByDept:获取当前登录用户所在部门发布的资源
|
||||||
|
|
||||||
|
// 部门待办列表
|
||||||
|
export const getToDoTask = (data, success, fail) => {
|
||||||
|
Request({
|
||||||
|
methods: 'get',
|
||||||
|
url: '/act/task/deptToDoTaskPage',
|
||||||
|
data
|
||||||
|
}).then(res => {
|
||||||
|
success && success(res)
|
||||||
|
}).catch(err => {
|
||||||
|
fail && fail(err)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 部门已办列表
|
||||||
|
export const getHasToDoTask = (data, success, fail) => {
|
||||||
|
Request({
|
||||||
|
methods: 'get',
|
||||||
|
url: '/act/his/getDeptHandledInstancePage',
|
||||||
|
data
|
||||||
|
}).then(res => {
|
||||||
|
success && success(res)
|
||||||
|
}).catch(err => {
|
||||||
|
fail && fail(err)
|
||||||
|
})
|
||||||
|
}
|
|
@ -1,11 +1,6 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="dept-box">
|
<div class="dept-box">
|
||||||
<div class="left-title-box">
|
|
||||||
<div class="content">
|
|
||||||
<!-- <img class="img" :src=""></img> -->
|
|
||||||
<div></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
|
|
@ -1,18 +1,140 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="dept-box">
|
<div class="dept-box" :class="dataInfo.noMarginleft ? 'no-margin-left' : ''">
|
||||||
|
<div class="left-box"
|
||||||
|
:style="{ 'background': dataInfo.bgColor, 'border-right': `1px solid ${dataInfo.borderColor}` }">
|
||||||
|
<div class="content">
|
||||||
|
<img class="img" :src="dataInfo.imgSrc" />
|
||||||
|
<div class="title">{{ title }}</div>
|
||||||
|
<div class="flex-row-bottom">
|
||||||
|
<span class="num" :style="{ 'color': dataInfo.textColor }">{{ formatNum(dataInfo.num) }}</span>
|
||||||
|
<span class="unit" :style="{ 'color': dataInfo.textColor }">{{ dataInfo.unit || '个' }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="list-box" v-if="dataInfo.list.length > 0">
|
||||||
|
<div class="list-item" v-for="(item, i) in dataInfo.list" :key="i">
|
||||||
|
{{ item[dataInfo.nameStr] || '--' }}
|
||||||
|
</div>
|
||||||
|
<div class="more">
|
||||||
|
查看更多 >
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="list-box flex-row-center no-data" v-else>
|
||||||
|
暂无数据
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
dataInfo: {
|
||||||
|
type: Object,
|
||||||
|
default: () => { }
|
||||||
|
},
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
formatNum(num) {
|
||||||
|
return num || num === 0 ? num : '--'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
.no-margin-left {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-row-bottom {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: baseline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flex-row-center {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
.dept-box {
|
.dept-box {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
width: 394px;
|
width: 394px;
|
||||||
height: 252px;
|
height: 252px;
|
||||||
margin: 16px;
|
margin: 16px;
|
||||||
background: pink;
|
background: rgba($color: #f1f3f6, $alpha: 0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
.left-box {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
width: 80px;
|
||||||
|
border-radius: 2px;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.img {
|
||||||
|
height: 50px;
|
||||||
|
width: 50px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
// margin-top: 57px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 18px;
|
||||||
|
color: #000;
|
||||||
|
margin-top: 25px;
|
||||||
|
margin-bottom: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.num {
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.unit {
|
||||||
|
font-size: 16px;
|
||||||
|
margin-left: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-box {
|
||||||
|
width: 314px;
|
||||||
|
height: 252px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list-item {
|
||||||
|
height: 44px;
|
||||||
|
line-height: 44px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border-bottom: 1px dashed #c6c6c6;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #212121;
|
||||||
|
}
|
||||||
|
|
||||||
|
.more {
|
||||||
|
color: #212121;
|
||||||
|
font-size: 14px;
|
||||||
|
height: 32px;
|
||||||
|
line-height: 32px;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.no-data {
|
||||||
|
font-size: 16px;
|
||||||
|
color: #212121;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
|
@ -22,6 +22,7 @@
|
||||||
import BottomView from '../workBench/components/bottom-view.vue'
|
import BottomView from '../workBench/components/bottom-view.vue'
|
||||||
import CenterView from '../workBench/components/center-view.vue'
|
import CenterView from '../workBench/components/center-view.vue'
|
||||||
import deptTodoView from '../workBench/components/dept-todo-view.vue'
|
import deptTodoView from '../workBench/components/dept-todo-view.vue'
|
||||||
|
import * as Apis from './api'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
|
@ -34,16 +35,65 @@ export default {
|
||||||
// 部门待办
|
// 部门待办
|
||||||
toToData: {
|
toToData: {
|
||||||
color: '#f86f01',
|
color: '#f86f01',
|
||||||
// imgSrc: require(''),
|
imgSrc: require('@/assets/img/workBench/todo.png'),
|
||||||
|
bgColor: 'rgba(228,138,1,0.12)',
|
||||||
|
borderColor: 'rgba(250,123,12,0.54)',
|
||||||
|
textColor: '#f86f01',
|
||||||
|
num: 34,
|
||||||
|
list: [],
|
||||||
|
nameStr: 'taskName'
|
||||||
},
|
},
|
||||||
// 部门已办
|
// 部门已办
|
||||||
hasToDodoData: {
|
hasToDodoData: {
|
||||||
|
noMarginleft: true,
|
||||||
color: '#21b107',
|
color: '#21b107',
|
||||||
|
imgSrc: require('@/assets/img/workBench/hasToDo.png'),
|
||||||
|
bgColor: 'rgba(37,165,13,0.12)',
|
||||||
|
borderColor: 'rgba(49,194,20,0.54)',
|
||||||
|
textColor: '#21b107',
|
||||||
|
num: 34,
|
||||||
|
list: [],
|
||||||
|
nameStr: 'processDefinitionName'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
this.getToDo()
|
||||||
|
this.getHasToDo()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 待办
|
||||||
|
getToDo() {
|
||||||
|
let data = {
|
||||||
|
limit: 5,
|
||||||
|
page: 1,
|
||||||
|
}
|
||||||
|
Apis.getToDoTask(data, res => {
|
||||||
|
if (res.data.code !== 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
console.log('res----待办-------->', res.data);
|
||||||
|
this.toToData.list = res.data.data.records || []
|
||||||
|
}, err => {
|
||||||
|
console.log('err-----待办------->', err);
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 已办
|
||||||
|
getHasToDo() {
|
||||||
|
let data = {
|
||||||
|
limit: 5,
|
||||||
|
page: 1,
|
||||||
|
}
|
||||||
|
Apis.getHasToDoTask(data, res => {
|
||||||
|
if (res.data.code !== 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
console.log('res----已办-------->', res.data);
|
||||||
|
this.hasToDodoData.list = res.data.data.records || []
|
||||||
|
}, err => {
|
||||||
|
console.log('err-----已办------->', err);
|
||||||
|
})
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -64,7 +114,7 @@ export default {
|
||||||
.top {
|
.top {
|
||||||
height: 284px;
|
height: 284px;
|
||||||
margin-bottom: 16px;
|
margin-bottom: 16px;
|
||||||
background: green;
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dept-left {
|
.dept-left {
|
||||||
|
|
Loading…
Reference in New Issue