Skip to content

Commit 708d33a

Browse files
author
Stefano Malagò
committed
Fix issue with time left
1 parent 5ae875e commit 708d33a

File tree

3 files changed

+20
-15
lines changed

3 files changed

+20
-15
lines changed

frontend/src/interfaces/Dataset.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
export interface Dataset {
22
"name": string,
3-
"creation_data": Date,
3+
"creation_data": string,
44
"dataset_id": string,
55
"questions": [Question]
66
}
77

88
export interface DatasetDesc {
99
"name": string,
10-
"creation_data": Date,
10+
"creation_data": string,
1111
"dataset_id": string,
1212
"nr_questions": number,
1313
"clusters_computed": number

frontend/src/pages/tagging/DatasetSelection.tsx

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -59,16 +59,20 @@ function DatasetSelection() {
5959
<TableBody>
6060
{datasets.map((dataset: DatasetDesc) => {
6161
const loading_cluster = dataset.clusters_computed != dataset.nr_questions
62-
// const needed_time_s = 1000 * 60 * 2 * dataset.nr_questions
63-
// const started = new Date(dataset.creation_data)
64-
// const now = new Date()
65-
//
66-
// const time_left = needed_time_s - (now.getTime() - started.getTime()) - now.getTimezoneOffset() * 1000 * 60
67-
//
68-
// const time_left_minutes = Math.floor(time_left / (60 * 1000))
69-
// const seconds = Math.floor((time_left - time_left_minutes * (60 * 1000)) / (1000))
70-
//
71-
// const time_left_seconds = seconds < 10 ? '0' + seconds : seconds
62+
const needed_time_s = 1000 * 60 * 2 * dataset.nr_questions
63+
const started = new Date(dataset.creation_data)
64+
const now = new Date()
65+
66+
const time_left = needed_time_s - (now.getTime() - started.getTime())
67+
68+
const time_left_minutes = Math.max(Math.floor(time_left / (60 * 1000)), 0)
69+
const seconds = Math.floor((time_left - time_left_minutes * (60 * 1000)) / (1000))
70+
71+
const time_left_seconds = seconds < 10 ? '0' + seconds : seconds
72+
73+
const displayed_time = time_left_minutes < 1 ?
74+
'<1m' :
75+
`~${time_left_minutes}:${time_left_seconds}`
7276

7377
if (dataset.clusters_computed != dataset.nr_questions) {
7478
return (
@@ -83,7 +87,8 @@ function DatasetSelection() {
8387
/>
8488
</StyledTableCell>
8589
<StyledTableCell component={'th'} scope={'row'} style={{textAlign: 'end'}}>
86-
{`${dataset.clusters_computed}/${dataset.nr_questions}`}
90+
{`${dataset.clusters_computed}/${dataset.nr_questions} Time Left: ${
91+
displayed_time}`}
8792
</StyledTableCell>
8893
</StyledTableRow>
8994
)

tagging-service/flaskr/endpoints/upload_api.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
DATASET_DESC = api.model('Dataset Description', {
1717
'dataset_id': fields.String(required=True, readonly=True, description='ID of the dataset'),
1818
'name': fields.String(required=True, readonly=True, description='The name of the dataset'),
19-
'creation_data': fields.Date(required=True, readonly=True, description='The Date of the dataset creation'),
19+
'creation_data': fields.DateTime(required=True, readonly=True, description='The Date of the dataset creation'),
2020
'clusters_computed': fields.Integer(required=True, readonly=True, description='Number of computed clusters'),
2121
'nr_questions': fields.Integer(required=True, readonly=True, description='Number of questions in dataset')
2222
})
@@ -35,7 +35,7 @@
3535

3636
DATASET = api.model('Dataset', {
3737
"name": fields.String(required=True, readonly=True, description='Name of dataset'),
38-
"creation_data": fields.Date(required=True, readonly=True, description='The Date of the Dataset creation'),
38+
"creation_data": fields.DateTime(required=True, readonly=True, description='The Date of the Dataset creation'),
3939
"dataset_id": fields.String(required=True, readonly=True, description='ID of the Dataset'),
4040
"questions": fields.List(fields.Nested(QUESTION))
4141
})

0 commit comments

Comments
 (0)