feat: 订单详情 & 问卷调查

This commit is contained in:
2025-09-10 16:56:24 +08:00
parent 8a1a2af1e9
commit d60445b850
31 changed files with 2054 additions and 723 deletions

View File

@@ -1,46 +1,33 @@
import { create } from 'zustand'
import { fetchUserProfile, updateUserProfile, UserInfoType } from '@/services/loginService'
import { create } from "zustand";
import {
fetchUserProfile,
updateUserProfile,
UserInfoType,
} from "@/services/loginService";
export interface UserState {
user: UserInfoType
fetchUserInfo: () => Promise<void>
updateUserInfo: (userInfo: Partial<UserInfoType>) => void
user: UserInfoType | {};
fetchUserInfo: () => Promise<void>;
updateUserInfo: (userInfo: Partial<UserInfoType>) => void;
}
export const useUser = create<UserState>()((set) => ({
user: {
id: 0,
"openid": "",
"unionid": "",
"session_key": "",
"nickname": "张三",
"avatar_url": "https://example.com/avatar.jpg",
"gender": "",
"country": "",
"province": "",
"city": "",
"language": "",
"phone": "13800138000",
"is_subscribed": "0",
"latitude": 0,
"longitude": 0,
"subscribe_time": "2024-06-15 14:00:00",
"last_login_time": "2024-06-15 14:00:00"
},
user: {},
fetchUserInfo: async () => {
const res = await fetchUserProfile()
console.log(res)
set({ user: res.data })
const res = await fetchUserProfile();
console.log(res);
set({ user: res.data });
},
updateUserInfo: async(userInfo: Partial<UserInfoType>) => {
const res = await updateUserProfile(userInfo)
set({ user: res.data })
}
}))
updateUserInfo: async (userInfo: Partial<UserInfoType>) => {
const res = await updateUserProfile(userInfo);
set({ user: res.data });
},
}));
export const useUserInfo = () => useUser((state) => state.user)
export const useUserInfo = () => useUser((state) => state.user);
export const useUserActions = () => useUser((state) => ({
fetchUserInfo: state.fetchUserInfo,
updateUserInfo: state.updateUserInfo
}))
export const useUserActions = () =>
useUser((state) => ({
fetchUserInfo: state.fetchUserInfo,
updateUserInfo: state.updateUserInfo,
}));