修正FiRisk强平触发来源

This commit is contained in:
boris
2026-06-20 23:07:59 +08:00
parent cdca7984ed
commit f8bc0679ee
11 changed files with 189 additions and 2 deletions
+10
View File
@@ -208,6 +208,8 @@ pub struct CandidateEligibility {
pub allow_sell: bool,
pub is_kcb: bool,
pub is_one_yuan: bool,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub risk_level_code: Option<String>,
}
impl CandidateEligibility {
@@ -3126,6 +3128,13 @@ fn read_candidates(path: &Path) -> Result<Vec<CandidateEligibility>, DataSetErro
allow_sell: row.parse_bool(6)?,
is_kcb: row.parse_optional_bool(7).unwrap_or(false),
is_one_yuan: row.parse_optional_bool(8).unwrap_or(false),
risk_level_code: row
.fields
.get(9)
.map(String::as_str)
.map(str::trim)
.filter(|value| !value.is_empty())
.map(ToOwned::to_owned),
});
}
Ok(snapshots)
@@ -3954,6 +3963,7 @@ mod tests {
allow_sell: true,
is_kcb: false,
is_one_yuan: false,
risk_level_code: None,
};
let data = DataSet::from_components(
vec![instrument("000001.SZ"), instrument("000002.SZ")],