index.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. import request from '@/utils/request';
  2. import { AxiosPromise } from 'axios';
  3. import { BaseVO, BaseForm, BaseQuery, StatusCountVo } from '@/api/product/base/types';
  4. import { ContracproductVO, ContracproductForm, ContracproductQuery } from '@/api/product/contracproduct/types';
  5. /**
  6. * 查询合同产品关联列表
  7. * @param query
  8. * @returns {*}
  9. */
  10. export const listContracproduct = (query?: ContracproductQuery): AxiosPromise<ContracproductVO[]> => {
  11. return request({
  12. url: '/product/contracproduct/list',
  13. method: 'get',
  14. params: query
  15. });
  16. };
  17. /**
  18. * 查询合同产品关联详细
  19. * @param id
  20. */
  21. export const getContracproduct = (id: string | number): AxiosPromise<ContracproductVO> => {
  22. return request({
  23. url: '/product/contracproduct/' + id,
  24. method: 'get'
  25. });
  26. };
  27. /**
  28. * 新增合同产品关联
  29. * @param data
  30. */
  31. export const addContracproduct = (data: ContracproductForm) => {
  32. return request({
  33. url: '/product/contracproduct',
  34. method: 'post',
  35. data: data
  36. });
  37. };
  38. /**
  39. * 修改合同产品关联
  40. * @param data
  41. */
  42. export const updateContracproduct = (data: ContracproductForm) => {
  43. return request({
  44. url: '/product/contracproduct',
  45. method: 'put',
  46. data: data
  47. });
  48. };
  49. /**
  50. * 删除合同产品关联
  51. * @param id
  52. */
  53. export const delContracproduct = (id: string | number | Array<string | number>) => {
  54. return request({
  55. url: '/product/contracproduct/' + id,
  56. method: 'delete'
  57. });
  58. };
  59. /**
  60. * 查询产品基础信息列表
  61. * @param query
  62. * @returns {*}
  63. */
  64. export const getContractProductList = (query?: BaseQuery): AxiosPromise<BaseVO[]> => {
  65. return request({
  66. url: '/product/contracproduct/getContractProductList',
  67. method: 'get',
  68. params: query
  69. });
  70. };
  71. /**
  72. * 删除合同产品关联
  73. * @param id
  74. */
  75. export const delContracproductBySupplier = (productId: string | number, supplierId: string | number) => {
  76. return request({
  77. url: '/product/contracproduct/delContracproductBySupplier',
  78. params: { productId: productId, supplierId: supplierId },
  79. method: 'delete'
  80. });
  81. };
  82. /**
  83. * 下载导入模板
  84. */
  85. export const importTemplate = () => {
  86. return request({
  87. url: '/product/contracproduct/importTemplate',
  88. method: 'post',
  89. responseType: 'blob'
  90. });
  91. };
  92. /**
  93. * 导入合同产品数据
  94. * @param file 导入文件
  95. */
  96. export const importData = (file: File) => {
  97. const formData = new FormData();
  98. formData.append('file', file);
  99. return request({
  100. url: '/product/contracproduct/importData',
  101. method: 'post',
  102. data: formData,
  103. headers: {
  104. 'Content-Type': 'multipart/form-data'
  105. }
  106. });
  107. };