综合办公系统
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

deleteResource.js 1.1KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import request from '@/utils/request'
  2. const apiEndpoints = [
  3. {
  4. procDefName: '承接合同评审',
  5. apiUrl: [
  6. '/oa/contract/:id',
  7. '/oa/contractComment/:id',
  8. '/oa/contractMeeting/:id',
  9. '/oa/contractPayment/:id',
  10. ]
  11. }
  12. ]
  13. // 编写一个方法来处理删除请求,并同时发送所有API请求
  14. export async function deleteResources(procDefName, id) {
  15. // 查找对应的API端点
  16. const endpoint = apiEndpoints.find(endpoint => endpoint.procDefName === procDefName);
  17. if (!endpoint) {
  18. throw new Error(`No API endpoints found for process definition: ${procDefName}`);
  19. }
  20. // 构建所有请求的Promise数组
  21. const deletePromises = endpoint.apiUrl.map(apiUrl => {
  22. // 替换URL中的:id占位符
  23. const url = apiUrl.replace(':id', id);
  24. // 发送DELETE请求并返回Promise
  25. return request.delete(url)
  26. });
  27. // 等待所有请求完成
  28. try {
  29. return await Promise.all(deletePromises);
  30. console.log('删除完成!');
  31. } catch (error) {
  32. console.error('One or more deletion requests failed:', error);
  33. }
  34. }