49 lines
1.5 KiB
TypeScript
49 lines
1.5 KiB
TypeScript
|
|
import http from '@/api'
|
||
|
|
import type { ClientUnit } from './interface'
|
||
|
|
|
||
|
|
const buildClientUnitImportFormData = (file: File) => {
|
||
|
|
const formData = new FormData()
|
||
|
|
|
||
|
|
formData.append('file', file)
|
||
|
|
|
||
|
|
return formData
|
||
|
|
}
|
||
|
|
|
||
|
|
export const listClientUnitsApi = (params: ClientUnit.ClientUnitListParams) => {
|
||
|
|
return http.post('/clientUnit/list', params)
|
||
|
|
}
|
||
|
|
|
||
|
|
export const createClientUnitApi = (params: ClientUnit.ClientUnitSaveRequest) => {
|
||
|
|
return http.post<boolean>('/clientUnit/add', params)
|
||
|
|
}
|
||
|
|
|
||
|
|
export const updateClientUnitApi = (params: ClientUnit.ClientUnitSaveRequest) => {
|
||
|
|
return http.post<boolean>('/clientUnit/update', params)
|
||
|
|
}
|
||
|
|
|
||
|
|
export const getClientUnitDetailApi = (id: string) => {
|
||
|
|
return http.get<ClientUnit.ClientUnitRecord>('/clientUnit/getById', { id })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const deleteClientUnitsApi = (ids: string[]) => {
|
||
|
|
return http.post<boolean>('/clientUnit/delete', ids)
|
||
|
|
}
|
||
|
|
|
||
|
|
export const exportClientUnitsApi = (params: ClientUnit.ClientUnitListParams) => {
|
||
|
|
return http.post('/clientUnit/export', params, { responseType: 'blob' })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const downloadClientUnitImportTemplateApi = () => {
|
||
|
|
return http.get('/clientUnit/importTemplate', undefined, { responseType: 'blob' })
|
||
|
|
}
|
||
|
|
|
||
|
|
export const importClientUnitsApi = (file: File) => {
|
||
|
|
return http.post<ClientUnit.ClientUnitImportResult>(
|
||
|
|
'/clientUnit/import',
|
||
|
|
buildClientUnitImportFormData(file),
|
||
|
|
{
|
||
|
|
headers: { 'Content-Type': 'multipart/form-data' }
|
||
|
|
}
|
||
|
|
)
|
||
|
|
}
|