refactor: P7 切尾——删除 application/extensions/utils,WSGI 切 src

【切尾】
- src/app.py:应用工厂(原 application/factory.py)
- src/extensions.py:扩展注册编排(原 extensions/)
- src/wsgi.py:生产 WSGI 入口
- 根 app.py 改为 from src.app import create_app(开发入口保留)
- gunicorn/Docker/compose 指向 src.wsgi:app
- 删除 application/、extensions/、utils/(全部代码已迁入 src/)

【清理】21 个 router 中间件导入改 src.core;修复 level 服务潜在 bug
(utils.load2dict 不存在 → model_to_dict);测试文件 R 导入改 src.core

【里程碑】全项目 flake8 从 P1 基线 154 条 → **0 条**;
12 passed;app.py 与 src.wsgi 双入口均启动

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
DjangoAdmin Dev
2026-08-07 19:45:28 +08:00
co-authored by Claude
parent 4d74b31431
commit 5504f3f2c6
176 changed files with 272 additions and 1674 deletions
+2 -2
View File
@@ -54,8 +54,8 @@
from flask import Blueprint
from application.middleware.check_permission import check_permission
from application.middleware.check_demo import check_demo
from src.core.permission import check_permission
from src.core.middleware import check_demo
from src.modules.system.role import service as role_menu
from src.common.utils.request import parse_request_body
+2 -2
View File
@@ -13,8 +13,8 @@
from flask import Blueprint
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.system.user import service as user_role
from src.core import response as R
user_role_blue = Blueprint('user_role', __name__, url_prefix='/user/role')
+1 -1
View File
@@ -47,7 +47,7 @@
"""
from flask import Blueprint
from sqlalchemy import and_
from application.middleware.check_demo import check_demo
from src.core.middleware import check_demo
from src.modules.auth import service as login
from src.modules.log import service as login_log
from src.modules.system.user.models import User
+2 -2
View File
@@ -57,8 +57,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.city import service as city
from src.common.utils.request import parse_request_body
+2 -2
View File
@@ -18,8 +18,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.cms.article import service as article
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -17,8 +17,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.cms.category import service as category
from src.common.utils.request import parse_request_body
+2 -2
View File
@@ -57,8 +57,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.cms.link import service as link
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -55,8 +55,8 @@
"""
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.configuration import service as config
from src.modules.configuration import service as config_item
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -55,8 +55,8 @@
"""
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.dictionary import service as dict
from src.modules.dictionary import service as dict_item
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -17,8 +17,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.file_template import service as file_template
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -7,8 +7,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.job import service as job
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -17,8 +17,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.log import service as login_log
from src.modules.log import service as operation_log
from src.common.utils.request import parse_batch_ids
+2 -2
View File
@@ -55,8 +55,8 @@
"""
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.notice import service as notice
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -59,8 +59,8 @@
"""
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.param import service as param
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -57,8 +57,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.system.dept import service as dept
from src.common.utils.request import parse_request_body
+2 -2
View File
@@ -58,8 +58,8 @@
"""
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.system.level import service as level
from src.common.utils.request import parse_batch_ids, parse_request_body
+1 -2
View File
@@ -75,7 +75,6 @@ from sqlalchemy import and_
from openpyxl.reader.excel import load_workbook
from openpyxl.workbook import Workbook
import utils
from src.common.constants.common import PAGE_SIZE
from src.modules.system.level.schema import LevelForm, LevelStatusForm
@@ -530,7 +529,7 @@ def get_level_list():
# 转换为字典列表
result = []
for level in level_list:
result.append(utils.load2dict(level))
result.append(model_to_dict(level))
return result
+2 -2
View File
@@ -55,8 +55,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.system.menu import service as menu
from src.common.utils.request import parse_request_body
+2 -2
View File
@@ -57,8 +57,8 @@
"""
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.system.position import service as position
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -57,8 +57,8 @@
"""
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.system.role import service as role
from src.common.utils.request import parse_batch_ids, parse_request_body
+2 -2
View File
@@ -58,8 +58,8 @@
from flask import Blueprint, request
from application.middleware.check_demo import check_demo
from application.middleware.check_permission import check_permission
from src.core.middleware import check_demo
from src.core.permission import check_permission
from src.modules.system.user import service as user
from src.common.utils.request import parse_batch_ids, parse_request_body
+5 -4
View File
@@ -52,18 +52,19 @@
from flask import Blueprint
from application.middleware.check_demo import check_demo
from src.core.middleware import check_demo
from src.modules.upload import service as upload
upload_blue = Blueprint('upload', __name__, url_prefix='/upload')
from config import UPLOAD_ALLOWED_EXTS
from src.core import response as R
upload_blue = Blueprint("upload", __name__, url_prefix="/upload")
# ============================================================
# 文件上传
# ============================================================
@upload_blue.route('/uploadFile', methods=["POST"])
@upload_blue.route("/uploadFile", methods=["POST"])
@check_demo
def upload_file():
"""