Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
solvers-acuk-m
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Takhir Fakhrutdinov
solvers-acuk-m
Commits
64daeb01
Commit
64daeb01
authored
Oct 14, 2022
by
Takhir Fakhrutdinov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Отладка allskay
parent
02bd1f21
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
101 additions
and
1 deletion
+101
-1
allsky.1.json
fte/lib/libpy/data/allsky.1.json
+13
-0
fileFactory.py
fte/lib/libpy/fileFactory.py
+37
-0
meteoFile.py
fte/lib/libpy/meteoFile.py
+51
-1
No files found.
fte/lib/libpy/data/allsky.1.json
0 → 100644
View file @
64daeb01
This source diff could not be displayed because it is too large. You can
view the blob
instead.
fte/lib/libpy/fileFactory.py
View file @
64daeb01
...
@@ -170,6 +170,10 @@ def _create_allskyFile():
...
@@ -170,6 +170,10 @@ def _create_allskyFile():
from
.meteoFile
import
allskyFile
from
.meteoFile
import
allskyFile
return
allskyFile
return
allskyFile
def
_create_allsky_hcFile
():
from
.meteoFile
import
allsky_hcFile
return
allsky_hcFile
def
_create_reqFile
():
def
_create_reqFile
():
from
.reqFile
import
reqFile
from
.reqFile
import
reqFile
return
reqFile
return
reqFile
...
@@ -534,3 +538,36 @@ allsky = {
...
@@ -534,3 +538,36 @@ allsky = {
}
}
}
}
factory
.
register_file
(
'ASKY'
,
_create_allskyFile
,
schema
=
allsky
)
factory
.
register_file
(
'ASKY'
,
_create_allskyFile
,
schema
=
allsky
)
allksy_hc
=
{
"type"
:
"array"
,
"items"
:
{
"allOf"
:
[
{
"type"
:
"object"
,
"required"
:
[
"header"
,
"allsky"
],
"properties"
:
{
"header"
:
{
"type"
:
"object"
,
"required"
:
[
"originator"
,
"message_type"
,
"message_id"
],
"properties"
:
{
"creation_date"
:{
"$ref"
:
"#/$defs/timestamp"
},
"originator"
:
{
"type"
:
"string"
},
"message_type"
:
{
"type"
:
"string"
,
"enum"
:[
"meteo"
]},
"message_id"
:
{
"type"
:
"string"
},
"time_system"
:
{
"type"
:
"string"
,
"enum"
:[
"UTC"
]},
"comment"
:
{
"type"
:
"string"
}
}
},
"allsky"
:{
"$ref"
:
"#/$defs/base64"
}
}
}
]
},
"$defs"
:
{
"timestamp"
:
{
"type"
:
"string"
,
"pattern"
:
"^(
\\
d{4})-(
\\
d{2})-(
\\
d{2})([T ](
\\
d{2}):(
\\
d{2})(:(
\\
d{2}(?:
\\
.
\\
d+)?))?)?$"
},
"base64"
:
{
"type"
:
"string"
,
"pattern"
:
"^(?=(.{4})*$)[A-Za-z0-9+
\\
/]*={0,2}$"
}
}
}
factory
.
register_file
(
'BSKY'
,
_create_allsky_hcFile
,
schema
=
allsky_hc
)
fte/lib/libpy/meteoFile.py
View file @
64daeb01
...
@@ -277,7 +277,7 @@ class allskyFile(meteoBaseFile):
...
@@ -277,7 +277,7 @@ class allskyFile(meteoBaseFile):
await
super
()
.
load
(
fd
,
args
)
await
super
()
.
load
(
fd
,
args
)
data
=
json
.
load
(
fd
)
data
=
json
.
load
(
fd
)
fo
,
devs
=
io
.
BytesIO
(),
set
()
devs
=
set
()
self
.
fid
=
await
self
.
getfid
()
self
.
fid
=
await
self
.
getfid
()
async
with
self
.
transaction
():
async
with
self
.
transaction
():
...
@@ -298,3 +298,53 @@ class allskyFile(meteoBaseFile):
...
@@ -298,3 +298,53 @@ class allskyFile(meteoBaseFile):
self
.
fileattr
=
dict
(
devs
=
list
(
devs
))
self
.
fileattr
=
dict
(
devs
=
list
(
devs
))
self
.
create_doc
()
self
.
create_doc
()
class
allsky_hcFile
(
meteoBaseFile
):
""" Загрузка данных ЭОП 2М
"""
def
__init__
(
self
,
*
args
,
**
kwargs
):
""" Конструктор.
.. literalinclude:: ../../../../fte/lib/libpy/rrdFile.py
:language: python
:lines: 229,238-240
:linenos:
:caption: __init__
"""
super
()
.
__init__
(
*
args
,
**
kwargs
)
self
.
dbtype
=
'asky'
async
def
load
(
self
,
fd
,
args
):
""" Метод. Загрузка файла.
.. literalinclude:: ../../../../fte/lib/libpy/weaFile.py
:language: python
:lines: 27,36-
:linenos:
:caption: load_data
"""
import
base64
logger
.
info
(
'Загрузка файла...'
)
await
super
()
.
load
(
fd
,
args
)
data
=
json
.
load
(
fd
)
fo
,
devs
=
io
.
BytesIO
(),
set
()
self
.
fid
=
await
self
.
getfid
()
dev
=
await
self
.
get_device
(
'Web-camera TPLINK'
,
'12345678'
)
await
self
.
check_priv_device
(
dev
)
devs
.
add
(
dev
)
async
with
self
.
transaction
():
for
m
in
data
:
crops
=
base64
.
b64decode
(
m
[
'allsky'
])
tm
=
datetime
.
fromisoformat
(
m
[
'header'
][
'creation_date'
])
.
replace
(
microsecond
=
0
)
self
.
tbeg
,
self
.
tend
=
min
(
self
.
tbeg
,
tm
),
max
(
self
.
tend
,
tm
)
night
=
await
self
.
fetchval
(
"select * from main.devget_night($1,$2)"
,
dev
,
tm
)
await
self
.
execute
(
"select * from template.partition_table('xd.t_allsky'::regclass,$1)"
,
tm
)
await
self
.
execute
(
"insert into xd.t_allsky values($1,$2,$3,$4,$5)"
,
self
.
fid
,
dev
,
tm
,
night
,
crops
)
self
.
fileattr
=
dict
(
devs
=
list
(
devs
))
self
.
create_doc
()
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment