Files
admin-vben5/apps/web-antd/src/api/property/resident/person/index.ts

113 lines
2.4 KiB
TypeScript
Raw Normal View History

import type { PersonVO, PersonForm, PersonQuery, PerssonImportParam } from './model';
2025-06-19 14:26:08 +08:00
import type { ID, IDS } from '#/api/common';
import type { PageResult } from '#/api/common';
import { commonExport, ContentTypeEnum } from '#/api/helper';
2025-06-19 14:26:08 +08:00
import { requestClient } from '#/api/request';
/**
*
* @param params
* @returns
*/
export function personList(params?: PersonQuery) {
return requestClient.get<PageResult<PersonVO>>('/property/person/list', { params });
}
/**
*
* @param params
* @returns
*/
export function personExport(params?: PersonQuery) {
return commonExport('/property/person/export', params ?? {});
}
/**
*
* @param id id
* @returns
*/
export function personInfo(id: ID) {
return requestClient.get<PersonVO>(`/property/person/${id}`);
}
/**
*
* @param data
* @returns void
*/
export function personAdd(data: PersonForm) {
return requestClient.postWithMsg<void>('/property/person', data);
}
/**
*
* @param data
* @returns void
*/
export function personUpdate(data: PersonForm) {
return requestClient.putWithMsg<void>('/property/person', data);
}
/**
*
* @param id id
* @returns void
*/
export function personRemove(id: ID | IDS) {
return requestClient.deleteWithMsg<void>(`/property/person/${id}`);
}
/**
* excel导入用户
* @param data
* @returns void
*/
export function personImportData(data: PerssonImportParam) {
return requestClient.post<{ code: number; msg: string }>(
'/property/person/importData',
data,
{
headers: {
'Content-Type': ContentTypeEnum.FORM_DATA,
},
isTransformResponse: false,
},
);
}
/**
*
* @param data
* @returns void
*/
export function personImportFace(data: PerssonImportParam) {
return requestClient.post<{ code: number; msg: string }>(
'/property/person/importFace',
data,
{
headers: {
'Content-Type': ContentTypeEnum.FORM_DATA,
},
isTransformResponse: false,
},
);
}
/**
*
* @returns blob
*/
export function downloadImportTemplate() {
return requestClient.post<Blob>(
'/property/person/importTemplate',
{},
{
isTransformResponse: false,
responseType: 'blob',
},
);
}