Correção v2 de bug *Cristiano*+adição de data manual

This commit is contained in:
2026-02-18 07:59:52 -03:00
parent 5bfaeefdb2
commit 49cdb922bf
2 changed files with 43 additions and 29 deletions

View File

@@ -20,12 +20,12 @@ struct CsvHeader {
#[derive(Debug, serde::Deserialize)]
struct CsvEvaluation {
APRESENTAÇÃO: u8,
CONFIRMAÇÃO_DE_EMAIL: u8,
CONFIRMAÇÃO_DE_TELEFONE: u8,
APRESENTACAO: u8,
CONFIRMACAO_DE_EMAIL: u8,
CONFIRMACAO_DE_TELEFONE: u8,
PROTOCOLO: u8,
USO_DO_PORTUGUÊS: u8,
PACIÊNCIA_E_EDUCAÇÃO: u8,
USO_DO_PORTUGUES: u8,
PACIENCIA_E_EDUCACAO: u8,
DISPONIBILIDADE: u8,
ESCLARECIMENTO: u8,
ID_TALK: String,
@@ -264,9 +264,8 @@ fn main() {
}
//
/*
let mut deserialized_iter = reader.deserialize::<CsvHeader>();
let mut columns = deserialized_iter
.filter_ok(|value| value.PONTOS.is_some())
.map_ok(|value| {
@@ -281,6 +280,19 @@ fn main() {
None
})
.collect_vec();
*/
let mut columns = deserialized
.into_iter() // usa os registros já lidos
.filter_ok(|value| {
// Se PONTOS for None, considera como 0 e mantém a linha
true // sempre mantém
})
.map_ok(|value| {
let pontos = value.PONTOS.unwrap_or(0) as u32;
Column::new(value.CATEGORIA.into(), [pontos])
})
.filter_map(|value| value.ok())
.collect_vec();
if columns.len() != 8 {
return None;

View File

@@ -315,24 +315,24 @@ fn main() {
}
}
}
//
//let mut deserialized_iter = reader.deserialize::<CsvHeader>();
// let mut columns = deserialized_iter
// .filter_ok(|value| value.PONTOS.is_some())
// .map_ok(|value| {
// let col =
// Column::new(value.CATEGORIA.into(), [value.PONTOS.unwrap() as u32]);
// col
// })
// .filter_map(|value| {
// if value.is_ok() {
// return Some(value.unwrap());
// }
// None
//})
//.collect_vec();
/*
let mut deserialized_iter = reader.deserialize::<CsvHeader>();
let mut columns = deserialized_iter
.filter_ok(|value| value.PONTOS.is_some())
.map_ok(|value| {
let col =
Column::new(value.CATEGORIA.into(), [value.PONTOS.unwrap() as u32]);
col
})
.filter_map(|value| {
if value.is_ok() {
return Some(value.unwrap());
}
None
})
.collect_vec();
*/
let mut columns = deserialized
.into_iter() // usa os registros já lidos
.filter_ok(|value| {
@@ -343,11 +343,13 @@ fn main() {
let pontos = value.PONTOS.unwrap_or(0) as u32;
Column::new(value.CATEGORIA.into(), [pontos])
})
//.filter_ok(|value| value.PONTOS.is_some())
//.map_ok(|value| {
//let pontos = value.PONTOS.unwrap() as u32;
//Column::new(value.CATEGORIA.into(), [pontos])
// })
/*
.filter_ok(|value| value.PONTOS.is_some())
.map_ok(|value| {
let pontos = value.PONTOS.unwrap() as u32;
Column::new(value.CATEGORIA.into(), [pontos])
})
*/
.filter_map(|value| value.ok())
.collect_vec();