framework.py 3.22 KB
Newer Older
wanli's avatar
wanli committed
1 2 3 4 5 6 7 8 9 10 11 12
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import os
import json
import datetime
import logging
import traceback
from flask import Blueprint, request
from app import config, signalManager
from fullstack.login import Auth
from fullstack.validation import validate_schema
from fullstack.response import ResponseCode, response_result
wanli's avatar
wanli committed
13
from schema.framework import AddSchema, DeleteSchema, QuerySchema, UpdateSchema
wanli's avatar
wanli committed
14

wanli's avatar
wanli committed
15
logger = logging.getLogger("frameworkApi")
wanli's avatar
wanli committed
16

wanli's avatar
wanli committed
17
framework_api = Blueprint("framework_api", __name__, url_prefix="/api/v1/%s/framework" % config['NAME'])
wanli's avatar
wanli committed
18

wanli's avatar
wanli committed
19
@framework_api.route("/add", methods=['POST'])
wanli's avatar
wanli committed
20 21 22 23
@validate_schema(AddSchema)
@Auth.auth_required
def add():
    try:
wanli's avatar
wanli committed
24
        isSuccess, message = signalManager.actionAddFramework.emit(request.schema_data)
wanli's avatar
wanli committed
25 26 27 28 29 30 31 32 33 34
        if isSuccess:
            return response_result(ResponseCode.OK, msg=message)
        else:
            return response_result(ResponseCode.REQUEST_ERROR, msg=message)
    except Exception as e:
        traceback.print_exc()
        logger.error(str(e))
        return response_result(ResponseCode.SERVER_ERROR, msg=str(e))


wanli's avatar
wanli committed
35
@framework_api.route("/delete/<uuid:id>", methods=['POST'])
wanli's avatar
wanli committed
36 37 38 39
@validate_schema(DeleteSchema)
@Auth.auth_required
def delete(id):
    try:
wanli's avatar
wanli committed
40
        isSuccess, message = signalManager.actionDeleteFramework.emit(id)
wanli's avatar
wanli committed
41 42 43 44 45 46 47 48 49 50
        if isSuccess:
            return response_result(ResponseCode.OK, msg=message)
        else:
            return response_result(ResponseCode.REQUEST_ERROR, msg=message)
    except Exception as e:
        traceback.print_exc()
        logger.error(str(e))
        return response_result(ResponseCode.SERVER_ERROR)


wanli's avatar
wanli committed
51
@framework_api.route("/get", methods=["POST"])
wanli's avatar
wanli committed
52 53 54 55
@validate_schema(QuerySchema)
@Auth.auth_required
def get():
    try:
wanli's avatar
wanli committed
56
        result, message = signalManager.actionGetFramework.emit(request.schema_data)
wanli's avatar
wanli committed
57 58 59 60 61 62 63 64 65 66
        if result:
            return response_result(ResponseCode.OK, data=result, msg=message)
        else:
            return response_result(ResponseCode.REQUEST_ERROR, msg=message)
    except Exception as e:
        traceback.print_exc()
        logger.error(str(e))
        return response_result(ResponseCode.SERVER_ERROR, msg=str(e))


wanli's avatar
wanli committed
67
@framework_api.route("/list", methods=['POST'])
wanli's avatar
wanli committed
68 69 70 71
@validate_schema(QuerySchema)
@Auth.auth_required
def get_list():
    try:
wanli's avatar
wanli committed
72
        result, count, message = signalManager.actionGetFrameworkList.emit(request.schema_data)
wanli's avatar
wanli committed
73 74 75 76 77 78 79 80 81 82
        if result:
            return response_result(ResponseCode.OK, data=result, msg=message, count=count)
        else:
            return response_result(ResponseCode.REQUEST_ERROR, msg=message)
    except Exception as e:
        traceback.print_exc()
        logger.error(str(e))
        return response_result(ResponseCode.SERVER_ERROR)


wanli's avatar
wanli committed
83
@framework_api.route("/update/<uuid:id>", methods=['POST'])
wanli's avatar
wanli committed
84 85 86 87
@validate_schema(UpdateSchema)
@Auth.auth_required
def update(id):
    try:
wanli's avatar
wanli committed
88
        isSuccess, message = signalManager.actionUpdateFramework.emit(id, request.schema_data)
wanli's avatar
wanli committed
89 90 91 92 93 94 95 96
        if isSuccess:
            return response_result(ResponseCode.OK, msg=message)
        else:
            return response_result(ResponseCode.REQUEST_ERROR, msg=message)
    except Exception as e:
        traceback.print_exc()
        logger.error(str(e))
        return response_result(ResponseCode.SERVER_ERROR)