diff --git a/src/App.vue b/src/App.vue index b92ea37..39ca9b3 100644 --- a/src/App.vue +++ b/src/App.vue @@ -7,6 +7,8 @@ diff --git a/src/api/my_business/workflow.js b/src/api/my_business/workflow.js index 23f4a1f..a9acfc2 100644 --- a/src/api/my_business/workflow.js +++ b/src/api/my_business/workflow.js @@ -184,5 +184,12 @@ export function getRecordbyPorcInstId(procInstId) { }) } +export function getUserMsgCount() { + return request({ + url: '/workflow/msg/count/', + method: 'get', + }) +} + diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue index df028f6..4ec20dc 100644 --- a/src/layout/components/Navbar.vue +++ b/src/layout/components/Navbar.vue @@ -35,6 +35,30 @@ + + + + + + + + + + + + @@ -46,6 +70,7 @@ import TopNav from '@/components/TopNav' import Hamburger from '@/components/Hamburger' import Screenfull from '@/components/Screenfull' import Search from '@/components/HeaderSearch' +import { getUserMsgCount } from '@/api/my_business/workflow' export default { components: { @@ -82,6 +107,12 @@ export default { return this.$store.state.user.unreadMsgNumber ? this.$store.state.user.unreadMsgNumber : 0 }, }, + data() { + return { + msgVisible: false, + msgTableData: [] + } + }, methods: { toggleSideBar() { this.$store.dispatch('app/toggleSideBar') @@ -99,8 +130,30 @@ export default { }, // 跳转到消息中心 toMyCartPage() { - this.$router.push({ path: '/message', query: {'states':'1'} }) + getUserMsgCount().then(res => { + this.msgTableData = []; + let msgItem = {}; + msgItem['type'] = 'msg'; + msgItem['name'] = '消息中心数量'; + msgItem['count'] = res.msgCount; + let taskItem = {}; + taskItem['type'] = 'task'; + taskItem['name'] = '代办消息数量'; + taskItem['count'] = res.taskCount; + this.msgTableData.push(msgItem); + this.msgTableData.push(taskItem); + }).catch(error => { + }) + this.msgVisible = true; }, + handleToMsgView(row){ + this.msgVisible = false; + if(row.type === 'msg'){ + this.$router.push({ path: '/message', query: {'states':'1'} }) + } else { + this.$router.push({ path: '/workstuff/dispose'}) + } + } } } diff --git a/src/store/modules/user.js b/src/store/modules/user.js index 5370465..193aa57 100644 --- a/src/store/modules/user.js +++ b/src/store/modules/user.js @@ -1,5 +1,6 @@ import { login, logout, getInfo } from '@/api/login' import { getToken, setToken, removeToken } from '@/utils/auth' +import { getUserMsgCount } from '@/api/my_business/workflow' const user = { state: { @@ -102,6 +103,16 @@ const user = { }) }) }, + GetUserMsgCount({ commit, state }) { + return new Promise((resolve, reject) => { + getUserMsgCount().then(res => { + commit('SET_UNREAD_MSG_NUMBER', res.totalMsgCount) + resolve() + }).catch(error => { + reject(error) + }) + }) + }, // 前端 登出 FedLogOut({ commit }) { diff --git a/src/views/message/index.vue b/src/views/message/index.vue index b04a121..5007713 100644 --- a/src/views/message/index.vue +++ b/src/views/message/index.vue @@ -134,6 +134,7 @@ import { deptTreeSelect } from "@/api/system/user"; import docDetail from "@/views/document/detail"; import toolDetail from "@/views/tool/toolDetail"; import { getUserMsgCount } from "@/api/message/message" +import store from '@/store' export default { name: "Document", @@ -255,9 +256,7 @@ export default { self.$set(formData, "states", 2) updateMessage(formData).then(response => { self.$modal.msgSuccess(response?.msg || '操作成功') - getUserMsgCount(self.$store.getters.userId).then(res => { - self.$store.commit("SET_UNREAD_MSG_NUMBER", res.data); - }); + store.dispatch('GetUserMsgCount').then(() => { }) self.getList(); }) }).catch((err) => {console.error(err)}); @@ -279,11 +278,7 @@ export default { } allMarkedRead(formData).then(response => { self.$modal.msgSuccess(response?.msg || '操作成功') - - getUserMsgCount(self .$store.getters.userId).then(res => { - self.$store.commit("SET_UNREAD_MSG_NUMBER", res.data); - }); - + store.dispatch('GetUserMsgCount').then(() => { }) self.getList(); }) }).catch((err) => {console.error(err)}); diff --git a/src/views/workflowList/addWorkflow/tool_release.vue b/src/views/workflowList/addWorkflow/tool_release.vue index 9937bc0..bac13eb 100644 --- a/src/views/workflowList/addWorkflow/tool_release.vue +++ b/src/views/workflowList/addWorkflow/tool_release.vue @@ -338,6 +338,7 @@ import ToolSelector from '@/components/tool-selector/index.vue' import uploadVue from '@/components/FileUpload/optimizeToolUpload.vue' import { addCount } from "@/api/tool/downloadCount"; import previewUtil from '@/components/PreviewUtil/previewUtil.vue' +import store from '@/store' // PDF本地文件预览 export default { @@ -834,10 +835,6 @@ export default { this.$set(formData,'attachmentList',_this.attachmentList) addTool(formData).then((res) => { if (res.code===200) { - /* if(formData.recordStatus == 'done'){ - console.info("2222222222222222", _this.$store.state.user.unreadMsgNumber+1) - store.commit('SET_UNREAD_MSG_NUMBER', _this.$store.state.user.unreadMsgNumber+1); - } */ _this.$message({ message: '流程提交成功',//提示的信息 type:'success',  //类型是成功 @@ -849,6 +846,8 @@ export default { _this.close(); } }); + + store.dispatch('GetUserMsgCount').then(() => { }) } }); }, diff --git a/src/views/workflowList/addWorkflow/use_apply.vue b/src/views/workflowList/addWorkflow/use_apply.vue index eeecb5a..53a4500 100644 --- a/src/views/workflowList/addWorkflow/use_apply.vue +++ b/src/views/workflowList/addWorkflow/use_apply.vue @@ -621,9 +621,6 @@ export default { formData.editStatus = _this.editStatus addApply(formData).then((res) => { if (res.code===200) { - if(formData.recordStatus == 'done'){ - store.commit('SET_UNREAD_MSG_NUMBER', _this.$store.state.user.unreadMsgNumber+1); - } _this.$message({ message: '流程提交成功',//提示的信息 type:'success',  //类型是成功 @@ -635,6 +632,8 @@ export default { _this.close(); } }); + + store.dispatch('GetUserMsgCount').then(() => { }) } }); },