from flask import Blueprint, render_template, session, request, jsonify from module.article import Article from module.user import Users import math admin = Blueprint("admin", __name__) # @admin.before_request # def before_admin(): # if session.get('islogin') != 'true' or session.get('role') != 'admin': # return 'perm-denied' # 为系统管理首页填充文章列表,并绘制分页栏 @admin.route('/admin') def sys_admin(): pagesize = 50 article = Article() result = article.find_all_except_draft(0, pagesize) total = math.ceil(article.get_count_except_draft() / pagesize) return render_template('system-admin.html', page=1, result=result, total=total) @admin.route('/admin/user') def sys_admin_user(): pagesize = 50 user = Users() result = user.find_all_users() total = math.ceil(user.get_total_count_user() / pagesize) return render_template('system-admin-user.html', page=1, result=result, total=total) # 为系统管理首页的文章列表进行分页查询 @admin.route('/admin/article/') def admin_article(page): pagesize = 50 start = (page - 1) * pagesize article = Article() result = article.find_all_except_draft(start, pagesize) total = math.ceil(article.get_count_except_draft() / pagesize) return render_template('system-admin.html', page=page, result=result, total=total) # 按照文章标题进行模糊查询的后台接口 @admin.route('/admin/search/') def admin_search_headline(keyword): result = Article().find_by_headline_except_draft(keyword) return render_template('system-admin.html', page=1, result=result, total=1) # 文章的隐藏切换接口 @admin.route('/admin/article/hide/') def admin_article_hide(articleid): print("articleid=",articleid) hidden = Article().switch_hidden(articleid) print("hidden=",hidden) return str(hidden) # 文章的推荐切换接口 @admin.route('/admin/article/recommend/') def admin_article_recommend(articleid): recommended = Article().switch_recommended(articleid) return str(recommended) # 文章的审核切换接口 @admin.route('/admin/article/check/') def admin_article_check(articleid): checked = Article().switch_checked(articleid) return str(checked) # 人员身份切换接口 @admin.route('/admin/user/role/') def admin_user_check(userid): role = Users().switch_role(userid) return str(role) # 删除文章 @admin.route('/admin/article/delete/', methods=['GET']) def delete_article(articleid): article = Article() try: # 查找文章 result = article.find_by_id(articleid) if result is None: return jsonify({"success": False, "message": "文章不存在"}) # 删除文章 article.do_deletesign(articleid) return jsonify({"success": True, "message": "删除成功"}) except Exception as e: return jsonify({"success": False, "message": str(e)}) # 删除人员 @admin.route('/admin/user/delete/', methods=['GET']) def delete_user(userid): user = Users() try: # 查找人员 result = user.find_user_by_id(userid) if result is None: return jsonify({"success": False, "message": "用户不存在"}) # 删除人员 user.do_deletesign_user(userid) return jsonify({"success": True, "message": "删除成功"}) except Exception as e: return jsonify({"success": False, "message": str(e)})