point.ts 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import { IQueryCommon, IRes, IResult, serialize } from '@/api/common'
  2. import axios from '@/utils/request'
  3. import {
  4. base,
  5. IPoint,
  6. IPointDismountParams,
  7. IPointEnableParams,
  8. IPointDetail,
  9. IPointDetailResult,
  10. IPointTarget
  11. } from './common'
  12. const uris = {
  13. base: `${base}/surveysite`,
  14. page: `${base}/surveysite/list`,
  15. save: `${base}/surveysite/saveAll`,
  16. update: `${base}/surveysite/updateAll`,
  17. del: `${base}/surveysite/deleteByIds`,
  18. detail: `${base}/surveysite/details`,
  19. targets: `${base}/surveysite/siteTarget`,
  20. discard: `${base}/surveysite/toVoid`,
  21. list: `${base}/surveysite/list`,
  22. enable: `${base}/sitestatus/bachSave`,
  23. dismount: `${base}/deviceinstall/dismantleDevice`
  24. }
  25. export const addPoint = ({ fileList, ...rest }: Partial<IPointDetail>) =>
  26. axios.request<IRes<boolean>>({
  27. url: uris.save,
  28. method: 'post',
  29. data: serialize({ fileList, dto: new Blob([JSON.stringify(rest)], { type: 'application/json' }) })
  30. })
  31. export const deletePoint = (id: string) => axios.request<IRes<boolean>>({ url: `${uris.base}/${id}`, method: 'delete' })
  32. export const updatePoint = ({ fileList, ...rest }: Partial<IPointDetail>) =>
  33. axios.request<IRes<boolean>>({
  34. url: uris.update,
  35. method: 'put',
  36. data: serialize({ fileList, dto: new Blob([JSON.stringify(rest)], { type: 'application/json' }) })
  37. })
  38. export const getPoint = (id: string) => axios.request<IResult<IPoint>>({ url: `${uris.base}/${id}`, method: 'get' })
  39. export const pointPage = (params: Partial<IPoint & IQueryCommon>) =>
  40. axios.request<IRes<IPoint[]>>({ url: uris.page, method: 'get', params })
  41. export const deletePointBatch = (ids: string) =>
  42. axios.request<IRes<boolean>>({ url: uris.del, method: 'delete', params: { ids } })
  43. export const getDetail = (id: number) =>
  44. axios.request<IResult<IPointDetailResult>>({ url: `${uris.detail}/${id}`, method: 'get' })
  45. export const getTargets = (data: { deviceSn?: string; sectionId?: string }) =>
  46. axios.request<IResult<IPointTarget>>({ url: uris.targets, method: 'post', data: serialize(data) })
  47. export const discard = (ids: string) =>
  48. axios.request<IRes<boolean>>({ url: uris.discard, method: 'get', params: { ids } })
  49. export const getAllPoints = (params: IPoint & IQueryCommon) =>
  50. axios.request<IRes<IPoint>>({ url: uris.list, method: 'get', params })
  51. export const enablePointBatch = (data: IPointEnableParams) =>
  52. axios.request<IResult<boolean>>({ url: uris.enable, method: 'post', data })
  53. export const dismountPoint = (data: IPointDismountParams) =>
  54. axios.request<IResult<boolean>>({ url: uris.dismount, method: 'post', data })