arpakitlib 1.7.200__py3-none-any.whl → 1.7.202__py3-none-any.whl

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.
@@ -0,0 +1,17 @@
1
+ # arpakit
2
+
3
+
4
+ _ARPAKIT_LIB_MODULE_VERSION = "3.0"
5
+
6
+
7
+ class CollectingSubclassesMeta(type):
8
+ """
9
+ Метакласс для автоматического сбора всех наследников в поле ALL_SUBCLASSES.
10
+ """
11
+
12
+ def __init__(cls, name, bases, dct):
13
+ super().__init__(name, bases, dct)
14
+ if not hasattr(cls, "all_subclasses"):
15
+ cls.all_subclasses = []
16
+ elif bases:
17
+ cls.all_subclasses.append(cls)
@@ -0,0 +1,91 @@
1
+ # arpakit
2
+ from sqladmin import ModelView
3
+ from sqladmin.models import ModelViewMeta
4
+
5
+ from arpakitlib.ar_class_util import CollectingSubclassesMeta
6
+ from arpakitlib.ar_sqlalchemy_model_util import OperationDBM, StoryLogDBM
7
+
8
+ _ARPAKIT_LIB_MODULE_VERSION = "3.0"
9
+
10
+
11
+ def create_combined_meta(*metas):
12
+ """
13
+ Создает объединённый метакласс для устранения конфликтов.
14
+ """
15
+
16
+ class CombinedMeta(*metas):
17
+ pass
18
+
19
+ return CombinedMeta
20
+
21
+
22
+ class BaseModelView(ModelView, metaclass=create_combined_meta(CollectingSubclassesMeta, ModelViewMeta)):
23
+ can_create = True
24
+ can_edit = True
25
+ can_delete = True
26
+ can_view_details = True
27
+ can_export = True
28
+ page_size = 50
29
+ page_size_options = [25, 50, 100, 200]
30
+ save_as = True
31
+ save_as_continue = True
32
+ export_types = ["xlsx", "csv", "json"]
33
+
34
+
35
+ class OperationMV(BaseModelView, model=OperationDBM):
36
+ name = "Operation"
37
+ name_plural = "Operations"
38
+ column_list = [
39
+ OperationDBM.id,
40
+ OperationDBM.long_id,
41
+ OperationDBM.creation_dt,
42
+ OperationDBM.status,
43
+ OperationDBM.type,
44
+ OperationDBM.execution_start_dt,
45
+ OperationDBM.execution_finish_dt,
46
+ OperationDBM.input_data,
47
+ OperationDBM.output_data,
48
+ OperationDBM.error_data
49
+ ]
50
+ form_columns = [
51
+ OperationDBM.status,
52
+ OperationDBM.type,
53
+ OperationDBM.execution_start_dt,
54
+ OperationDBM.execution_finish_dt,
55
+ OperationDBM.input_data,
56
+ OperationDBM.output_data,
57
+ OperationDBM.error_data
58
+ ]
59
+ column_default_sort = [(OperationDBM.creation_dt, True)]
60
+ column_searchable_list = [
61
+ OperationDBM.id,
62
+ OperationDBM.long_id,
63
+ OperationDBM.status,
64
+ OperationDBM.type,
65
+ ]
66
+
67
+
68
+ class StoryLogMV(BaseModelView, model=StoryLogDBM):
69
+ name = "Operation"
70
+ name_plural = "Operations"
71
+ column_list = [
72
+ StoryLogDBM.id,
73
+ StoryLogDBM.long_id,
74
+ StoryLogDBM.creation_dt,
75
+ StoryLogDBM.level,
76
+ StoryLogDBM.title,
77
+ StoryLogDBM.data
78
+ ]
79
+ form_columns = [
80
+ StoryLogDBM.level,
81
+ StoryLogDBM.title,
82
+ StoryLogDBM.data
83
+ ]
84
+ column_default_sort = [(StoryLogDBM.creation_dt, True)]
85
+ column_searchable_list = [
86
+ StoryLogDBM.id,
87
+ StoryLogDBM.long_id,
88
+ StoryLogDBM.level,
89
+ StoryLogDBM.title,
90
+ StoryLogDBM.data
91
+ ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: arpakitlib
3
- Version: 1.7.200
3
+ Version: 1.7.202
4
4
  Summary: arpakitlib
5
5
  License: Apache-2.0
6
6
  Keywords: arpakitlib,arpakit,arpakit-company,arpakitcompany,arpakit_company
@@ -125,6 +125,7 @@ arpakitlib/ar_arpakitlib_cli_util.py,sha256=8lhEDxnwMSRX2PGV2xQtQru1AYKSA92SVolo
125
125
  arpakitlib/ar_base64_util.py,sha256=aZkg2cZTuAaP2IWeG_LXJ6RO7qhyskVwec-Lks0iM-k,676
126
126
  arpakitlib/ar_base_worker_util.py,sha256=Qm_C7PFH5W-LPu1AGX1zp29zbqZ04i71Su1U-eeQBkA,5674
127
127
  arpakitlib/ar_cache_file_util.py,sha256=Fo2pH-Zqm966KWFBHG_pbiySGZvhIFCYqy7k1weRfJ0,3476
128
+ arpakitlib/ar_class_util.py,sha256=bCCDbyNwavCrTC77jOtS1IWAHNo4kdr4afq2knJExHU,467
128
129
  arpakitlib/ar_datetime_util.py,sha256=Xe1NiT9oPQzNSG7RVRkhukhbg4i-hhS5ImmV7sPUc8o,971
129
130
  arpakitlib/ar_dict_util.py,sha256=cF5LQJ6tLqyGoEXfDljMDZrikeZoWPw7CgINHIFGvXM,419
130
131
  arpakitlib/ar_dream_ai_api_client_util.py,sha256=QF9XK7xK5ny1fvkcG4e0pfCySNNFRNPy0x0cmxfsAak,2818
@@ -174,6 +175,7 @@ arpakitlib/ar_run_cmd_util.py,sha256=D_rPavKMmWkQtwvZFz-Io5Ak8eSODHkcFeLPzNVC68g
174
175
  arpakitlib/ar_schedule_uust_api_client_util.py,sha256=0Ns0mMEXYEkVmP6YTAXHyNcrhNsvCJ8X-G_5XwILhJ4,6855
175
176
  arpakitlib/ar_settings_util.py,sha256=752EDXXnrA1uUbSD4InCHCZWEodLBwVUHrgOdOD2Xhw,1856
176
177
  arpakitlib/ar_sleep_util.py,sha256=OaLtRaJQWMkGjfj_mW1RB2P4RaSWsAIH8LUoXqsH0zM,1061
178
+ arpakitlib/ar_sqladmin_util.py,sha256=vxDyLzh5OSB9IS43G2uDX8TboimH56xLXPjZ8TWZySE,2437
177
179
  arpakitlib/ar_sqlalchemy_model_util.py,sha256=nKJGN32eg3Gn5kmJwHdVJznPT5TydLsfUfwJGdypdUo,6264
178
180
  arpakitlib/ar_sqlalchemy_util.py,sha256=Hcg1THrDsSR_-8dsY1CG3NWPEv0FqCbkPXFXLtjlSJ0,4207
179
181
  arpakitlib/ar_ssh_runner_util.py,sha256=e9deuUdBW7Eh0Exx2nTBhk57SaOZYaJaSjNk8q6dbJk,6804
@@ -181,8 +183,8 @@ arpakitlib/ar_str_util.py,sha256=yU5gOwNXUQaH5b_tM5t6fXUn9oUcv5EQbVnq2wXXIpQ,337
181
183
  arpakitlib/ar_type_util.py,sha256=9C3ErtUVs0tAUqtK-foFzjJOykfBOntfCz2IogDOgfA,4134
182
184
  arpakitlib/ar_yookassa_api_client_util.py,sha256=sh4fcUkAkdOetFn9JYoTvjcSXP-M1wU04KEY-ECLfLg,5137
183
185
  arpakitlib/ar_zabbix_api_client_util.py,sha256=Q-VR4MvoZ9aHwZeYZr9G3LwN-ANx1T5KFmF6pvPM-9M,6402
184
- arpakitlib-1.7.200.dist-info/LICENSE,sha256=GPEDQMam2r7FSTYqM1mm7aKnxLaWcBotH7UvQtea-ec,11355
185
- arpakitlib-1.7.200.dist-info/METADATA,sha256=6scFmKTpR8wyqe7lQiq6-4qFkbfPDYxuh3ZSFFKGacA,3176
186
- arpakitlib-1.7.200.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
187
- arpakitlib-1.7.200.dist-info/entry_points.txt,sha256=36xqR3PJFT2kuwjkM_EqoIy0qFUDPKSm_mJaI7emewE,87
188
- arpakitlib-1.7.200.dist-info/RECORD,,
186
+ arpakitlib-1.7.202.dist-info/LICENSE,sha256=GPEDQMam2r7FSTYqM1mm7aKnxLaWcBotH7UvQtea-ec,11355
187
+ arpakitlib-1.7.202.dist-info/METADATA,sha256=r3JyjI0J__m4LV37sj2FbJtnyEFBE2-ooT-VXkldTW8,3176
188
+ arpakitlib-1.7.202.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
189
+ arpakitlib-1.7.202.dist-info/entry_points.txt,sha256=36xqR3PJFT2kuwjkM_EqoIy0qFUDPKSm_mJaI7emewE,87
190
+ arpakitlib-1.7.202.dist-info/RECORD,,