fix: 修复get_matching_result_detail接口数据类型错误
修复'Invalid column type Real at index: 9, name: match_score'错误 问题根本原因: 1. 数据库schema中match_score字段定义为REAL类型 2. 数据插入时错误地将REAL/INTEGER字段转换为字符串 3. 数据读取时错误地尝试将REAL/INTEGER字段作为String类型获取 修复内容: 1. 修正matching_segment_results表相关字段的数据插入逻辑 - match_score: 直接使用f64类型而非转换为字符串 - segment_duration, start_time, end_time: 直接使用u64类型 2. 修正matching_failed_segment_results表相关字段的数据插入逻辑 - segment_duration, start_time, end_time: 直接使用u64类型 3. 修正row_to_segment_result和row_to_failed_segment_result函数 - 直接使用原始数据类型而非字符串解析 这确保了数据库操作的类型一致性,解决了get_matching_result_detail接口的错误。
This commit is contained in:
parent
3e6c05c4ac
commit
730ac22b84
|
|
@ -277,11 +277,11 @@ impl TemplateMatchingResultRepository {
|
|||
&segment_result.material_name,
|
||||
&segment_result.model_id,
|
||||
&segment_result.model_name,
|
||||
&segment_result.match_score.to_string(),
|
||||
&segment_result.match_score,
|
||||
&segment_result.match_reason,
|
||||
&segment_result.segment_duration.to_string(),
|
||||
&segment_result.start_time.to_string(),
|
||||
&segment_result.end_time.to_string(),
|
||||
&segment_result.segment_duration,
|
||||
&segment_result.start_time,
|
||||
&segment_result.end_time,
|
||||
&segment_result.properties,
|
||||
&segment_result.created_at.to_rfc3339(),
|
||||
&segment_result.updated_at.to_rfc3339(),
|
||||
|
|
@ -316,11 +316,11 @@ impl TemplateMatchingResultRepository {
|
|||
&segment_result.material_name,
|
||||
&segment_result.model_id,
|
||||
&segment_result.model_name,
|
||||
&segment_result.match_score.to_string(),
|
||||
&segment_result.match_score,
|
||||
&segment_result.match_reason,
|
||||
&segment_result.segment_duration.to_string(),
|
||||
&segment_result.start_time.to_string(),
|
||||
&segment_result.end_time.to_string(),
|
||||
&segment_result.segment_duration,
|
||||
&segment_result.start_time,
|
||||
&segment_result.end_time,
|
||||
&segment_result.properties,
|
||||
&segment_result.created_at.to_rfc3339(),
|
||||
&segment_result.updated_at.to_rfc3339(),
|
||||
|
|
@ -380,9 +380,9 @@ impl TemplateMatchingResultRepository {
|
|||
&failed_segment.matching_rule_data,
|
||||
&failed_segment.failure_reason,
|
||||
&failed_segment.failure_details,
|
||||
&failed_segment.segment_duration.to_string(),
|
||||
&failed_segment.start_time.to_string(),
|
||||
&failed_segment.end_time.to_string(),
|
||||
&failed_segment.segment_duration,
|
||||
&failed_segment.start_time,
|
||||
&failed_segment.end_time,
|
||||
&failed_segment.created_at.to_rfc3339(),
|
||||
&failed_segment.updated_at.to_rfc3339(),
|
||||
],
|
||||
|
|
@ -414,9 +414,9 @@ impl TemplateMatchingResultRepository {
|
|||
&failed_segment.matching_rule_data,
|
||||
&failed_segment.failure_reason,
|
||||
&failed_segment.failure_details,
|
||||
&failed_segment.segment_duration.to_string(),
|
||||
&failed_segment.start_time.to_string(),
|
||||
&failed_segment.end_time.to_string(),
|
||||
&failed_segment.segment_duration,
|
||||
&failed_segment.start_time,
|
||||
&failed_segment.end_time,
|
||||
&failed_segment.created_at.to_rfc3339(),
|
||||
&failed_segment.updated_at.to_rfc3339(),
|
||||
],
|
||||
|
|
@ -521,11 +521,11 @@ impl TemplateMatchingResultRepository {
|
|||
material_name: row.get("material_name")?,
|
||||
model_id: row.get("model_id")?,
|
||||
model_name: row.get("model_name")?,
|
||||
match_score: row.get::<_, String>("match_score")?.parse().unwrap_or(0.0),
|
||||
match_score: row.get("match_score")?,
|
||||
match_reason: row.get("match_reason")?,
|
||||
segment_duration: row.get::<_, String>("segment_duration")?.parse().unwrap_or(0),
|
||||
start_time: row.get::<_, String>("start_time")?.parse().unwrap_or(0),
|
||||
end_time: row.get::<_, String>("end_time")?.parse().unwrap_or(0),
|
||||
segment_duration: row.get("segment_duration")?,
|
||||
start_time: row.get("start_time")?,
|
||||
end_time: row.get("end_time")?,
|
||||
properties: row.get("properties")?,
|
||||
created_at,
|
||||
updated_at,
|
||||
|
|
@ -552,9 +552,9 @@ impl TemplateMatchingResultRepository {
|
|||
matching_rule_data: row.get("matching_rule_data")?,
|
||||
failure_reason: row.get("failure_reason")?,
|
||||
failure_details: row.get("failure_details")?,
|
||||
segment_duration: row.get::<_, String>("segment_duration")?.parse().unwrap_or(0),
|
||||
start_time: row.get::<_, String>("start_time")?.parse().unwrap_or(0),
|
||||
end_time: row.get::<_, String>("end_time")?.parse().unwrap_or(0),
|
||||
segment_duration: row.get("segment_duration")?,
|
||||
start_time: row.get("start_time")?,
|
||||
end_time: row.get("end_time")?,
|
||||
created_at,
|
||||
updated_at,
|
||||
})
|
||||
|
|
|
|||
Loading…
Reference in New Issue