api.js.vm 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import type { AxiosResponse } from 'axios'
  2. import type { PageInfo, Result } from '@cacp/ui'
  3. import request from '@/utils/request'
  4. import type {${ClassName},${ClassName}Query} from '@/types/${moduleName}/${businessName}'
  5. const contextPath = '/${moduleName}/${businessName}'
  6. // 查询${functionName}列表
  7. export async function getList(query: ${ClassName}Query): Promise<Result<PageInfo<${ClassName}>>> {
  8. const res: AxiosResponse<Result<PageInfo<${ClassName}>>> = await request.post(`${contextPath}/get-list`, query)
  9. return res.data
  10. }
  11. // 获取${functionName}详情
  12. export async function getDetail(${pkColumn.javaField}: ${pkColumn.javaType.toLowerCase()}): Promise<Result<${ClassName}>> {
  13. const res: AxiosResponse<Result<${ClassName}>> = await request.get(`${contextPath}/get-detail?${pkColumn.javaField}=${${pkColumn.javaField}}`)
  14. return res.data
  15. }
  16. // 新增${functionName}
  17. export async function insert(row: ${ClassName}): Promise<Result<number>> {
  18. const res: AxiosResponse<Result<number>> = await request.post(`${contextPath}/insert-${className}`, row)
  19. return res.data
  20. }
  21. // 更新${functionName}
  22. export async function update(row: ${ClassName}): Promise<Result<number>> {
  23. const res: AxiosResponse<Result<number>> = await request.post(`${contextPath}/update-${className}`, row)
  24. return res.data
  25. }
  26. // 删除${functionName}
  27. export async function remove(${className}s: ${pkColumn.javaType.toLowerCase()} | ${pkColumn.javaType.toLowerCase()}[]): Promise<Result<number>> {
  28. // 统一转换为数组格式
  29. const ids = Array.isArray(${className}s) ? ${className}s : [${className}s];
  30. const res: AxiosResponse<Result<number>> = await request.post(
  31. `${contextPath}/delete-${className}?ids`,ids
  32. )
  33. return res.data
  34. }