From 5e440a7dc434c43eb828fa62cf9c12b0078b8565 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期一, 20 一月 2025 11:36:18 +0800
Subject: [PATCH] !173 发布 5.3.0-BETA 公测版本 Merge pull request !173 from 疯狂的狮子Li/dev

---
 src/api/system/user/index.ts |  109 +++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 79 insertions(+), 30 deletions(-)

diff --git a/src/api/system/user/index.ts b/src/api/system/user/index.ts
index d9fc1bd..0867c48 100644
--- a/src/api/system/user/index.ts
+++ b/src/api/system/user/index.ts
@@ -1,4 +1,4 @@
-import { DeptVO } from './../dept/types';
+import {DeptTreeVO, DeptVO} from './../dept/types';
 import { RoleVO } from '@/api/system/role/types';
 import request from '@/utils/request';
 import { AxiosPromise } from 'axios';
@@ -9,64 +9,75 @@
  * 鏌ヨ鐢ㄦ埛鍒楄〃
  * @param query
  */
-export function listUser(query: UserQuery): AxiosPromise<UserVO[]> {
+export const listUser = (query: UserQuery): AxiosPromise<UserVO[]> => {
   return request({
     url: '/system/user/list',
     method: 'get',
     params: query
   });
-}
+};
+
+/**
+ * 閫氳繃鐢ㄦ埛ids鏌ヨ鐢ㄦ埛
+ * @param userIds
+ */
+export const optionSelect = (userIds: (number | string)[]): AxiosPromise<UserVO[]> => {
+  return request({
+    url: '/system/user/optionselect?userIds=' + userIds,
+    method: 'get'
+  });
+};
 
 /**
  * 鑾峰彇鐢ㄦ埛璇︽儏
  * @param userId
  */
-export function getUser(userId?: string | number): AxiosPromise<UserInfoVO> {
+export const getUser = (userId?: string | number): AxiosPromise<UserInfoVO> => {
   return request({
     url: '/system/user/' + parseStrEmpty(userId),
     method: 'get'
   });
-}
+};
 
 /**
  * 鏂板鐢ㄦ埛
  */
-export function addUser(data: UserForm) {
+export const addUser = (data: UserForm) => {
   return request({
     url: '/system/user',
     method: 'post',
     data: data
   });
-}
+};
 
 /**
  * 淇敼鐢ㄦ埛
  */
-export function updateUser(data: UserForm) {
+export const updateUser = (data: UserForm) => {
   return request({
     url: '/system/user',
     method: 'put',
     data: data
   });
-}
+};
 
 /**
  * 鍒犻櫎鐢ㄦ埛
  * @param userId 鐢ㄦ埛ID
  */
-export function delUser(userId: Array<string | number> | string | number) {
+export const delUser = (userId: Array<string | number> | string | number) => {
   return request({
     url: '/system/user/' + userId,
     method: 'delete'
   });
-}
+};
 
 /**
  * 鐢ㄦ埛瀵嗙爜閲嶇疆
  * @param userId 鐢ㄦ埛ID
  * @param password 瀵嗙爜
  */
-export function resetUserPwd(userId: string | number, password: string) {
+export const resetUserPwd = (userId: string | number, password: string) => {
   const data = {
     userId,
     password
@@ -74,16 +85,20 @@
   return request({
     url: '/system/user/resetPwd',
     method: 'put',
+    headers: {
+      isEncrypt: true,
+      repeatSubmit: false
+    },
     data: data
   });
-}
+};
 
 /**
  * 鐢ㄦ埛鐘舵�佷慨鏀�
  * @param userId 鐢ㄦ埛ID
  * @param status 鐢ㄦ埛鐘舵��
  */
-export function changeUserStatus(userId: number | string, status: string) {
+export const changeUserStatus = (userId: number | string, status: string) => {
   const data = {
     userId,
     status
@@ -93,36 +108,36 @@
     method: 'put',
     data: data
   });
-}
+};
 
 /**
  * 鏌ヨ鐢ㄦ埛涓汉淇℃伅
  */
-export function getUserProfile(): AxiosPromise<UserInfoVO> {
+export const getUserProfile = (): AxiosPromise<UserInfoVO> => {
   return request({
     url: '/system/user/profile',
     method: 'get'
   });
-}
+};
 
 /**
  * 淇敼鐢ㄦ埛涓汉淇℃伅
  * @param data 鐢ㄦ埛淇℃伅
  */
-export function updateUserProfile(data: UserForm) {
+export const updateUserProfile = (data: UserForm) => {
   return request({
     url: '/system/user/profile',
     method: 'put',
     data: data
   });
-}
+};
 
 /**
  * 鐢ㄦ埛瀵嗙爜閲嶇疆
  * @param oldPassword 鏃у瘑鐮�
  * @param newPassword 鏂板瘑鐮�
  */
-export function updateUserPwd(oldPassword: string, newPassword: string) {
+export const updateUserPwd = (oldPassword: string, newPassword: string) => {
   const data = {
     oldPassword,
     newPassword
@@ -130,51 +145,85 @@
   return request({
     url: '/system/user/profile/updatePwd',
     method: 'put',
-    params: data
+    headers: {
+      isEncrypt: true,
+      repeatSubmit: false
+    },
+    data: data
   });
-}
+};
 
 /**
  * 鐢ㄦ埛澶村儚涓婁紶
  * @param data 澶村儚鏂囦欢
  */
-export function uploadAvatar(data: FormData) {
+export const uploadAvatar = (data: FormData) => {
   return request({
     url: '/system/user/profile/avatar',
     method: 'post',
     data: data
   });
-}
+};
 
 /**
  * 鏌ヨ鎺堟潈瑙掕壊
  * @param userId 鐢ㄦ埛ID
  */
-export function getAuthRole(userId: string | number): AxiosPromise<{ user: UserVO; roles: RoleVO[] }> {
+export const getAuthRole = (userId: string | number): AxiosPromise<{ user: UserVO; roles: RoleVO[] }> => {
   return request({
     url: '/system/user/authRole/' + userId,
     method: 'get'
   });
-}
+};
 
 /**
  * 淇濆瓨鎺堟潈瑙掕壊
  * @param data 鐢ㄦ埛ID
  */
-export function updateAuthRole(data: { userId: string; roleIds: string }) {
+export const updateAuthRole = (data: { userId: string; roleIds: string }) => {
   return request({
     url: '/system/user/authRole',
     method: 'put',
     params: data
   });
-}
+};
+
+/**
+ * 鏌ヨ褰撳墠閮ㄩ棬鐨勬墍鏈夌敤鎴蜂俊鎭�
+ * @param deptId
+ */
+export const listUserByDeptId = (deptId: string | number): AxiosPromise<UserVO[]> => {
+  return request({
+    url: '/system/user/list/dept/' + deptId,
+    method: 'get'
+  });
+};
 
 /**
  * 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋�
  */
-export function deptTreeSelect(): AxiosPromise<DeptVO[]> {
+export const deptTreeSelect = (): AxiosPromise<DeptTreeVO[]> => {
   return request({
     url: '/system/user/deptTree',
     method: 'get'
   });
-}
+};
+
+export default {
+  listUser,
+  getUser,
+  optionSelect,
+  addUser,
+  updateUser,
+  delUser,
+  resetUserPwd,
+  changeUserStatus,
+  getUserProfile,
+  updateUserProfile,
+  updateUserPwd,
+  uploadAvatar,
+  getAuthRole,
+  updateAuthRole,
+  deptTreeSelect,
+  listUserByDeptId
+};

--
Gitblit v1.9.3