|
@@ -0,0 +1,54 @@
|
|
|
+import requests
|
|
|
+from flask import request, jsonify
|
|
|
+from flask_restx import Resource, Namespace, reqparse
|
|
|
+
|
|
|
+from app.defines import StatesCode
|
|
|
+from app.utils.jwt_util import login_required
|
|
|
+from config import Config
|
|
|
+
|
|
|
+ns = Namespace('system_monitoring', description='系统监控')
|
|
|
+
|
|
|
+config = Config()
|
|
|
+
|
|
|
+job_list = reqparse.RequestParser(bundle_errors=True)
|
|
|
+job_list.add_argument(name='name', type=str, location='args', required=False, help='任务名称')
|
|
|
+job_list.add_argument(name='group', type=str, location='args', required=False, help='任务组名')
|
|
|
+job_list.add_argument(name='status', type=str, location='args', required=False, help='任务状态')
|
|
|
+job_list.add_argument(name='page_size', type=int, location='args', required=False, help='每页记录数量,默认:20')
|
|
|
+job_list.add_argument(name='page', type=int, location='args', required=False, help='第几页')
|
|
|
+
|
|
|
+
|
|
|
+@ns.route('/job_list')
|
|
|
+class TimedTaskApi(Resource):
|
|
|
+ method_decorators = [login_required]
|
|
|
+
|
|
|
+ @ns.doc(description='获取定时任务列表')
|
|
|
+ @ns.expect(job_list)
|
|
|
+ def get(self):
|
|
|
+ """获取定时任务列表"""
|
|
|
+
|
|
|
+ name = request.args.get('name')
|
|
|
+ group = request.args.get('group')
|
|
|
+ status = request.args.get('status')
|
|
|
+ page_size = int(request.args.get('page_size', 20))
|
|
|
+ page = int(request.args.get('page', 1))
|
|
|
+
|
|
|
+ data = {}
|
|
|
+
|
|
|
+ if name:
|
|
|
+ data['name'] = name
|
|
|
+ if group:
|
|
|
+ data['group'] = group
|
|
|
+ if status:
|
|
|
+ data['status'] = status
|
|
|
+ if page_size:
|
|
|
+ data['page_size'] = page_size
|
|
|
+ if page:
|
|
|
+ data['page'] = page
|
|
|
+
|
|
|
+ rep = requests.get(
|
|
|
+ 'http://{host}:{post}/ioc-api/quartz_job/getJobList'.format(host=config.system_monitoring.HOST,
|
|
|
+ post=config.system_monitoring.POST
|
|
|
+ ), data=data, headers={'clientId': "99"}).json()
|
|
|
+
|
|
|
+ return jsonify(code=StatesCode.SUCCESS, message='成功', data=rep)
|