| 145 | self.node_context = [] |
| 146 | |
| 147 | def init_fields(self): |
| 148 | field_list = [] |
| 149 | global_field_list = [] |
| 150 | chat_field_list = [] |
| 151 | for node in self.flow.nodes: |
| 152 | properties = node.properties |
| 153 | node_name = properties.get('stepName') |
| 154 | node_id = node.id |
| 155 | node_config = properties.get('config') |
| 156 | field_list.append( |
| 157 | {'label': '异常信息', 'value': 'exception_message', 'node_id': node_id, 'node_name': node_name}) |
| 158 | if node_config is not None: |
| 159 | fields = node_config.get('fields') |
| 160 | if fields is not None: |
| 161 | for field in fields: |
| 162 | field_list.append({**field, 'node_id': node_id, 'node_name': node_name}) |
| 163 | global_fields = node_config.get('globalFields') |
| 164 | if global_fields is not None: |
| 165 | for global_field in global_fields: |
| 166 | global_field_list.append({**global_field, 'node_id': node_id, 'node_name': node_name}) |
| 167 | chat_fields = node_config.get('chatFields') |
| 168 | if chat_fields is not None: |
| 169 | for chat_field in chat_fields: |
| 170 | chat_field_list.append({**chat_field, 'node_id': node_id, 'node_name': node_name}) |
| 171 | field_list.sort(key=lambda f: len(f.get('node_name') + f.get('value')), reverse=True) |
| 172 | global_field_list.sort(key=lambda f: len(f.get('node_name') + f.get('value')), reverse=True) |
| 173 | chat_field_list.sort(key=lambda f: len(f.get('node_name') + f.get('value')), reverse=True) |
| 174 | self.field_list = field_list |
| 175 | self.global_field_list = global_field_list |
| 176 | self.chat_field_list = chat_field_list |
| 177 | |
| 178 | def append_answer(self, content): |
| 179 | self.answer += content |