mirror of
https://github.com/csunny/DB-GPT.git
synced 2025-08-08 03:44:14 +00:00
fix: dashboard editor run error (#1380)
This commit is contained in:
parent
f2a6284c0e
commit
d4da50330f
@ -24,6 +24,7 @@ from dbgpt.app.openapi.editor_view_model import (
|
|||||||
from dbgpt.app.scene import ChatFactory
|
from dbgpt.app.scene import ChatFactory
|
||||||
from dbgpt.app.scene.chat_dashboard.data_loader import DashboardDataLoader
|
from dbgpt.app.scene.chat_dashboard.data_loader import DashboardDataLoader
|
||||||
from dbgpt.serve.conversation.serve import Serve as ConversationServe
|
from dbgpt.serve.conversation.serve import Serve as ConversationServe
|
||||||
|
from dbgpt.util.date_utils import convert_datetime_in_row
|
||||||
|
|
||||||
from ._chat_history.chat_hisotry_factory import ChatHistory
|
from ._chat_history.chat_hisotry_factory import ChatHistory
|
||||||
|
|
||||||
@ -173,9 +174,8 @@ async def editor_chart_run(run_param: dict = Body()):
|
|||||||
field_names, chart_values = dashboard_data_loader.get_chart_values_by_data(
|
field_names, chart_values = dashboard_data_loader.get_chart_values_by_data(
|
||||||
colunms, sql_result, sql
|
colunms, sql_result, sql
|
||||||
)
|
)
|
||||||
|
|
||||||
start_time = time.time() * 1000
|
start_time = time.time() * 1000
|
||||||
# 计算执行耗时
|
sql_result = [convert_datetime_in_row(row) for row in sql_result]
|
||||||
end_time = time.time() * 1000
|
end_time = time.time() * 1000
|
||||||
sql_run_data: SqlRunData = SqlRunData(
|
sql_run_data: SqlRunData = SqlRunData(
|
||||||
result_info="",
|
result_info="",
|
||||||
|
@ -40,16 +40,16 @@ class DashboardDataLoader:
|
|||||||
)
|
)
|
||||||
|
|
||||||
for field_name in field_names[1:]:
|
for field_name in field_names[1:]:
|
||||||
if not field_map[field_name]:
|
# if not field_map[field_name]:
|
||||||
logger.info("More than 2 non-numeric column:" + field_name)
|
# logger.info("More than 2 non-numeric column:" + field_name)
|
||||||
else:
|
# else:
|
||||||
for data in datas:
|
for data in datas:
|
||||||
value_item = ValueItem(
|
value_item = ValueItem(
|
||||||
name=data[0],
|
name=data[0],
|
||||||
type=field_name,
|
type=field_name,
|
||||||
value=data[field_names.index(field_name)],
|
value=str(data[field_names.index(field_name)]),
|
||||||
)
|
)
|
||||||
values.append(value_item)
|
values.append(value_item)
|
||||||
return field_names, values
|
return field_names, values
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.debug("Prepare Chart Data Failed!" + str(e))
|
logger.debug("Prepare Chart Data Failed!" + str(e))
|
||||||
|
11
dbgpt/util/date_utils.py
Normal file
11
dbgpt/util/date_utils.py
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
import datetime
|
||||||
|
|
||||||
|
|
||||||
|
def is_datetime(value):
|
||||||
|
return isinstance(value, datetime.datetime)
|
||||||
|
|
||||||
|
|
||||||
|
def convert_datetime_in_row(row):
|
||||||
|
return [value.strftime('%Y-%m-%d %H:%M:%S') if is_datetime(value)
|
||||||
|
else value for value in row]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user