feat: add CityArea web

This commit is contained in:
XIE7654
2025-10-14 21:39:56 +08:00
parent e0ff8955ce
commit 42d5a3da21
13 changed files with 367 additions and 6 deletions

View File

@@ -55,8 +55,8 @@ def gen_menu(app_name, model_name, parent_menu_name, creator='admin'):
{"name": "Edit", "title": "common.edit", "auth_code": f"{app_name}:{model_lower}:edit"},
{"name": "Delete", "title": "common.delete", "auth_code": f"{app_name}:{model_lower}:delete"},
{"name": "Query", "title": "common.query", "auth_code": f"{app_name}:{model_lower}:query"},
{"name": "Query", "title": "common.query", "auth_code": f"{app_name}:{model_lower}:import"},
{"name": "Query", "title": "common.query", "auth_code": f"{app_name}:{model_lower}:export"},
{"name": "import", "title": "common.import", "auth_code": f"{app_name}:{model_lower}:import"},
{"name": "export", "title": "common.export", "auth_code": f"{app_name}:{model_lower}:export"},
]
for idx, btn in enumerate(buttons):
btn_meta = MenuMeta.objects.create(

View File

@@ -4,7 +4,7 @@
"""
自动生成 CRUD 代码的 Django 管理命令
使用方法: python manage.py generate_crud <app_name> <model_name>
例如: python manage.py generate_crud system Dept
例如: python manage.py generate_crud system Dept --frontend
"""
import os

View File

@@ -14,6 +14,7 @@ router.register(r'post', views.PostViewSet)
router.register(r'user', views.UserViewSet)
router.register(r'login_log', views.LoginLogViewSet)
router.register(r'config', views.ConfigViewSet)
router.register(r'city_area', views.CityAreaViewSet)
urlpatterns = [
path('', include(router.urls)),

View File

@@ -9,6 +9,7 @@ __all__ = [
'UserViewSet',
'ConfigViewSet',
'LoginLogViewSet',
'CityAreaViewSet',
]
from system.views.dict_data import DictDataViewSet
@@ -20,4 +21,5 @@ from system.views.dept import DeptViewSet
from system.views.post import PostViewSet
from system.views.login_log import LoginLogViewSet
from system.views.config import ConfigViewSet
from system.views.user import *
from system.views.user import *
from system.views.city_area import CityAreaViewSet

View File

@@ -0,0 +1,33 @@
from system.models import CityArea
from utils.serializers import CustomModelSerializer
from utils.custom_model_viewSet import CustomModelViewSet
from django_filters import rest_framework as filters
class CityAreaSerializer(CustomModelSerializer):
"""
省市区 序列化器
"""
class Meta:
model = CityArea
fields = '__all__'
read_only_fields = ['id', 'create_time', 'update_time']
class CityAreaFilter(filters.FilterSet):
class Meta:
model = CityArea
fields = ['id', 'remark', 'creator', 'modifier', 'is_deleted', 'prov_id', 'prov_name', 'city_id', 'city_name', 'area_id', 'area_name']
class CityAreaViewSet(CustomModelViewSet):
"""
省市区 视图集
"""
queryset = CityArea.objects.filter(is_deleted=False).order_by('-id')
serializer_class = CityAreaSerializer
filterset_class = CityAreaFilter
search_fields = ['name'] # 根据实际字段调整
ordering_fields = ['create_time', 'id']
ordering = ['-create_time']