You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					73 lines
				
				2.8 KiB
			
		
		
			
		
	
	
					73 lines
				
				2.8 KiB
			| 
								 
											8 months ago
										 
									 | 
							
								# # data_ast_content_dao.py
							 | 
						||
| 
								 | 
							
								# from datetime import datetime
							 | 
						||
| 
								 | 
							
								# from sqlalchemy import select, insert, update, delete, func, not_, and_
							 | 
						||
| 
								 | 
							
								# from sqlalchemy.ext.asyncio import AsyncSession
							 | 
						||
| 
								 | 
							
								# from module_admin.entity.do.data_ast_content_do import DataAstInfo
							 | 
						||
| 
								 | 
							
								# from module_admin.entity.vo.data_ast_content_vo import DataAstInfoRequest, DataAstInfoPageQueryModel
							 | 
						||
| 
								 | 
							
								# from utils.page_util import PageUtil
							 | 
						||
| 
								 | 
							
								# from utils.log_util import logger
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# class DataAstInfoDAO:
							 | 
						||
| 
								 | 
							
								#     """
							 | 
						||
| 
								 | 
							
								#     数据资产信息模块数据库操作层
							 | 
						||
| 
								 | 
							
								#     """
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#     @classmethod
							 | 
						||
| 
								 | 
							
								#     async def add_data_ast_info_dao(cls, db: AsyncSession, data_ast_info: dict):
							 | 
						||
| 
								 | 
							
								#         """
							 | 
						||
| 
								 | 
							
								#         新增数据资产信息数据库操作
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#         :param db: orm对象
							 | 
						||
| 
								 | 
							
								#         :param data_ast_info: 数据资产信息对象
							 | 
						||
| 
								 | 
							
								#         :return:
							 | 
						||
| 
								 | 
							
								#         """
							 | 
						||
| 
								 | 
							
								#         db_data_ast_info = DataAstInfo(**data_ast_info)
							 | 
						||
| 
								 | 
							
								#         db.add(db_data_ast_info)
							 | 
						||
| 
								 | 
							
								#         await db.flush()
							 | 
						||
| 
								 | 
							
								#         return db_data_ast_info
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#     @classmethod
							 | 
						||
| 
								 | 
							
								#     async def add_data_ast_info_batch_dao(cls, db: AsyncSession, data_ast_info_list: list):
							 | 
						||
| 
								 | 
							
								#         """
							 | 
						||
| 
								 | 
							
								#         批量新增数据资产信息数据库操作
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#         :param db: orm对象
							 | 
						||
| 
								 | 
							
								#         :param data_ast_info_list: 数据资产信息对象列表
							 | 
						||
| 
								 | 
							
								#         :return:
							 | 
						||
| 
								 | 
							
								#         """
							 | 
						||
| 
								 | 
							
								#         db_data_ast_info_list = [DataAstInfo(**data_ast_info) for data_ast_info in data_ast_info_list]
							 | 
						||
| 
								 | 
							
								#         db.add_all(db_data_ast_info_list)
							 | 
						||
| 
								 | 
							
								#         await db.flush()
							 | 
						||
| 
								 | 
							
								#         return db_data_ast_info_list
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#     @classmethod
							 | 
						||
| 
								 | 
							
								#     async def get_data_ast_info_list(cls, db: AsyncSession, query_object: DataAstInfoPageQueryModel, is_page: bool = False):
							 | 
						||
| 
								 | 
							
								#         """
							 | 
						||
| 
								 | 
							
								#         根据查询参数获取数据资产信息列表
							 | 
						||
| 
								 | 
							
								        
							 | 
						||
| 
								 | 
							
								#         :param db: 异步会话对象
							 | 
						||
| 
								 | 
							
								#         :param query_object: 分页查询参数对象
							 | 
						||
| 
								 | 
							
								#         :param is_page: 是否分页
							 | 
						||
| 
								 | 
							
								#         :return: 数据资产信息分页列表
							 | 
						||
| 
								 | 
							
								#         """
							 | 
						||
| 
								 | 
							
								#         query = (
							 | 
						||
| 
								 | 
							
								#             select(DataAstInfo)
							 | 
						||
| 
								 | 
							
								#             .where(
							 | 
						||
| 
								 | 
							
								#                 DataAstInfo.data_ast_eng_name == query_object.data_ast_eng_name if query_object.data_ast_eng_name else True,
							 | 
						||
| 
								 | 
							
								#                 DataAstInfo.data_ast_cn_name == query_object.data_ast_cn_name if query_object.data_ast_cn_name else True,
							 | 
						||
| 
								 | 
							
								#                 DataAstInfo.data_ast_type == query_object.data_ast_type if query_object.data_ast_type else True,
							 | 
						||
| 
								 | 
							
								#                 DataAstInfo.data_ast_clas == query_object.data_ast_clas if query_object.data_ast_clas else True
							 | 
						||
| 
								 | 
							
								#             )
							 | 
						||
| 
								 | 
							
								#             .order_by(DataAstInfo.data_ast_no)
							 | 
						||
| 
								 | 
							
								#         )
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#         # 使用分页工具进行查询
							 | 
						||
| 
								 | 
							
								#         data_ast_info_list = await PageUtil.paginate(
							 | 
						||
| 
								 | 
							
								#             db, 
							 | 
						||
| 
								 | 
							
								#             query, 
							 | 
						||
| 
								 | 
							
								#             page_num=query_object.page_num,
							 | 
						||
| 
								 | 
							
								#             page_size=query_object.page_size,
							 | 
						||
| 
								 | 
							
								#             is_page=is_page
							 | 
						||
| 
								 | 
							
								#         )
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#         return data_ast_info_list
							 |