# -*- coding: utf-8 -*- # @Time : 2024/5/16 # @Author : 魏志亮 from typing import Optional, Dict, List class TransParam(object): """转换参数类 存储数据转换过程中的各种参数配置 """ def __init__(self, read_type: Optional[str] = None, read_path: Optional[str] = None, cols_tran: Dict[str, str] = None, wind_name_exec: str = "", is_vertical_table: bool = False, vertical_cols: List[str] = None, vertical_key: Optional[str] = None, vertical_value: Optional[str] = None, index_cols: List[str] = None, merge_columns: bool = False, resolve_col_prefix: Optional[str] = None, need_valid_cols: bool = True, wind_col_trans: Optional[Dict[str, str]] = None, boolean_sec_to_min: bool = False): """ 初始化转换参数 Args: read_type: 读取类型,如 'second' 或 'minute' read_path: 读取路径 cols_tran: 列名转换映射 wind_name_exec: 风机名称处理表达式 is_vertical_table: 是否为垂直表 vertical_cols: 垂直表列名列表 vertical_key: 垂直表键列 vertical_value: 垂直表值列 index_cols: 索引列列表 merge_columns: 是否合并列 resolve_col_prefix: 列名前缀解析表达式 need_valid_cols: 是否需要验证列 wind_col_trans: 风机列转换映射 boolean_sec_to_min: 是否将秒级数据转换为分钟级 """ self.read_type = read_type self.read_path = read_path self.cols_tran = cols_tran or {} self.is_vertical_table = is_vertical_table self.wind_name_exec = wind_name_exec self.vertical_cols = vertical_cols or [] self.vertical_key = vertical_key self.vertical_value = vertical_value self.index_cols = index_cols or [] self.merge_columns = merge_columns self.resolve_col_prefix = resolve_col_prefix self.need_valid_cols = need_valid_cols self.wind_col_trans = wind_col_trans self.boolean_sec_to_min = boolean_sec_to_min