lesscode-flask 0.1.74__tar.gz → 0.1.75__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/PKG-INFO +1 -1
  2. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/__init__.py +1 -1
  3. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/db/__init__.py +26 -0
  4. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/db/executor.py +10 -0
  5. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask.egg-info/PKG-INFO +1 -1
  6. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/query_runner/clickhouse.py +20 -3
  7. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/README.md +0 -0
  8. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/app.py +0 -0
  9. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/db/datasource.py +0 -0
  10. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/export_data/__init__.py +0 -0
  11. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/export_data/data_download_handler.py +0 -0
  12. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/log/access_log_handler.py +0 -0
  13. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/model/access_log.py +0 -0
  14. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/model/base_model.py +0 -0
  15. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/model/parameterized_query.py +0 -0
  16. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/model/resource_param_template.py +0 -0
  17. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/model/response_result.py +0 -0
  18. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/model/user.py +0 -0
  19. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/service/access_log_service.py +0 -0
  20. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/service/base_service.py +0 -0
  21. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/service/resource_param_template_service.py +0 -0
  22. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/setting/__init__.py +0 -0
  23. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/setup/__init__.py +0 -0
  24. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/signals.py +0 -0
  25. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/static/swagger.py +0 -0
  26. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/decorator/__init__.py +0 -0
  27. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/decorator/cache.py +0 -0
  28. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/decorator/swagger.py +0 -0
  29. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/dify_utils.py +0 -0
  30. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/file/file_exporter.py +0 -0
  31. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/file/file_utils.py +0 -0
  32. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/helpers.py +0 -0
  33. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/json/NotSortJSONProvider.py +0 -0
  34. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/oss/__init__.py +0 -0
  35. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/oss/ks3_oss.py +0 -0
  36. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/redis/redis_helper.py +0 -0
  37. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/request/request.py +0 -0
  38. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/swagger/swagger_template.py +0 -0
  39. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/swagger/swagger_util.py +0 -0
  40. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/task/__init__.py +0 -0
  41. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/task/task_helper.py +0 -0
  42. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/utils/thread/thread_utils.py +0 -0
  43. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask/wsgi.py +0 -0
  44. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask.egg-info/SOURCES.txt +0 -0
  45. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask.egg-info/dependency_links.txt +0 -0
  46. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask.egg-info/requires.txt +0 -0
  47. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/lesscode_flask.egg-info/top_level.txt +0 -0
  48. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/query_runner/__init__.py +0 -0
  49. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/query_runner/elasticsearch.py +0 -0
  50. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/query_runner/kingbase.py +0 -0
  51. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/query_runner/mysql.py +0 -0
  52. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/query_runner/pg.py +0 -0
  53. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/settings/__init__.py +0 -0
  54. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/settings/helpers.py +0 -0
  55. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/utils/__init__.py +0 -0
  56. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/redash/utils/requests_session.py +0 -0
  57. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/setup.cfg +0 -0
  58. {lesscode_flask-0.1.74 → lesscode-flask-0.1.75}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-flask
3
- Version: 0.1.74
3
+ Version: 0.1.75
4
4
  Summary: lesscode-flask 是基于flask的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
5
5
  Home-page: https://lesscode-flask
6
6
  Author: Chao.yy
@@ -1,4 +1,4 @@
1
- __version__ = '0.1.74'
1
+ __version__ = '0.1.75'
2
2
 
3
3
  import functools
4
4
  import logging
@@ -34,6 +34,32 @@ def execute_query(
34
34
  raise e
35
35
 
36
36
 
37
+ def execute(query_text, parameters, query_runner, should_apply_auto_limit=True):
38
+ """
39
+ 执行原生sql操作
40
+ :param query_text: 待执行语句
41
+ :param parameters: 查询参数数
42
+ :param query_runner: 查询执行器
43
+ :param should_apply_auto_limit:
44
+ :return:
45
+ """
46
+ try:
47
+ query = ParameterizedQuery(query_text)
48
+ if parameters is None:
49
+ parameters = {}
50
+ query.apply(parameters)
51
+ query_text = query.query
52
+ # query_text = query_runner.apply_auto_limit(query.text, should_apply_auto_limit)
53
+ logging.info("query_text:{}".format(query_text))
54
+ return QueryExecutor(
55
+ query_text,
56
+ query_runner
57
+ ).exec()
58
+ except Exception as e:
59
+ # models.db.session.rollback()
60
+ raise e
61
+
62
+
37
63
  # from flask_sqlalchemy import SQLAlchemy
38
64
  try:
39
65
  flask_sqlalchemy = import_module("flask_sqlalchemy")
@@ -45,6 +45,16 @@ class QueryExecutor:
45
45
  raise QueryExecutionError(error)
46
46
  return data
47
47
 
48
+ def exec(self):
49
+ self._log_progress("executing_query")
50
+
51
+ annotated_query = self._annotate_query(self.query_runner)
52
+
53
+ data, error = self.query_runner.exec(annotated_query, self.user)
54
+ if error:
55
+ raise QueryExecutionError(error)
56
+ return data
57
+
48
58
  #
49
59
  # logger.info(
50
60
  # "job=execute_query query_hash=%s ds_id=%d data_length=%s error=[%s]",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-flask
3
- Version: 0.1.74
3
+ Version: 0.1.75
4
4
  Summary: lesscode-flask 是基于flask的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
5
5
  Home-page: https://lesscode-flask
6
6
  Author: Chao.yy
@@ -122,10 +122,10 @@ class ClickHouse(BaseSQLQueryRunner):
122
122
  )
123
123
  if r.status_code != 200:
124
124
  raise Exception(r.text)
125
- # logging.warning(r.json())
126
- if r.text == "":
125
+ try:
126
+ return r.json()
127
+ except requests.exceptions.JSONDecodeError as e:
127
128
  return r.text
128
- return r.json()
129
129
  except requests.RequestException as e:
130
130
  if e.response:
131
131
  details = "({}, Status Code: {})".format(
@@ -219,5 +219,22 @@ class ClickHouse(BaseSQLQueryRunner):
219
219
  error = e
220
220
  return data, error
221
221
 
222
+ def exec(self, query, user):
223
+ logger.debug("Clickhouse is about to execute query: %s", query)
224
+ if query == "":
225
+ json_data = None
226
+ error = "Query is empty"
227
+ return json_data, error
228
+ try:
229
+
230
+ # data = json_dumps(q)
231
+ data = self._send_query(query)
232
+ error = None
233
+ except Exception as e:
234
+ data = None
235
+ logging.exception(e)
236
+ error = e
237
+ return data, error
238
+
222
239
 
223
240
  register(ClickHouse)