File size: 1,220 Bytes
3024ca5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
from flask.views import MethodView
from flask import request,Response

import json
import traceback
import logging

import lib.api.vector.VectorStore as cv

class MappingAPI(MethodView):
    lv_logger = logging.getLogger(__name__)

    def get(self):
        resp = { "test message": "working"}
        status = 200
        return Response(json.dumps(resp), status=status, mimetype='application/json')

    def post(self):
        try:
            # Saving file
            lv_file = request.files['file']
            lv_source_domain = request.form['source_domain']
            lv_saved_file_name = 'storage/' + lv_file.filename.split('/')[-1]
            lv_file.save(lv_saved_file_name)

            # Processing the file
            lv_response = cv.fn_map_data(lv_saved_file_name,lv_file.filename.split('/')[-1],lv_source_domain)

            status = 200
            return Response(lv_response, status=status, mimetype='application/json')
        except Exception as e:
            self.lv_logger.error(e)
            self.lv_logger.error(traceback.format_exc())
            return Response(json.dumps({"error_message": str(e)}), status=500, mimetype='application/json')