lesscode-flask 0.1.4__tar.gz → 0.1.6__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 (55) hide show
  1. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/PKG-INFO +1 -1
  2. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/__init__.py +1 -1
  3. lesscode-flask-0.1.6/lesscode_flask/utils/oss/__init__.py +92 -0
  4. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/swagger/swagger_util.py +1 -1
  5. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask.egg-info/PKG-INFO +1 -1
  6. lesscode_flask-0.1.4/lesscode_flask/utils/oss/__init__.py +0 -0
  7. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/README.md +0 -0
  8. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/app.py +0 -0
  9. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/db/__init__.py +0 -0
  10. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/db/datasource.py +0 -0
  11. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/db/executor.py +0 -0
  12. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/export_data/__init__.py +0 -0
  13. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/export_data/data_download_handler.py +0 -0
  14. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/log/access_log_handler.py +0 -0
  15. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/model/access_log.py +0 -0
  16. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/model/base_model.py +0 -0
  17. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/model/parameterized_query.py +0 -0
  18. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/model/resource_param_template.py +0 -0
  19. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/model/response_result.py +0 -0
  20. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/model/user.py +0 -0
  21. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/service/access_log_service.py +0 -0
  22. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/service/base_service.py +0 -0
  23. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/service/resource_param_template_service.py +0 -0
  24. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/setting/__init__.py +0 -0
  25. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/setup/__init__.py +0 -0
  26. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/static/swagger.py +0 -0
  27. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/__init__.py +0 -0
  28. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/decorator/__init__.py +0 -0
  29. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/decorator/cache.py +0 -0
  30. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/decorator/swagger.py +0 -0
  31. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/file/file_exporter.py +0 -0
  32. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/helpers.py +0 -0
  33. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/json/NotSortJSONProvider.py +0 -0
  34. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/oss/ks3_oss.py +0 -0
  35. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/redis/redis_helper.py +0 -0
  36. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/request/request.py +0 -0
  37. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/swagger/swagger_template.py +0 -0
  38. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/utils/thread/thread_utils.py +0 -0
  39. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask/wsgi.py +0 -0
  40. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask.egg-info/SOURCES.txt +0 -0
  41. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask.egg-info/dependency_links.txt +0 -0
  42. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask.egg-info/requires.txt +0 -0
  43. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/lesscode_flask.egg-info/top_level.txt +0 -0
  44. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/query_runner/__init__.py +0 -0
  45. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/query_runner/clickhouse.py +0 -0
  46. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/query_runner/elasticsearch.py +0 -0
  47. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/query_runner/kingbase.py +0 -0
  48. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/query_runner/mysql.py +0 -0
  49. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/query_runner/pg.py +0 -0
  50. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/settings/__init__.py +0 -0
  51. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/settings/helpers.py +0 -0
  52. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/utils/__init__.py +0 -0
  53. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/redash/utils/requests_session.py +0 -0
  54. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/setup.cfg +0 -0
  55. {lesscode_flask-0.1.4 → lesscode-flask-0.1.6}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-flask
3
- Version: 0.1.4
3
+ Version: 0.1.6
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.4'
1
+ __version__ = '0.1.6'
2
2
 
3
3
  import functools
4
4
  import logging
@@ -0,0 +1,92 @@
1
+ import os
2
+ from io import BytesIO
3
+
4
+ from lesscode_flask.utils.helpers import app_config
5
+ from lesscode_flask.utils.oss.ks3_oss import Ks3Oss
6
+
7
+
8
+ class CommonOss:
9
+ def __init__(self, storage_type, **kwargs):
10
+ self.storage_type = storage_type
11
+ self.storage_config = kwargs.get("storage_config", {}) if kwargs.get("storage_config", {}) else app_config.get(
12
+ "STORAGE_CONFIG", {})
13
+
14
+ def upload(self, **kwargs):
15
+ file_url_list = []
16
+ files = kwargs.get("files", [])
17
+ if not files:
18
+ raise Exception("files is empty")
19
+ if self.storage_type == "ks3":
20
+ storage_config = self.storage_config or dict()
21
+ ks3 = Ks3Oss(**storage_config)
22
+ for f in files:
23
+ if not isinstance(f, dict):
24
+ file_name = f.filename
25
+ stream = f.stream.read()
26
+ file_stream = BytesIO(stream)
27
+ content = file_stream.getvalue().decode('utf-8')
28
+ url = ks3.save(key=file_name, content=content, content_type="string", policy="public-read")
29
+ file_url_list.append({"key": file_name, "url": url})
30
+ else:
31
+ key = f.get("key", "")
32
+ _steam = f.get("stream")
33
+ stream = _steam.stream.read()
34
+ file_stream = BytesIO(stream)
35
+ content = file_stream.getvalue().decode('utf-8')
36
+ url = ks3.save(key=key, content=content, content_type="string", policy="public-read")
37
+ file_url_list.append({"key": key, "url": url})
38
+ elif self.storage_type == "file":
39
+ storage_dir = kwargs.get("storage_dir", "")
40
+ if not storage_dir:
41
+ storage_dir = app_config.get("STORAGE_DIR")
42
+ if not storage_dir:
43
+ raise Exception("storage_dir is empty")
44
+
45
+ for f in files:
46
+ if not isinstance(f, dict):
47
+ file_name = f.filename
48
+ stream = f.stream.read()
49
+ file_stream = BytesIO(stream)
50
+ file_path = os.path.join(storage_dir, file_name)
51
+ with open(file_path, 'wb') as outfile:
52
+ outfile.write(file_stream.getvalue())
53
+ file_url_list.append({"key": file_name, "url": file_path})
54
+ else:
55
+ key = f.get("key", "")
56
+ _steam = f.get("stream")
57
+ stream = _steam.stream.read()
58
+ file_stream = BytesIO(stream)
59
+ key_list = []
60
+ if "\\" in key:
61
+ key_list = key.split("\\")
62
+ if "/" in key:
63
+ key_list = key.split("/")
64
+ file_path = storage_dir
65
+ if key_list:
66
+ for k in key_list:
67
+ file_path = os.path.join(file_path, k)
68
+ with open(file_path, 'wb') as outfile:
69
+ outfile.write(file_stream.getvalue())
70
+ file_url_list.append({"key": key, "url": file_path})
71
+ return file_url_list
72
+
73
+ def download(self, key, **kwargs):
74
+ if self.storage_type == "ks3":
75
+ storage_config = self.storage_config or dict()
76
+ ks3 = Ks3Oss(**storage_config)
77
+ return ks3.get_file(key)
78
+ if self.storage_type == "file":
79
+ storage_dir = kwargs.get("storage_dir", "")
80
+ if not storage_dir:
81
+ storage_dir = app_config.get("STORAGE_DIR")
82
+ key_list = []
83
+ if "\\" in key:
84
+ key_list = key.split("\\")
85
+ if "/" in key:
86
+ key_list = key.split("/")
87
+ file_path = storage_dir
88
+ if key_list:
89
+ for k in key_list:
90
+ file_path = os.path.join(file_path, k)
91
+ with open(file_path, 'rb') as f:
92
+ return f.read()
@@ -97,7 +97,7 @@ def replace_symbol(path):
97
97
  return path[::-1]
98
98
 
99
99
 
100
- def get_sample_data(type, param, param_template_dict):
100
+ def get_sample_data(type, param=None, param_template_dict=None):
101
101
  if param_template_dict and param_template_dict.get(param.name):
102
102
  return param_template_dict.get(param.name, {}).get("param_sample")
103
103
  elif type == "dict":
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lesscode-flask
3
- Version: 0.1.4
3
+ Version: 0.1.6
4
4
  Summary: lesscode-flask 是基于flask的web开发脚手架项目,该项目初衷为简化开发过程,让研发人员更加关注业务。
5
5
  Home-page: https://lesscode-flask
6
6
  Author: Chao.yy
File without changes
File without changes
File without changes
File without changes