index.ts 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. import request from "@/utils/request";
  2. import { AxiosPromise } from "axios";
  3. import { UserForm, UserInfo, UserPageVO, UserQuery } from "./types";
  4. /**
  5. * 登录成功后获取用户信息(昵称、头像、权限集合和角色集合)
  6. */
  7. export function getUserInfoApi(): AxiosPromise {
  8. return request({
  9. url: "/api/auth",
  10. method: "get",
  11. });
  12. }
  13. // 新增的获取用户详细信息的API
  14. export function getUserDetailApi(p: object): AxiosPromise {
  15. return request({
  16. url: "/api/v1/sys/user/get",
  17. method: "post",
  18. data: p,
  19. });
  20. }
  21. /**
  22. * 获取用户分页列表
  23. *
  24. * @param queryParams
  25. */
  26. export function getUserList(queryParams: any): AxiosPromise<any[]> {
  27. return request({
  28. url: "/api/v1/sys/user/list",
  29. method: "post",
  30. data: queryParams,
  31. });
  32. }
  33. export function getUserTree(): AxiosPromise {
  34. return request({
  35. url: "/api/v1/sys/user/tree",
  36. method: "get",
  37. });
  38. }
  39. export function getPostOptions(queryParams?: any): AxiosPromise<OptionType[]> {
  40. return request({
  41. url: "/api/v1/sys/post/list",
  42. method: "post",
  43. data: queryParams,
  44. });
  45. }
  46. /**
  47. * 获取用户分页列表
  48. *
  49. * @param queryParams
  50. */
  51. export function getUserPage(queryParams: any): AxiosPromise<PageResult<any[]>> {
  52. return request({
  53. url: "/api/v1/sys/user/page",
  54. method: "post",
  55. data: queryParams,
  56. });
  57. }
  58. /**
  59. * 添加用户
  60. *
  61. * @param data
  62. */
  63. export function addUser(data: any) {
  64. return request({
  65. url: "/api/v1/sys/user/add",
  66. method: "post",
  67. data: data,
  68. });
  69. }
  70. /**
  71. * 修改用户
  72. *
  73. * @param id
  74. * @param data
  75. */
  76. export function updateUser(id: number, data: any) {
  77. return request({
  78. url: "/api/v1/sys/user/update",
  79. method: "post",
  80. data: { id: id, ...data },
  81. });
  82. }
  83. export function updateBaseInfo(id: number, data: any) {
  84. return request({
  85. url: "/api/v1/sys/user/updateBaseInfo",
  86. method: "post",
  87. data: { id: id, ...data },
  88. });
  89. }
  90. export function updateHeadImg(id: number, data: any) {
  91. return request({
  92. url: "/api/v1/sys/user/updateHeadImg",
  93. method: "post",
  94. data: { id: id, ...data },
  95. });
  96. }
  97. /**
  98. * 修改用户密码
  99. *
  100. * @param id
  101. * @param password
  102. */
  103. export function updateUserPassword(obj: any) {
  104. return request({
  105. url: "/api/v1/sys/user/resetPwd",
  106. method: "post",
  107. data: obj,
  108. });
  109. }
  110. /**
  111. * 删除用户
  112. *
  113. * @param ids
  114. */
  115. export function deleteUsers(ids: any) {
  116. return request({
  117. url: "/api/v1/sys/user/del",
  118. method: "post",
  119. data: { id: ids },
  120. });
  121. }
  122. /**
  123. * 下载用户导入模板
  124. *
  125. * @returns
  126. */
  127. export function downloadTemplateApi() {
  128. return request({
  129. url: "/api/v1/sys/user/template",
  130. method: "get",
  131. responseType: "arraybuffer",
  132. });
  133. }
  134. /**
  135. * 导出用户
  136. *
  137. * @param queryParams
  138. * @returns
  139. */
  140. export function exportUser(queryParams: any) {
  141. return request({
  142. url: "/api/v1/sys/user/export",
  143. method: "post",
  144. data: queryParams,
  145. responseType: "arraybuffer",
  146. });
  147. }
  148. /**
  149. * 导入用户
  150. *
  151. * @param file
  152. */
  153. export function importUser(deptId: number, file: File) {
  154. const formData = new FormData();
  155. formData.append("file", file);
  156. return request({
  157. url: "/api/v1/sys/user/import",
  158. method: "post",
  159. params: { deptId: deptId },
  160. data: formData,
  161. headers: {
  162. "Content-Type": "multipart/form-data",
  163. },
  164. });
  165. }