Skip to content

Commit 1c6b2a3

Browse files
committed
3.3.2
1 parent 7f8ecbf commit 1c6b2a3

File tree

1 file changed

+63
-17
lines changed

1 file changed

+63
-17
lines changed

CONVERSION_FIELDS.py

Lines changed: 63 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
from UPDATE_FIELD import UPDATE_FIELD
66

77
def CONVERSION_FIELDS_HUMAN_TO_MACHINE(app_token=None, table_id=None, view_id=None, page_token=None, page_size=None, config_file=None):
8-
98
if config_file is None:
109
config_file = 'feishu-config.ini'
1110

@@ -19,28 +18,32 @@ def CONVERSION_FIELDS_HUMAN_TO_MACHINE(app_token=None, table_id=None, view_id=No
1918
if not table_id:
2019
table_id = config.get('ID', 'table_id')
2120

22-
23-
field_type=1
21+
field_type = 1
2422
fields_map = dict(config.items('FIELD_MAP'))
2523

2624
# 获取当前的字段
27-
current_fields = LIST_FIELDS(app_token=app_token, table_id=table_id, view_id=view_id, page_token=page_token, page_size=page_size, config_file=config_file)
25+
current_fields = LIST_FIELDS(app_token=app_token, table_id=table_id, view_id=view_id, page_token=page_token,
26+
page_size=page_size, config_file=config_file)
27+
28+
if 'data' in current_fields and isinstance(current_fields['data'], dict):
29+
for field in current_fields['data']['items']:
30+
# 检查当前字段是否在映射中
31+
if field['field_name'] in fields_map:
32+
field_id = field['field_id'] # 获取字段的ID
33+
field_name = fields_map[field['field_name']] # 获取字段的映射名称
34+
# 如果在,则更新字段名
35+
UPDATE_FIELD(app_token=app_token, table_id=table_id, field_id=field_id, field_name=field_name,
36+
field_type=field_type)
37+
38+
# 打印处理后的数据
39+
print(f"Field '{field['field_name']}' converted to '{field_name}'")
40+
else:
41+
# 当没有有效数据时的处理逻辑
42+
print("没有获取到有效的字段数据")
2843

29-
# 遍历当前的字段
30-
for field in current_fields['data']['items']:
31-
# 检查当前字段是否在映射中
32-
if field['field_name'] in fields_map:
3344

34-
field_id = field['field_id'] # 获取字段的ID
35-
field_name = fields_map[field['field_name']] # 获取字段的映射名称
36-
# 如果在,则更新字段名
37-
UPDATE_FIELD(app_token=app_token, table_id=table_id, field_id=field_id, field_name=field_name, field_type=field_type)
3845

39-
# 打印处理后的数据
40-
print(f"Field '{field['field_name']}' converted to '{field_name}'")
41-
42-
43-
def CONVERSION_FIELDS_MACHINE_TO_HUMAN(app_token=None, table_id=None, view_id=None, page_token=None, page_size=None, config_file=None):
46+
def CONVERSION_FIELDS_MACHINE_TO_HUMAN_V1(app_token=None, table_id=None, view_id=None, page_token=None, page_size=None, config_file=None):
4447

4548
if config_file is None:
4649
config_file = 'feishu-config.ini'
@@ -80,6 +83,49 @@ def CONVERSION_FIELDS_MACHINE_TO_HUMAN(app_token=None, table_id=None, view_id=No
8083
print(f"Field '{field['field_name']}' converted to '{field_name}'")
8184

8285

86+
87+
def CONVERSION_FIELDS_MACHINE_TO_HUMAN(app_token=None, table_id=None, view_id=None, page_token=None, page_size=None, config_file=None):
88+
89+
if config_file is None:
90+
config_file = 'feishu-config.ini'
91+
92+
# 读取配置文件
93+
config = configparser.ConfigParser()
94+
config.read(config_file, encoding='utf-8')
95+
96+
# 如果参数为空,则使用配置文件中的默认值
97+
if not app_token:
98+
app_token = config.get('TOKEN', 'app_token')
99+
if not table_id:
100+
table_id = config.get('ID', 'table_id')
101+
102+
fields_map = dict(config.items('FIELD_MAP'))
103+
104+
# 获取当前的字段
105+
current_fields = LIST_FIELDS(app_token=app_token, table_id=table_id, view_id=view_id, page_token=page_token, page_size=page_size, config_file=config_file)
106+
107+
# 反转字典映射
108+
reversed_fields_map = {v: k for k, v in fields_map.items()}
109+
110+
field_type=1
111+
112+
if 'data' in current_fields and isinstance(current_fields['data'], dict):
113+
for field in current_fields['data']['items']:
114+
# 检查当前字段是否在映射中
115+
if field['field_name'] in reversed_fields_map:
116+
# 如果在,则更新字段名
117+
#UPDATE_FIELD(app_token=app_token, table_id=table_id, field_id=field['field_id'], field_name=reversed_fields_map[field['field_name']], field_type=1)
118+
field_id = field['field_id'] # 获取字段的ID
119+
field_name = reversed_fields_map[field['field_name']] # 获取字段的映射名称
120+
UPDATE_FIELD(app_token=app_token, table_id=table_id, field_id=field_id, field_name=field_name, field_type=field_type)
121+
# 打印处理后的数据
122+
print(f"Field '{field['field_name']}' converted to '{field_name}'")
123+
else:
124+
# 当没有有效数据时的处理逻辑
125+
print("没有获取到有效的字段数据")
126+
127+
128+
83129
def CONVERSION_FIELDS_CMD():
84130

85131
parser = argparse.ArgumentParser(description='Human-to-Machine and Machine-to-Human Field Name Conversion')

0 commit comments

Comments
 (0)