first commit

This commit is contained in:
lihansani
2026-07-13 15:37:05 +08:00
commit 8b11aa2efc
299 changed files with 206339 additions and 0 deletions

View File

@@ -0,0 +1,80 @@
# Author 臧成龙
# coding=utf-8
# @Time : 2023/3/27 23:26
# @File : menu_menu_column_field.py
# @Software: PyCharm
# @qq: 939589097
from typing import List
from django.shortcuts import get_object_or_404
from ninja import Field, ModelSchema, Query, Router, Schema
from ninja.pagination import paginate
from system.models import MenuColumnField
from utils.fu_crud import create, delete, retrieve, update, batch_create
from utils.fu_ninja import FuFilters, MyPagination
from utils.fu_response import FuResponse
router = Router()
class Filters(FuFilters):
name: str = Field(None, alias="name")
code: str = Field(None, alias="code")
menu_id: str = Field(None, alias="menu_id")
class SchemaIn(ModelSchema):
menu_id: str = Field(None, alias="menu_id")
class Config:
model = MenuColumnField
model_exclude = ['id', 'menu', 'create_datetime', 'update_datetime']
class BatchSchemaIn(Schema):
batch_info: list = Field(None, alias="batch_info")
class SchemaOut(ModelSchema):
class Config:
model = MenuColumnField
model_fields = "__all__"
# model_fields = []
@router.post("/menu_column_field", response=SchemaOut)
def create_menu_column_field(request, data: SchemaIn):
menu_column_field = create(request, data, MenuColumnField)
return menu_column_field
@router.post("/menu_column_field/batch/create")
def batch_create_menu_column_field(request, data: BatchSchemaIn):
batch_create(request, data.batch_info, MenuColumnField)
return FuResponse(msg="导入成功")
@router.delete("/menu_column_field/{menu_column_field_id}")
def delete_menu_column_field(request, menu_column_field_id: int):
delete(menu_column_field_id, MenuColumnField)
return {"success": True}
@router.put("/menu_column_field/{menu_column_field_id}", response=SchemaOut)
def update_menu_column_field(request, menu_column_field_id: int, data: SchemaIn):
menu_column_field = update(request, menu_column_field_id, data, MenuColumnField)
return menu_column_field
@router.get("/menu_column_field", response=List[SchemaOut])
@paginate(MyPagination)
def list_menu_column_field(request, filters: Filters = Query(...)):
qs = retrieve(request, MenuColumnField, filters)
return qs
@router.get("/menu_column_field/{menu_column_field_id}", response=SchemaOut)
def get_menu_column_field(request, menu_column_field_id: int):
post = get_object_or_404(MenuColumnField, id=menu_column_field_id)
return post