'commit'
This commit is contained in:
@@ -614,25 +614,25 @@ class EsSearchUtil:
|
|||||||
seg_set = set(seg_list)
|
seg_set = set(seg_list)
|
||||||
|
|
||||||
# 检查是否已有学生信息,如果没有则从ES加载
|
# 检查是否已有学生信息,如果没有则从ES加载
|
||||||
if user_id not in student_info:
|
if user_id not in self.student_info:
|
||||||
# 从ES加载学生信息
|
# 从ES加载学生信息
|
||||||
info_from_es = self.get_student_info_from_es(user_id)
|
info_from_es = self.get_student_info_from_es(user_id)
|
||||||
if info_from_es:
|
if info_from_es:
|
||||||
student_info[user_id] = info_from_es
|
self.student_info[user_id] = info_from_es
|
||||||
logger.info(f"从ES加载用户 {user_id} 的信息: {info_from_es}")
|
logger.info(f"从ES加载用户 {user_id} 的信息: {info_from_es}")
|
||||||
else:
|
else:
|
||||||
student_info[user_id] = {}
|
self.student_info[user_id] = {}
|
||||||
|
|
||||||
# 提取并更新年级信息
|
# 提取并更新年级信息
|
||||||
grade_found = False
|
grade_found = False
|
||||||
for grade, keywords in GRADE_KEYWORDS.items():
|
for grade, keywords in self.GRADE_KEYWORDS.items():
|
||||||
for keyword in keywords:
|
for keyword in keywords:
|
||||||
if keyword in seg_set:
|
if keyword in seg_set:
|
||||||
if 'grade' not in student_info[user_id] or student_info[user_id]['grade'] != grade:
|
if 'grade' not in self.student_info[user_id] or self.student_info[user_id]['grade'] != grade:
|
||||||
student_info[user_id]['grade'] = grade
|
self.student_info[user_id]['grade'] = grade
|
||||||
logger.info(f"提取到用户 {user_id} 的年级信息: {grade}")
|
logger.info(f"提取到用户 {user_id} 的年级信息: {grade}")
|
||||||
# 保存到ES
|
# 保存到ES
|
||||||
self.save_student_info_to_es(user_id, student_info[user_id])
|
self.save_student_info_to_es(user_id, self.student_info[user_id])
|
||||||
grade_found = True
|
grade_found = True
|
||||||
break
|
break
|
||||||
if grade_found:
|
if grade_found:
|
||||||
@@ -646,11 +646,11 @@ class EsSearchUtil:
|
|||||||
if match:
|
if match:
|
||||||
grade_num = match.group(1)
|
grade_num = match.group(1)
|
||||||
grade = f"{grade_num}年级"
|
grade = f"{grade_num}年级"
|
||||||
if 'grade' not in student_info[user_id] or student_info[user_id]['grade'] != grade:
|
if 'grade' not in self.student_info[user_id] or self.student_info[user_id]['grade'] != grade:
|
||||||
student_info[user_id]['grade'] = grade
|
self.student_info[user_id]['grade'] = grade
|
||||||
logger.info(f"通过正则提取到用户 {user_id} 的年级信息: {grade}")
|
logger.info(f"通过正则提取到用户 {user_id} 的年级信息: {grade}")
|
||||||
# 保存到ES
|
# 保存到ES
|
||||||
self.save_student_info_to_es(user_id, student_info[user_id])
|
self.save_student_info_to_es(user_id, self.student_info[user_id])
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"提取学生信息失败: {str(e)}", exc_info=True)
|
logger.error(f"提取学生信息失败: {str(e)}", exc_info=True)
|
||||||
|
|
||||||
|
Binary file not shown.
Reference in New Issue
Block a user