From 9f2772231956f831aadde5226e2e7981fda299b0 Mon Sep 17 00:00:00 2001 From: Yunfei Du <278774021@qq.com> Date: Sun, 14 Apr 2024 16:53:28 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=9A=E7=9F=A5=E5=85=AC=E5=91=8A=E6=9B=B4?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/system/notice.js | 29 +++- src/layout/components/Navbar.vue | 135 +++++++++++++++++ src/views/system/notice/index.vue | 238 +++++++++++++++++++++++++++++- src/views/tool/gen/editTable.vue | 10 +- vue.config.js | 2 +- 5 files changed, 405 insertions(+), 9 deletions(-) diff --git a/src/api/system/notice.js b/src/api/system/notice.js index c274ea5..d22799f 100644 --- a/src/api/system/notice.js +++ b/src/api/system/notice.js @@ -9,6 +9,29 @@ export function listNotice(query) { }) } +export function updateAsUserDept(id) { + return request({ + url: '/system/userDept/UpdateAsUserDept?id=' + id, + method: 'get' + }) +} + +export function getNum(id) { + return request({ + url: '/system/userDept/GetNum?noticeId=' + id, + method: 'get' + }) +} + +export function getNoticeList(data) { + return request({ + url: '/system/notice/GetNoticeList', + method: 'post', + data + }) +} + + // 查询公告详细 export function getNotice(noticeId) { return request({ @@ -41,4 +64,8 @@ export function delNotice(noticeId) { url: '/system/notice/' + noticeId, method: 'delete' }) -} \ No newline at end of file +} + + + + diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue index 7ccea26..35f7e87 100644 --- a/src/layout/components/Navbar.vue +++ b/src/layout/components/Navbar.vue @@ -8,6 +8,7 @@
@@ -46,8 +121,51 @@ import Hamburger from '@/components/Hamburger' import Screenfull from '@/components/Screenfull' import SizeSelect from '@/components/SizeSelect' import Search from '@/components/HeaderSearch' +import { getNoticeList, updateAsUserDept } from '@/api/system/notice' export default { + dicts: ['is_read', 'sys_notice_type'], + data() { + return { + noticeVisble: false, + noticeInfo: {}, + noticeAttr: [ + { + createTime: '', + createBy: 'admin', + noticeType: '1', + isRead: '1', + noticeTitle: '哈哈', + noticeContent: '嘻嘻嘻嘻嘻', + noticeId: 1, + }, + { + createTime: '', + createBy: 'admin', + noticeType: '2', + isRead: '0', + noticeTitle: '哈撒大大哈', + noticeContent: '嘻嘻嘻嘻阿尽快嘻', + noticeId: 2, + }, + { + createTime: '', + createBy: 'admin', + noticeType: '1', + isRead: '0', + noticeTitle: '哈哈是', + noticeContent: '嘻嘻嘻萨达嘻嘻', + noticeId: 3, + } + ], + form: { + noticeType: '', + isRead: '' + }, + messageTotal: undefined, + noticeTableVisible: false + } + }, components: { Breadcrumb, TopNav, @@ -80,6 +198,23 @@ export default { } }, methods: { + getNoticeList() { + getNoticeList(this.form).then(res => { + console.log(res) + this.noticeAttr = res.data + }) + }, + readNotice(row) { + this.noticeInfo = row + this.noticeVisble = true + updateAsUserDept(row.id).then(res => { + this.getNoticeList() + }) + }, + noticeTableList() { + this.getNoticeList() + this.noticeTableVisible = true + }, toggleSideBar() { this.$store.dispatch('app/toggleSideBar') }, diff --git a/src/views/system/notice/index.vue b/src/views/system/notice/index.vue index edfb938..4ee8c5c 100644 --- a/src/views/system/notice/index.vue +++ b/src/views/system/notice/index.vue @@ -1,5 +1,6 @@ +