83 lines
2.0 KiB
Vue
83 lines
2.0 KiB
Vue
<template>
|
|
<sui-container>
|
|
<sui-grid>
|
|
<sui-grid-row>
|
|
<sui-grid-column :width="4">
|
|
<sui-segment>
|
|
<sui-list divided>
|
|
<sui-list-item @click="changeGroup('')">All</sui-list-item>
|
|
<sui-list-item v-for="it in lineGroups" :key="it.id" @click="changeGroup(it.id)">
|
|
{{ it.name }}
|
|
</sui-list-item>
|
|
</sui-list>
|
|
</sui-segment>
|
|
</sui-grid-column>
|
|
<sui-grid-column :width="12">
|
|
<sui-segment>
|
|
<sui-list>
|
|
<sui-list-item v-for="it in list" :key="it.id">
|
|
<sui-segment>
|
|
<sui-list-header><sui-label :basic="true">{{ it.group_name }}</sui-label> {{ it.user_name }}</sui-list-header>
|
|
<MessageItem :type="it.type" :msg="it.message" :time="it.ctime" />
|
|
</sui-segment>
|
|
</sui-list-item>
|
|
</sui-list>
|
|
</sui-segment>
|
|
</sui-grid-column>
|
|
</sui-grid-row>
|
|
</sui-grid>
|
|
</sui-container>
|
|
</template>
|
|
|
|
<script>
|
|
import MessageItem from './components/message-item.vue'
|
|
import {mapActions, mapGetters} from 'vuex'
|
|
|
|
export default {
|
|
name: 'LineLog',
|
|
components: {
|
|
MessageItem
|
|
},
|
|
data () {
|
|
return {
|
|
list: [],
|
|
nowGroup: '',
|
|
page: {
|
|
cur: 1,
|
|
total: 1
|
|
}
|
|
}
|
|
},
|
|
updated () {
|
|
console.log(this.lineGroups)
|
|
},
|
|
methods: {
|
|
...mapActions(['getLineGroups', 'getLogList']),
|
|
changeGroup (id = '') {
|
|
console.log('change grp ::::: ', id)
|
|
if (typeof id !== 'string') return
|
|
this.nowGroup = id
|
|
this.page = { cur: 1, total: 1 }
|
|
this.getLog()
|
|
},
|
|
getLog (page = -1) {
|
|
this.getLogList({
|
|
group: this.nowGroup,
|
|
page: page,
|
|
max: 20,
|
|
cb: data => {
|
|
this.list = data.list
|
|
this.page = data.page
|
|
}})
|
|
}
|
|
},
|
|
mounted () {
|
|
this.getLineGroups()
|
|
this.getLog()
|
|
},
|
|
computed: {
|
|
...mapGetters(['lineGroups'])
|
|
}
|
|
}
|
|
</script>
|