From 962db5f593ac9bec88e1456e30b4cf3bb666d0b8 Mon Sep 17 00:00:00 2001 From: Diego Medina Date: Mon, 11 Apr 2022 23:15:55 -0300 Subject: [PATCH] PR comment --- .../src/views/CRUD/data/query/QueryList.tsx | 15 ++++++++------- superset/queries/api.py | 3 ++- superset/queries/schemas.py | 18 ++++++++++++++++++ 3 files changed, 28 insertions(+), 8 deletions(-) diff --git a/superset-frontend/src/views/CRUD/data/query/QueryList.tsx b/superset-frontend/src/views/CRUD/data/query/QueryList.tsx index e368d94ce153..da590f729a2b 100644 --- a/superset-frontend/src/views/CRUD/data/query/QueryList.tsx +++ b/superset-frontend/src/views/CRUD/data/query/QueryList.tsx @@ -181,9 +181,12 @@ function QueryList({ addDangerToast, addSuccessToast }: QueryListProps) { accessor: QueryObjectColumns.start_time, Header: t('Time'), size: 'xl', - Cell: ({ row: { original } }: any) => { - const startTime = parseFloat(original.start_time); - const startMoment = moment.utc(startTime).local(); + Cell: ({ + row: { + original: { start_time, end_time }, + }, + }: any) => { + const startMoment = moment.utc(start_time).local(); const formattedStartTimeData = startMoment .format(DATETIME_WITH_TIME_ZONE) .split(' '); @@ -195,13 +198,11 @@ function QueryList({ addDangerToast, addSuccessToast }: QueryListProps) { ); - return original.end_time ? ( + return end_time ? ( diff --git a/superset/queries/api.py b/superset/queries/api.py index 611c69d4bd4c..460e2dd4667e 100644 --- a/superset/queries/api.py +++ b/superset/queries/api.py @@ -22,7 +22,7 @@ from superset.databases.filters import DatabaseFilter from superset.models.sql_lab import Query from superset.queries.filters import QueryFilter -from superset.queries.schemas import openapi_spec_methods_override +from superset.queries.schemas import openapi_spec_methods_override, QuerySchema from superset.views.base_api import BaseSupersetModelRestApi, RelatedFieldFilter from superset.views.filters import FilterRelatedOwners @@ -94,6 +94,7 @@ class QueryRestApi(BaseSupersetModelRestApi): ] base_filters = [["id", QueryFilter, lambda: []]] base_order = ("changed_on", "desc") + list_model_schema = QuerySchema() openapi_spec_tag = "Queries" openapi_spec_methods = openapi_spec_methods_override diff --git a/superset/queries/schemas.py b/superset/queries/schemas.py index daca322c6371..7dbe71d80864 100644 --- a/superset/queries/schemas.py +++ b/superset/queries/schemas.py @@ -14,6 +14,10 @@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. +from marshmallow import fields +from marshmallow_sqlalchemy import SQLAlchemyAutoSchema + +from superset.models.sql_lab import Query openapi_spec_methods_override = { "get": {"get": {"description": "Get query detail information."}}, @@ -25,3 +29,17 @@ } }, } + + +class QuerySchema(SQLAlchemyAutoSchema): + """ + Schema for the ``Query`` model. + """ + + start_time = fields.Float(attribute="start_time") + end_time = fields.Float(attribute="end_time") + + class Meta: # pylint: disable=too-few-public-methods + model = Query + load_instance = True + include_relationships = True