feat: 对接权限相关API接口
This commit is contained in:
21
src/apis/model/base/base-employee.ts
Normal file
21
src/apis/model/base/base-employee.ts
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
import type { BaseModel, ReduceForPageQuery, ReduceForSaveVO, ReduceForUpdateVO } from '@/apis';
|
||||||
|
import type { Nullable, Optional } from '@/types';
|
||||||
|
|
||||||
|
export interface BaseEmployee extends BaseModel {
|
||||||
|
userId: string;
|
||||||
|
realName: string;
|
||||||
|
defUser: Nullable<
|
||||||
|
{
|
||||||
|
username: string;
|
||||||
|
nickName: string;
|
||||||
|
} & BaseModel
|
||||||
|
>;
|
||||||
|
}
|
||||||
|
|
||||||
|
export type BaseEmployeeResultVO = Nullable<BaseEmployee>;
|
||||||
|
|
||||||
|
export type BaseEmployeeSaveVO = Partial<Omit<BaseEmployee, ReduceForSaveVO>>;
|
||||||
|
|
||||||
|
export type BaseEmployeeUpdateVO = Optional<Omit<BaseEmployee, ReduceForUpdateVO>>;
|
||||||
|
|
||||||
|
export type BaseEmployeePageQuery = Partial<Omit<BaseEmployee, ReduceForPageQuery>>;
|
||||||
@@ -1,3 +1 @@
|
|||||||
export * from './model';
|
export * from './base-employee';
|
||||||
export * from './page';
|
|
||||||
export * from './reduce';
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import type { Nullable, Optional } from '@/types';
|
import type { Nullable, Optional } from '@/types';
|
||||||
import type { ReduceForPageQuery, ReduceForSaveVO, ReduceForUpdateVO } from '../../base';
|
import type { ReduceForPageQuery, ReduceForSaveVO, ReduceForUpdateVO } from '../../types';
|
||||||
import type { NdmAlarmHost } from './alarm';
|
import type { NdmAlarmHost } from './alarm';
|
||||||
import type { NdmSecurityBox, NdmSwitch } from './other';
|
import type { NdmSecurityBox, NdmSwitch } from './other';
|
||||||
import type { NdmNvr } from './storage';
|
import type { NdmNvr } from './storage';
|
||||||
|
|||||||
@@ -1,2 +1,3 @@
|
|||||||
|
export * from './ndm-permission';
|
||||||
export * from './ndm-security-box';
|
export * from './ndm-security-box';
|
||||||
export * from './ndm-switch';
|
export * from './ndm-switch';
|
||||||
|
|||||||
34
src/apis/model/biz/entity/other/ndm-permission.ts
Normal file
34
src/apis/model/biz/entity/other/ndm-permission.ts
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
import type { BaseModel, ReduceForPageQuery, ReduceForSaveVO, ReduceForUpdateVO, Station } from '@/apis';
|
||||||
|
import type { PermissionType } from '@/enums';
|
||||||
|
import type { Nullable, Optional } from '@/types';
|
||||||
|
|
||||||
|
export interface NdmPermission extends BaseModel {
|
||||||
|
/**
|
||||||
|
* 员工ID
|
||||||
|
*/
|
||||||
|
employeeId: string;
|
||||||
|
/**
|
||||||
|
* 服务器IP地址
|
||||||
|
*/
|
||||||
|
ipAddress: string;
|
||||||
|
/**
|
||||||
|
* 站号
|
||||||
|
*/
|
||||||
|
stationCode: Station['code'];
|
||||||
|
/**
|
||||||
|
* 站名
|
||||||
|
*/
|
||||||
|
name: string;
|
||||||
|
/**
|
||||||
|
* 权限类型
|
||||||
|
*/
|
||||||
|
type: PermissionType;
|
||||||
|
}
|
||||||
|
|
||||||
|
export type NdmPermissionResultVO = Nullable<NdmPermission>;
|
||||||
|
|
||||||
|
export type NdmPermissionSaveVO = Partial<Omit<NdmPermission, ReduceForSaveVO>>;
|
||||||
|
|
||||||
|
export type NdmPermissionUpdateVO = Optional<Omit<NdmPermission, ReduceForUpdateVO>>;
|
||||||
|
|
||||||
|
export type NdmPermissionPageQuery = Partial<Omit<NdmPermission, ReduceForPageQuery>>;
|
||||||
@@ -2,3 +2,4 @@ export * from './base';
|
|||||||
export * from './biz';
|
export * from './biz';
|
||||||
export * from './common';
|
export * from './common';
|
||||||
export * from './system';
|
export * from './system';
|
||||||
|
export * from './types';
|
||||||
|
|||||||
3
src/apis/model/types/index.ts
Normal file
3
src/apis/model/types/index.ts
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
export * from './model';
|
||||||
|
export * from './page';
|
||||||
|
export * from './reduce';
|
||||||
21
src/apis/request/base/base-employee.ts
Normal file
21
src/apis/request/base/base-employee.ts
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
import type { BaseEmployeePageQuery, BaseEmployeeResultVO, PageParams, PageResult } from '@/apis';
|
||||||
|
import { userClient } from '@/apis/client';
|
||||||
|
import { unwrapResponse } from '@/utils';
|
||||||
|
|
||||||
|
export const pageBaseEmployeeApi = async (pageQuery: PageParams<BaseEmployeePageQuery>, options?: { signal?: AbortSignal }) => {
|
||||||
|
const { signal } = options ?? {};
|
||||||
|
const client = userClient;
|
||||||
|
const endpoint = '/api/base/baseEmployee/page';
|
||||||
|
const resp = await client.post<PageResult<BaseEmployeeResultVO>>(endpoint, pageQuery, { signal });
|
||||||
|
const data = unwrapResponse(resp);
|
||||||
|
return data;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const detailBaseEmployeeApi = async (id: string, options?: { signal?: AbortSignal }) => {
|
||||||
|
const { signal } = options ?? {};
|
||||||
|
const client = userClient;
|
||||||
|
const endpoint = `/api/base/baseEmployee/detail`;
|
||||||
|
const resp = await client.get<BaseEmployeeResultVO>(endpoint, { params: { id }, signal });
|
||||||
|
const data = unwrapResponse(resp);
|
||||||
|
return data;
|
||||||
|
};
|
||||||
1
src/apis/request/base/index.ts
Normal file
1
src/apis/request/base/index.ts
Normal file
@@ -0,0 +1 @@
|
|||||||
|
export * from './base-employee';
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
export * from './ndm-permission';
|
||||||
export * from './ndm-security-box';
|
export * from './ndm-security-box';
|
||||||
export * from './ndm-service-available';
|
export * from './ndm-service-available';
|
||||||
export * from './ndm-switch';
|
export * from './ndm-switch';
|
||||||
|
|||||||
73
src/apis/request/biz/other/ndm-permission.ts
Normal file
73
src/apis/request/biz/other/ndm-permission.ts
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
import {
|
||||||
|
ndmClient,
|
||||||
|
userClient,
|
||||||
|
type NdmPermissionPageQuery,
|
||||||
|
type NdmPermissionResultVO,
|
||||||
|
type NdmPermissionSaveVO,
|
||||||
|
type NdmPermissionUpdateVO,
|
||||||
|
type PageParams,
|
||||||
|
type PageResult,
|
||||||
|
type Station,
|
||||||
|
} from '@/apis';
|
||||||
|
import type { PermissionTypeEnum } from '@/enums';
|
||||||
|
import { unwrapResponse } from '@/utils';
|
||||||
|
|
||||||
|
export const permissionTypesApi = async (options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
||||||
|
const { stationCode, signal } = options ?? {};
|
||||||
|
const client = stationCode ? ndmClient : userClient;
|
||||||
|
const prefix = stationCode ? `/${stationCode}` : '';
|
||||||
|
const endpoint = `${prefix}/api/ndm/ndmPermission/types`;
|
||||||
|
const resp = await client.get<PermissionTypeEnum>(endpoint, { signal });
|
||||||
|
const data = unwrapResponse(resp);
|
||||||
|
return data;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const pagePermissionApi = async (pageQuery: PageParams<NdmPermissionPageQuery>, options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
||||||
|
const { stationCode, signal } = options ?? {};
|
||||||
|
const client = stationCode ? ndmClient : userClient;
|
||||||
|
const prefix = stationCode ? `/${stationCode}` : '';
|
||||||
|
const endpoint = `${prefix}/api/ndm/ndmPermission/page`;
|
||||||
|
const resp = await client.post<PageResult<NdmPermissionResultVO>>(endpoint, pageQuery, { signal });
|
||||||
|
const data = unwrapResponse(resp);
|
||||||
|
return data;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const detailPermissionApi = async (id: string, options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
||||||
|
const { stationCode, signal } = options ?? {};
|
||||||
|
const client = stationCode ? ndmClient : userClient;
|
||||||
|
const prefix = stationCode ? `/${stationCode}` : '';
|
||||||
|
const endpoint = `${prefix}/api/ndm/ndmPermission/detail`;
|
||||||
|
const resp = await client.get<NdmPermissionResultVO>(endpoint, { params: { id }, signal });
|
||||||
|
const data = unwrapResponse(resp);
|
||||||
|
return data;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const savePermissionApi = async (saveVO: NdmPermissionSaveVO, options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
||||||
|
const { stationCode, signal } = options ?? {};
|
||||||
|
const client = stationCode ? ndmClient : userClient;
|
||||||
|
const prefix = stationCode ? `/${stationCode}` : '';
|
||||||
|
const endpoint = `${prefix}/api/ndm/ndmPermission`;
|
||||||
|
const resp = await client.post<NdmPermissionResultVO>(endpoint, saveVO, { signal });
|
||||||
|
const result = unwrapResponse(resp);
|
||||||
|
return result;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const updatePermissionApi = async (updateVO: NdmPermissionUpdateVO, options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
||||||
|
const { stationCode, signal } = options ?? {};
|
||||||
|
const client = stationCode ? ndmClient : userClient;
|
||||||
|
const prefix = stationCode ? `/${stationCode}` : '';
|
||||||
|
const endpoint = `${prefix}/api/ndm/ndmPermission`;
|
||||||
|
const resp = await client.put<NdmPermissionResultVO>(endpoint, updateVO, { signal });
|
||||||
|
const result = unwrapResponse(resp);
|
||||||
|
return result;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const deletePermissionApi = async (ids: string[], options?: { stationCode?: Station['code']; signal?: AbortSignal }) => {
|
||||||
|
const { stationCode, signal } = options ?? {};
|
||||||
|
const client = stationCode ? ndmClient : userClient;
|
||||||
|
const prefix = stationCode ? `/${stationCode}` : '';
|
||||||
|
const endpoint = `${prefix}/api/ndm/ndmPermission`;
|
||||||
|
const resp = await client.delete<boolean>(endpoint, ids, { signal });
|
||||||
|
const result = unwrapResponse(resp);
|
||||||
|
return result;
|
||||||
|
};
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
|
export * from './base';
|
||||||
export * from './biz';
|
export * from './biz';
|
||||||
export * from './system';
|
export * from './system';
|
||||||
|
|||||||
Reference in New Issue
Block a user