diff --git a/src/api/mall/promotion/kefu/message/index.ts b/src/api/mall/promotion/kefu/message/index.ts index a12167fa..acf23b5c 100644 --- a/src/api/mall/promotion/kefu/message/index.ts +++ b/src/api/mall/promotion/kefu/message/index.ts @@ -29,8 +29,8 @@ export const KeFuMessageApi = { url: '/promotion/kefu-message/update-read-status?conversationId=' + conversationId }) }, - // 获得消息分页数据 - getKeFuMessagePage: async (params: any) => { - return await request.get({ url: '/promotion/kefu-message/page', params }) + // 获得消息数据 + getKeFuMessageList: async (params: any) => { + return await request.get({ url: '/promotion/kefu-message/list', params }) } } diff --git a/src/store/modules/mall/kefu.ts b/src/store/modules/mall/kefu.ts new file mode 100644 index 00000000..f3afc03b --- /dev/null +++ b/src/store/modules/mall/kefu.ts @@ -0,0 +1,37 @@ +import { store } from '@/store' +import { defineStore } from 'pinia' +import { KeFuConversationApi, KeFuConversationRespVO } from '@/api/mall/promotion/kefu/conversation' +import { KeFuMessageRespVO } from '@/api/mall/promotion/kefu/message' + +// TODO puhui999: 待优化完善 +interface MallKefuInfoVO { + conversationList: KeFuConversationRespVO[] // 会话列表 + conversationMessageList: Map // 会话消息 +} + +export const useMallKefuStore = defineStore('mall-kefu', { + state: (): MallKefuInfoVO => ({ + conversationList: [], + conversationMessageList: new Map() // key 会话,value 会话消息列表 + }), + getters: { + getConversationList(): KeFuConversationRespVO[] { + return this.conversationList + }, + getConversationMessageList(): Map { + return this.conversationMessageList + } + }, + actions: { + async setConversationList() { + const list = await KeFuConversationApi.getConversationList() + list.sort((a: KeFuConversationRespVO, _) => (a.adminPinned ? -1 : 1)) + this.conversationList = list + } + // async setConversationMessageList(conversationId: number) {} + } +}) + +export const useUserStoreWithOut = () => { + return useMallKefuStore(store) +} diff --git a/src/views/mall/promotion/kefu/components/KeFuConversationList.vue b/src/views/mall/promotion/kefu/components/KeFuConversationList.vue index 6e011231..5e57266f 100644 --- a/src/views/mall/promotion/kefu/components/KeFuConversationList.vue +++ b/src/views/mall/promotion/kefu/components/KeFuConversationList.vue @@ -1,5 +1,6 @@ - - diff --git a/src/views/mall/promotion/kefu/components/index.ts b/src/views/mall/promotion/kefu/components/index.ts index 585d0da7..0f60a6e4 100644 --- a/src/views/mall/promotion/kefu/components/index.ts +++ b/src/views/mall/promotion/kefu/components/index.ts @@ -1,5 +1,5 @@ import KeFuConversationList from './KeFuConversationList.vue' import KeFuMessageList from './KeFuMessageList.vue' -import MemberBrowsingHistory from './history/MemberBrowsingHistory.vue' +import MemberInfo from './member/MemberInfo.vue' -export { KeFuConversationList, KeFuMessageList, MemberBrowsingHistory } +export { KeFuConversationList, KeFuMessageList, MemberInfo } diff --git a/src/views/mall/promotion/kefu/components/member/MemberInfo.vue b/src/views/mall/promotion/kefu/components/member/MemberInfo.vue new file mode 100644 index 00000000..855e3d60 --- /dev/null +++ b/src/views/mall/promotion/kefu/components/member/MemberInfo.vue @@ -0,0 +1,179 @@ + + + + + + diff --git a/src/views/mall/promotion/kefu/components/history/OrderBrowsingHistory.vue b/src/views/mall/promotion/kefu/components/member/OrderBrowsingHistory.vue similarity index 100% rename from src/views/mall/promotion/kefu/components/history/OrderBrowsingHistory.vue rename to src/views/mall/promotion/kefu/components/member/OrderBrowsingHistory.vue diff --git a/src/views/mall/promotion/kefu/components/history/ProductBrowsingHistory.vue b/src/views/mall/promotion/kefu/components/member/ProductBrowsingHistory.vue similarity index 100% rename from src/views/mall/promotion/kefu/components/history/ProductBrowsingHistory.vue rename to src/views/mall/promotion/kefu/components/member/ProductBrowsingHistory.vue diff --git a/src/views/mall/promotion/kefu/index.vue b/src/views/mall/promotion/kefu/index.vue index 2b54026b..08f69913 100644 --- a/src/views/mall/promotion/kefu/index.vue +++ b/src/views/mall/promotion/kefu/index.vue @@ -1,28 +1,16 @@