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.
		
		
		
		
			
				
					110 lines
				
				4.2 KiB
			
		
		
			
		
	
	
					110 lines
				
				4.2 KiB
			| 
											9 months ago
										 | from sqlalchemy import delete, select, update | ||
|  | from sqlalchemy.ext.asyncio import AsyncSession | ||
|  | from module_admin.entity.do.metaprocessconfig_do import Metaprocessconfig | ||
|  | from module_admin.entity.vo.metaprocessconfig_vo import MetaprocessconfigModel, MetaprocessconfigPageObject | ||
|  | from datetime import datetime, time | ||
|  | from utils.page_util import PageUtil | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  | 
 | ||
|  | class MetaprocessconfigDao: | ||
|  |     """
 | ||
|  |     参数配置管理模块数据库操作层 | ||
|  |     """
 | ||
|  | 
 | ||
|  |     # @classmethod | ||
|  |     # async def get_metaprocessconfig_detail_by_id(cls, db: AsyncSession, metaprocessconfig_id: int): | ||
|  |     #     """ | ||
|  |     #     根据参数配置id获取参数配置详细信息 | ||
|  |     #     :param db: orm对象 | ||
|  |     #     :param metaprocessconfig_id: 参数配置id | ||
|  |     #     :return: 参数配置信息对象 | ||
|  |     #     """ | ||
|  |     #     metaprocessconfig_info = (await db.execute(select(Metaprocessconfig).where(Metaprocessconfig.metaprocessconfig_id == metaprocessconfig_id))).scalars().first() | ||
|  | 
 | ||
|  |     #     return metaprocessconfig_info | ||
|  | 
 | ||
|  |     # @classmethod | ||
|  |     # async def get_metaprocessconfig_detail_by_info(cls, db: AsyncSession, metaprocessconfig: MetaprocessconfigModel): | ||
|  |     #     metaprocessconfig_info = ( | ||
|  |     #         ( | ||
|  |     #             await db.execute( | ||
|  |     #                 select(Metaprocessconfig).where( | ||
|  |     #                     Metaprocessconfig.metaprocessconfig_name == metaprocessconfig.metaprocessconfig_name if metaprocessconfig.metaprocessconfig_name else True, | ||
|  |     #                 ) | ||
|  |     #             ) | ||
|  |     #         ) | ||
|  |     #         .scalars() | ||
|  |     #         .first() | ||
|  |     #     ) | ||
|  | 
 | ||
|  |     #     return metaprocessconfig_info | ||
|  | 
 | ||
|  | 
 | ||
|  |     @classmethod | ||
|  |     async def get_metaprocessconfig_list(cls, db: AsyncSession, query_object: MetaprocessconfigPageObject , is_page: bool = False): | ||
|  |         """
 | ||
|  |         根据查询参数获取参数配置列表信息 | ||
|  | 
 | ||
|  |         :param db: orm对象 | ||
|  |         :param query_object: 查询参数对象 | ||
|  |         :param is_page: 是否开启分页 | ||
|  |         :return: 参数配置列表信息对象 | ||
|  |         """
 | ||
|  |         query = ( | ||
|  |             select(Metaprocessconfig) | ||
|  |             .where( | ||
|  |                 Metaprocessconfig.db_type == query_object.db_type if query_object.db_type else True, | ||
|  |                 Metaprocessconfig.ac_target == query_object.ac_target if query_object.ac_target and len(query_object.ac_target)==1 else True, | ||
|  |             ) | ||
|  |             .order_by(Metaprocessconfig.pdc_id.desc()) | ||
|  |             .distinct() | ||
|  |         ) | ||
|  |         metaprocessconfig_list = await PageUtil.paginate(db, query, 1,10, is_page) | ||
|  | 
 | ||
|  |         return metaprocessconfig_list | ||
|  | 
 | ||
|  |     @classmethod | ||
|  |     async def get_metaprocessconfig_list_all(cls, db: AsyncSession, query_object: MetaprocessconfigPageObject , is_page: bool = False): | ||
|  |         query = ( | ||
|  |         select(Metaprocessconfig) | ||
|  |         .where( | ||
|  |             Metaprocessconfig.db_type == query_object.db_type if query_object.db_type else True, | ||
|  |             Metaprocessconfig.ac_target == query_object.ac_target if query_object.ac_target and len(query_object.ac_target) == 1 else True, | ||
|  |         ).order_by(Metaprocessconfig.ac_target.asc()).distinct())     | ||
|  |         result = await db.execute(query) | ||
|  |         metaprocessconfig_list = result.scalars().all() | ||
|  |         return list(metaprocessconfig_list) | ||
|  | 
 | ||
|  |     # @classmethod | ||
|  |     # async def add_metaprocessconfig_dao(cls, db: AsyncSession, metaprocessconfig: MetaprocessconfigModel): | ||
|  |     #     """  | ||
|  |     #     新增参数配置数据库操作 | ||
|  |     #     :param db: orm对象 | ||
|  |     #     :param metaprocessconfig: 参数配置对象 | ||
|  |     #     :return: | ||
|  |     #     """ | ||
|  |     #     db_metaprocessconfig = Metaprocessconfig(**metaprocessconfig.model_dump()) | ||
|  |     #     db.add(db_metaprocessconfig) | ||
|  |     #     await db.flush() | ||
|  |     #     return db_metaprocessconfig | ||
|  | 
 | ||
|  | 
 | ||
|  |     # @classmethod | ||
|  |     # async def edit_metaprocessconfig_dao(cls, db: AsyncSession, metaprocessconfig: dict): | ||
|  | 
 | ||
|  |     #    await db.execute(update(Metaprocessconfig), [metaprocessconfig]) | ||
|  | 
 | ||
|  | 
 | ||
|  |     # @classmethod | ||
|  |     # async def delete_metaprocessconfig_dao(cls, db: AsyncSession, metaprocessconfig: MetaprocessconfigModel): | ||
|  |     #     """ | ||
|  |     #     删除参数配置数据库操作 | ||
|  |     #     :param db: orm对象 | ||
|  |     #     :param config: 参数配置对象 | ||
|  |     #     :return: | ||
|  |     #     """ | ||
|  |     #     await db.execute(delete(Metaprocessconfig).where(Metaprocessconfig.metaprocessconfig_id.in_([metaprocessconfig.metaprocessconfig_id]))) | ||
|  | 
 |