Browse Source

first commit

unknown 1 year ago
parent
commit
467a704e4c
1 changed files with 62 additions and 39 deletions
  1. 62 39
      fapi.py

+ 62 - 39
fapi.py

@@ -6,7 +6,7 @@ from fastapi import BackgroundTasks, FastAPI, File, UploadFile,Request
 import os
 import uvicorn
 import time
-
+import requests
 # from Zipfile import zipfile
 
 import main
@@ -107,57 +107,80 @@ async def data(text_list=Body(None)):
 
 
 
+# 下载招标、投标、专家打分表图片文件
+def get_file(path_name="1@/static/bm/project/20240726130404_采购文件.docx", save_file='./download'):
+    url = 'http://222.92.111.18:8006/admin/sys-file/download'  # 要下载的文件的URL
+    url = 'http://222.92.111.18:8006/admin/sys-file/preview'
+    json = {"path":path_name}
+
+    response = requests.get(url, data=json, stream=True)  # 发送GET请求,stream参数指定以流的方式下载文件  
+    file_name = path_name.split('/')[-1]
+
+    save_file_path = save_file + '/new_'+file_name
+    # print(response.text)
+    code = 0
+    if response.status_code == 200:  # 检查响应状态码
+        try:
+            with open(save_file_path, 'wb') as f:  # 打开本地文件进行写入操作  
+                for chunk in response.iter_content(chunk_size=1024):  # 分块读取文件内容,每次读取1KB  
+                    if chunk:  # 检查是否有数据块可读  
+                        f.write(chunk)  # 将数据块写入本地文件  
+                        f.flush()  # 刷新缓冲区,确保数据写入磁盘  
+            print('文件下载完成!')  
+        except:
+            code = 1
+    else:  
+        print('下载失败,状态码:', response.status_code)
+        code = -1
+
+    return save_file_path, code
+
+get_file("1@/tgs/bm/bid_pre_check/20240621110320_招标采购预审查示例.pdf")
+
+
 #预审查、清标
 @app.post("/file_upload")
-async def file_upload(request: Request, file: UploadFile = File(...), userId:str=Form(...), pushFilename:str=Form(...)):
-    """
-    文件上传
-    格式:pdf,docx,doc,txt,tar.gz,zip,7z, rar
-    """    
-    json_post = await request.json()
-    projectId = json_post['projectId']
-    projectName = json_data['projectName']
-    # 企业列表
-    bidderUnit = json_data['bidderUnit']
-    # 报告类型 0 预审查 1 清标
-    reportFlag = json_data['reportFlag']
-    # 采购文件
-    scoreFile = json_data['buyFile']
-    # 投标文件
-    bidderFile = json_data['bidderFile']
-    ip_adder = request.client.host       
-    print(callback_url1, ip_adder, pushFilename)
-    #print(userId,pushFilename)
-    res = await file.read()
-    date = time.strftime('%Y-%m-%d', time.localtime(time.time()))
+async def file_upload(text_list=Body(None)):
+    
+    # json_post = await request.json()
     try:
-        os.mkdir('./uploads/' + date)
+        json_post = json.dumps(eval(text_list))
     except:
-        pass
-    with open('./uploads/'  + date + '/' + file.filename, "wb") as f:
-        f.write(res)
-    
-    json_data = {
-        "code":0,
-        "name":'',
-        "msg":"",
-        "data":{},
-        "ok":True
-        }
+        # json_post = json.dumps({'prompt':str(text_list)})
+        json_post = text_list
 
-    try:
-        1/0
-        get_minio_file(detection_type, './uploads/' + date + '/' + file.filename, pushFilename, userId, date, callback_url1)
+    print(json_post)
+    projectId = json_post['projectId']
+    projectName = json_post['projectName']
+    bidderUnit = json_post['bidderUnit']
+    reportFlag = json_post['reportFlag'] # 0 预审查 1 清标
+    buyFile = json_post['buyFile'] #采购文件
+    bidderFile = json_post['bidderFile'] #投标文件
+
+    try:        
+        if buyFile:
+            buy_file_path, code = get_file(buyFile)
+        if bidderFile:
+            bidder_file_path, code = get_file(bidderFile)
+        json_data = {
+            "code":0,
+            "name":'',
+            "msg":"文件下载成功",
+            "data":{},
+            "ok":True
+            }
     except:
         json_data = {
             "code":1,
             "name":'',
-            "msg":"",
+            "msg":"文件下载失败",
             "data":{},
             "ok":False
             }
         return json_data
-    return json_data 
+    return json_data
+
+
 
 if __name__ == '__main__':