xiangpei
2025-02-13 c2d73d36f018bbbe2393357f32b548113b09d3ae
流程日志组件、转办的用户、部门查询使用无数据权限的
3个文件已修改
3个文件已添加
150 ■■■■■ 已修改文件
src/api/flowLog/flowLog.js 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/system/user.js 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/nodata.png 补丁 | 查看 | 原始文档 | blame | 历史
src/components/flow/User/MultUser.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/flow/User/SingleUser.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/projectProcess/components/LogView.vue 107 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/flowLog/flowLog.js
New file
@@ -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
  })
}
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({
src/assets/nodata.png
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;
      });
    },
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;
      });
    },
src/views/projectProcess/components/LogView.vue
New file
@@ -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">督办</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>