user.ts 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import { request } from 'umi';
  2. export async function Login(data: {
  3. username: string;
  4. pwd: string;
  5. DepId: string;
  6. }) {
  7. return request('/api/v2/user/login', {
  8. method: 'POST',
  9. data,
  10. });
  11. }
  12. export async function Logout() {
  13. return request('/api/v1/user/logout', {
  14. method: 'POST',
  15. });
  16. }
  17. export async function queryDepList(userName: string) {
  18. return request(`/api/v2/user/dep`, {
  19. params: { userName },
  20. });
  21. }
  22. export async function queryCurrent() {
  23. return request('/api/v2/user/current-user');
  24. }
  25. // 获取角色在此项目下的权限
  26. export async function queryAccess(
  27. projectId: number | string,
  28. ): Promise<Api.IAccess> {
  29. const { data } = await request(`/api/v2/user/project/menu/${projectId}`);
  30. let permission: { [key: string]: boolean } = {};
  31. data?.forEach((item: any) => {
  32. if (!item.Menus || typeof item.Menus != 'object') return;
  33. permission = {
  34. ...permission,
  35. ...item.Menus,
  36. };
  37. });
  38. return permission;
  39. }
  40. export async function query() {
  41. return request('/api/users');
  42. }
  43. export async function queryCurrentV2() {
  44. return request('/api/v2/user/current-user');
  45. }
  46. export async function queryUnreadNotification() {
  47. return request('/notification/unread/');
  48. }
  49. export async function SetNotificationRead(Id: number) {
  50. return request(`/notification/read/${Id}`, { method: 'PUT' });
  51. }