users.ts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /**
  2. * Generated by orval v7.0.1 🍺
  3. * Do not edit manually.
  4. * OpenAPI definition
  5. * OpenAPI spec version: v0
  6. */
  7. import type { ResultUserProfileVO, UserProfileRequest } from "../models";
  8. import { customAxiosInstance } from "../../util/axios-instance";
  9. export const getUsers = () => {
  10. /**
  11. * @summary 获取个人资料
  12. */
  13. const profile = () => {
  14. return customAxiosInstance<ResultUserProfileVO>({
  15. url: `/user/profile`,
  16. method: "GET",
  17. });
  18. };
  19. /**
  20. * 支持修改昵称、个性签名、头像
  21. * @summary 修改个人资料
  22. */
  23. const updateProfile = (userProfileRequest: UserProfileRequest) => {
  24. const formData = new FormData();
  25. if (userProfileRequest.nickname !== undefined) {
  26. formData.append("nickname", userProfileRequest.nickname);
  27. }
  28. if (userProfileRequest.signature !== undefined) {
  29. formData.append("signature", userProfileRequest.signature);
  30. }
  31. if (userProfileRequest.avatar !== undefined) {
  32. formData.append("avatar", userProfileRequest.avatar);
  33. }
  34. return customAxiosInstance<ResultUserProfileVO>({
  35. url: `/user/profile`,
  36. method: "PUT",
  37. headers: { "Content-Type": "multipart/form-data" },
  38. data: formData,
  39. });
  40. };
  41. return { profile, updateProfile };
  42. };
  43. export type ProfileResult = NonNullable<
  44. Awaited<ReturnType<ReturnType<typeof getUsers>["profile"]>>
  45. >;
  46. export type UpdateProfileResult = NonNullable<
  47. Awaited<ReturnType<ReturnType<typeof getUsers>["updateProfile"]>>
  48. >;