|
@@ -2,9 +2,10 @@ import OEmpty from '@/components/o-empty'
|
|
|
import OHeader from '@/components/o-header'
|
|
|
import OSearch from '@/components/o-search'
|
|
|
import OSticky from '@/components/o-sticky'
|
|
|
+import { snedStatus } from '@/constant'
|
|
|
import request from '@/helpers/request'
|
|
|
import { Cell, CellGroup, Icon, List, Tab, Tabs } from 'vant'
|
|
|
-import { defineComponent, reactive } from 'vue'
|
|
|
+import { defineComponent, onMounted, reactive } from 'vue'
|
|
|
import { useRouter } from 'vue-router'
|
|
|
import styles from './index.module.less'
|
|
|
|
|
@@ -25,26 +26,30 @@ export default defineComponent({
|
|
|
})
|
|
|
const getList = async () => {
|
|
|
try {
|
|
|
- // const res = await request.post(url, {
|
|
|
- // data: {
|
|
|
- // ...params
|
|
|
- // }
|
|
|
- // })
|
|
|
- // state.loading = false
|
|
|
- // const result = res.data || {}
|
|
|
+ const res = await request.post('/api-school/imMessageBatchSending/page', {
|
|
|
+ data: {
|
|
|
+ ...state.params
|
|
|
+ }
|
|
|
+ })
|
|
|
+ state.loading = false
|
|
|
+ const result = res.data || {}
|
|
|
// 处理重复请求数据
|
|
|
- // if (state.list.length > 0 && result.current === 1) {
|
|
|
- // return
|
|
|
- // }
|
|
|
- // state.list = state.list.concat(result.rows || [])
|
|
|
- // state.finished = result.current >= result.totalPage
|
|
|
- // state.params.page = result.current + 1
|
|
|
- // state.dataShow = state.list.length > 0
|
|
|
+ if (state.list.length > 0 && result.current === 1) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ state.list = state.list.concat(result.rows || [])
|
|
|
+ state.finished = result.current >= result.totalPage
|
|
|
+ state.params.page = result.current + 1
|
|
|
+ state.dataShow = state.list.length > 0
|
|
|
} catch {
|
|
|
- // state.dataShow = false
|
|
|
- // state.finished = true
|
|
|
+ state.dataShow = false
|
|
|
+ state.finished = true
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ onMounted(() => {
|
|
|
+ getList()
|
|
|
+ })
|
|
|
return () => (
|
|
|
<div class={styles.massMessage}>
|
|
|
<OSticky position="top">
|
|
@@ -86,22 +91,22 @@ export default defineComponent({
|
|
|
onLoad={getList}
|
|
|
immediateCheck={false}
|
|
|
>
|
|
|
- <CellGroup inset>
|
|
|
- <Cell class={styles.waitSend} titleStyle={{ flex: '1 auto' }}>
|
|
|
- {{
|
|
|
- title: () => (
|
|
|
- <div class={styles.time}>
|
|
|
- <Icon name="clock-o" class={styles.clockO} />
|
|
|
- 2022年10月31日 13:00:00
|
|
|
- </div>
|
|
|
- ),
|
|
|
- value: () => <span>待发送</span>
|
|
|
- }}
|
|
|
- </Cell>
|
|
|
- <Cell valueClass={styles.messageContent}>
|
|
|
- 乐团今日的训练课程由于学校举办运动会延至明天进行,请同学们按时参加运动会,明天带好乐器下午三点准时到教室训练。最近天气转凉了,大家也记得多穿点衣服,不要冻感冒了。
|
|
|
- </Cell>
|
|
|
- </CellGroup>
|
|
|
+ {state.list.map((item: any) => (
|
|
|
+ <CellGroup inset>
|
|
|
+ <Cell class={styles.waitSend} titleStyle={{ flex: '1 auto' }}>
|
|
|
+ {{
|
|
|
+ title: () => (
|
|
|
+ <div class={styles.time}>
|
|
|
+ <Icon name="clock-o" class={styles.clockO} />
|
|
|
+ {item.sendTime}
|
|
|
+ </div>
|
|
|
+ ),
|
|
|
+ value: () => <span>{snedStatus[item.sendStatus]}</span>
|
|
|
+ }}
|
|
|
+ </Cell>
|
|
|
+ <Cell valueClass={styles.messageContent}>{item.textMessage}</Cell>
|
|
|
+ </CellGroup>
|
|
|
+ ))}
|
|
|
</List>
|
|
|
) : (
|
|
|
<OEmpty btnStatus={false} classImgSize="SMALL" tips="暂无群发消息" />
|