综合办公系统
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /*
  2. * @Author: ysh
  3. * @Date: 2024-06-13 17:07:59
  4. * @LastEditors: Please set LastEditors
  5. * @LastEditTime: 2024-06-19 16:43:47
  6. */
  7. import request from '@/utils/request'
  8. const apiEndpoints = [
  9. {
  10. procDefName: '承接合同评审',
  11. apiUrl: [
  12. '/oa/contract/:id',
  13. '/oa/contractWork/:id',
  14. '/oa/contractComment/:id',
  15. '/oa/contractMeeting/:id',
  16. '/oa/contractPayment/:id',
  17. '/oa/projectContract/:id',
  18. ]
  19. },
  20. {
  21. procDefName: '项目结算',
  22. apiUrl: [
  23. '/oa/settle/:id',
  24. '/oa/settleSummary/:id',
  25. '/oa/settleWork/:id',
  26. ]
  27. },
  28. {
  29. procDefName: '分包合同评审',
  30. apiUrl: [
  31. '/oa/subContract/:id',
  32. '/oa/contractWork/:id',
  33. '/oa/contractComment/:id',
  34. '/oa/contractMeeting/:id',
  35. '/oa/contractPayment/:id',
  36. '/oa/projectSubcontract/:id',
  37. ]
  38. },
  39. {
  40. procDefName: '用车审批',
  41. apiUrl: [
  42. '/oa/carApproval/:id',
  43. ]
  44. }
  45. ]
  46. // 编写一个方法来处理删除请求,并同时发送所有API请求
  47. export async function deleteResources(procDefName, id) {
  48. // 查找对应的API端点
  49. const endpoint = apiEndpoints.find(endpoint => endpoint.procDefName === procDefName);
  50. if (!endpoint) {
  51. throw new Error(`No API endpoints found for process definition: ${procDefName}`);
  52. }
  53. // 构建所有请求的Promise数组
  54. const deletePromises = endpoint.apiUrl.map(apiUrl => {
  55. // 替换URL中的:id占位符
  56. const url = apiUrl.replace(':id', id);
  57. // 发送DELETE请求并返回Promise
  58. return request.delete(url)
  59. });
  60. // 等待所有请求完成
  61. try {
  62. return await Promise.all(deletePromises);
  63. console.log('删除完成!');
  64. } catch (error) {
  65. console.error('One or more deletion requests failed:', error);
  66. }
  67. }