10.10综合交易所原始源码-管理后台
admin
2026-01-06 a3cc41349752d6fb067df2a58e4e4b723a915f21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
export default {
  state: {
    // 对话来源[1:私聊;2:群聊]
    talk_type: 0,
 
    // 接收者ID
    receiver_id: 0,
 
    is_robot: 0,
 
    // 聊天记录
    records: [],
 
    // 对话索引(聊天对话的唯一索引)
    index_name: null,
  },
  mutations: {
    // 更新对话
    UPDATE_DIALOGUE_MESSAGE(state, resource) {
      state.records = []
      state.talk_type = parseInt(resource.talk_type)
      state.receiver_id = parseInt(resource.receiver_id)
      state.is_robot = parseInt(resource.is_robot)
 
      if (state.talk_type === 0 || state.receiver_id === 0) {
        state.index_name = null
      } else {
        state.index_name = resource.talk_type + '_' + resource.receiver_id
      }
    },
 
    // 数组头部压入对话记录
    UNSHIFT_DIALOGUE(state, records) {
      state.records.unshift(...records)
    },
 
    // 推送对话记录
    PUSH_DIALOGUE(state, record) {
      state.records.push(record)
    },
 
    // 更新对话记录
    UPDATE_DIALOGUE(state, resource) {
      for (const iterator of state.records) {
        if (iterator.id === resource.id) {
          Object.assign(iterator, resource)
          break
        }
      }
    },
 
    // 删除对话记录
    DELETE_DIALOGUE(state, index) {
      state.records.splice(index, 1)
    },
 
    BATCH_DELETE_DIALOGUE(state, ids) {
      ids.forEach(record_id => {
        let index = state.records.findIndex(item => item.id == record_id)
        if (index >= 0) state.records.splice(index, 1)
      })
    },
 
    // 数组头部压入对话记录
    SET_DIALOGUE(state, records) {
      state.records = records
    },
  },
}