monitorImage.py 2.84 KB
Newer Older
1 2 3
#!/usr/bin/env python
# -*- coding: utf_8 -*-

wanli's avatar
wanli committed
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
from flask import current_app, jsonify, request
from flask_restful import Resource
from flask_restful.reqparse import RequestParser
from flask_jwt_extended import ( jwt_required, get_jwt_identity )
from application.signal_manager import signalManager
from models.monitorImage import  getListMonitorImageSchema, getListMonitorImagesSchema, getMonitorImageSchema
from webcreator.log import logger
from webcreator.response import ResponseCode, response_result

class MonitorImageResourceList(Resource):
    def __init__(self):
        pass
        # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
        # self.parser = RequestParser()

    def get(self):
        # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
        # self.parser.add_argument("page", type=int, location="args", default=1)
        # self.parser.add_argument("pageSize", type=int, location="args", default=15)
        # args = self.parser.parse_args()

        try:
            json_payload = request.json
            logger.warn(json_payload)
            data = getListMonitorImageSchema.load(json_payload)
29
            result, message = signalManager.actionGetListMonitorImage.emit(data)
wanli's avatar
wanli committed
30
            json_dumps = getListMonitorImageSchema.dump(result)
31 32
            if result:
                json_dumps = getListMonitorImagesSchema.dump(result.items)
wanli's avatar
wanli committed
33
                logger.warn(json_dumps)
34 35
                return response_result(message, data=json_dumps, count=result.total)
            return response_result(message)
wanli's avatar
wanli committed
36 37
        except Exception as e:
            current_app.logger.error(e)
38
            return response_result(ResponseCode.HTTP_SERVER_ERROR)
wanli's avatar
wanli committed
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56

class MonitorImageResource(Resource):
    def __init__(self):
        pass
        # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
        # self.parser = RequestParser()

    @jwt_required(locations=["headers"])
    def get(self, uuid):
        # 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
        # self.parser.add_argument("page", type=int, location="args", default=1)
        # self.parser.add_argument("pageSize", type=int, location="args", default=15)
        # args = self.parser.parse_args()

        try:
            json_payload = request.json
            print("========>", uuid, json_payload)
            data = getMonitorImageSchema.load(json_payload)
57 58 59 60 61
            result, message = signalManager.actionGetMonitorImage.emit(uuid, data)
            if result:
                json_dumps = getMonitorImageSchema.dump(result)
                return response_result(message, data=json_dumps)
            return response_result(message)
wanli's avatar
wanli committed
62 63
        except Exception as e:
            current_app.logger.error(e)
64
            return response_result(ResponseCode.HTTP_SERVER_ERROR)