mirror of
https://github.com/continew-org/continew-admin-ui.git
synced 2026-01-13 10:57:10 +08:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1536fff3b4 | |||
| cd1b0b8c09 | |||
|
|
50cd13e2e5 |
@@ -16,7 +16,7 @@ export function deleteMessage(ids: Array<string>) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** @desc 标记已读 */
|
/** @desc 标记已读 */
|
||||||
export function readMessage(ids?: Array<string>) {
|
export function readMessage(ids: Array<string>) {
|
||||||
return http.patch(`${BASE_URL}/read`, { ids })
|
return http.patch(`${BASE_URL}/read`, { ids })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { onMounted } from 'vue'
|
import { onMounted } from 'vue'
|
||||||
import { type MessageResp, listMessage, readMessage } from '@/apis'
|
import { type MessageResp, listMessage, readAllMessage } from '@/apis'
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
|
|
||||||
const emit = defineEmits<{
|
const emit = defineEmits<{
|
||||||
@@ -54,7 +54,7 @@ const open = () => {
|
|||||||
|
|
||||||
// 全部已读
|
// 全部已读
|
||||||
const readAll = async () => {
|
const readAll = async () => {
|
||||||
await readMessage()
|
await readAllMessage()
|
||||||
await getMessageData()
|
await getMessageData()
|
||||||
emit('readall-success')
|
emit('readall-success')
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,10 +48,10 @@ const getDataList = async () => {
|
|||||||
try {
|
try {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
const base = `https://continew.top`
|
const base = `https://continew.top`
|
||||||
const data = await (await fetch(`${base}/sponsor.json`)).json()
|
const data = await (await fetch(`${base}/sponsor.json?${new Date().getTime()}`)).json()
|
||||||
if (data) {
|
if (data) {
|
||||||
// 只获取 special 和 platinum 赞助者
|
// 只获取 special 和 platinum 赞助者
|
||||||
const sponsors = [...data.special, data.platinum]
|
const sponsors = [...data.special, ...data.platinum]
|
||||||
sponsors.forEach((item) => {
|
sponsors.forEach((item) => {
|
||||||
if (!item.name) {
|
if (!item.name) {
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<GiTable
|
<GiTable
|
||||||
v-model:selectedKeys="selectedKeys"
|
v-model:selected-keys="selectedKeys"
|
||||||
row-key="id"
|
row-key="id"
|
||||||
:data="dataList"
|
:data="dataList"
|
||||||
:columns="columns"
|
:columns="columns"
|
||||||
@@ -62,6 +62,7 @@ import { Message, Modal } from '@arco-design/web-vue'
|
|||||||
import { type MessageQuery, deleteMessage, listMessage, readAllMessage, readMessage } from '@/apis'
|
import { type MessageQuery, deleteMessage, listMessage, readAllMessage, readMessage } from '@/apis'
|
||||||
import { useTable } from '@/hooks'
|
import { useTable } from '@/hooks'
|
||||||
import { useDict } from '@/hooks/app'
|
import { useDict } from '@/hooks/app'
|
||||||
|
import mittBus from '@/utils/mitt'
|
||||||
|
|
||||||
defineOptions({ name: 'SystemMessage' })
|
defineOptions({ name: 'SystemMessage' })
|
||||||
|
|
||||||
@@ -70,7 +71,10 @@ const { message_type } = useDict('message_type')
|
|||||||
const queryForm = reactive<MessageQuery>({
|
const queryForm = reactive<MessageQuery>({
|
||||||
sort: ['createTime,desc'],
|
sort: ['createTime,desc'],
|
||||||
})
|
})
|
||||||
|
// 表格更新回调
|
||||||
|
const onSuccess = () => {
|
||||||
|
mittBus.emit('count-refresh')
|
||||||
|
}
|
||||||
const {
|
const {
|
||||||
tableData: dataList,
|
tableData: dataList,
|
||||||
loading,
|
loading,
|
||||||
@@ -80,7 +84,7 @@ const {
|
|||||||
selectAll,
|
selectAll,
|
||||||
search,
|
search,
|
||||||
handleDelete,
|
handleDelete,
|
||||||
} = useTable((page) => listMessage({ ...queryForm, ...page }), { immediate: true })
|
} = useTable((page) => listMessage({ ...queryForm, ...page }), { immediate: true, onSuccess })
|
||||||
|
|
||||||
const columns: TableInstance['columns'] = [
|
const columns: TableInstance['columns'] = [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ import MyMessage from './components/MyMessage.vue'
|
|||||||
import MyNotice from './components/MyNotice.vue'
|
import MyNotice from './components/MyNotice.vue'
|
||||||
import { useDevice } from '@/hooks'
|
import { useDevice } from '@/hooks'
|
||||||
import { type MessageResp, type NoticeResp, listMessage, listNotice } from '@/apis'
|
import { type MessageResp, type NoticeResp, listMessage, listNotice } from '@/apis'
|
||||||
|
import mittBus from '@/utils/mitt'
|
||||||
|
|
||||||
defineOptions({ name: 'UserMessage' })
|
defineOptions({ name: 'UserMessage' })
|
||||||
|
|
||||||
@@ -84,6 +85,9 @@ const getNoticeData = async () => {
|
|||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getMessageData()
|
getMessageData()
|
||||||
getNoticeData()
|
getNoticeData()
|
||||||
|
mittBus.on('count-refresh', () => {
|
||||||
|
getMessageData()
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
const menuList = [
|
const menuList = [
|
||||||
|
|||||||
Reference in New Issue
Block a user