certflow.config package¶
Submodules¶
- certflow.config.config_center_backend module
- certflow.config.loader module
- certflow.config.models module
RootConfigRootConfig.appRootConfig.pathsRootConfig.sales_planRootConfig.certificateRootConfig.import_deduplicationRootConfig.databaseRootConfig.loggingRootConfig.uiRootConfig.color_mappingRootConfig.numberingRootConfig.duplicate_checkRootConfig.unique_keyRootConfig.priority_rulesRootConfig.exportRootConfig.sales_plan_fillRootConfig.field_fallbacksRootConfig.field_fill_rulesRootConfig.sales_importerRootConfig.import_mappingRootConfig.export_debugRootConfig.test_reportRootConfig.printerRootConfig.environmentRootConfig.colorsRootConfig.vba_importRootConfig.id_generatorRootConfig.production_statusRootConfig.import_configRootConfig.syncRootConfig.printRootConfig.backgroundRootConfig.print_log_empty_markersRootConfig.model_configRootConfig.appRootConfig.pathsRootConfig.sales_planRootConfig.certificateRootConfig.import_deduplicationRootConfig.databaseRootConfig.loggingRootConfig.uiRootConfig.color_mappingRootConfig.numberingRootConfig.duplicate_checkRootConfig.unique_keyRootConfig.priority_rulesRootConfig.exportRootConfig.sales_plan_fillRootConfig.field_fallbacksRootConfig.field_fill_rulesRootConfig.sales_importerRootConfig.qualified_listRootConfig.import_mappingRootConfig.export_debugRootConfig.test_reportRootConfig.reportRootConfig.printerRootConfig.environmentRootConfig.colorsRootConfig.field_templatesRootConfig.print_templatesRootConfig.vba_importRootConfig.completed_orders_backfillRootConfig.query_pageRootConfig.main_windowRootConfig.windowRootConfig.title_barRootConfig.nav_buttonsRootConfig.correction_queueRootConfig.welcome_pageRootConfig.import_pageRootConfig.log_pageRootConfig.status_barRootConfig.stylesRootConfig.groupingRootConfig.sortingRootConfig.id_generatorRootConfig.production_statusRootConfig.import_configRootConfig.import_placeholderRootConfig.bom_importRootConfig.syncRootConfig.printRootConfig.backgroundRootConfig.print_log_empty_markersRootConfig.outputRootConfig.dictionaryRootConfig.lookup_tablesRootConfig.quarantineRootConfig.sort_rulesRootConfig.validate_log_level()
AppConfigPathsConfigPathsConfig.databasePathsConfig.tempPathsConfig.logsPathsConfig.resourcesPathsConfig.templatesPathsConfig.sales_planPathsConfig.qualified_listPathsConfig.nameplate_dbPathsConfig.quality_certPathsConfig.transfer_docsPathsConfig.backupPathsConfig.outputPathsConfig.excel_layoutPathsConfig.imagesPathsConfig.model_configPathsConfig.databasePathsConfig.tempPathsConfig.logsPathsConfig.resourcesPathsConfig.templatesPathsConfig.sales_planPathsConfig.qualified_listPathsConfig.nameplate_dbPathsConfig.quality_certPathsConfig.transfer_docsPathsConfig.backupPathsConfig.outputPathsConfig.excel_layoutPathsConfig.imagesPathsConfig.fontsPathsConfig.report_archivePathsConfig.report_templates_dir
TemplatePathsTemplatePaths.baseTemplatePaths.certificate_chineseTemplatePaths.certificate_bilingualTemplatePaths.certificate_russianTemplatePaths.test_report_smallTemplatePaths.test_report_mediumTemplatePaths.quality_cert_fileTemplatePaths.report_masterTemplatePaths.baseTemplatePaths.certificate_chineseTemplatePaths.certificate_bilingualTemplatePaths.certificate_russianTemplatePaths.test_report_smallTemplatePaths.test_report_mediumTemplatePaths.quality_cert_fileTemplatePaths.report_masterTemplatePaths.model_config
SalesPlanConfigSalesPlanConfig.excel_configSalesPlanConfig.column_mappingSalesPlanConfig.header_detectionSalesPlanConfig.styled_import_columnsSalesPlanConfig.header_rowSalesPlanConfig.data_start_rowSalesPlanConfig.required_fieldsSalesPlanConfig.valid_row_checkSalesPlanConfig.pn_convertSalesPlanConfig.import_gateSalesPlanConfig.dual_field_mappingSalesPlanConfig.model_configSalesPlanConfig.excel_configSalesPlanConfig.column_mappingSalesPlanConfig.header_detectionSalesPlanConfig.styled_import_columnsSalesPlanConfig.header_rowSalesPlanConfig.data_start_rowSalesPlanConfig.required_fieldsSalesPlanConfig.valid_row_checkSalesPlanConfig.pn_convertSalesPlanConfig.import_gateSalesPlanConfig.dual_field_mapping
ExcelReadConfigHeaderDetectionConfigDualFieldMappingConfigSuffixRuleCertificateConfigCertificateConfig.prefixCertificateConfig.date_formatCertificateConfig.format_templateCertificateConfig.suffix_rulesCertificateConfig.defaultsCertificateConfig.numberingCertificateConfig.model_configCertificateConfig.prefixCertificateConfig.date_formatCertificateConfig.format_templateCertificateConfig.suffix_rulesCertificateConfig.defaultsCertificateConfig.numberingCertificateConfig.issue_date_sourceCertificateConfig.inspector_idCertificateConfig.print_duplicate_check
ImportDeduplicationConfigImportDeduplicationConfig.strategyImportDeduplicationConfig.check_within_fileImportDeduplicationConfig.check_against_dbImportDeduplicationConfig.unique_key_fieldsImportDeduplicationConfig.update_on_duplicateImportDeduplicationConfig.monitored_fieldsImportDeduplicationConfig.duplicate_handlingImportDeduplicationConfig.unique_key_generationImportDeduplicationConfig.field_normalizationImportDeduplicationConfig.model_configImportDeduplicationConfig.strategyImportDeduplicationConfig.check_within_fileImportDeduplicationConfig.check_against_dbImportDeduplicationConfig.unique_key_fieldsImportDeduplicationConfig.update_on_duplicateImportDeduplicationConfig.monitored_fieldsImportDeduplicationConfig.on_collisionImportDeduplicationConfig.duplicate_handlingImportDeduplicationConfig.unique_key_generationImportDeduplicationConfig.field_normalization
DatabaseConfigLoggingConfigLoggingConfig.levelLoggingConfig.fileLoggingConfig.formatLoggingConfig.rotationLoggingConfig.retentionLoggingConfig.compressionLoggingConfig.debug_modulesLoggingConfig.model_configLoggingConfig.levelLoggingConfig.fileLoggingConfig.formatLoggingConfig.rotationLoggingConfig.retentionLoggingConfig.compressionLoggingConfig.debug_modules
UIConfigColorMappingConfigColorMappingConfig.status_colorsColorMappingConfig.priority_colorsColorMappingConfig.vba_colorsColorMappingConfig.font_color_to_shippingColorMappingConfig.bg_color_to_statusColorMappingConfig.theme_font_colorsColorMappingConfig.font_colorsColorMappingConfig.bg_colorsColorMappingConfig.model_configColorMappingConfig.status_colorsColorMappingConfig.priority_colorsColorMappingConfig.vba_colorsColorMappingConfig.font_color_to_shippingColorMappingConfig.bg_color_to_statusColorMappingConfig.theme_font_colorsColorMappingConfig.font_colorsColorMappingConfig.bg_colors
NumberingConfigNumberingConfig.prefixNumberingConfig.formatNumberingConfig.suffixesNumberingConfig.auto_number_modeNumberingConfig.suffix_rulesNumberingConfig.no_cert_categoriesNumberingConfig.yellow_skip_enabledNumberingConfig.prefixNumberingConfig.formatNumberingConfig.suffixesNumberingConfig.auto_number_modeNumberingConfig.suffix_rulesNumberingConfig.no_cert_categoriesNumberingConfig.yellow_skip_enabledNumberingConfig.model_config
NumberingSuffixRuleDuplicateCheckConfigUniqueKeyConfigUniqueKeyConfig.separatorUniqueKeyConfig.date_to_serialUniqueKeyConfig.fieldsUniqueKeyConfig.key_field_fallbacksUniqueKeyConfig.tiersUniqueKeyConfig.require_numberedUniqueKeyConfig.separatorUniqueKeyConfig.date_to_serialUniqueKeyConfig.fieldsUniqueKeyConfig.key_field_fallbacksUniqueKeyConfig.tiersUniqueKeyConfig.require_numberedUniqueKeyConfig.model_config
UniqueKeyFieldPriorityRulesConfigPriorityRulesConfig.high_thresholdPriorityRulesConfig.medium_thresholdPriorityRulesConfig.high_labelPriorityRulesConfig.medium_labelPriorityRulesConfig.low_labelPriorityRulesConfig.high_colorPriorityRulesConfig.medium_colorPriorityRulesConfig.low_colorPriorityRulesConfig.high_thresholdPriorityRulesConfig.medium_thresholdPriorityRulesConfig.high_labelPriorityRulesConfig.medium_labelPriorityRulesConfig.low_labelPriorityRulesConfig.high_colorPriorityRulesConfig.medium_colorPriorityRulesConfig.low_colorPriorityRulesConfig.model_config
ExportConfigSalesImporterConfigVBAImportConfigVBAImportConfig.sales_plan_filesVBAImportConfig.qualified_listVBAImportConfig.field_mappingVBAImportConfig.color_mappingVBAImportConfig.duplicate_check_fieldsVBAImportConfig.sales_plan_filesVBAImportConfig.qualified_listVBAImportConfig.field_mappingVBAImportConfig.color_mappingVBAImportConfig.duplicate_check_fieldsVBAImportConfig.model_config
PrintLayoutConfigPrintLayoutConfig.label_xPrintLayoutConfig.value_xPrintLayoutConfig.start_yPrintLayoutConfig.line_spacingPrintLayoutConfig.font_sizePrintLayoutConfig.x_offsetPrintLayoutConfig.y_offsetPrintLayoutConfig.label_xPrintLayoutConfig.value_xPrintLayoutConfig.start_yPrintLayoutConfig.line_spacingPrintLayoutConfig.font_sizePrintLayoutConfig.x_offsetPrintLayoutConfig.y_offsetPrintLayoutConfig.model_config
PrintFontConfigPrintFieldConfigTestReportConfigPrinterConfigEnvironmentConfigColorsConfigImportMappingConfigGroupingConfigGroupingNumberingConfigGroupingNumberingConfig.use_global_prefixGroupingNumberingConfig.prefix_formatGroupingNumberingConfig.seq_formatGroupingNumberingConfig.separatorGroupingNumberingConfig.full_seq_fieldGroupingNumberingConfig.group_index_fieldGroupingNumberingConfig.group_key_fieldGroupingNumberingConfig.model_config
SortingConfigSortingKeyCompletedOrdersBackfillConfigCompletedOrdersBackfillConfig.file_pathCompletedOrdersBackfillConfig.match_fieldCompletedOrdersBackfillConfig.source_fieldCompletedOrdersBackfillConfig.db_match_fieldCompletedOrdersBackfillConfig.db_target_fieldCompletedOrdersBackfillConfig.overwrite_existingCompletedOrdersBackfillConfig.backup_before_updateCompletedOrdersBackfillConfig.backup_suffixCompletedOrdersBackfillConfig.model_config
ProductionStatusConfigProductionStatusConfig.model_configProductionStatusConfig.valuesProductionStatusConfig.defaultProductionStatusConfig.ui_labelsProductionStatusConfig.transitionsProductionStatusConfig.auto_upgradeProductionStatusConfig.inference_rulesProductionStatusConfig.query_keywordsProductionStatusConfig.uiProductionStatusConfig.context_menuProductionStatusConfig.shipped_actions
ProductionStatusUILabelProductionStatusAutoUpgradeRuleProductionStatusInferenceRuleProductionStatusUIConfigProductionStatusContextMenuIdGeneratorConfigImportConfigImportViewConfigImportColumnConfigImportPlaceholderConfigPrintConfigPrintConfig.enginePrintConfig.default_printerPrintConfig.default_copiesPrintConfig.default_templatePrintConfig.escpPrintConfig.paperPrintConfig.layoutPrintConfig.fontPrintConfig.batchPrintConfig.print_fieldsPrintConfig.previewPrintConfig.guardPrintConfig.raw_capturePrintConfig.model_config
PrintEscpConfigSyncConfigSyncWebdavConfigBackgroundConfigSalesPlanFillConfigSalesPlanFillColumnExportDebugConfigExportDebugFieldFieldFillRuleFieldFillTransformPrintLogEmptyMarkersConfigPrintLogEmptyMarkersConfig.customerPrintLogEmptyMarkersConfig.project_namePrintLogEmptyMarkersConfig.product_namePrintLogEmptyMarkersConfig.product_modelPrintLogEmptyMarkersConfig.dnPrintLogEmptyMarkersConfig.pnPrintLogEmptyMarkersConfig.mediumPrintLogEmptyMarkersConfig.temperaturePrintLogEmptyMarkersConfig.body_materialPrintLogEmptyMarkersConfig.stem_materialPrintLogEmptyMarkersConfig.disc_materialPrintLogEmptyMarkersConfig.tech_requirementsPrintLogEmptyMarkersConfig.equipment_noPrintLogEmptyMarkersConfig.sub_projectPrintLogEmptyMarkersConfig.sales_snPrintLogEmptyMarkersConfig.categoryPrintLogEmptyMarkersConfig.weightPrintLogEmptyMarkersConfig.seq_noPrintLogEmptyMarkersConfig.requisition_noPrintLogEmptyMarkersConfig.max_inlet_headPrintLogEmptyMarkersConfig.max_boost_headPrintLogEmptyMarkersConfig.model_config
OutputConfigOutputTargetConfigHistoryBackfillConfigOutputSharedConfig
- certflow.config.paths_override module
- certflow.config.print_config module
load_print_config()reload_print_config()get_paper()get_layout()get_font()get_print_fields()fields_to_tuples()get_empty_markers()PaperConfigLayoutConfigLayoutConfig.x_offset_mmLayoutConfig.y_offset_mmLayoutConfig.start_y_mmLayoutConfig.line_spacing_mmLayoutConfig.font_sizeLayoutConfig.font_nameLayoutConfig.font_weightLayoutConfig.x_offset_mmLayoutConfig.y_offset_mmLayoutConfig.start_y_mmLayoutConfig.line_spacing_mmLayoutConfig.font_sizeLayoutConfig.font_nameLayoutConfig.font_weight
FieldDefTemplateConfigTemplateConfig.nameTemplateConfig.keyTemplateConfig.variantTemplateConfig.backgroundTemplateConfig.page_width_mmTemplateConfig.page_height_mmTemplateConfig.fieldsTemplateConfig.nameTemplateConfig.keyTemplateConfig.variantTemplateConfig.backgroundTemplateConfig.page_width_mmTemplateConfig.page_height_mmTemplateConfig.fieldsTemplateConfig.get_field()
RuntimePrintConfig
- certflow.config.settings module
get_layout_groups()get_scan_layout_presets()get_scan_default_layout()get_config_value()APP_NAMEAPP_VERSIONAPP_YEARAPP_ORGANIZATIONAPP_DEBUGCONFIG_DIRDATABASE_DIRget_temp_dir()LOGS_DIRRESOURCES_DIRUI_CONFIG_FILEDATABASE_PATHDATABASE_URLSALES_PLAN_PATHSALES_PLAN_NETWORKSALES_PLAN_LOCAL_COPYSALES_PLAN_MASTER_FILESALES_PLAN_MASTER_SHEETQUALIFIED_LIST_PATHQUALIFIED_LIST_XLSM_ORIGINALQUALIFIED_LIST_SHEETNAMEPLATE_DB_PATHNAMEPLATE_DB_BACKUPQUALITY_CERT_FOREIGN_DIRQUALITY_CERT_SELF_MADE_DIRQUALITY_CERT_REPORT_DIRTRANSFER_DOCS_NETWORKTRANSFER_DOCS_LOCALCERT_HISTORY_PATHOUTPUT_BASEOUTPUT_TEST_REPORTOUTPUT_QUALITY_CERTOUTPUT_CERTIFICATE_IMAGESOUTPUT_NAMEPLATEOUTPUT_BACKUPSNAMEPLATE_IMAGE_PATHNAMEPLATE_IMAGE_BACKUPROW_HEIGHT_TITLEROW_HEIGHT_HEADERROW_HEIGHT_DATAROW_HEIGHT_SUMMARYNUMBERING_PREFIXNUMBERING_FORMATNUMBERING_SUFFIXESNUMBERING_AUTO_NUMBER_MODENUMBERING_SUFFIX_RULESCERTIFICATE_PREFIXCERTIFICATE_DATE_FORMATCERTIFICATE_FORMAT_TEMPLATEVBA_COLORSFONT_COLOR_TO_SHIPPINGBG_COLOR_TO_STATUSTHEME_FONT_COLORSPN_LB_TO_MPADUPLICATE_CHECK_FIELDSUNIQUE_KEY_SEPARATORUNIQUE_KEY_DATE_TO_SERIALUNIQUE_KEY_FIELD_FALLBACKSREQUIRE_NUMBEREDSORT_RULES_KEYSSORT_KEYSGROUP_BY_FIELDSGROUP_BY_FIELDS_NO_PROJECTGROUP_BY_SUMMARY_FIELDGROUP_BY_NUMBER_FORMATEXPORT_HYPERLINK_COLUMNEXPORT_HYPERLINK_REF_PREFIXEXPORT_HYPERLINK_WIDTHEXPORT_SUMMARY_LABELEXPORT_SUMMARY_LABEL_COLUMNEXPORT_SUMMARY_BG_COLOREXPORT_SUMMARY_COL_RANGEEXPORT_SUMMARY_SUM_COLUMNSSALE_PLAN_COLUMNSCOLUMN_ALIASESSALES_PLAN_HEADER_ROWSALES_PLAN_DATA_START_ROWSALES_PLAN_SHEET_PATTERNSALES_PLAN_HEADER_KEYWORDSREQUIRED_FIELDSSTYLED_IMPORT_COLUMNSIMPORT_GATEDUAL_FIELD_MAPPINGQUALIFIED_LIST_HEADER_ROWQUALIFIED_LIST_DATA_START_ROWQUALIFIED_LIST_REQUIRED_FIELDSIMPORT_MAPPING_PREPROCESSORIMPORT_MAPPING_COLUMN_MAPPINGIMPORT_MAPPING_DEFAULT_VALUESTEST_REPORT_COMPANY_NAMETEST_REPORT_FORM_CODELOG_ROTATIONLOG_RETENTIONLOG_COMPRESSIONLOG_FORMATLOG_LEVELDEFAULT_PRINTERSKIP_PRINTINGget_views_config()get_views_config_yaml()get_ui_config()TEMPLATE_CERTIFICATE_CHINESETEMPLATE_CERTIFICATE_BILINGUALTEMPLATE_CERTIFICATE_RUSSIANTEMPLATE_TEST_REPORT_SMALLTEMPLATE_TEST_REPORT_MEDIUMTEMPLATE_QUALITY_CERT_FILEIMAGE_BG_CHINESEIMAGE_BG_BILINGUALIMAGE_BG_RUSSIANDATABASE_TYPEDATABASE_ECHODATABASE_POOL_SIZEDATABASE_ACCESS_ENABLEDDATABASE_ACCESS_PRIMARYDATABASE_ACCESS_BACKUPENV_COMPUTER_NAMEENV_USERNAMECOLORS_YELLOWCOLORS_BLUECOLORS_REDCOLORS_GREENCOLORS_LIGHT_BLUEUSE_XLWINGSUSE_OPENPYXLUPDATE_ON_DUPLICATEON_COLLISIONMONITORED_FIELDSget_sort_rules()GROUPING_KEYSGROUPING_KEYS_NO_PROJECTSORTING_KEYSSORTING_FIELD_NAMESget_field_default()get_column_by_alias()get_ui_window_title()get_ui_table_alternating_colors()ensure_directories()reload_config()merge_user_config()get_recent_files()add_recent_file()get_user_preference()should_confirm_before_delete()REPORT_EXPORT_PDFREPORT_FILENAME_FORMATREPORT_SHEET_NAME_FORMATREPORT_SAVE_PATHshould_export_report_pdf()get_report_filename_format()get_report_sheet_name_format()get_report_save_path()get_report_page_options()set_user_preference()get_override()set_override()get_override_section()set_override_section()get_skipped_columns()save_skipped_columns()get_import_config()save_import_config()get_recent_import_files()add_recent_import_file()get_file_import_config()clear_recent_files()save_sheet_config()ensure_ui_config()get_import_views()get_import_view()get_import_required_fields()get_import_default_strategy()CREATE_PLACEHOLDER_DIRSSKIP_CONFIRM_WHEN_NO_CONFLICT
- certflow.config.settings_ui module
- certflow.config.ui_config module
ButtonConfigPageConfigUIConfigModelUIConfigModel.model_configUIConfigModel.main_windowUIConfigModel.windowUIConfigModel.title_barUIConfigModel.nav_buttonsUIConfigModel.welcome_pageUIConfigModel.import_pageUIConfigModel.query_pageUIConfigModel.log_pageUIConfigModel.print_pageUIConfigModel.correction_queueUIConfigModel.status_barUIConfigModel.styles
UIConfigUIConfig.main_windowUIConfig.title_barUIConfig.nav_buttonsUIConfig.welcome_pageUIConfig.import_pageUIConfig.log_pageUIConfig.status_barUIConfig.stylesUIConfig.main_windowUIConfig.windowUIConfig.title_barUIConfig.nav_buttonsUIConfig.welcome_pageUIConfig.import_pageUIConfig.query_pageUIConfig.log_pageUIConfig.print_pageUIConfig.correction_queueUIConfig.status_barUIConfig.stylesUIConfig.load()UIConfig.get_nav_buttons()UIConfig.get_style()UIConfig.get_view_context_menu()UIConfig.get_view_toolbar_actions()UIConfig.get_correction_queue_actions()UIConfig.get_correction_queue_context_menu()
StyleBuilder
Module contents¶
配置模块
提供配置加载和管理功能,是CertFlow配置系统的入口模块.
该模块导出配置加载器和配置模型的主要类,方便其他模块统一导入使用.
- Exports:
ConfigLoader: 配置加载器类,负责加载YAML配置文件、处理环境变量和文件包含 RootConfig: 根配置模型类,定义所有配置项的数据结构和验证规则 get_config: 全局配置单例获取函数,提供便捷的配置访问接口
示例
>>> from certflow.config import get_config, ConfigLoader
>>>
>>> # 方式1: 使用全局单例
>>> config = get_config()
>>> print(config.app.name)
"CertFlow"
>>>
>>> # 方式2: 创建独立加载器实例
>>> loader = ConfigLoader()
>>> config = loader.load("custom_config.yaml")
- class certflow.config.ConfigLoader(config_dir=None)[源代码]¶
基类:
object配置加载器,负责加载和处理YAML配置文件
- 提供完整的配置文件加载功能,包括:
自动适配开发环境和打包环境
环境变量替换 (${ENV_VAR:default})
配置文件包含 (!include)
配置验证 (Pydantic)
- 参数:
config_dir (Path | None)
- config_dir¶
配置文件所在目录的路径
- Type:
Path
- _config¶
内部存储的配置对象
- Type:
RootConfig | None
示例
>>> # 基本使用 >>> loader = ConfigLoader() >>> config = loader.load() # 自动查找配置文件 >>> print(config.app.name) "CertFlow" >>> >>> # 指定配置目录 >>> loader = ConfigLoader(Path("/path/to/config")) >>> config = loader.load("custom_config.yaml")
- load(config_file='config.yaml')[源代码]¶
加载配置文件并进行处理
- 执行完整的配置加载流程:
查找配置文件
读取文件内容
展开顶层 !include 指令
解析 YAML
处理嵌套的 !include 标签
替换环境变量
验证配置结构
- 参数:
config_file (str) -- 配置文件名,默认为 "config.yaml"
- 返回:
经过验证的配置对象
- 返回类型:
- 抛出:
FileNotFoundError -- 指定的配置文件不存在
yaml.YAMLError -- YAML语法错误或格式不正确
ValidationError -- 配置内容不符合定义的数据模型
示例
>>> loader = ConfigLoader() >>> config = loader.load() # 加载默认配置 >>> print(config.app.name) "CertFlow" >>> >>> # 加载自定义配置文件 >>> config = loader.load("custom_config.yaml")
- reload(config_file='config.yaml')[源代码]¶
重新加载配置文件
清除缓存配置并重新加载,用于运行时配置更新.
- 参数:
config_file (str) -- 配置文件名
- 返回:
重新加载后的配置对象
- 返回类型:
示例
>>> loader = ConfigLoader() >>> config = loader.load() # 首次加载 >>> # ... 配置文件被修改 ... >>> config = loader.reload() # 重新加载
- property config: RootConfig¶
获取已加载的配置对象
必须先调用 load() 方法,否则会抛出运行时错误.
- 返回:
已加载的配置对象
- 返回类型:
- 抛出:
RuntimeError -- 配置尚未加载
示例
>>> loader = ConfigLoader() >>> loader.load() >>> config = loader.config # 获取配置
- class certflow.config.RootConfig(*, app=<factory>, paths=<factory>, sales_plan=<factory>, certificate=<factory>, import_deduplication=<factory>, database=<factory>, logging=<factory>, ui=<factory>, color_mapping=<factory>, numbering=None, duplicate_check=None, unique_key=None, priority_rules=None, export=None, sales_plan_fill=None, field_fallbacks=None, field_fill_rules=None, sales_importer=None, qualified_list=None, import_mapping=None, export_debug=None, test_report=None, report=<factory>, printer=None, environment=None, colors=None, field_templates=None, print_templates=None, vba_import=None, completed_orders_backfill=None, query_page=<factory>, main_window=<factory>, window=<factory>, title_bar=<factory>, nav_buttons=<factory>, correction_queue=<factory>, welcome_page=<factory>, import_page=<factory>, log_page=<factory>, status_bar=<factory>, styles=<factory>, grouping=None, sorting=None, id_generator=None, production_status=None, import_config=None, import_placeholder=<factory>, bom_import=<factory>, sync=None, print=None, background=None, print_log_empty_markers=None, output=None, dictionary=<factory>, lookup_tables=<factory>, quarantine=<factory>, sort_rules=<factory>)[源代码]¶
基类:
_StrictModel根配置模型
所有配置的顶层容器,聚合所有子配置模块. 顶层已闭环为 extra='forbid'(任务 2.3 / §六 UI 域严格校验),未建模键触发 ValidationError,杜绝顶层键拼写错误/死配置静默失效;嵌套 UI 段结构由 UIConfigModel 顶层闸门二次把关(见 ui_config.py)。
- 参数:
app (AppConfig)
paths (PathsConfig)
sales_plan (SalesPlanConfig)
certificate (CertificateConfig)
import_deduplication (ImportDeduplicationConfig)
database (DatabaseConfig)
logging (LoggingConfig)
ui (UIConfig)
color_mapping (ColorMappingConfig)
numbering (NumberingConfig | None)
duplicate_check (DuplicateCheckConfig | None)
unique_key (UniqueKeyConfig | None)
priority_rules (PriorityRulesConfig | None)
export (ExportConfig | None)
sales_plan_fill (SalesPlanFillConfig | None)
field_fill_rules (dict[str, list[FieldFillRule]] | None)
sales_importer (SalesImporterConfig | None)
import_mapping (ImportMappingConfig | None)
export_debug (ExportDebugConfig | None)
test_report (TestReportConfig | None)
printer (PrinterConfig | None)
environment (EnvironmentConfig | None)
colors (ColorsConfig | None)
vba_import (VBAImportConfig | None)
completed_orders_backfill (CompletedOrdersBackfillConfig | None)
grouping (GroupingConfig | None)
sorting (SortingConfig | None)
id_generator (IdGeneratorConfig | None)
production_status (ProductionStatusConfig | None)
import_config (ImportConfig | None)
import_placeholder (ImportPlaceholderConfig | None)
bom_import (BomImportConfig | None)
sync (SyncConfig | None)
print (PrintConfig | None)
background (BackgroundConfig | None)
print_log_empty_markers (PrintLogEmptyMarkersConfig | None)
output (OutputConfig | None)
dictionary (DictionaryConfig)
lookup_tables (LookupTablesConfig)
quarantine (QuarantineConfig)
sort_rules (SortRulesConfig)
- app¶
应用基础配置
- paths¶
路径配置
- sales_plan¶
销售计划配置
- certificate¶
合格证配置
- import_deduplication¶
导入去重配置
- database¶
数据库配置
- logging¶
日志配置
- ui¶
UI配置
- color_mapping¶
颜色映射配置
- numbering¶
编号规则配置(V2)
- Type:
- duplicate_check¶
重复检查配置(V2)
- Type:
- unique_key¶
唯一键配置(V2)
- Type:
- priority_rules¶
优先级规则配置(V2)
- Type:
- export¶
导出配置(V2)
- Type:
- sales_plan_fill¶
销售计划填充配置(V2)
- Type:
- field_fill_rules¶
字段填充规则配置(V2)
- Type:
dict[str, list[certflow.config.models.FieldFillRule]] | None
- sales_importer¶
销售计划导入器配置(V2)
- Type:
- import_mapping¶
导入列映射配置(V2)
- Type:
- export_debug¶
导出调试配置(V2)
- Type:
- test_report¶
试压报告配置(V2)
- Type:
- printer¶
打印机配置(V2)
- Type:
- environment¶
环境信息配置(V2)
- Type:
- colors¶
颜色常量配置(V2)
- Type:
- vba_import¶
VBA导入配置(V2)
- Type:
- id_generator¶
唯一键生成策略配置
- Type:
- production_status¶
生产状态配置
- Type:
- import_config¶
导入配置(与 QueryView 风格一致)
- Type:
- sync¶
数据库同步配置(WebDAV)
- Type:
- print¶
打印引擎配置
- Type:
- background¶
底板预览配置
- Type:
- print_log_empty_markers¶
打印日志空值默认标记配置
- Type:
- model_config = {'extra': 'forbid'}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- paths: PathsConfig¶
- sales_plan: SalesPlanConfig¶
- certificate: CertificateConfig¶
- import_deduplication: ImportDeduplicationConfig¶
- database: DatabaseConfig¶
- logging: LoggingConfig¶
- color_mapping: ColorMappingConfig¶
- numbering: NumberingConfig | None¶
- duplicate_check: DuplicateCheckConfig | None¶
- unique_key: UniqueKeyConfig | None¶
- priority_rules: PriorityRulesConfig | None¶
- export: ExportConfig | None¶
- sales_plan_fill: SalesPlanFillConfig | None¶
- sales_importer: SalesImporterConfig | None¶
- import_mapping: ImportMappingConfig | None¶
- export_debug: ExportDebugConfig | None¶
- test_report: TestReportConfig | None¶
- printer: PrinterConfig | None¶
- environment: EnvironmentConfig | None¶
- colors: ColorsConfig | None¶
- vba_import: VBAImportConfig | None¶
- completed_orders_backfill: CompletedOrdersBackfillConfig | None¶
- grouping: GroupingConfig | None¶
- sorting: SortingConfig | None¶
- id_generator: IdGeneratorConfig | None¶
- production_status: ProductionStatusConfig | None¶
- import_config: ImportConfig | None¶
- import_placeholder: ImportPlaceholderConfig | None¶
- sync: SyncConfig | None¶
- print: PrintConfig | None¶
- background: BackgroundConfig | None¶
- print_log_empty_markers: PrintLogEmptyMarkersConfig | None¶
- output: OutputConfig | None¶
- dictionary: DictionaryConfig¶
- lookup_tables: LookupTablesConfig¶
- quarantine: QuarantineConfig¶
- sort_rules: SortRulesConfig¶
- classmethod validate_log_level(v)[源代码]¶
验证日志级别是否有效
- 参数:
v (LoggingConfig) -- 待验证的日志配置对象
- 返回:
验证通过的日志配置对象
- 返回类型:
- 抛出:
ValueError -- 当日志级别不在有效值范围内时抛出
- certflow.config.get_config(config_dir=None, reload=False)[源代码]¶
获取全局配置实例(单例模式)
提供便捷的全局配置访问接口,避免在多处重复创建 ConfigLoader 实例. 首次调用时会自动加载配置,后续调用返回缓存的配置对象.
- 参数:
- 返回:
全局配置对象实例
- 返回类型:
示例
>>> from certflow.config.loader import get_config >>> >>> # 首次调用,自动加载配置 >>> config = get_config() >>> print(config.app.name) "CertFlow" >>> >>> # 使用缓存配置 >>> db_config = get_config().database >>> >>> # 强制重新加载 >>> new_config = get_config(reload=True)