summaryrefslogtreecommitdiffstats
path: root/rust/src
diff options
context:
space:
mode:
authorBryan Newbold <bnewbold@robocracy.org>2019-05-14 18:43:07 -0700
committerBryan Newbold <bnewbold@robocracy.org>2019-05-14 18:43:07 -0700
commit8a130e1000a2b49cbfb571ae0b74f0ec8577e9fe (patch)
tree197618e5b1f03bb292d5b32321d52932f72306c4 /rust/src
parent534cd7b3fa0a4cb0c19da05f740942b93e8b3659 (diff)
downloadfatcat-8a130e1000a2b49cbfb571ae0b74f0ec8577e9fe.tar.gz
fatcat-8a130e1000a2b49cbfb571ae0b74f0ec8577e9fe.zip
codegen and rust impl created timestamp
Diffstat (limited to 'rust/src')
-rw-r--r--rust/src/database_models.rs7
-rw-r--r--rust/src/endpoint_handlers.rs4
-rw-r--r--rust/src/entity_crud.rs17
3 files changed, 18 insertions, 10 deletions
diff --git a/rust/src/database_models.rs b/rust/src/database_models.rs
index 34ce1de6..79b0137b 100644
--- a/rust/src/database_models.rs
+++ b/rust/src/database_models.rs
@@ -662,12 +662,17 @@ pub struct EditgroupRow {
impl EditgroupRow {
/// Returns an Editgroup API model *without* the entity edits actually populated. Useful for,
/// eg, entity history queries (where we already have the entity edit we want)
- pub fn into_model_partial(self, changelog_index: Option<i64>, editor: Option<Editor>) -> Editgroup {
+ pub fn into_model_partial(
+ self,
+ changelog_index: Option<i64>,
+ editor: Option<Editor>,
+ ) -> Editgroup {
Editgroup {
editgroup_id: Some(uuid2fcid(&self.id)),
editor_id: Some(uuid2fcid(&self.editor_id)),
editor: editor,
changelog_index: changelog_index,
+ created: Some(chrono::DateTime::from_utc(self.created, chrono::Utc)),
submitted: self
.submitted
.map(|v| chrono::DateTime::from_utc(v, chrono::Utc)),
diff --git a/rust/src/endpoint_handlers.rs b/rust/src/endpoint_handlers.rs
index ba8505e1..5c22e21d 100644
--- a/rust/src/endpoint_handlers.rs
+++ b/rust/src/endpoint_handlers.rs
@@ -558,7 +558,9 @@ impl Server {
.into_iter()
.map(|(eg_row, cl_row, editor_row)| ChangelogEntry {
index: cl_row.id,
- editgroup: Some(eg_row.into_model_partial(Some(cl_row.id), Some(editor_row.into_model()))),
+ editgroup: Some(
+ eg_row.into_model_partial(Some(cl_row.id), Some(editor_row.into_model())),
+ ),
editgroup_id: uuid2fcid(&cl_row.editgroup_id),
timestamp: chrono::DateTime::from_utc(cl_row.timestamp, chrono::Utc),
})
diff --git a/rust/src/entity_crud.rs b/rust/src/entity_crud.rs
index 269bfdf6..b72ccd37 100644
--- a/rust/src/entity_crud.rs
+++ b/rust/src/entity_crud.rs
@@ -538,14 +538,15 @@ macro_rules! generic_db_get_history {
) -> Result<Vec<EntityHistoryEntry>> {
let limit = limit.unwrap_or(50); // TODO: make a static
- let rows: Vec<(EditgroupRow, ChangelogRow, Self::EditRow, EditorRow)> = editgroup::table
- .inner_join(changelog::table)
- .inner_join($edit_table::table)
- .inner_join(editor::table)
- .filter($edit_table::ident_id.eq(ident.to_uuid()))
- .order(changelog::id.desc())
- .limit(limit)
- .get_results(conn)?;
+ let rows: Vec<(EditgroupRow, ChangelogRow, Self::EditRow, EditorRow)> =
+ editgroup::table
+ .inner_join(changelog::table)
+ .inner_join($edit_table::table)
+ .inner_join(editor::table)
+ .filter($edit_table::ident_id.eq(ident.to_uuid()))
+ .order(changelog::id.desc())
+ .limit(limit)
+ .get_results(conn)?;
let history: Result<Vec<EntityHistoryEntry>> = rows
.into_iter()