from flask_restx import Resource, Api, Namespace, fields from flask import request from flask import Flask, render_template, request from werkzeug.utils import secure_filename import os from database.database import DB from PIL import Image from datetime import datetime, timedelta paths = os.getcwd() Action = Namespace( name="Action", description="노드 분석을 위해 사용하는 api.", ) @Action.route('/image_summit') class fileUpload(Resource): @Action.doc(responses={200: 'Success'}) @Action.doc(responses={500: 'Register Failed'}) def post(self): if request.method == 'POST': f = request.files['file'] f.save(secure_filename(f.filename)) return { 'save': 'done' # str으로 반환하여 return }, 200 @Action.route('/image_anal') class fileUpload(Resource): @Action.doc(responses={200: 'Success'}) @Action.doc(responses={500: 'Register Failed'}) def post(self): if request.method == 'POST': db=DB() dir = os.getcwd() filename = request.json['filename'] file_type = request.json['file_type'] lat = float(request.json['gps_x']) lon = float(request.json['gps_y']) user_id = 'test' action_success = True action_id = 'test' db.db_add_action(action_id,lat,lon,user_id,action_success) return { 'node': (lat,lon), 'rain' : 'rain', }, 200 @Action.route('/action_display') class fileUpload(Resource): @Action.doc(responses={200: 'Success'}) @Action.doc(responses={500: 'Register Failed'}) def post(self): if request.method == 'GET': db = DB() now=datetime.now() d=now.strftime('%Y-%m-%d %X') value=db.db_display_action(d) return { 'report': list(value) }, 200