valar 1.3.7__tar.gz → 1.3.9__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.
Potentially problematic release.
This version of valar might be problematic. Click here for more details.
- {valar-1.3.7/src/valar.egg-info → valar-1.3.9}/PKG-INFO +1 -1
- {valar-1.3.7 → valar-1.3.9}/setup.py +1 -1
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/__init__.py +3 -3
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/abstract.py +1 -1
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/engine.py +3 -3
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/frame.py +1 -1
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/mon_dao.py +1 -1
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/orm_dao.py +6 -2
- valar-1.3.9/src/valar/models/__init__.py +1 -0
- valar-1.3.9/src/valar/models/indicator.py +39 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/views/rest.py +1 -1
- {valar-1.3.7 → valar-1.3.9/src/valar.egg-info}/PKG-INFO +1 -1
- {valar-1.3.7 → valar-1.3.9}/src/valar.egg-info/SOURCES.txt +1 -0
- valar-1.3.7/src/valar/models/__init__.py +0 -1
- {valar-1.3.7 → valar-1.3.9}/LICENSE +0 -0
- {valar-1.3.7 → valar-1.3.9}/README.md +0 -0
- {valar-1.3.7 → valar-1.3.9}/setup.cfg +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/apps.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/auth/Authentication.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/auth/Middleware.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/auth/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/channels/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/channels/consumer.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/channels/counter.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/channels/executer.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/channels/mapping.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/channels/sender.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/channels/views.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/classes/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/classes/app_mixins/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/classes/app_mixins/auto_migration_mixin.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/classes/app_mixins/auto_urlpatterns_mixin.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/classes/singleton_meta.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/classes/valar_minio.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/classes/valar_response.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/defaults/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/defaults/field_keys_default.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/defaults/field_values_default.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/defaults/view_defaults.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/meta.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/mon_field.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/orm_field.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/dao/query.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/migrations/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/models/auth.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/models/core.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/models/frame.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/models/meta.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/models/test.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/urls.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/views/__init__.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/views/auth.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/views/file.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/views/handler.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/views/meta.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar/views/password.py +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar.egg-info/dependency_links.txt +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar.egg-info/requires.txt +0 -0
- {valar-1.3.7 → valar-1.3.9}/src/valar.egg-info/top_level.txt +0 -0
|
@@ -15,10 +15,10 @@ class Dao(AbstractDao):
|
|
|
15
15
|
self.manager = self.dao.manager
|
|
16
16
|
|
|
17
17
|
def save_many(self, array: list):
|
|
18
|
-
self.dao.save_many(array)
|
|
18
|
+
return self.dao.save_many(array)
|
|
19
19
|
|
|
20
|
-
def save_one(self, item
|
|
21
|
-
return self.dao.save_one(item
|
|
20
|
+
def save_one(self, item):
|
|
21
|
+
return self.dao.save_one(item)
|
|
22
22
|
|
|
23
23
|
def delete_one(self, _id):
|
|
24
24
|
return self.dao.delete_one(_id)
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import pymongo
|
|
2
1
|
from django.apps import apps
|
|
3
2
|
from django.conf import settings
|
|
4
3
|
from urllib.parse import urlparse
|
|
5
4
|
|
|
6
5
|
from django.core.mail import EmailMessage
|
|
7
6
|
from minio import Minio
|
|
7
|
+
from pymongo import MongoClient
|
|
8
8
|
from pymongo.synchronous.collection import Collection
|
|
9
9
|
|
|
10
10
|
from ..classes.singleton_meta import SingletonMeta
|
|
@@ -26,7 +26,7 @@ class ValarEngine(metaclass=SingletonMeta):
|
|
|
26
26
|
|
|
27
27
|
# mon
|
|
28
28
|
if hasattr(settings, 'MONGO_URI'):
|
|
29
|
-
self.mongo_client =
|
|
29
|
+
self.mongo_client: MongoClient = MongoClient(
|
|
30
30
|
settings.MONGO_URI,
|
|
31
31
|
**{
|
|
32
32
|
'maxPoolSize': 10,
|
|
@@ -39,7 +39,7 @@ class ValarEngine(metaclass=SingletonMeta):
|
|
|
39
39
|
)
|
|
40
40
|
self.mongo_engine = self.mongo_client[settings.BASE_APP]
|
|
41
41
|
else:
|
|
42
|
-
self.mongo_client = None
|
|
42
|
+
self.mongo_client: MongoClient = None
|
|
43
43
|
self.mongo_engine = None
|
|
44
44
|
|
|
45
45
|
# minio
|
|
@@ -20,7 +20,7 @@ class MetaFrame(metaclass=SingletonMeta):
|
|
|
20
20
|
item.update({"saved": True})
|
|
21
21
|
if item['isLeaf']:
|
|
22
22
|
mapping[code] = _id
|
|
23
|
-
tool_dao.save_one(item
|
|
23
|
+
tool_dao.save_one(item)
|
|
24
24
|
for row in meta_field_domain:
|
|
25
25
|
row = copy.deepcopy(row)
|
|
26
26
|
default_id, tools = row['default_id'], row['tools']
|
|
@@ -57,7 +57,7 @@ class MonDao(AbstractDao):
|
|
|
57
57
|
def values(self, conditions, props):
|
|
58
58
|
return None
|
|
59
59
|
|
|
60
|
-
def save_one(self, item
|
|
60
|
+
def save_one(self, item):
|
|
61
61
|
oid, item = self.__detach_item__(item)
|
|
62
62
|
if oid:
|
|
63
63
|
self.manager.update_one({'_id': oid}, {'$set': item})
|
|
@@ -38,7 +38,11 @@ class OrmDao(AbstractDao):
|
|
|
38
38
|
self.fields = fields
|
|
39
39
|
|
|
40
40
|
def save_many(self, array: list):
|
|
41
|
-
|
|
41
|
+
results = []
|
|
42
|
+
for item in array:
|
|
43
|
+
item.update({'saved': True})
|
|
44
|
+
results.append(self.save_one(item))
|
|
45
|
+
return results
|
|
42
46
|
|
|
43
47
|
def values(self, conditions, props: list):
|
|
44
48
|
query_set, _ = self.find(conditions)
|
|
@@ -46,7 +50,7 @@ class OrmDao(AbstractDao):
|
|
|
46
50
|
props.append('id')
|
|
47
51
|
return list(query_set.values(*props))
|
|
48
52
|
|
|
49
|
-
def save_one(self, item
|
|
53
|
+
def save_one(self, item):
|
|
50
54
|
oid, simple_item, complex_item = self.__detach_item__(item)
|
|
51
55
|
query_set = self.manager.filter(id=oid) if oid else []
|
|
52
56
|
if len(query_set):
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
from . import core, frame, meta, auth, test, indicator
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
from ..models.core import VTree, VModel
|
|
2
|
+
from django.db import models
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class IndicatorSet(VTree):
|
|
6
|
+
name = models.CharField(max_length=100, null=True)
|
|
7
|
+
|
|
8
|
+
class Meta:
|
|
9
|
+
verbose_name = '指标集'
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class Indicator(VModel):
|
|
13
|
+
set = models.ForeignKey(IndicatorSet, null=True, on_delete=models.CASCADE, verbose_name='指标集')
|
|
14
|
+
domain = models.CharField(max_length=100, verbose_name='domain', null=True)
|
|
15
|
+
category = models.CharField(max_length=100, verbose_name='category', null=True)
|
|
16
|
+
name = models.CharField(max_length=100, verbose_name='名称', null=True)
|
|
17
|
+
frequency = models.CharField(max_length=100, verbose_name='频度', null=True)
|
|
18
|
+
unit = models.CharField(max_length=100, verbose_name='单位', null=True)
|
|
19
|
+
scope = models.CharField(max_length=100, verbose_name='尺度', null=True)
|
|
20
|
+
object_id = models.CharField(max_length=100, verbose_name='ObjectId', null=True)
|
|
21
|
+
file = models.FileField(null=True, verbose_name='数据文件')
|
|
22
|
+
|
|
23
|
+
class Meta:
|
|
24
|
+
verbose_name = '指标项'
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
class IndicatorLocation(VModel):
|
|
28
|
+
set = models.ForeignKey(IndicatorSet, null=True, on_delete=models.CASCADE, verbose_name='指标集')
|
|
29
|
+
domain = models.CharField(max_length=100, verbose_name='domain', null=True)
|
|
30
|
+
category = models.CharField(max_length=100, verbose_name='category', null=True)
|
|
31
|
+
name = models.CharField(max_length=100, verbose_name='名称', null=True)
|
|
32
|
+
frequency = models.CharField(max_length=100, verbose_name='频度', null=True)
|
|
33
|
+
unit = models.CharField(max_length=100, verbose_name='单位', null=True)
|
|
34
|
+
scope = models.CharField(max_length=100, verbose_name='尺度', null=True)
|
|
35
|
+
object_id = models.CharField(max_length=100, verbose_name='ObjectId', null=True)
|
|
36
|
+
file = models.FileField(null=True, verbose_name='数据文件')
|
|
37
|
+
|
|
38
|
+
class Meta:
|
|
39
|
+
verbose_name = '指标项'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
from . import core, frame, meta, auth, test
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|