From c2d73d36f018bbbe2393357f32b548113b09d3ae Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 13 二月 2025 21:28:08 +0800
Subject: [PATCH] 流程日志组件、转办的用户、部门查询使用无数据权限的
---
src/api/system/user.js | 19 ++++++
src/api/flowLog/flowLog.js | 12 ++++
src/assets/nodata.png | 0
src/components/flow/User/MultUser.vue | 6 +-
src/components/flow/User/SingleUser.vue | 6 +-
src/views/projectProcess/components/LogView.vue | 107 +++++++++++++++++++++++++++++++++++
6 files changed, 144 insertions(+), 6 deletions(-)
diff --git a/src/api/flowLog/flowLog.js b/src/api/flowLog/flowLog.js
new file mode 100644
index 0000000..2d7937f
--- /dev/null
+++ b/src/api/flowLog/flowLog.js
@@ -0,0 +1,12 @@
+import request from '@/utils/request'
+
+// 鑾峰彇娴佺▼鎺ㄨ繘鏃ュ織
+export const getProjectProcessLog = (params) => {
+ return request({
+ url: "/flow-log/project-process/log",
+ method: "GET",
+ params: params
+ })
+}
+
+
diff --git a/src/api/system/user.js b/src/api/system/user.js
index 711b43e..3200d46 100644
--- a/src/api/system/user.js
+++ b/src/api/system/user.js
@@ -10,6 +10,16 @@
})
}
+// 鏌ヨ鐢ㄦ埛鍒楄〃 鏃犳暟鎹潈闄�
+export function listUserNoAuth(query) {
+ return request({
+ url: '/system/user/list/no-data-auth',
+ method: 'get',
+ params: query
+ })
+}
+
+
// 鏌ヨ鐢ㄦ埛璇︾粏
export function getUser(userId) {
return request({
@@ -134,6 +144,15 @@
})
}
+// 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� 鏃犳暟鎹潈闄�
+export function deptTreeSelectNoAuth() {
+ return request({
+ url: '/system/user/deptTree/no-data-auth',
+ method: 'get'
+ })
+}
+
+
// 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋�(flowable涓撶敤)
export function flowableDeptTreeSelect() {
return request({
diff --git a/src/assets/nodata.png b/src/assets/nodata.png
new file mode 100644
index 0000000..929ed31
--- /dev/null
+++ b/src/assets/nodata.png
Binary files differ
diff --git a/src/components/flow/User/MultUser.vue b/src/components/flow/User/MultUser.vue
index 00406bb..58971e8 100644
--- a/src/components/flow/User/MultUser.vue
+++ b/src/components/flow/User/MultUser.vue
@@ -81,7 +81,7 @@
</template>
<script>
-import { listUser, deptTreeSelect } from "@/api/system/user";
+import {listUser, deptTreeSelect, deptTreeSelectNoAuth, listUserNoAuth} from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import {StrUtil} from '@/utils/StrUtil'
@@ -176,7 +176,7 @@
/** 鏌ヨ鐢ㄦ埛鍒楄〃 */
getList() {
this.loading = true;
- listUser(this.queryParams).then(response => {
+ listUserNoAuth(this.queryParams).then(response => {
this.userList = response.rows;
this.total = response.total;
this.loading = false;
@@ -185,7 +185,7 @@
},
/** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
getDeptTree() {
- deptTreeSelect().then(response => {
+ deptTreeSelectNoAuth().then(response => {
this.deptOptions = response.data;
});
},
diff --git a/src/components/flow/User/SingleUser.vue b/src/components/flow/User/SingleUser.vue
index d779e71..401c561 100644
--- a/src/components/flow/User/SingleUser.vue
+++ b/src/components/flow/User/SingleUser.vue
@@ -80,7 +80,7 @@
</template>
<script>
-import { listUser, deptTreeSelect } from "@/api/system/user";
+import {listUser, deptTreeSelect, deptTreeSelectNoAuth, listUserNoAuth} from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import {StrUtil} from '@/utils/StrUtil'
@@ -172,7 +172,7 @@
/** 鏌ヨ鐢ㄦ埛鍒楄〃 */
getList() {
this.loading = true;
- listUser(this.queryParams).then(response => {
+ listUserNoAuth(this.queryParams).then(response => {
this.userList = response.rows;
this.total = response.total;
this.loading = false;
@@ -181,7 +181,7 @@
},
/** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
getDeptTree() {
- deptTreeSelect().then(response => {
+ deptTreeSelectNoAuth().then(response => {
this.deptOptions = response.data;
});
},
diff --git a/src/views/projectProcess/components/LogView.vue b/src/views/projectProcess/components/LogView.vue
new file mode 100644
index 0000000..0b70921
--- /dev/null
+++ b/src/views/projectProcess/components/LogView.vue
@@ -0,0 +1,107 @@
+<template>
+ <div>
+ <div v-if="logList && logList.length > 0">
+ <div class="log-warp" v-for="log in logList" :key="'log' + log.id">
+ <div v-if="log.eventType === 'FINISHED'">
+ <div>
+ <span class="tag name">{{log.nickName}}</span>
+ 鍦�
+ <span class="tag time">{{log.gmtCreate}}</span>
+ 瀹屾垚浜嗕换鍔�
+ <span class="tag taskName">{{log.taskName}}</span>
+ </div>
+ </div>
+ <div v-else-if="log.eventType === 'REJECT'">
+ <div>
+ <span class="tag name">{{log.nickName}}</span>
+ 鍦�
+ <span class="tag time">{{log.gmtCreate}}</span>
+ 椹冲洖浜嗕换鍔�
+ <span class="tag taskName">{{log.taskName}}</span>
+ </div>
+ <div>椹冲洖鍘熷洜</div>
+ </div>
+ <div v-else-if="log.eventType === 'DELEGATE'">
+ <div>
+ <span class="tag name">{{log.nickName}}</span>
+ 鍦�
+ <span class="tag time">{{log.gmtCreate}}</span>
+ 灏嗕换鍔�
+ <span class="tag taskName">{{log.taskName}}</span>
+ <span class="tag op">杞姙</span>
+ 缁欎簡璋佽皝璋�
+ </div>
+ </div>
+ <div v-else-if="log.eventType === 'JUMP'">
+ <div>
+ <span class="tag name">{{log.nickName}}</span>
+ 鍦�
+ <span class="tag time">{{log.gmtCreate}}</span>
+ <span class="tag op">璺宠繃</span>
+ 浜嗕换鍔�
+ <span class="tag taskName">{{log.taskName}}</span>
+ </div>
+ <div>璺宠繃璇存槑</div>
+ </div>
+ <div v-else-if="log.eventType === 'SUPERVISE'">
+ <div>
+ <span class="tag name">{{log.nickName}}</span>
+ 鍦�
+ <span class="tag time">{{log.gmtCreate}}</span>
+ <span class="tag op">鐫e姙</span>
+ 浜嗕换鍔�
+ <span class="tag taskName">{{log.taskName}}</span>
+ </div>
+ </div>
+ <div v-else-if="log.eventType === 'TEAM_WORK'">
+ <div>
+ <span class="tag name">{{log.nickName}}</span>
+ 鍦�
+ <span class="tag time">{{log.gmtCreate}}</span>
+ 閭�璇蜂簡璋佽皝璋�
+ <span class="tag op">鍗忓悓鍔炵悊</span>
+ <span class="tag taskName">{{log.taskName}}</span>
+ </div>
+ </div>
+ </div>
+ </div>
+ <div v-else style="display: flex;justify-content: center;align-items: center;height: 500px">
+ <el-empty :image="emptyImage" description="鏈煡璇㈠埌鏃ュ織淇℃伅"></el-empty>
+ </div>
+ </div>
+</template>
+
+<script>
+export default {
+ name: "LogView",
+ props: {
+ logList: {
+ require: true,
+ type: Array
+ }
+ },
+ data() {
+ return {
+ emptyImage: require('@/assets/nodata.png')
+ }
+ }
+}
+</script>
+
+<style scoped>
+.tag {
+ margin: 0 5px;
+}
+.name {
+ color: #E6A23C;
+}
+.time {
+ color: #909399;
+}
+.taskName {
+ color: #409EFF;
+}
+.op {
+ color: #F56C6C;
+}
+</style>
--
Gitblit v1.8.0