|
|
@@ -38,9 +38,17 @@
|
|
|
/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
+ <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
|
|
+ <el-form-item label="是否已读:" prop="isRead">
|
|
|
+ <el-select style="width: 100%" v-model="params.isRead" placeholder="请选择">
|
|
|
+ <el-option label="已读" value="1"></el-option>
|
|
|
+ <el-option label="未读" value="0"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
<el-col
|
|
|
style="display: flex; justify-content: flex-end"
|
|
|
- v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }"
|
|
|
+ v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 6 }"
|
|
|
>
|
|
|
<div class="ele-form-actions">
|
|
|
<el-button
|
|
|
@@ -90,7 +98,9 @@
|
|
|
{{ getDateTime(row.durationInMillis) }}
|
|
|
</template>
|
|
|
<template v-slot:name="{ row }">
|
|
|
+ <span class="dot" v-if="row.isRead == 0"></span>
|
|
|
<el-link type="primary" :underline="false" @click="handleAudit(row)">
|
|
|
+
|
|
|
{{ row.name }}</el-link
|
|
|
>
|
|
|
</template>
|
|
|
@@ -112,7 +122,7 @@
|
|
|
|
|
|
<script>
|
|
|
import dictMixins from '@/mixins/dictMixins';
|
|
|
- import { ccPage } from '@/api/bpm/task';
|
|
|
+ import { ccPage, ccReaderTask } from '@/api/bpm/task';
|
|
|
import { getDate } from '@/utils/dateUtils';
|
|
|
import detail from '@/views/bpm/done/detailDialog.vue';
|
|
|
|
|
|
@@ -236,6 +246,16 @@
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 130
|
|
|
+ },
|
|
|
+ {
|
|
|
+ prop: 'isRead',
|
|
|
+ label: '是否已读',
|
|
|
+ align: 'center',
|
|
|
+ showOverflowTooltip: true,
|
|
|
+ minWidth: 130,
|
|
|
+ formatter: (row) => {
|
|
|
+ return row.isRead == 1 ? '已读' : '未读';
|
|
|
+ }
|
|
|
}
|
|
|
]
|
|
|
};
|
|
|
@@ -267,7 +287,15 @@
|
|
|
this.reload();
|
|
|
},
|
|
|
/** 处理审批按钮 */
|
|
|
- handleAudit(row) {
|
|
|
+ async handleAudit(row) {
|
|
|
+ const readStatus = await ccReaderTask({
|
|
|
+ id: row.id
|
|
|
+ });
|
|
|
+
|
|
|
+ console.log('readStatus~~', readStatus);
|
|
|
+ if(readStatus) {
|
|
|
+ row.isRead = 1;
|
|
|
+ }
|
|
|
const params = {
|
|
|
...row,
|
|
|
processInstance: {
|
|
|
@@ -307,3 +335,16 @@
|
|
|
}
|
|
|
};
|
|
|
</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+.dot {
|
|
|
+ display: inline-block;
|
|
|
+ width: 5px;
|
|
|
+ height: 5px;
|
|
|
+ background-color: red;
|
|
|
+ border-radius: 50%;
|
|
|
+ position: absolute;
|
|
|
+ top: 10px;
|
|
|
+ left: 4px;
|
|
|
+}
|
|
|
+</style>
|