all_instance.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #!/usr/bin/python
  2. # -*- coding=utf-8 -*-
  3. # @Create Time: 2024-12-23 15:22:39
  4. # @Last Modified time: 2024-12-25 16:17:09
  5. import uuid
  6. import time
  7. import json
  8. import requests
  9. from .get_tender_info import PdfExtractAttr_
  10. from .document_ import DocumentPreReview
  11. from .busi_instance import busi_loc
  12. from .tech_instance import tech_loc
  13. from .parse_textmind_result import get_ocr_new
  14. def detail_task(zb_file: str, tb_file: str, tb_filename: str, projectId: str, project: str, supplier: str):
  15. host = '192.168.1.111:9999'
  16. detail_check_url = f'http://{host}/bm/alg/result_check_detail'
  17. agent = PdfExtractAttr_(file_path=zb_file)
  18. zb_table_path = f'./tmp/zb_table-{uuid.uuid4()}.json'
  19. agent.parse_table_pro(table_path=zb_table_path)
  20. dpr = DocumentPreReview(zb_table_path)
  21. scrutinize_dict = dpr.get_table()
  22. print(scrutinize_dict)
  23. with open(tb_file, 'r', encoding='utf-8') as fp:
  24. raw = json.load(fp)
  25. result = get_ocr_new(raw=raw, pretty=True)
  26. busi_score = busi_loc(
  27. scrutinize_dict=scrutinize_dict,
  28. outline_dict=result['outline'],
  29. title_list=result['title'],
  30. table_list=result['tables'],
  31. image_list=result['images'],
  32. supplier=supplier,
  33. project=project,
  34. file_name=tb_filename.split('.')[0] + 'pdf'
  35. )
  36. busi_score['name'] = '商务部分评分标准'
  37. tech_score = tech_loc(
  38. scrutinize_dict=scrutinize_dict,
  39. outline_dict=result['outline'],
  40. content_list=result['contents'],
  41. supplier=supplier,
  42. project=project,
  43. file_name=tb_filename.split('.')[0] + 'pdf'
  44. )
  45. tech_score['name'] = '技术部分评分标准'
  46. detail_data = {
  47. 'projectId': projectId,
  48. 'projectName': project,
  49. 'bidderUnit': supplier,
  50. 'list': [busi_score, tech_score]
  51. }
  52. print(detail_data)
  53. detail_check_response = requests.post(url=detail_check_url, json=detail_data)
  54. print("detail_check_response: ", detail_check_response.json())
  55. return