perf: 优化代码生成功能

This commit is contained in:
insistence
2025-02-16 23:29:15 +08:00
parent 1d36c0c56e
commit fe41a207fa
11 changed files with 854 additions and 176 deletions

View File

@@ -16,17 +16,17 @@ from utils.page_util import PageUtil
class GenTableDao:
"""
代码生成表模块数据库操作层
代码生成业务表模块数据库操作层
"""
@classmethod
async def get_gen_table_by_id(cls, db: AsyncSession, table_id: int):
"""
根据表id获取需要生成的表信息
根据业务表id获取需要生成的业务表信息
:param db: orm对象
:param table_id: 岗位id
:return: 需要生成的表信息对象
:param table_id: 业务表id
:return: 需要生成的业务表信息对象
"""
gen_table_info = (
(
@@ -43,11 +43,11 @@ class GenTableDao:
@classmethod
async def get_gen_table_by_name(cls, db: AsyncSession, table_name: str):
"""
根据表名称获取需要生成的表信息
根据业务表名称获取需要生成的业务表信息
:param db: orm对象
:param table_name: 表名称
:return: 需要生成的表信息对象
:param table_name: 业务表名称
:return: 需要生成的业务表信息对象
"""
gen_table_info = (
(
@@ -64,10 +64,10 @@ class GenTableDao:
@classmethod
async def get_gen_table_all(cls, db: AsyncSession):
"""
根据表格id获取需要生成的表格详细信息
获取所有业务表信息
:param db: orm对象
:return: 需要生成的表格信息对象
:return: 所有业务表信息
"""
gen_table_all = (await db.execute(select(GenTable).options(selectinload(GenTable.columns)))).scalars().all()
@@ -87,12 +87,12 @@ class GenTableDao:
@classmethod
async def get_gen_table_list(cls, db: AsyncSession, query_object: GenTablePageQueryModel, is_page: bool = False):
"""
根据查询参数获取代码生成列表信息
根据查询参数获取代码生成业务表列表信息
:param db: orm对象
:param query_object: 查询参数对象
:param is_page: 是否开启分页
:return: 代码生成列表信息对象
:return: 代码生成业务表列表信息对象
"""
query = (
select(GenTable)
@@ -164,11 +164,10 @@ class GenTableDao:
@classmethod
async def get_gen_db_table_list_by_names(cls, db: AsyncSession, table_names: List[str]):
"""
根据查询参数获取数据库列表信息
根据业务表名称组获取数据库列表信息
:param db: orm对象
:param query_object: 查询参数对象
:param is_page: 是否开启分页
:param table_names: 业务表名称组
:return: 数据库列表信息对象
"""
query_sql = """
@@ -193,10 +192,10 @@ class GenTableDao:
@classmethod
async def add_gen_table_dao(cls, db: AsyncSession, gen_table: GenTableModel):
"""
新增岗位数据库操作
新增业务表数据库操作
:param db: orm对象
:param post: 岗位对象
:param gen_table: 业务表对象
:return:
"""
db_gen_table = GenTable(**GenTableBaseModel(**gen_table.model_dump(by_alias=True)).model_dump())
@@ -208,10 +207,10 @@ class GenTableDao:
@classmethod
async def edit_gen_table_dao(cls, db: AsyncSession, gen_table: dict):
"""
编辑岗位数据库操作
编辑业务表数据库操作
:param db: orm对象
:param post: 需要更新的岗位字典
:param gen_table: 需要更新的业务表字典
:return:
"""
await db.execute(update(GenTable), [GenTableBaseModel(**gen_table).model_dump()])
@@ -219,10 +218,10 @@ class GenTableDao:
@classmethod
async def delete_gen_table_dao(cls, db: AsyncSession, gen_table: GenTableModel):
"""
删除岗位数据库操作
删除业务表数据库操作
:param db: orm对象
:param post: 岗位对象
:param gen_table: 业务表对象
:return:
"""
await db.execute(delete(GenTable).where(GenTable.table_id.in_([gen_table.table_id])))
@@ -230,17 +229,17 @@ class GenTableDao:
class GenTableColumnDao:
"""
代码生成模块数据库操作层
代码生成业务表字段模块数据库操作层
"""
@classmethod
async def get_gen_table_column_list_by_table_id(cls, db: AsyncSession, table_id: int):
"""
根据表id获取需要生成的列表信息
根据业务表id获取需要生成的业务表字段列表信息
:param db: orm对象
:param table_id: 表id
:return: 需要生成的列表信息对象
:param table_id: 业务表id
:return: 需要生成的业务表字段列表信息对象
"""
gen_table_column_list = (
(await db.execute(select(GenTableColumn).where(GenTableColumn.table_id == table_id))).scalars().all()
@@ -251,12 +250,11 @@ class GenTableColumnDao:
@classmethod
async def get_gen_db_table_columns_by_name(cls, db: AsyncSession, table_name: str):
"""
根据查询参数获取数据库列表信息
根据业务表名称获取业务表字段列表信息
:param db: orm对象
:param query_object: 查询参数对象
:param is_page: 是否开启分页
:return: 数据库列表信息对象
:param table_name: 业务表名称
:return: 业务表字段列表信息对象
"""
query_sql = """
select
@@ -292,10 +290,10 @@ class GenTableColumnDao:
@classmethod
async def add_gen_table_column_dao(cls, db: AsyncSession, gen_table_column: GenTableColumnModel):
"""
新增岗位数据库操作
新增业务表字段数据库操作
:param db: orm对象
:param post: 岗位对象
:param gen_table_column: 岗位对象
:return:
"""
db_gen_table_column = GenTableColumn(
@@ -309,10 +307,10 @@ class GenTableColumnDao:
@classmethod
async def edit_gen_table_column_dao(cls, db: AsyncSession, gen_table_column: dict):
"""
编辑岗位数据库操作
编辑业务表字段数据库操作
:param db: orm对象
:param post: 需要更新的岗位字典
:param gen_table_column: 需要更新的业务表字段字典
:return:
"""
await db.execute(update(GenTableColumn), [GenTableColumnBaseModel(**gen_table_column).model_dump()])
@@ -320,10 +318,10 @@ class GenTableColumnDao:
@classmethod
async def delete_gen_table_column_by_table_id_dao(cls, db: AsyncSession, gen_table_column: GenTableColumnModel):
"""
删除岗位数据库操作
通过业务表id删除业务表字段数据库操作
:param db: orm对象
:param post: 岗位对象
:param gen_table_column: 业务表字段对象
:return:
"""
await db.execute(delete(GenTableColumn).where(GenTableColumn.table_id.in_([gen_table_column.table_id])))
@@ -331,10 +329,10 @@ class GenTableColumnDao:
@classmethod
async def delete_gen_table_column_by_column_id_dao(cls, db: AsyncSession, gen_table_column: GenTableColumnModel):
"""
删除岗位数据库操作
通过业务字段id删除业务表字段数据库操作
:param db: orm对象
:param post: 岗位对象
:param post: 业务表字段对象
:return:
"""
await db.execute(delete(GenTableColumn).where(GenTableColumn.column_id.in_([gen_table_column.column_id])))