refactor(db): 重构数据库架构使用serverId作为主键
- 将数据库主键从自增id改为直接使用serverId,避免ID冲突 - 简化数据存储和查询逻辑,提高性能 - 添加重复数据检测和去重功能 - 更新相关组件以适配新的数据库接口 - 在应用启动时初始化数据库连接
This commit is contained in:
@@ -31,7 +31,7 @@ export interface CkChatState {
|
||||
chatSessions: any[];
|
||||
kfUserList: KfUserListData[];
|
||||
kfSelected: number;
|
||||
kfSelectedUser: () => KfUserListData | undefined;
|
||||
getKfSelectedUser: () => KfUserListData | undefined;
|
||||
newContractList: { groupName: string; contacts: any[] }[];
|
||||
asyncKfSelected: (data: number) => void;
|
||||
getkfUserList: () => KfUserListData[];
|
||||
|
||||
@@ -6,7 +6,7 @@ import {
|
||||
CkAccount,
|
||||
KfUserListData,
|
||||
} from "@/pages/pc/ckbox/data";
|
||||
|
||||
import { kfUserService } from "@/utils/db";
|
||||
export const useCkChatStore = createPersistStore<CkChatState>(
|
||||
set => ({
|
||||
userInfo: null,
|
||||
@@ -16,9 +16,18 @@ export const useCkChatStore = createPersistStore<CkChatState>(
|
||||
kfUserList: [], //客服列表
|
||||
kfSelected: 0,
|
||||
newContractList: [], //联系人分组
|
||||
kfSelectedUser: () => {
|
||||
const state = useCkChatStore.getState();
|
||||
return state.kfUserList.find(item => item.id === state.kfSelected);
|
||||
//客服列表
|
||||
asyncKfUserList: async data => {
|
||||
console.log(data);
|
||||
|
||||
await kfUserService.createManyWithServerId(data);
|
||||
// set({ kfUserList: data });
|
||||
},
|
||||
// 获取客服列表
|
||||
getkfUserList: async () => {
|
||||
return await kfUserService.findAll();
|
||||
// const state = useCkChatStore.getState();
|
||||
// return state.kfUserList;
|
||||
},
|
||||
asyncKfSelected: (data: number) => {
|
||||
set({ kfSelected: data });
|
||||
@@ -39,14 +48,12 @@ export const useCkChatStore = createPersistStore<CkChatState>(
|
||||
asyncContractList: data => {
|
||||
set({ contractList: data });
|
||||
},
|
||||
// 控制终端用户列表
|
||||
getkfUserList: () => {
|
||||
//获取选中的客服信息
|
||||
getgetKfSelectedUser: () => {
|
||||
const state = useCkChatStore.getState();
|
||||
return state.kfUserList;
|
||||
},
|
||||
asyncKfUserList: data => {
|
||||
set({ kfUserList: data });
|
||||
return state.kfUserList.find(item => item.id === state.kfSelected);
|
||||
},
|
||||
|
||||
// 删除控制终端用户
|
||||
deleteCtrlUser: (userId: number) => {
|
||||
set(state => ({
|
||||
|
||||
Reference in New Issue
Block a user