service.ts 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import BaseService from '@/utils/BaseService';
  2. import { request } from '@@/plugin-request/request';
  3. import SystemConst from '@/utils/const';
  4. import { defer, from } from 'rxjs';
  5. import { filter, map } from 'rxjs/operators';
  6. class Service<T> extends BaseService<T> {
  7. // 资产绑定
  8. bind = (type: string, params: any) =>
  9. defer(() => from(request(`${this.uri}/bind/${type}`, { method: 'POST', data: params }))).pipe(
  10. filter((item) => item.status === 200),
  11. map((item) => item.result),
  12. );
  13. // 资产解绑
  14. unBind = (type: string, params: any) =>
  15. defer(() => from(request(`${this.uri}/unbind/${type}`, { method: 'POST', data: params }))).pipe(
  16. filter((item) => item.status === 200),
  17. map((item) => item.result),
  18. );
  19. // 资产-产品分类
  20. queryProductCategoryList = (params: any) => {
  21. return request(`${SystemConst.API_BASE}/device/category/_tree`, {
  22. method: 'POST',
  23. data: {
  24. ...params,
  25. paging: false,
  26. },
  27. });
  28. };
  29. // 资产-设备
  30. queryDeviceList = (params: any) => {
  31. return request<T>(`${SystemConst.API_BASE}/device/instance/_query`, {
  32. method: 'POST',
  33. data: params,
  34. });
  35. };
  36. // 资产-产品
  37. queryProductList = (params: any) => {
  38. return request<T>(`${SystemConst.API_BASE}/device-product/_query`, {
  39. method: 'POST',
  40. data: params,
  41. });
  42. };
  43. }
  44. export default Service;