Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
E
evm-store
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
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
wanli
evm-store
Commits
e60789b3
Commit
e60789b3
authored
Jul 15, 2021
by
wanli
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复后端框架问题以及完善文件管理器
parent
daeea215
Changes
54
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
54 changed files
with
1179 additions
and
1011 deletions
+1179
-1011
tools/build_out/application/app.py
tools/build_out/application/app.py
+2
-8
tools/build_out/application/config.py
tools/build_out/application/config.py
+1
-1
tools/build_out/application/signal_manager.py
tools/build_out/application/signal_manager.py
+2
-2
tools/build_out/controllers/__init__.py
tools/build_out/controllers/__init__.py
+2
-2
tools/build_out/controllers/annex.py
tools/build_out/controllers/annex.py
+17
-12
tools/build_out/controllers/api.py
tools/build_out/controllers/api.py
+101
-0
tools/build_out/controllers/area.py
tools/build_out/controllers/area.py
+7
-12
tools/build_out/controllers/device.py
tools/build_out/controllers/device.py
+17
-12
tools/build_out/controllers/file.py
tools/build_out/controllers/file.py
+20
-8
tools/build_out/controllers/monitor.py
tools/build_out/controllers/monitor.py
+178
-0
tools/build_out/controllers/monitorEvm.py
tools/build_out/controllers/monitorEvm.py
+17
-12
tools/build_out/controllers/monitorImage.py
tools/build_out/controllers/monitorImage.py
+17
-12
tools/build_out/controllers/monitorLvgl.py
tools/build_out/controllers/monitorLvgl.py
+17
-12
tools/build_out/controllers/monitorSystem.py
tools/build_out/controllers/monitorSystem.py
+17
-12
tools/build_out/controllers/monitorWatch.py
tools/build_out/controllers/monitorWatch.py
+17
-12
tools/build_out/controllers/package.20210714181414.py
tools/build_out/controllers/package.20210714181414.py
+0
-174
tools/build_out/controllers/package.py
tools/build_out/controllers/package.py
+122
-21
tools/build_out/controllers/upload.py
tools/build_out/controllers/upload.py
+155
-0
tools/build_out/models/annex.py
tools/build_out/models/annex.py
+7
-6
tools/build_out/models/area.py
tools/build_out/models/area.py
+9
-8
tools/build_out/models/base.py
tools/build_out/models/base.py
+2
-1
tools/build_out/models/device.py
tools/build_out/models/device.py
+4
-3
tools/build_out/models/monitorEvm.py
tools/build_out/models/monitorEvm.py
+10
-9
tools/build_out/models/monitorImage.py
tools/build_out/models/monitorImage.py
+9
-8
tools/build_out/models/monitorLvgl.py
tools/build_out/models/monitorLvgl.py
+12
-11
tools/build_out/models/monitorSystem.py
tools/build_out/models/monitorSystem.py
+6
-5
tools/build_out/models/monitorWatch.py
tools/build_out/models/monitorWatch.py
+5
-4
tools/build_out/models/package.20210714181414.py
tools/build_out/models/package.20210714181414.py
+0
-106
tools/build_out/models/package.py
tools/build_out/models/package.py
+6
-5
tools/build_out/result.json
tools/build_out/result.json
+1
-0
tools/build_out/views/__init__.py
tools/build_out/views/__init__.py
+2
-2
tools/build_out/views/annex.py
tools/build_out/views/annex.py
+18
-17
tools/build_out/views/app.20210714181414.py
tools/build_out/views/app.20210714181414.py
+0
-106
tools/build_out/views/app.py
tools/build_out/views/app.py
+27
-29
tools/build_out/views/area.py
tools/build_out/views/area.py
+23
-25
tools/build_out/views/device.py
tools/build_out/views/device.py
+28
-30
tools/build_out/views/file.py
tools/build_out/views/file.py
+65
-84
tools/build_out/views/monitorEvm.py
tools/build_out/views/monitorEvm.py
+15
-12
tools/build_out/views/monitorImage.py
tools/build_out/views/monitorImage.py
+15
-12
tools/build_out/views/monitorLvgl.py
tools/build_out/views/monitorLvgl.py
+15
-12
tools/build_out/views/monitorSystem.py
tools/build_out/views/monitorSystem.py
+15
-12
tools/build_out/views/monitorWatch.py
tools/build_out/views/monitorWatch.py
+15
-12
tools/build_out/views/package.20210714181414.py
tools/build_out/views/package.20210714181414.py
+0
-64
tools/build_out/webcreator/event.py
tools/build_out/webcreator/event.py
+1
-1
tools/build_out/webcreator/log.py
tools/build_out/webcreator/log.py
+1
-1
tools/build_out/webcreator/utils/__init__.py
tools/build_out/webcreator/utils/__init__.py
+45
-26
tools/build_out/webcreator/webscoket.py
tools/build_out/webcreator/webscoket.py
+4
-4
tools/config.json
tools/config.json
+3
-3
tools/logs/running.log
tools/logs/running.log
+2
-0
tools/resources/webcreator/utils/__init__.py
tools/resources/webcreator/utils/__init__.py
+45
-26
tools/templates/base.tpl
tools/templates/base.tpl
+3
-2
tools/templates/controller.tpl
tools/templates/controller.tpl
+18
-13
tools/templates/model.tpl
tools/templates/model.tpl
+10
-9
tools/templates/view.tpl
tools/templates/view.tpl
+29
-31
No files found.
tools/build_out/application/app.py
View file @
e60789b3
...
...
@@ -60,14 +60,8 @@ def _custom_abort(http_status_code, **kwargs):
自定义abort 400响应数据格式
"""
if
http_status_code
==
400
:
message
=
kwargs
.
get
(
'msg'
)
if
isinstance
(
message
,
dict
):
param
,
info
=
list
(
message
.
items
())[
0
]
data
=
'{}:{}!'
.
format
(
param
,
info
)
return
abort
(
jsonify
(
response_result
(
ResponseCode
.
HTTP_INVAILD_REQUEST
,
data
=
data
)))
else
:
return
abort
(
jsonify
(
response_result
(
ResponseCode
.
HTTP_INVAILD_REQUEST
,
data
=
message
)))
# return { 'code': http_status_code, 'msg': kwargs.get('message') }
return
abort
(
jsonify
(
response_result
(
ResponseCode
.
HTTP_INVAILD_REQUEST
,
msg
=
kwargs
)))
return
abort
(
http_status_code
)
def
_access_control
(
response
):
...
...
tools/build_out/application/config.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-30 17:43:46
LastEditTime: 2021-07-1
2 10:45:38
LastEditTime: 2021-07-1
4 18:40:19
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\a
pplication
\
config.py
...
...
tools/build_out/application/signal_manager.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-30 18:03:41
LastEditTime: 2021-07-1
4 18:14:38
LastEditors:
your name
LastEditTime: 2021-07-1
5 10:23:56
LastEditors:
Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\a
pplication
\
signal_manager.py
'''
...
...
tools/build_out/controllers/__init__.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-30 17:43:46
LastEditTime: 2021-07-1
4 18:22:50
LastEditors:
your name
LastEditTime: 2021-07-1
5 10:24:23
LastEditors:
Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
controllers
\
__init__.py
'''
...
...
tools/build_out/controllers/annex.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.annex
import
AnnexModel
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
AnnexResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +16,8 @@ class AnnexResource(object):
filters
=
[
AnnexModel
.
is_delete
==
False
,
AnnexModel
.
uuid
==
uuid
]
result
=
AnnexModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,7 +25,9 @@ class AnnexResource(object):
filters
=
[
AnnexModel
.
is_delete
==
False
]
result
=
AnnexModel
.
query
.
filter
(
*
filters
)
.
order_by
(
AnnexModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
post
(
self
,
params
,
jwt
=
{}):
# handle business
...
...
@@ -32,20 +37,20 @@ class AnnexResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
result
=
AnnexModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
AnnexModel
.
query
.
filter
(
AnnexModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +58,21 @@ class AnnexResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
AnnexModel
.
query
.
filter
(
AnnexModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
annexManager
=
AnnexResource
()
\ No newline at end of file
tools/build_out/controllers/api.py
0 → 100644
View file @
e60789b3
'''
Author: your name
Date: 2021-07-12 11:14:48
LastEditTime: 2021-07-12 11:29:36
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
controllers
\a
ppi.py
'''
import
os
import
re
import
json
import
shutil
from
urllib
import
parse
from
datetime
import
datetime
from
application.app
import
db
,
config
from
models.annex
import
AnnexModel
from
models.app
import
AppModel
from
models.user
import
UserModel
from
models.package
import
PackageModel
from
webcreator.log
import
logger
from
webcreator
import
utils
from
webcreator.utils.epk
import
EpkApp
from
webcreator.response
import
ResponseCode
class
BuildAppResource
(
object
):
def
__init__
(
self
):
super
()
.
__init__
()
def
post
(
self
,
params
,
jwt
=
{}):
logger
.
info
(
params
)
user
=
UserModel
.
query
.
filter
(
UserModel
.
id
==
jwt
[
'id'
])
if
not
user
:
return
False
,
ResponseCode
.
USER_NOT_EXISTS
if
params
.
get
(
"access_key"
):
params
.
pop
(
"access_key"
)
params
.
update
({
'create_by'
:
user
,
'create_at'
:
datetime
.
now
(),
'update_by'
:
user
,
'update_at'
:
datetime
.
now
(),
})
app
=
AppModel
(
**
params
)
db
.
session
.
add
(
app
)
db
.
session
.
commit
()
dir_format
=
"{}-{}-{}"
.
format
(
app
.
app_name
,
app
.
app_version
,
datetime
.
now
()
.
strftime
(
"
%
Y
%
m
%
d
%
H
%
M
%
S"
))
upload_dir
=
os
.
sep
.
join
([
config
.
UPLOAD_ROOT_DIR
,
"evueapps"
])
target_dir
=
os
.
sep
.
join
([
upload_dir
,
user
.
account
,
dir_format
])
dest_dir
=
os
.
sep
.
join
([
target_dir
,
"src"
])
if
not
os
.
path
.
exists
(
dest_dir
):
os
.
makedirs
(
dest_dir
)
for
target_file
in
params
.
get
(
'files'
):
filename
=
os
.
path
.
basename
(
target_file
)
name
,
suffix
=
os
.
path
.
splitext
(
filename
)
name
=
re
.
sub
(
r"_\d{14}$"
,
""
,
name
)
dst_file
=
os
.
path
.
normpath
(
os
.
sep
.
join
([
dest_dir
,
name
+
suffix
]))
shutil
.
copy
(
os
.
path
.
normpath
(
target_file
),
dst_file
)
res
=
AnnexModel
(
app
=
app
,
title
=
filename
,
path
=
dst_file
.
replace
(
config
.
UPLOAD_ROOT_DIR
,
""
),
size
=
os
.
path
.
getsize
(
dst_file
),
create_by
=
user
,
create_at
=
datetime
.
now
(),
update_by
=
user
,
update_at
=
datetime
.
now
())
db
.
session
.
add
(
res
)
db
.
session
.
flush
()
db
.
session
.
commit
()
# 打包成EPK文件
app_info
=
{}
params
=
{
'appName'
:
app
.
app_name
,
'appDir'
:
dest_dir
,
'appVersion'
:
app
.
app_version
,
'output'
:
target_dir
}
if
user
.
role
==
"administrator"
or
user
.
role
==
"community"
:
params
[
'algorithm'
]
=
"h"
epk
=
EpkApp
(
**
params
)
app_info
=
epk
.
pack
()
app_info
[
'md5'
]
=
str
(
app_info
[
'md5'
])
# 更新数据库对应文件路径
# 将文件拷贝过去后,需要重新更新数据库文件记录
epk_path
=
os
.
sep
.
join
([
target_dir
.
replace
(
config
.
UPLOAD_ROOT_DIR
,
""
),
"{}.epk"
.
format
(
app
.
app_name
)])
.
replace
(
'
\\
'
,
'/'
)
result
=
PackageModel
.
query
.
filter
(
PackageModel
.
app
==
app
.
id
)
.
one_or_none
()
if
result
:
result
.
app_path
=
epk_path
result
.
app_info
=
app_info
result
.
update_by
=
user
result
.
update_at
=
datetime
.
now
()
db
.
session
.
commit
()
else
:
result
=
PackageModel
(
app
=
app
.
id
,
file_path
=
epk_path
,
package_info
=
app_info
,
app_version
=
params
.
get
(
"app_version"
),
source
=
2
,
create_by
=
user
,
create_at
=
datetime
.
now
(),
update_by
=
user
,
update_at
=
datetime
.
now
())
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
with
open
(
os
.
sep
.
join
([
target_dir
,
"epk.json"
]),
"w"
)
as
f
:
json
.
dump
(
app
.
to_dict
(),
f
)
return
{
'app_name'
:
app
.
app_name
,
'app_file'
:
"{}.epk"
.
format
(
app
.
app_name
),
'app_url'
:
parse
.
urljoin
(
config
[
'UPLOAD_SERVER'
],
epk_path
)
},
ResponseCode
.
HTTP_SUCCESS
buildAppResource
=
BuildAppResource
()
tools/build_out/controllers/area.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-30 18:03:41
LastEditTime: 2021-07-12 11:31:06
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
controllers
\a
rea.py
'''
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.area
import
AreaModel
...
...
@@ -22,7 +17,7 @@ class AreaResource(object):
result
=
AreaModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
result
,
ResponseCode
.
HTTP_NOT_FOUND
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -49,13 +44,13 @@ class AreaResource(object):
result
=
AreaModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
AreaModel
.
query
.
filter
(
AreaModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
Fals
e
,
ResponseCode
.
HTTP_NOT_FOUND
return
Non
e
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
tools/build_out/controllers/device.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.device
import
DeviceModel
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
DeviceResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +16,8 @@ class DeviceResource(object):
filters
=
[
DeviceModel
.
is_delete
==
False
,
DeviceModel
.
uuid
==
uuid
]
result
=
DeviceModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,7 +25,9 @@ class DeviceResource(object):
filters
=
[
DeviceModel
.
is_delete
==
False
]
result
=
DeviceModel
.
query
.
filter
(
*
filters
)
.
order_by
(
DeviceModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
post
(
self
,
params
,
jwt
=
{}):
# handle business
...
...
@@ -32,20 +37,20 @@ class DeviceResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
result
=
DeviceModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
DeviceModel
.
query
.
filter
(
DeviceModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +58,21 @@ class DeviceResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
DeviceModel
.
query
.
filter
(
DeviceModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
deviceManager
=
DeviceResource
()
\ No newline at end of file
tools/build_out/controllers/file.py
View file @
e60789b3
...
...
@@ -55,7 +55,7 @@ class FileManager(object):
@param {*} self
@return {*}
'''
def
content
(
self
,
disk
,
target_path
=
'/'
):
def
content
(
self
,
disk
,
target_path
=
""
):
'''
目录信息结构体:
{
...
...
@@ -86,7 +86,6 @@ class FileManager(object):
}
'''
target_path
=
Path
(
target_path
)
result
=
{
"directories"
:
[],
"files"
:
[]
...
...
@@ -96,7 +95,14 @@ class FileManager(object):
if
not
disk_path
.
exists
():
return
result
target_path
=
disk_path
.
joinpath
(
target_path
)
if
target_path
==
None
:
target_path
=
""
if
target_path
.
startswith
(
"/"
):
target_path
=
target_path
[
1
:]
target_path
=
disk_path
.
joinpath
(
Path
(
target_path
))
if
not
target_path
.
exists
():
return
result
...
...
@@ -112,7 +118,7 @@ class FileManager(object):
else
:
result
[
"files"
]
.
append
({
"basename"
:
child
.
name
,
"dirname"
:
child
.
parent
,
"dirname"
:
child
.
parent
.
relative_to
(
disk_path
)
.
as_posix
()
,
"extension"
:
child
.
suffix
[
1
:],
"filename"
:
child
.
stem
,
"path"
:
child
.
resolve
()
.
relative_to
(
disk_path
)
.
as_posix
(),
...
...
@@ -121,13 +127,14 @@ class FileManager(object):
"type"
:
"file"
})
# pprint.pprint(result)
with
open
(
"result.json"
,
"w"
)
as
f
:
json
.
dump
(
result
,
f
)
f
.
seek
(
0
)
f
.
truncate
()
f
.
write
(
json
.
dumps
(
result
,
ensure_ascii
=
True
))
pprint
.
pprint
(
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
'''
...
...
@@ -135,7 +142,7 @@ class FileManager(object):
@param {*} self
@return {*}
'''
def
tree
(
self
,
disk
,
target_path
=
"
/
"
):
def
tree
(
self
,
disk
,
target_path
=
""
):
'''
{
basename: "trees"
...
...
@@ -149,13 +156,18 @@ class FileManager(object):
}
'''
target_path
=
Path
(
target_path
)
result
=
[]
rp
=
Path
(
disk_root
)
disk_path
=
rp
/
disk
if
not
disk_path
.
exists
():
return
result
if
target_path
==
None
:
target_path
=
""
if
target_path
.
startswith
(
"/"
):
target_path
=
target_path
[
1
:]
temp_path
=
disk_path
.
joinpath
(
target_path
)
if
not
temp_path
.
exists
():
return
result
...
...
@@ -173,7 +185,7 @@ class FileManager(object):
"timestamp"
:
int
(
child
.
stat
()
.
st_mtime
),
"type"
:
"dir"
})
pprint
.
pprint
(
result
)
#
pprint.pprint(result)
return
result
,
ResponseCode
.
HTTP_SUCCESS
...
...
tools/build_out/controllers/monitor.py
0 → 100644
View file @
e60789b3
'''
Author: your name
Date: 2021-06-29 19:24:32
LastEditTime: 2021-07-12 12:09:34
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\b
ackend
\
controller
\
monitor.py
'''
from
application.app
import
db
from
models.monitorEvm
import
MonitorEvmModel
from
models.monitorImage
import
MonitorImageModel
from
models.monitorLvgl
import
MonitorLvglModel
from
models.monitorSystem
import
MonitorSystemModel
from
models.monitorWatch
import
MonitorWatchModel
class
SystemResource
(
object
):
def
get
(
self
):
return
MonitorSystemModel
.
query
.
all
()
def
post
(
self
,
params
):
result
=
MonitorSystemModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
True
class
LvglResource
(
object
):
def
get
(
self
):
return
MonitorLvglModel
.
query
.
all
()
def
post
(
self
,
params
):
result
=
MonitorLvglModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
True
class
EvmResource
(
object
):
def
get
(
self
):
return
MonitorEvmModel
.
query
.
all
()
def
post
(
self
,
params
):
result
=
MonitorEvmModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
True
class
ImageResource
(
object
):
def
get
(
self
):
return
MonitorImageModel
.
query
.
all
()
def
post
(
self
,
params
):
result
=
MonitorImageModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
True
def
post_array
(
self
,
array
,
watch
):
t
=
[]
for
a
in
array
:
a
.
update
({
"watch"
:
watch
})
t
.
append
(
**
a
)
db
.
session
.
execute
(
MonitorImageModel
.
__table__
.
insert
(),
t
)
db
.
session
.
commit
()
return
True
systemResource
=
SystemResource
()
lvglResource
=
LvglResource
()
evmResource
=
EvmResource
()
imageResource
=
ImageResource
()
def
insert_data
(
msg
):
# 先判断手表imei是否存在,不存在则先注册手表IMEI
watch_id
=
-
1
if
msg
.
get
(
"imei"
):
result
=
MonitorWatchModel
.
query
.
filter_by
(
imei
=
msg
.
get
(
"imei"
))
.
one_or_none
()
if
result
:
watch_id
=
result
.
id
else
:
result
=
MonitorWatchModel
.
query
.
filter
(
MonitorWatchModel
.
imei
==
msg
.
get
(
"imei"
))
.
one_or_none
()
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
watch_id
=
result
.
id
if
msg
.
get
(
"system"
)
or
msg
.
get
(
"request"
):
msg
.
get
(
"system"
,
{})
.
update
({
"watch"
:
watch_id
})
msg
.
get
(
"system"
)
.
update
(
msg
.
get
(
"request"
,
{}))
systemResource
.
post
(
msg
.
get
(
"system"
))
if
msg
.
get
(
"lvgl"
):
msg
.
get
(
"lvgl"
)
.
update
({
"watch"
:
watch_id
})
lvglResource
.
post
(
msg
.
get
(
"lvgl"
))
if
msg
.
get
(
"evm"
):
msg
.
get
(
"evm"
)
.
update
({
"watch"
:
watch_id
})
evmResource
.
post
(
msg
.
get
(
"evm"
))
if
msg
.
get
(
"image"
):
imageResource
.
post_array
(
msg
.
get
(
"image"
),
watch_id
)
def
get_watch_list
():
result
=
MonitorWatchModel
.
query
.
all
()
tmp
=
[]
for
item
in
result
:
tmp
.
append
({
'id'
:
item
.
id
,
'imei'
:
item
.
imei
})
return
tmp
def
evm_data
(
watch
,
start
,
end
):
filters
=
[
MonitorEvmModel
.
watch
==
watch
]
if
start
:
filters
.
append
(
MonitorEvmModel
.
timestamp
>=
start
)
if
end
:
filters
.
append
(
MonitorEvmModel
.
timestamp
<=
end
)
result
=
MonitorEvmModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorEvmModel
.
timestamp
)
.
all
()
temp
=
[]
for
item
in
result
:
t
=
item
.
to_dict
()
if
t
.
get
(
"timestamp"
):
t
.
update
({
'timestamp'
:
t
.
get
(
"timestamp"
)
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
})
temp
.
append
(
t
)
return
temp
def
lvgl_data
(
watch
,
start
,
end
):
filters
=
[
MonitorLvglModel
.
watch
==
watch
]
if
start
:
filters
.
append
(
MonitorLvglModel
.
timestamp
>=
start
)
if
end
:
filters
.
append
(
MonitorLvglModel
.
timestamp
<=
end
)
result
=
MonitorLvglModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorLvglModel
.
timestamp
)
.
all
()
temp
=
[]
for
item
in
result
:
t
=
item
.
to_dict
()
if
t
.
get
(
"timestamp"
):
t
.
update
({
'timestamp'
:
t
.
get
(
"timestamp"
)
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
})
temp
.
append
(
t
)
return
temp
def
image_data
(
watch
,
start
,
end
):
filters
=
[
MonitorImageModel
.
watch
==
watch
]
if
start
:
filters
.
append
(
MonitorImageModel
.
timestamp
>=
start
)
if
end
:
filters
.
append
(
MonitorImageModel
.
timestamp
<=
end
)
result
=
MonitorImageModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorImageModel
.
timestamp
)
.
all
()
temp
=
[]
for
item
in
result
:
t
=
item
.
to_dict
()
if
t
.
get
(
"timestamp"
):
t
.
update
({
'timestamp'
:
t
.
get
(
"timestamp"
)
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
})
temp
.
append
(
t
)
return
temp
def
get_monitor_list
(
watch
,
category
,
start
,
end
):
# 判断watch是否存在
w
=
MonitorWatchModel
.
query
.
filter
(
MonitorWatchModel
.
id
==
watch
)
.
first
()
if
not
w
:
return
[]
if
category
==
"system"
:
return
[]
elif
category
==
"image"
:
return
image_data
(
watch
,
start
,
end
)
elif
category
==
"lvgl"
:
return
lvgl_data
(
watch
,
start
,
end
)
elif
category
==
"evm"
:
return
evm_data
(
watch
,
start
,
end
)
else
:
return
{
'evm'
:
evm_data
(
watch
,
start
,
end
),
'lvgl'
:
lvgl_data
(
watch
,
start
,
end
),
'image'
:
image_data
(
watch
,
start
,
end
)
}
tools/build_out/controllers/monitorEvm.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.monitorEvm
import
MonitorEvmModel
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
MonitorEvmResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +16,8 @@ class MonitorEvmResource(object):
filters
=
[
MonitorEvmModel
.
is_delete
==
False
,
MonitorEvmModel
.
uuid
==
uuid
]
result
=
MonitorEvmModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,7 +25,9 @@ class MonitorEvmResource(object):
filters
=
[
MonitorEvmModel
.
is_delete
==
False
]
result
=
MonitorEvmModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorEvmModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
post
(
self
,
params
,
jwt
=
{}):
# handle business
...
...
@@ -32,20 +37,20 @@ class MonitorEvmResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
result
=
MonitorEvmModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
MonitorEvmModel
.
query
.
filter
(
MonitorEvmModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +58,21 @@ class MonitorEvmResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
MonitorEvmModel
.
query
.
filter
(
MonitorEvmModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
monitorEvmManager
=
MonitorEvmResource
()
\ No newline at end of file
tools/build_out/controllers/monitorImage.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.monitorImage
import
MonitorImageModel
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
MonitorImageResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +16,8 @@ class MonitorImageResource(object):
filters
=
[
MonitorImageModel
.
is_delete
==
False
,
MonitorImageModel
.
uuid
==
uuid
]
result
=
MonitorImageModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,7 +25,9 @@ class MonitorImageResource(object):
filters
=
[
MonitorImageModel
.
is_delete
==
False
]
result
=
MonitorImageModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorImageModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
post
(
self
,
params
,
jwt
=
{}):
# handle business
...
...
@@ -32,20 +37,20 @@ class MonitorImageResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
result
=
MonitorImageModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
MonitorImageModel
.
query
.
filter
(
MonitorImageModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +58,21 @@ class MonitorImageResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
MonitorImageModel
.
query
.
filter
(
MonitorImageModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
monitorImageManager
=
MonitorImageResource
()
\ No newline at end of file
tools/build_out/controllers/monitorLvgl.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.monitorLvgl
import
MonitorLvglModel
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
MonitorLvglResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +16,8 @@ class MonitorLvglResource(object):
filters
=
[
MonitorLvglModel
.
is_delete
==
False
,
MonitorLvglModel
.
uuid
==
uuid
]
result
=
MonitorLvglModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,7 +25,9 @@ class MonitorLvglResource(object):
filters
=
[
MonitorLvglModel
.
is_delete
==
False
]
result
=
MonitorLvglModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorLvglModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
post
(
self
,
params
,
jwt
=
{}):
# handle business
...
...
@@ -32,20 +37,20 @@ class MonitorLvglResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
result
=
MonitorLvglModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
MonitorLvglModel
.
query
.
filter
(
MonitorLvglModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +58,21 @@ class MonitorLvglResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
MonitorLvglModel
.
query
.
filter
(
MonitorLvglModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
monitorLvglManager
=
MonitorLvglResource
()
\ No newline at end of file
tools/build_out/controllers/monitorSystem.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.monitorSystem
import
MonitorSystemModel
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
MonitorSystemResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +16,8 @@ class MonitorSystemResource(object):
filters
=
[
MonitorSystemModel
.
is_delete
==
False
,
MonitorSystemModel
.
uuid
==
uuid
]
result
=
MonitorSystemModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,7 +25,9 @@ class MonitorSystemResource(object):
filters
=
[
MonitorSystemModel
.
is_delete
==
False
]
result
=
MonitorSystemModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorSystemModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
post
(
self
,
params
,
jwt
=
{}):
# handle business
...
...
@@ -32,20 +37,20 @@ class MonitorSystemResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
result
=
MonitorSystemModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
MonitorSystemModel
.
query
.
filter
(
MonitorSystemModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +58,21 @@ class MonitorSystemResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
MonitorSystemModel
.
query
.
filter
(
MonitorSystemModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
monitorSystemManager
=
MonitorSystemResource
()
\ No newline at end of file
tools/build_out/controllers/monitorWatch.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
datetime
import
datetime
from
application.app
import
db
from
models.monitorWatch
import
MonitorWatchModel
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
MonitorWatchResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +16,8 @@ class MonitorWatchResource(object):
filters
=
[
MonitorWatchModel
.
is_delete
==
False
,
MonitorWatchModel
.
uuid
==
uuid
]
result
=
MonitorWatchModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,7 +25,9 @@ class MonitorWatchResource(object):
filters
=
[
MonitorWatchModel
.
is_delete
==
False
]
result
=
MonitorWatchModel
.
query
.
filter
(
*
filters
)
.
order_by
(
MonitorWatchModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
post
(
self
,
params
,
jwt
=
{}):
# handle business
...
...
@@ -32,20 +37,20 @@ class MonitorWatchResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
result
=
MonitorWatchModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
MonitorWatchModel
.
query
.
filter
(
MonitorWatchModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +58,21 @@ class MonitorWatchResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
MonitorWatchModel
.
query
.
filter
(
MonitorWatchModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
monitorWatchManager
=
MonitorWatchResource
()
\ No newline at end of file
tools/build_out/controllers/package.20210714181414.py
deleted
100644 → 0
View file @
daeea215
'''
Author: your name
Date: 2021-06-30 18:03:41
LastEditTime: 2021-07-12 11:11:49
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
controllers
\
package.py
'''
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import
os
import
re
import
shutil
from
datetime
import
datetime
from
application.app
import
db
,
config
from
models.annex
import
AnnexModel
from
models.app
import
AppModel
from
models.user
import
UserModel
from
models.package
import
PackageModel
from
webcreator.utils.epk
import
EpkApp
from
webcreator.log
import
logger
from
webcreator.response
import
ResponseCode
class
PackageResource
(
object
):
def
__init__
(
self
):
super
()
.
__init__
()
def
get
(
self
,
uuid
,
params
):
# handle business
filters
=
[
PackageModel
.
is_delete
==
False
,
PackageModel
.
uuid
==
uuid
]
result
=
PackageModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
logger
.
warn
(
params
)
filters
=
[
PackageModel
.
is_delete
==
False
]
result
=
PackageModel
.
query
.
filter
(
*
filters
)
.
order_by
(
PackageModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
user
=
UserModel
.
query
.
filter
(
id
=
params
.
get
(
'user'
))
.
onr_or_none
()
if
not
user
:
return
False
,
ResponseCode
.
USER_NOT_EXISTS
temp
=
{}
if
user
.
role
==
"administrator"
:
temp
.
update
({
"is_delete"
:
False
})
else
:
temp
.
update
({
"create_by"
:
user
.
id
,
"is_delete"
:
False
})
if
"scope_type"
in
params
and
params
.
get
(
"scope_type"
)
==
"list"
:
result
=
PackageModel
.
query
.
filter_by
(
**
temp
)
.
order_by
(
PackageModel
.
create_at
.
desc
())
temp
=
[]
for
item
in
result
:
temp
.
append
({
"name"
:
item
.
app
.
app_name
,
"uuid"
:
str
(
item
.
uuid
)
})
return
temp
,
len
(
temp
),
"get build_logs {}."
.
format
(
"success"
if
temp
else
"fail"
)
result
=
PackageModel
.
query
.
filter_by
(
**
temp
)
.
order_by
(
PackageModel
.
create_at
.
desc
())
.
paginate
(
params
.
get
(
"pagenum"
,
1
),
params
.
get
(
"pagesize"
,
10
),
error_out
=
False
)
if
result
.
total
and
len
(
result
.
items
):
temp
=
[]
for
item
in
result
.
items
:
t
=
item
.
to_dict
()
t
.
update
({
"create_at"
:
item
.
create_at
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
if
item
.
create_at
else
None
,
"update_at"
:
item
.
update_at
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
if
item
.
update_at
else
None
,
})
temp
.
append
(
t
)
return
(
temp
,
result
.
total
),
ResponseCode
.
HTTP_SUCCESS
return
result
,
ResponseCode
.
HTTP_NO_DATA
def
post
(
self
,
params
,
jwt
=
{}):
# 判断用户是否存在
user
=
UserModel
.
query
.
filter
(
UserModel
.
id
==
params
.
get
(
'user'
))
if
not
user
:
return
False
,
ResponseCode
.
USER_NOT_EXISTS
# 判断app是否存在
app
=
AppModel
.
query
.
filter
(
AppModel
.
id
==
params
.
get
(
"app"
))
if
not
app
:
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
# 根据应用查找有哪些源文件
source_files
=
AnnexModel
.
query
.
filter
(
AnnexModel
.
app
==
app
.
id
)
.
all
()
if
not
source_files
:
return
None
,
ResponseCode
.
HTTP_NO_DATA
dir_format
=
"{}-{}-{}"
.
format
(
app
.
app_name
,
app
.
app_version
,
datetime
.
now
()
.
strftime
(
"
%
Y
%
m
%
d
%
H
%
M
%
S"
))
upload_dir
=
os
.
sep
.
join
([
config
.
UPLOAD_ROOT_DIR
,
"uploads"
,
"evueapps"
])
target_dir
=
os
.
sep
.
join
([
upload_dir
,
user
.
account
,
dir_format
])
dest_dir
=
os
.
sep
.
join
([
target_dir
,
"src"
])
if
not
os
.
path
.
exists
(
dest_dir
):
os
.
makedirs
(
dest_dir
)
app_files
=
[]
for
sf
in
source_files
:
target_file
=
os
.
sep
.
join
([
config
.
UPLOAD_ROOT_DIR
,
sf
.
path
])
filename
=
os
.
path
.
basename
(
target_file
)
name
,
suffix
=
os
.
path
.
splitext
(
filename
)
name
=
re
.
sub
(
r"_\d{14}$"
,
""
,
name
)
dst_file
=
os
.
path
.
normpath
(
os
.
sep
.
join
([
dest_dir
,
name
+
suffix
]))
shutil
.
move
(
os
.
path
.
normpath
(
target_file
),
dst_file
)
app_files
.
append
([
sf
.
id
,
dst_file
])
# 打包成EPK文件
app_info
=
{}
params
=
{
'appName'
:
app
.
app_name
,
'appDir'
:
dest_dir
,
'appVersion'
:
app
.
app_version
,
'output'
:
target_dir
}
if
user
.
role
==
"administrator"
or
user
.
role
==
"community"
:
params
[
'algorithm'
]
=
"h"
epk
=
EpkApp
(
**
params
)
app_info
=
epk
.
pack
()
if
app_info
:
app_info
[
'md5'
]
=
str
(
app_info
[
'md5'
])
# 更新数据库对应文件路径
# for sf in source_files:
# for af in app_files:
# if sf.id == af[0]:
# t = os.path.normpath(af[1].replace(config.UPLOAD_ROOT_DIR, "")).replace('\\', '/')
# sf.set(path=t)
# db.session.flush()
# db.session.commit()
epk_path
=
os
.
sep
.
join
([
target_dir
.
replace
(
config
.
UPLOAD_ROOT_DIR
,
""
),
"{}.epk"
.
format
(
app
.
app_name
)])
.
replace
(
'
\\
'
,
'/'
)
# handle business
# result = PackageModel.query.filter(PackageModel.app == params.get('app')).first()
# if result and result.is_delete:
# result.is_delete = False
# result.update_by = jwt.get("id", "")
# result.update_date = datetime.now()
# db.session.commit()
# return True, ResponseCode.HTTP_SUCCESS
# elif result and result.is_delete == False:
# return False, ResponseCode.HTTP_INVAILD_REQUEST
result
=
PackageModel
(
app
=
app
.
id
,
file_path
=
epk_path
,
package_info
=
app_info
,
app_version
=
params
.
get
(
"app_version"
),
create_by
=
user
.
id
,
create_at
=
datetime
.
now
(),
update_by
=
user
.
id
,
update_at
=
datetime
.
now
())
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
PackageModel
.
query
.
filter
(
PackageModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
if
value
!=
None
:
setattr
(
result
,
key
,
value
)
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
PackageModel
.
query
.
filter
(
PackageModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
True
,
ResponseCode
.
HTTP_SUCCESS
packageManager
=
PackageResource
()
\ No newline at end of file
tools/build_out/controllers/package.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-30 18:03:41
LastEditTime: 2021-07-15 10:39:52
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
controllers
\
package.py
'''
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import
os
import
re
import
shutil
from
datetime
import
datetime
from
application.app
import
db
from
application.app
import
db
,
config
from
models.annex
import
AnnexModel
from
models.app
import
AppModel
from
models.user
import
UserModel
from
models.package
import
PackageModel
from
webcreator.utils.epk
import
EpkApp
from
webcreator.log
import
logger
# from webcreator.response import ResponseCode, response_result
from
webcreator.response
import
ResponseCode
class
PackageResource
(
object
):
def
__init__
(
self
):
...
...
@@ -13,8 +31,8 @@ class PackageResource(object):
filters
=
[
PackageModel
.
is_delete
==
False
,
PackageModel
.
uuid
==
uuid
]
result
=
PackageModel
.
query
.
filter
(
*
filters
)
.
first
()
if
result
:
return
(
True
,
result
)
return
(
False
,
result
)
return
result
,
ResponseCode
.
HTTP_SUCCESS
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
def
getList
(
self
,
params
):
# handle business
...
...
@@ -22,30 +40,113 @@ class PackageResource(object):
filters
=
[
PackageModel
.
is_delete
==
False
]
result
=
PackageModel
.
query
.
filter
(
*
filters
)
.
order_by
(
PackageModel
.
create_at
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
(
True
,
result
.
items
,
result
.
total
)
if
result
:
return
result
,
ResponseCode
.
HTTP_SUCCESS
user
=
UserModel
.
query
.
filter
(
id
=
params
.
get
(
'user'
))
.
onr_or_none
()
if
not
user
:
return
False
,
ResponseCode
.
USER_NOT_EXISTS
temp
=
{}
if
user
.
role
==
"administrator"
:
temp
.
update
({
"is_delete"
:
False
})
else
:
temp
.
update
({
"create_by"
:
user
.
id
,
"is_delete"
:
False
})
if
"scope_type"
in
params
and
params
.
get
(
"scope_type"
)
==
"list"
:
result
=
PackageModel
.
query
.
filter_by
(
**
temp
)
.
order_by
(
PackageModel
.
create_at
.
desc
())
temp
=
[]
for
item
in
result
:
temp
.
append
({
"name"
:
item
.
app
.
app_name
,
"uuid"
:
str
(
item
.
uuid
)
})
return
temp
,
len
(
temp
),
"get build_logs {}."
.
format
(
"success"
if
temp
else
"fail"
)
result
=
PackageModel
.
query
.
filter_by
(
**
temp
)
.
order_by
(
PackageModel
.
create_at
.
desc
())
.
paginate
(
params
.
get
(
"pagenum"
,
1
),
params
.
get
(
"pagesize"
,
10
),
error_out
=
False
)
if
result
.
total
and
len
(
result
.
items
):
temp
=
[]
for
item
in
result
.
items
:
t
=
item
.
to_dict
()
t
.
update
({
"create_at"
:
item
.
create_at
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
if
item
.
create_at
else
None
,
"update_at"
:
item
.
update_at
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
if
item
.
update_at
else
None
,
})
temp
.
append
(
t
)
return
(
temp
,
result
.
total
),
ResponseCode
.
HTTP_SUCCESS
return
result
,
ResponseCode
.
HTTP_NO_DATA
def
post
(
self
,
params
,
jwt
=
{}):
# 判断用户是否存在
user
=
UserModel
.
query
.
filter
(
UserModel
.
id
==
params
.
get
(
'user'
))
if
not
user
:
return
False
,
ResponseCode
.
USER_NOT_EXISTS
# 判断app是否存在
app
=
AppModel
.
query
.
filter
(
AppModel
.
id
==
params
.
get
(
"app"
))
if
not
app
:
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
# 根据应用查找有哪些源文件
source_files
=
AnnexModel
.
query
.
filter
(
AnnexModel
.
app
==
app
.
id
)
.
all
()
if
not
source_files
:
return
None
,
ResponseCode
.
HTTP_NO_DATA
dir_format
=
"{}-{}-{}"
.
format
(
app
.
app_name
,
app
.
app_version
,
datetime
.
now
()
.
strftime
(
"
%
Y
%
m
%
d
%
H
%
M
%
S"
))
upload_dir
=
os
.
sep
.
join
([
config
.
UPLOAD_ROOT_DIR
,
"uploads"
,
"evueapps"
])
target_dir
=
os
.
sep
.
join
([
upload_dir
,
user
.
account
,
dir_format
])
dest_dir
=
os
.
sep
.
join
([
target_dir
,
"src"
])
if
not
os
.
path
.
exists
(
dest_dir
):
os
.
makedirs
(
dest_dir
)
app_files
=
[]
for
sf
in
source_files
:
target_file
=
os
.
sep
.
join
([
config
.
UPLOAD_ROOT_DIR
,
sf
.
path
])
filename
=
os
.
path
.
basename
(
target_file
)
name
,
suffix
=
os
.
path
.
splitext
(
filename
)
name
=
re
.
sub
(
r"_\d{14}$"
,
""
,
name
)
dst_file
=
os
.
path
.
normpath
(
os
.
sep
.
join
([
dest_dir
,
name
+
suffix
]))
shutil
.
move
(
os
.
path
.
normpath
(
target_file
),
dst_file
)
app_files
.
append
([
sf
.
id
,
dst_file
])
# 打包成EPK文件
app_info
=
{}
params
=
{
'appName'
:
app
.
app_name
,
'appDir'
:
dest_dir
,
'appVersion'
:
app
.
app_version
,
'output'
:
target_dir
}
if
user
.
role
==
"administrator"
or
user
.
role
==
"community"
:
params
[
'algorithm'
]
=
"h"
epk
=
EpkApp
(
**
params
)
app_info
=
epk
.
pack
()
if
app_info
:
app_info
[
'md5'
]
=
str
(
app_info
[
'md5'
])
# 更新数据库对应文件路径
# for sf in source_files:
# for af in app_files:
# if sf.id == af[0]:
# t = os.path.normpath(af[1].replace(config.UPLOAD_ROOT_DIR, "")).replace('\\', '/')
# sf.set(path=t)
# db.session.flush()
# db.session.commit()
epk_path
=
os
.
sep
.
join
([
target_dir
.
replace
(
config
.
UPLOAD_ROOT_DIR
,
""
),
"{}.epk"
.
format
(
app
.
app_name
)])
.
replace
(
'
\\
'
,
'/'
)
# handle business
result
=
PackageModel
.
query
.
filter
(
PackageModel
.
app
==
params
.
get
(
'app'
))
.
first
()
if
result
and
result
.
is_delete
:
result
.
is_delete
=
False
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
elif
result
and
result
.
is_delete
==
False
:
return
(
False
,
"record code exists"
)
#
result = PackageModel.query.filter(PackageModel.app == params.get('app')).first()
#
if result and result.is_delete:
#
result.is_delete = False
#
result.update_by = jwt.get("id", "")
#
result.update_date = datetime.now()
#
db.session.commit()
# return True, ResponseCode.HTTP_SUCCESS
#
elif result and result.is_delete == False:
# return False, ResponseCode.HTTP_INVAILD_REQUEST
result
=
PackageModel
(
**
params
)
result
=
PackageModel
(
app
=
app
.
id
,
file_path
=
epk_path
,
package_info
=
app_info
,
app_version
=
params
.
get
(
"app_version"
),
create_by
=
user
.
id
,
create_at
=
datetime
.
now
(),
update_by
=
user
.
id
,
update_at
=
datetime
.
now
()
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
def
put
(
self
,
uuid
,
params
,
jwt
=
{}):
# handle business
result
=
PackageModel
.
query
.
filter
(
PackageModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
None
,
ResponseCode
.
HTTP_NOT_FOUND
if
params
:
for
key
,
value
in
params
.
items
():
...
...
@@ -53,21 +154,21 @@ class PackageResource(object):
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
else
:
return
(
False
,
"params is null"
)
return
False
,
ResponseCode
.
HTTP_INVAILD_REQUEST
def
delete
(
self
,
uuid
,
jwt
=
{}):
# handle business
result
=
PackageModel
.
query
.
filter
(
PackageModel
.
uuid
==
uuid
)
.
first
()
if
not
result
:
return
(
False
,
"record not exists"
)
return
False
,
ResponseCode
.
HTTP_NOT_FOUND
result
.
update_by
=
jwt
.
get
(
"id"
,
""
)
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
return
(
True
,
None
)
return
True
,
ResponseCode
.
HTTP_SUCCESS
packageManager
=
PackageResource
()
\ No newline at end of file
tools/build_out/controllers/upload.py
0 → 100644
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import
os
import
json
import
traceback
import
tempfile
import
base64
from
hashlib
import
md5
from
application.config
import
config
from
webcreator.log
import
logger
# 判断目录是否存在,不存在则创建
# if not os.path.exists(os.path.join(config.UPLOAD_ROOT_DIR, config.get("UPLOAD_DIR"))):
# os.makedirs(os.path.join(config.UPLOAD_ROOT_DIR, config.get("UPLOAD_DIR")))
def
checkAccess
(
path
):
realpath
=
os
.
path
.
realpath
(
path
)
if
not
realpath
.
startswith
(
config
.
UPLOAD_ROOT_DIR
):
return
False
return
True
def
checkPath
(
path
):
if
not
path
:
return
False
,
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"[
%
s] arg missed!"
%
path
}
fpath
=
os
.
path
.
abspath
(
os
.
sep
.
join
(
[
os
.
path
.
abspath
(
config
.
UPLOAD_ROOT_DIR
),
path
]))
if
not
checkAccess
(
fpath
):
return
False
,
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"You have no access to [
%
s]!"
%
fpath
}
if
not
os
.
path
.
exists
(
fpath
):
return
False
,
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"[
%
s] is not existed!"
%
fpath
}
return
True
,
os
.
path
.
abspath
(
fpath
)
def
saveToFile
(
saveFile
,
content
):
try
:
tfn
=
tempfile
.
mktemp
()
tf
=
open
(
tfn
,
'w+b'
)
tf
.
write
(
content
)
tf
.
close
()
os
.
rename
(
tfn
,
saveFile
)
return
True
except
Exception
as
e
:
traceback
.
print_exc
()
logger
.
error
(
str
(
e
))
return
False
def
getFileInfo
(
infofile
):
info
=
dict
()
info
.
update
({
"isfile"
:
os
.
path
.
isfile
(
infofile
),
"isdir"
:
os
.
path
.
isdir
(
infofile
),
"size"
:
os
.
path
.
getsize
(
infofile
),
"atime"
:
os
.
path
.
getatime
(
infofile
),
"mtime"
:
os
.
path
.
getmtime
(
infofile
),
"ctime"
:
os
.
path
.
getctime
(
infofile
),
"name"
:
os
.
path
.
basename
(
infofile
)
})
return
info
class
UploadResource
(
object
):
def
__init__
(
self
):
super
(
UploadResource
,
self
)
.
__init__
()
def
download
(
self
,
data
):
obj
=
json
.
loads
(
data
)
isAccessed
,
path
=
checkPath
(
obj
[
"path"
])
if
not
isAccessed
:
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"invaild access"
}
if
not
os
.
path
.
isfile
(
path
):
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"Path [
%
s] is not a valid file!"
%
path
}
try
:
with
open
(
path
,
"rb"
)
as
f
:
content
=
base64
.
b64encode
(
f
.
read
())
md5code
=
md5
(
content
)
.
hexdigest
()
return
{
"data"
:
{
"content"
:
content
,
"md5"
:
md5code
,
"filename"
:
os
.
path
.
basename
(
path
)
},
"code"
:
0
,
"message"
:
"download file [
%
s] successfully!"
%
obj
[
'path'
]
}
except
Exception
as
e
:
traceback
.
print_exc
()
logger
.
error
(
str
(
e
))
return
{
"data"
:
None
,
"code"
:
-
1
,
"message"
:
"upload file [
%
s] failed!
\n
%
s"
%
(
obj
[
'path'
],
repr
(
e
))
}
def
delete
(
self
,
data
):
try
:
isAccessed
,
path
=
checkPath
(
data
[
"path"
])
if
not
isAccessed
:
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"invaild access"
}
if
os
.
path
.
isfile
(
path
):
os
.
remove
(
path
)
return
{
"code"
:
0
,
"data"
:
None
,
"message"
:
"delete file [
%
s] successfully!"
%
path
}
elif
os
.
path
.
isdir
(
path
):
os
.
rmdir
(
path
)
return
{
"code"
:
0
,
"data"
:
None
,
"message"
:
"delete dir [
%
s] successfully!"
%
path
}
else
:
return
{
"code"
:
0
,
"data"
:
None
,
"message"
:
"Path [
%
s] is not a valid file or path!"
%
path
}
except
Exception
as
e
:
traceback
.
print_exc
()
logger
.
error
(
str
(
e
))
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
repr
(
e
)}
def
dirlist
(
self
,
data
):
obj
=
json
.
loads
(
data
)
isAccessed
,
path
=
checkPath
(
obj
[
"path"
])
if
not
isAccessed
:
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"invaild access"
}
result
=
[]
for
p
in
os
.
listdir
(
path
):
result
.
append
(
getFileInfo
(
os
.
path
.
join
(
config
.
UPLOAD_ROOT_DIR
,
p
)))
return
{
"code"
:
0
,
"result"
:
result
,
"message"
:
"Get [
%
s] successfully!"
%
path
}
def
filemd5
(
self
,
data
):
obj
=
json
.
loads
(
data
)
isAccessed
,
path
=
checkPath
(
obj
[
"path"
])
if
not
isAccessed
:
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"invaild access"
}
if
not
os
.
path
.
isfile
(
path
):
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"Path [
%
s] is not a valid file!"
%
path
}
with
open
(
path
,
"rb"
)
as
f
:
filemd5
=
md5
(
f
.
read
())
.
hexdigest
()
return
{
"code"
:
0
,
"result"
:
filemd5
,
"message"
:
"Get md5 of [
%
s] successfully!"
%
path
}
def
fileinfo
(
self
,
data
):
obj
=
json
.
loads
(
data
)
isAccessed
,
path
=
checkPath
(
obj
[
"path"
])
if
not
isAccessed
:
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"invaild access"
}
if
not
os
.
path
.
isfile
(
path
):
return
{
"code"
:
-
1
,
"data"
:
None
,
"message"
:
"Path [
%
s] is not a valid file!"
%
path
}
return
{
"code"
:
0
,
"result"
:
getFileInfo
(
path
),
"message"
:
"Get md5 of [
%
s] successfully!"
%
path
}
uploadResource
=
UploadResource
()
tools/build_out/models/annex.py
View file @
e60789b3
'''
Author: your name
Date: 2021-07-1
4 18:14:14
LastEditTime: 2021-07-1
4 18:35:57
Date: 2021-07-1
5 09:33:39
LastEditTime: 2021-07-1
5 10:22:20
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
models
\a
nnex.py
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
models
\a
nnex.
20210715101849.
py
'''
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
...
...
@@ -30,14 +31,14 @@ class AnnexModel(PrimaryModel):
self
.
path
=
path
self
.
size
=
size
self
.
create_by
=
create_by
self
.
update_by
=
update_by
self
.
create_at
=
create_at
self
.
update_by
=
update_by
self
.
update_at
=
update_at
def
__repr__
(
self
):
return
'<AnnexModel
%
r>'
%
(
self
.
app
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'app'
:
self
.
app
,
'title'
:
self
.
title
,
...
...
tools/build_out/models/area.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
...
...
@@ -7,19 +8,19 @@ from marshmallow import Schema, fields, INCLUDE, EXCLUDE
class
AreaModel
(
PrimaryModel
):
__tablename__
=
'evm_area'
areaCode
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
)
areaName
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
)
areaCode
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
areaName
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
level
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
1
)
cityCode
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
center
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
)
parentId
=
db
.
Column
(
db
.
String
(
20
),
nullable
=
True
)
hasChildren
=
db
.
Column
(
db
.
Boolean
,
nullable
=
True
)
cityCode
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
center
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
parentId
=
db
.
Column
(
db
.
String
(
20
),
nullable
=
True
,
default
=
''
)
hasChildren
=
db
.
Column
(
db
.
Boolean
,
nullable
=
True
,
default
=
False
)
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
areaCode
,
areaName
,
level
,
cityCode
,
center
,
parentId
,
hasChildren
):
def
__init__
(
self
,
areaCode
=
''
,
areaName
=
''
,
level
=
1
,
cityCode
=
0
,
center
=
''
,
parentId
=
''
,
hasChildren
=
False
):
self
.
areaCode
=
areaCode
self
.
areaName
=
areaName
self
.
level
=
level
...
...
tools/build_out/models/base.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import
uuid
from
datetime
import
datetime
...
...
tools/build_out/models/device.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
...
...
@@ -16,7 +17,7 @@ class DeviceModel(PrimaryModel):
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
imei
,
name
,
type
,
desc
):
def
__init__
(
self
,
imei
,
name
=
''
,
type
=
''
,
desc
=
''
):
self
.
imei
=
imei
self
.
name
=
name
self
.
type
=
type
...
...
@@ -25,7 +26,7 @@ class DeviceModel(PrimaryModel):
def
__repr__
(
self
):
return
'<DeviceModel
%
r>'
%
(
self
.
imei
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'imei'
:
self
.
imei
,
'name'
:
self
.
name
,
...
...
tools/build_out/models/monitorEvm.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
MonitorEvmModel
(
PrimaryModel
):
__tablename__
=
'evm_monitor
E
vm'
__tablename__
=
'evm_monitor
_e
vm'
watch
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
heap_map_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
heap_total_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
heap_used_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
stack_total_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
stack_used_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
heap_map_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
heap_total_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
heap_used_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
stack_total_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
stack_used_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
watch
,
heap_map_size
,
heap_total_size
,
heap_used_size
,
stack_total_size
,
stack_used_size
):
def
__init__
(
self
,
watch
,
heap_map_size
=
0
,
heap_total_size
=
0
,
heap_used_size
=
0
,
stack_total_size
=
0
,
stack_used_size
=
0
):
self
.
watch
=
watch
self
.
heap_map_size
=
heap_map_size
self
.
heap_total_size
=
heap_total_size
...
...
@@ -29,7 +30,7 @@ class MonitorEvmModel(PrimaryModel):
def
__repr__
(
self
):
return
'<MonitorEvmModel
%
r>'
%
(
self
.
watch
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'watch'
:
self
.
watch
,
'heap_map_size'
:
self
.
heap_map_size
,
...
...
tools/build_out/models/monitorImage.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
MonitorImageModel
(
PrimaryModel
):
__tablename__
=
'evm_monitor
I
mage'
__tablename__
=
'evm_monitor
_i
mage'
watch
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
length
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
png_uncompressed_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
png_total_count
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
png_file_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
length
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
png_uncompressed_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
png_total_count
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
png_file_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
uri
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
watch
,
length
,
png_uncompressed_size
,
png_total_count
,
png_file_size
,
uri
):
def
__init__
(
self
,
watch
,
length
=
0
,
png_uncompressed_size
=
0
,
png_total_count
=
0
,
png_file_size
=
0
,
uri
=
''
):
self
.
watch
=
watch
self
.
length
=
length
self
.
png_uncompressed_size
=
png_uncompressed_size
...
...
@@ -29,7 +30,7 @@ class MonitorImageModel(PrimaryModel):
def
__repr__
(
self
):
return
'<MonitorImageModel
%
r>'
%
(
self
.
watch
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'watch'
:
self
.
watch
,
'length'
:
self
.
length
,
...
...
tools/build_out/models/monitorLvgl.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
MonitorLvglModel
(
PrimaryModel
):
__tablename__
=
'evm_monitor
L
vgl'
__tablename__
=
'evm_monitor
_l
vgl'
watch
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
total_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
free_cnt
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
free_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
free_biggest_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
used_cnt
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
used_pct
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
frag_pct
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
total_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
free_cnt
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
free_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
free_biggest_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
used_cnt
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
used_pct
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
frag_pct
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
,
default
=
0
)
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
watch
,
total_size
,
free_cnt
,
free_size
,
free_biggest_size
,
used_cnt
,
used_pct
,
frag_pct
):
def
__init__
(
self
,
watch
,
total_size
=
0
,
free_cnt
=
0
,
free_size
=
0
,
free_biggest_size
=
0
,
used_cnt
=
0
,
used_pct
=
0
,
frag_pct
=
0
):
self
.
watch
=
watch
self
.
total_size
=
total_size
self
.
free_cnt
=
free_cnt
...
...
@@ -33,7 +34,7 @@ class MonitorLvglModel(PrimaryModel):
def
__repr__
(
self
):
return
'<MonitorLvglModel
%
r>'
%
(
self
.
watch
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'watch'
:
self
.
watch
,
'total_size'
:
self
.
total_size
,
...
...
tools/build_out/models/monitorSystem.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
MonitorSystemModel
(
PrimaryModel
):
__tablename__
=
'evm_monitor
S
ystem'
__tablename__
=
'evm_monitor
_s
ystem'
watch
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
free_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
)
free_size
=
db
.
Column
(
db
.
Integer
,
nullable
=
True
,
default
=
0
)
host
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
path
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
protocol
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
...
...
@@ -17,7 +18,7 @@ class MonitorSystemModel(PrimaryModel):
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
watch
,
free_size
,
host
,
path
,
protocol
):
def
__init__
(
self
,
watch
,
free_size
=
0
,
host
=
''
,
path
=
''
,
protocol
=
''
):
self
.
watch
=
watch
self
.
free_size
=
free_size
self
.
host
=
host
...
...
@@ -27,7 +28,7 @@ class MonitorSystemModel(PrimaryModel):
def
__repr__
(
self
):
return
'<MonitorSystemModel
%
r>'
%
(
self
.
watch
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'watch'
:
self
.
watch
,
'free_size'
:
self
.
free_size
,
...
...
tools/build_out/models/monitorWatch.py
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
MonitorWatchModel
(
PrimaryModel
):
__tablename__
=
'evm_monitor
W
atch'
__tablename__
=
'evm_monitor
_w
atch'
imei
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
,
nullable
=
False
,
default
=
''
)
...
...
@@ -13,13 +14,13 @@ class MonitorWatchModel(PrimaryModel):
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
imei
):
def
__init__
(
self
,
imei
=
''
):
self
.
imei
=
imei
def
__repr__
(
self
):
return
'<MonitorWatchModel
%
r>'
%
(
self
.
imei
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'imei'
:
self
.
imei
,
}
...
...
tools/build_out/models/package.20210714181414.py
deleted
100644 → 0
View file @
daeea215
'''
Author: your name
Date: 2021-06-30 18:03:41
LastEditTime: 2021-07-12 01:59:31
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
models
\
package.py
'''
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
PackageModel
(
PrimaryModel
):
__tablename__
=
'evm_package'
app
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
app_version
=
db
.
Column
(
db
.
String
(
200
),
nullable
=
False
)
package_info
=
db
.
Column
(
db
.
String
(
20
),
nullable
=
False
)
file_path
=
db
.
Column
(
db
.
String
(
200
),
nullable
=
False
)
source
=
db
.
Column
(
db
.
Integer
,
nullable
=
False
)
user_agent
=
db
.
Column
(
db
.
String
(
200
),
nullable
=
False
)
download_url
=
db
.
Column
(
db
.
String
(
200
),
nullable
=
False
)
ip
=
db
.
Column
(
db
.
String
(
128
),
nullable
=
False
)
geo_location
=
db
.
Column
(
db
.
String
(
200
),
nullable
=
False
)
operator
=
db
.
Column
(
db
.
String
(
50
),
nullable
=
False
)
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
app
,
app_version
,
package_info
,
file_path
,
source
=
""
,
user_agent
=
""
,
download_url
=
""
,
ip
=
""
,
geo_location
=
""
,
operator
=
""
,
create_by
=
None
,
create_at
=
None
,
update_by
=
None
,
update_at
=
None
):
self
.
app
=
app
self
.
app_version
=
app_version
self
.
package_info
=
package_info
self
.
file_path
=
file_path
self
.
source
=
source
self
.
user_agent
=
user_agent
self
.
download_url
=
download_url
self
.
ip
=
ip
self
.
geo_location
=
geo_location
self
.
operator
=
operator
self
.
create_by
=
create_by
self
.
create_at
=
create_at
self
.
update_by
=
update_by
self
.
update_at
=
update_at
def
__repr__
(
self
):
return
'<PackageModel
%
r>'
%
(
self
.
app
)
def
to_dict
(
self
):
return
{
'app_version'
:
self
.
app_version
,
'package_info'
:
self
.
package_info
,
'file_path'
:
self
.
file_path
,
'source'
:
self
.
source
,
'user_agent'
:
self
.
user_agent
,
'download_url'
:
self
.
download_url
,
'ip'
:
self
.
ip
,
'geo_location'
:
self
.
geo_location
,
'operator'
:
self
.
operator
,
}
class
GetListPackageSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
unknown
=
EXCLUDE
# 未知字段默认排除
model
=
PackageModel
page
=
fields
.
Integer
(
required
=
False
)
pageSize
=
fields
.
Integer
(
required
=
False
)
app
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
package_info
=
ma
.
auto_field
()
file_path
=
ma
.
auto_field
()
source
=
ma
.
auto_field
()
user_agent
=
ma
.
auto_field
()
download_url
=
ma
.
auto_field
()
ip
=
ma
.
auto_field
()
geo_location
=
ma
.
auto_field
()
operator
=
ma
.
auto_field
()
getListPackageSchema
=
GetListPackageSchema
()
getListPackagesSchema
=
GetListPackageSchema
(
many
=
True
)
class
GetPackageSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
unknown
=
EXCLUDE
# 未知字段默认排除
model
=
PackageModel
app
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
package_info
=
ma
.
auto_field
()
file_path
=
ma
.
auto_field
()
source
=
ma
.
auto_field
()
user_agent
=
ma
.
auto_field
()
download_url
=
ma
.
auto_field
()
ip
=
ma
.
auto_field
()
geo_location
=
ma
.
auto_field
()
operator
=
ma
.
auto_field
()
getPackageSchema
=
GetPackageSchema
()
tools/build_out/models/package.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-30 18:03:41
LastEditTime: 2021-07-1
4 18:35:01
LastEditTime: 2021-07-1
5 10:22:39
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\
models
\
package.py
'''
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
...
...
@@ -30,7 +31,7 @@ class PackageModel(PrimaryModel):
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
app
,
app_version
,
package_info
,
file_path
,
source
=
0
,
user_agent
=
''
,
download_url
=
''
,
ip
=
'127.0.0.1'
,
geo_location
=
''
,
operator
=
''
,
create_by
=
None
,
create_at
=
None
,
update_by
=
None
,
update_at
=
None
):
def
__init__
(
self
,
app
,
app_version
,
package_info
,
file_path
,
source
=
""
,
user_agent
=
""
,
download_url
=
""
,
ip
=
""
,
geo_location
=
""
,
operator
=
""
,
create_by
=
None
,
create_at
=
None
,
update_by
=
None
,
update_at
=
None
):
self
.
app
=
app
self
.
app_version
=
app_version
self
.
package_info
=
package_info
...
...
@@ -42,14 +43,14 @@ class PackageModel(PrimaryModel):
self
.
geo_location
=
geo_location
self
.
operator
=
operator
self
.
create_by
=
create_by
self
.
update_by
=
update_by
self
.
create_at
=
create_at
self
.
update_by
=
update_by
self
.
update_at
=
update_at
def
__repr__
(
self
):
return
'<PackageModel
%
r>'
%
(
self
.
app
)
def
to_
json
(
self
):
def
to_
dict
(
self
):
return
{
'app_version'
:
self
.
app_version
,
'package_info'
:
self
.
package_info
,
...
...
tools/build_out/result.json
0 → 100644
View file @
e60789b3
{
"directories"
:
[{
"basename"
:
"evueapps"
,
"dirname"
:
"."
,
"path"
:
"evueapps"
,
"timestamp"
:
1618901644
,
"type"
:
"dir"
}],
"files"
:
[{
"basename"
:
"appjs.c"
,
"dirname"
:
"."
,
"extension"
:
"c"
,
"filename"
:
"appjs"
,
"path"
:
"appjs.c"
,
"size"
:
2145
,
"timestamp"
:
1625480571
,
"type"
:
"file"
},
{
"basename"
:
"result.json"
,
"dirname"
:
"."
,
"extension"
:
"json"
,
"filename"
:
"result"
,
"path"
:
"result.json"
,
"size"
:
394
,
"timestamp"
:
1624420270
,
"type"
:
"file"
}]}
\ No newline at end of file
tools/build_out/views/__init__.py
View file @
e60789b3
'''
Author: your name
Date: 2021-07-15 03:22:19
LastEditTime: 2021-07-15
09:12:4
8
LastEditors:
your name
LastEditTime: 2021-07-15
10:20:2
8
LastEditors:
Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\b
uild_out
\v
iews
\
__init__.py
'''
...
...
tools/build_out/views/annex.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,16 +26,16 @@ class AnnexResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListAnnexSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListAnnex
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListAnnex
.
emit
(
data
)
json_dumps
=
getListAnnexSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListAnnexsSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListAnnexsSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
AnnexResource
(
Resource
):
def
__init__
(
self
):
...
...
@@ -51,14 +54,14 @@ class AnnexResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getAnnexSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetAnnex
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getAnnexSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetAnnex
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getAnnexSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
...
...
@@ -67,10 +70,8 @@ class AnnexResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
# data = deleteAnnexSchema.load(json_payload)
result
=
signalManager
.
actionDeleteAnnex
.
emit
(
uuid
)
if
result
[
0
]
==
True
:
return
response_result
(
ResponseCode
.
OK
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
,
msg
=
result
[
1
])
result
,
message
=
signalManager
.
actionDeleteAnnex
.
emit
(
uuid
)
return
response_result
(
message
,
data
=
result
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/app.20210714181414.py
deleted
100644 → 0
View file @
daeea215
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
from
flask_jwt_extended
import
(
jwt_required
,
get_jwt_identity
)
from
application.signal_manager
import
signalManager
from
models.app
import
postAppSchema
,
deleteAppSchema
,
getListAppSchema
,
getListAppsSchema
,
getAppSchema
,
putAppSchema
from
webcreator.log
import
logger
from
webcreator.response
import
ResponseCode
,
response_result
class
AppResourceList
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
def
get
(
self
):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser.add_argument("page", type=int, location="args", default=1)
# self.parser.add_argument("pageSize", type=int, location="args", default=15)
# args = self.parser.parse_args()
try
:
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListAppSchema
.
load
(
json_payload
)
result
,
message
=
signalManager
.
actionGetListApp
.
emit
(
data
)
json_dumps
=
getListAppSchema
.
dump
(
result
)
if
result
:
json_dumps
=
getListAppsSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
def
post
(
self
):
try
:
json_payload
=
request
.
json
data
=
postAppSchema
.
load
(
json_payload
)
result
,
message
=
signalManager
.
actionPostApp
.
emit
(
data
)
logger
.
info
(
result
)
logger
.
warn
(
message
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
class
AppResource
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
@
jwt_required
(
locations
=
[
"headers"
])
def
get
(
self
,
uuid
):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser.add_argument("page", type=int, location="args", default=1)
# self.parser.add_argument("pageSize", type=int, location="args", default=15)
# args = self.parser.parse_args()
try
:
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getAppSchema
.
load
(
json_payload
)
result
,
message
=
signalManager
.
actionGetApp
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getAppSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
def
put
(
self
,
uuid
):
try
:
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
putAppSchema
.
load
(
json_payload
)
result
,
message
=
signalManager
.
actionPutApp
.
emit
(
uuid
,
data
)
logger
.
info
(
result
)
logger
.
info
(
message
)
return
response_result
(
message
,
data
=
result
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
def
delete
(
self
,
uuid
):
try
:
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
# data = deleteAppSchema.load(json_payload)
result
,
message
=
signalManager
.
actionDeleteApp
.
emit
(
uuid
)
return
response_result
(
message
,
data
=
result
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
tools/build_out/views/app.py
View file @
e60789b3
...
...
@@ -25,29 +25,28 @@ class AppResourceList(Resource):
data
=
getListAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListApp
.
emit
(
data
)
json_dumps
=
getListAppSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListAppsSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListAppsSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
ResponseCode
.
HTTP_NOT_FOUND
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
def
post
(
self
):
try
:
json_payload
=
request
.
json
data
=
postAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPostApp
.
emit
(
data
)
if
result
[
0
]
==
False
:
# json_dumps = postAppSchema.dump(result)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
,
msg
=
result
[
1
])
result
,
message
=
signalManager
.
actionPostApp
.
emit
(
data
)
if
result
:
logger
.
warn
(
result
)
return
response_result
(
ResponseCode
.
OK
)
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
,
data
=
result
,
msg
=
message
)
return
response_result
(
ResponseCode
.
HTTP_NOT_FOUND
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
AppResource
(
Resource
):
...
...
@@ -67,14 +66,14 @@ class AppResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetApp
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getAppSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetApp
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getAppSchema
.
dump
(
result
)
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
,
data
=
json_dumps
,
msg
=
message
)
return
response_result
(
ResponseCode
.
HTTP_NOT_FOUND
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
...
...
@@ -83,14 +82,13 @@ class AppResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
putAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPutApp
.
emit
(
uuid
,
data
)
if
result
[
0
]
==
True
:
# json_dumps = putAppSchema.dump(result)
return
response_result
(
ResponseCode
.
OK
)
return
response_result
(
ResponseCode
.
NOTHING_CHANGE
,
msg
=
result
[
1
])
result
,
message
=
signalManager
.
actionPutApp
.
emit
(
uuid
,
data
)
if
result
:
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
,
data
=
result
,
msg
=
message
)
return
response_result
(
ResponseCode
.
HTTP_NO_CHANGE
,
msg
=
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
...
...
@@ -99,10 +97,10 @@ class AppResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
# data = deleteAppSchema.load(json_payload)
result
=
signalManager
.
actionDeleteApp
.
emit
(
uuid
)
if
result
[
0
]
==
True
:
return
response_result
(
ResponseCode
.
OK
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
,
msg
=
result
[
1
]
)
result
,
message
=
signalManager
.
actionDeleteApp
.
emit
(
uuid
)
if
result
:
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
,
data
=
result
,
msg
=
message
)
return
response_result
(
ResponseCode
.
HTTP_NOT_FOUND
,
msg
=
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/area.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,13 +26,13 @@ class AreaResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListAreaSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListArea
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListArea
.
emit
(
data
)
json_dumps
=
getListAreaSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListAreasSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListAreasSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
HTTP_INVAILD_REQUEST
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
...
...
@@ -39,12 +42,10 @@ class AreaResourceList(Resource):
try
:
json_payload
=
request
.
json
data
=
postAreaSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPostArea
.
emit
(
data
)
if
result
[
0
]
==
False
:
# json_dumps = postAreaSchema.dump(result)
return
response_result
(
ResponseCode
.
HTTP_INVAILD_REQUEST
,
msg
=
result
[
1
])
logger
.
warn
(
result
)
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
)
result
,
message
=
signalManager
.
actionPostArea
.
emit
(
data
)
logger
.
info
(
result
)
logger
.
warn
(
message
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
...
...
@@ -67,11 +68,11 @@ class AreaResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getAreaSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetArea
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getAreaSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
HTTP_NOT_FOUND
)
result
,
message
=
signalManager
.
actionGetArea
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getAreaSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
...
...
@@ -83,11 +84,10 @@ class AreaResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
putAreaSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPutArea
.
emit
(
uuid
,
data
)
if
result
[
0
]
==
True
:
# json_dumps = putAreaSchema.dump(result)
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
)
return
response_result
(
ResponseCode
.
NOTHING_CHANGE
,
msg
=
result
[
1
])
result
,
message
=
signalManager
.
actionPutArea
.
emit
(
uuid
,
data
)
logger
.
info
(
result
)
logger
.
info
(
message
)
return
response_result
(
message
,
data
=
result
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
...
...
@@ -99,10 +99,8 @@ class AreaResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
# data = deleteAreaSchema.load(json_payload)
result
=
signalManager
.
actionDeleteArea
.
emit
(
uuid
)
if
result
[
0
]
==
True
:
return
response_result
(
ResponseCode
.
HTTP_SUCCESS
)
return
response_result
(
ResponseCode
.
HTTP_INVAILD_REQUEST
,
msg
=
result
[
1
])
result
,
message
=
signalManager
.
actionDeleteArea
.
emit
(
uuid
)
return
response_result
(
message
,
data
=
result
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
tools/build_out/views/device.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,31 +26,29 @@ class DeviceResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListDeviceSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListDevice
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListDevice
.
emit
(
data
)
json_dumps
=
getListDeviceSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListDevicesSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListDevicesSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
def
post
(
self
):
try
:
json_payload
=
request
.
json
data
=
postDeviceSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPostDevice
.
emit
(
data
)
if
result
[
0
]
==
False
:
# json_dumps = postDeviceSchema.dump(result)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
,
msg
=
result
[
1
])
logger
.
warn
(
result
)
return
response_result
(
ResponseCode
.
OK
)
result
,
message
=
signalManager
.
actionPostDevice
.
emit
(
data
)
logger
.
info
(
result
)
logger
.
warn
(
message
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
DeviceResource
(
Resource
):
...
...
@@ -67,14 +68,14 @@ class DeviceResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getDeviceSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetDevice
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getDeviceSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetDevice
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getDeviceSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
...
...
@@ -83,14 +84,13 @@ class DeviceResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
putDeviceSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPutDevice
.
emit
(
uuid
,
data
)
if
result
[
0
]
==
True
:
# json_dumps = putDeviceSchema.dump(result)
return
response_result
(
ResponseCode
.
OK
)
return
response_result
(
ResponseCode
.
NOTHING_CHANGE
,
msg
=
result
[
1
])
result
,
message
=
signalManager
.
actionPutDevice
.
emit
(
uuid
,
data
)
logger
.
info
(
result
)
logger
.
info
(
message
)
return
response_result
(
message
,
data
=
result
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
@
jwt_required
(
locations
=
[
"headers"
])
...
...
@@ -99,10 +99,8 @@ class DeviceResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
# data = deleteDeviceSchema.load(json_payload)
result
=
signalManager
.
actionDeleteDevice
.
emit
(
uuid
)
if
result
[
0
]
==
True
:
return
response_result
(
ResponseCode
.
OK
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
,
msg
=
result
[
1
])
result
,
message
=
signalManager
.
actionDeleteDevice
.
emit
(
uuid
)
return
response_result
(
message
,
data
=
result
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/file.py
View file @
e60789b3
This diff is collapsed.
Click to expand it.
tools/build_out/views/monitorEvm.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,16 +26,16 @@ class MonitorEvmResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListMonitorEvmSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListMonitorEvm
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListMonitorEvm
.
emit
(
data
)
json_dumps
=
getListMonitorEvmSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListMonitorEvmsSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListMonitorEvmsSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
MonitorEvmResource
(
Resource
):
def
__init__
(
self
):
...
...
@@ -51,11 +54,11 @@ class MonitorEvmResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getMonitorEvmSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetMonitorEvm
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getMonitorEvmSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetMonitorEvm
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getMonitorEvmSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/monitorImage.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,16 +26,16 @@ class MonitorImageResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListMonitorImageSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListMonitorImage
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListMonitorImage
.
emit
(
data
)
json_dumps
=
getListMonitorImageSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListMonitorImagesSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListMonitorImagesSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
MonitorImageResource
(
Resource
):
def
__init__
(
self
):
...
...
@@ -51,11 +54,11 @@ class MonitorImageResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getMonitorImageSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetMonitorImage
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getMonitorImageSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetMonitorImage
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getMonitorImageSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/monitorLvgl.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,16 +26,16 @@ class MonitorLvglResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListMonitorLvglSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListMonitorLvgl
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListMonitorLvgl
.
emit
(
data
)
json_dumps
=
getListMonitorLvglSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListMonitorLvglsSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListMonitorLvglsSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
MonitorLvglResource
(
Resource
):
def
__init__
(
self
):
...
...
@@ -51,11 +54,11 @@ class MonitorLvglResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getMonitorLvglSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetMonitorLvgl
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getMonitorLvglSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetMonitorLvgl
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getMonitorLvglSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/monitorSystem.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,16 +26,16 @@ class MonitorSystemResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListMonitorSystemSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListMonitorSystem
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListMonitorSystem
.
emit
(
data
)
json_dumps
=
getListMonitorSystemSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListMonitorSystemsSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListMonitorSystemsSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
MonitorSystemResource
(
Resource
):
def
__init__
(
self
):
...
...
@@ -51,11 +54,11 @@ class MonitorSystemResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getMonitorSystemSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetMonitorSystem
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getMonitorSystemSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetMonitorSystem
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getMonitorSystemSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/monitorWatch.py
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
...
...
@@ -23,16 +26,16 @@ class MonitorWatchResourceList(Resource):
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListMonitorWatchSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetListMonitorWatch
.
emit
(
data
)
result
,
message
=
signalManager
.
actionGetListMonitorWatch
.
emit
(
data
)
json_dumps
=
getListMonitorWatchSchema
.
dump
(
result
)
if
result
[
0
]
:
json_dumps
=
getListMonitorWatchsSchema
.
dump
(
result
[
1
]
)
if
result
:
json_dumps
=
getListMonitorWatchsSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
,
count
=
result
[
2
]
)
return
response_result
(
ResponseCode
.
REQUEST_ERROR
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
class
MonitorWatchResource
(
Resource
):
def
__init__
(
self
):
...
...
@@ -51,11 +54,11 @@ class MonitorWatchResource(Resource):
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getMonitorWatchSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetMonitorWatch
.
emit
(
uuid
,
data
)
if
result
[
0
]
:
json_dumps
=
getMonitorWatchSchema
.
dump
(
result
[
1
]
)
return
response_result
(
ResponseCode
.
OK
,
data
=
json_dumps
)
return
response_result
(
ResponseCode
.
NO_DATA
)
result
,
message
=
signalManager
.
actionGetMonitorWatch
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getMonitorWatchSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB
_ERROR
)
return
response_result
(
ResponseCode
.
HTTP_SERVER
_ERROR
)
tools/build_out/views/package.20210714181414.py
deleted
100644 → 0
View file @
daeea215
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from
flask
import
current_app
,
jsonify
,
request
from
flask_restful
import
Resource
from
flask_restful.reqparse
import
RequestParser
from
flask_jwt_extended
import
(
jwt_required
,
get_jwt_identity
)
from
application.signal_manager
import
signalManager
from
models.package
import
getListPackageSchema
,
getListPackagesSchema
,
getPackageSchema
from
webcreator.log
import
logger
from
webcreator.response
import
ResponseCode
,
response_result
class
PackageResourceList
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
def
get
(
self
):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser.add_argument("page", type=int, location="args", default=1)
# self.parser.add_argument("pageSize", type=int, location="args", default=15)
# args = self.parser.parse_args()
try
:
json_payload
=
request
.
json
logger
.
warn
(
json_payload
)
data
=
getListPackageSchema
.
load
(
json_payload
)
result
,
message
=
signalManager
.
actionGetListPackage
.
emit
(
data
)
json_dumps
=
getListPackageSchema
.
dump
(
result
)
if
result
:
json_dumps
=
getListPackagesSchema
.
dump
(
result
.
items
)
logger
.
warn
(
json_dumps
)
return
response_result
(
message
,
data
=
json_dumps
,
count
=
result
.
total
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
class
PackageResource
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
@
jwt_required
(
locations
=
[
"headers"
])
def
get
(
self
,
uuid
):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser.add_argument("page", type=int, location="args", default=1)
# self.parser.add_argument("pageSize", type=int, location="args", default=15)
# args = self.parser.parse_args()
try
:
json_payload
=
request
.
json
print
(
"========>"
,
uuid
,
json_payload
)
data
=
getPackageSchema
.
load
(
json_payload
)
result
,
message
=
signalManager
.
actionGetPackage
.
emit
(
uuid
,
data
)
if
result
:
json_dumps
=
getPackageSchema
.
dump
(
result
)
return
response_result
(
message
,
data
=
json_dumps
)
return
response_result
(
message
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
HTTP_SERVER_ERROR
)
tools/build_out/webcreator/event.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-15 17:40:14
LastEditTime: 2021-0
7-14 18:28:5
4
LastEditTime: 2021-0
6-30 17:22:4
4
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\r
esources
\
webcreator
\
event.py
...
...
tools/build_out/webcreator/log.py
View file @
e60789b3
'''
Author: your name
Date: 2021-04-22 18:04:15
LastEditTime: 2021-07-14 18:
28:45
LastEditTime: 2021-07-14 18:
38:28
LastEditors: Please set LastEditors
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\r
esources
\
webcreator
\
log.py
...
...
tools/build_out/webcreator/utils/__init__.py
View file @
e60789b3
...
...
@@ -26,16 +26,9 @@ import string
import
datetime
import
threading
import
decimal
class
Klass
:
def
__init__
(
self
):
pass
klass
=
Klass
()
def
dict2obj
(
dictionary
):
klass
.
__dict__
.
update
(
dictionary
)
return
klass
import
urllib
from
urllib
import
parse
,
request
from
urllib.parse
import
urlparse
,
urljoin
,
urlencode
class
DecimalEncoder
(
json
.
JSONEncoder
):
def
default
(
self
,
o
):
...
...
@@ -43,19 +36,6 @@ class DecimalEncoder(json.JSONEncoder):
return
float
(
o
)
super
(
DecimalEncoder
,
self
)
.
default
(
o
)
class
ObjectDict
(
dict
):
"""Makes a dictionary behave like an object, with attribute-style access.
"""
def
__getattr__
(
self
,
name
):
try
:
return
self
[
name
]
except
KeyError
:
raise
AttributeError
(
name
)
def
__setattr__
(
self
,
name
,
value
):
self
[
name
]
=
value
def
ThreadMaker
(
f
):
def
runner
(
*
args
,
**
argv
):
t
=
threading
.
Thread
(
target
=
f
,
args
=
args
,
kwargs
=
argv
)
...
...
@@ -132,7 +112,7 @@ def secondsToTime(seconds, sep=":"):
return
sep
.
join
([
str
(
i
)
for
i
in
[
h
,
m
,
s
]])
def
md5_
salt
(
s
):
def
md5_
encryption
(
s
):
md5
=
hashlib
.
md5
(
"EhuqUkwV"
.
encode
(
"utf-8"
))
md5
.
update
(
s
.
encode
(
'utf-8'
))
return
md5
.
hexdigest
()
...
...
@@ -148,6 +128,20 @@ def filter_dict(source: dict, rules_list: list):
return
result
def
get_location_by_ip
(
ip
):
params
=
{
'ak'
:
'aZEAgYG8wKuLd6DS9BmCloGtfnGGkRMn'
,
'coor'
:
'bd09ll'
}
parameters
=
urllib
.
parse
.
urlencode
(
params
)
headers
=
{
'User-Agent'
:
'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko'
}
if
ip
!=
'127.0.0.1'
:
params
.
update
({
'ip'
:
ip
})
parameters
=
urllib
.
parse
.
urlencode
(
params
)
url
=
'http://api.map.baidu.com/location/ip'
req
=
request
.
Request
(
url
=
'
%
s
%
s
%
s'
%
(
url
,
'?'
,
parameters
),
headers
=
headers
)
ret
=
request
.
urlopen
(
req
)
.
read
()
jsonData
=
json
.
loads
(
ret
)
return
jsonData
def
sql_filter
(
sql
):
return
re
.
sub
(
r"[\"\\/*\'=\-#;<>+
%
$()!@]"
,
""
,
sql
)
...
...
@@ -164,6 +158,31 @@ def get_days_before_datetime(dt, dayAgo):
# 转换为其他字符串格式
return
dayAgo
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
class
Klass
:
def
__init__
(
self
):
pass
klass
=
Klass
()
def
dict2obj
(
dictionary
):
klass
.
__dict__
.
update
(
dictionary
)
return
klass
class
ObjectDict
(
Dict
[
str
,
Any
]):
"""Makes a dictionary behave like an object, with attribute-style access."""
def
__getattr__
(
self
,
name
:
str
)
->
Any
:
try
:
return
self
[
name
]
except
KeyError
:
raise
AttributeError
(
name
)
def
__setattr__
(
self
,
name
:
str
,
value
:
Any
)
->
None
:
self
[
name
]
=
value
if
__name__
==
"__main__"
:
d
=
{
'a'
:
1
,
'b'
:
2
}
print
(
dict2obj
(
d
))
print
(
os
.
path
.
abspath
(
__file__
))
print
(
random_string
(
7
))
tools/build_out/webcreator/webscoket.py
View file @
e60789b3
'''
Author: your name
Date: 2021-06-
30 17:43:46
LastEditTime: 2021-07-14 18:3
7:35
LastEditors:
Please set LastEditors
Date: 2021-06-
15 17:40:19
LastEditTime: 2021-07-14 18:3
8:12
LastEditors:
your name
Description: In User Settings Edit
FilePath:
\
evm-store
\t
ools
\
b
uild_out
\
webcreator
\
webscoket.py
FilePath:
\
evm-store
\t
ools
\
r
esources
\
webcreator
\
webscoket.py
'''
#!/usr/bin/env python
# -*- coding: utf_8 -*-
...
...
tools/config.json
View file @
e60789b3
...
...
@@ -50,7 +50,7 @@
"apis"
:
[
{
"name"
:
"area"
,
"enable"
:
fals
e
,
"enable"
:
tru
e
,
"controller"
:
{
"className"
:
"Resource"
},
...
...
@@ -329,7 +329,7 @@
},
{
"name"
:
"app"
,
"enable"
:
tru
e
,
"enable"
:
fals
e
,
"controller"
:
{
"className"
:
"Resource"
},
...
...
@@ -556,7 +556,7 @@
},
{
"name"
:
"package"
,
"enable"
:
tru
e
,
"enable"
:
fals
e
,
"controller"
:
{
"className"
:
"Resource"
},
...
...
tools/logs/running.log
View file @
e60789b3
[2021-07-14 18:14:14,257][ INFO][in gen_code.py -> copyFiles line:107] copy files finished!
[2021-07-15 10:18:49,740][ INFO][in gen_code.py -> copyFiles line:107] copy files finished!
[2021-07-15 10:18:49,941][ ERROR][in gen_code.py -> handleModules line:132] Îļþ£º%s ²»´æÔÚ
tools/resources/webcreator/utils/__init__.py
View file @
e60789b3
...
...
@@ -26,16 +26,9 @@ import string
import
datetime
import
threading
import
decimal
class
Klass
:
def
__init__
(
self
):
pass
klass
=
Klass
()
def
dict2obj
(
dictionary
):
klass
.
__dict__
.
update
(
dictionary
)
return
klass
import
urllib
from
urllib
import
parse
,
request
from
urllib.parse
import
urlparse
,
urljoin
,
urlencode
class
DecimalEncoder
(
json
.
JSONEncoder
):
def
default
(
self
,
o
):
...
...
@@ -43,19 +36,6 @@ class DecimalEncoder(json.JSONEncoder):
return
float
(
o
)
super
(
DecimalEncoder
,
self
)
.
default
(
o
)
class
ObjectDict
(
dict
):
"""Makes a dictionary behave like an object, with attribute-style access.
"""
def
__getattr__
(
self
,
name
):
try
:
return
self
[
name
]
except
KeyError
:
raise
AttributeError
(
name
)
def
__setattr__
(
self
,
name
,
value
):
self
[
name
]
=
value
def
ThreadMaker
(
f
):
def
runner
(
*
args
,
**
argv
):
t
=
threading
.
Thread
(
target
=
f
,
args
=
args
,
kwargs
=
argv
)
...
...
@@ -132,7 +112,7 @@ def secondsToTime(seconds, sep=":"):
return
sep
.
join
([
str
(
i
)
for
i
in
[
h
,
m
,
s
]])
def
md5_
salt
(
s
):
def
md5_
encryption
(
s
):
md5
=
hashlib
.
md5
(
"EhuqUkwV"
.
encode
(
"utf-8"
))
md5
.
update
(
s
.
encode
(
'utf-8'
))
return
md5
.
hexdigest
()
...
...
@@ -148,6 +128,20 @@ def filter_dict(source: dict, rules_list: list):
return
result
def
get_location_by_ip
(
ip
):
params
=
{
'ak'
:
'aZEAgYG8wKuLd6DS9BmCloGtfnGGkRMn'
,
'coor'
:
'bd09ll'
}
parameters
=
urllib
.
parse
.
urlencode
(
params
)
headers
=
{
'User-Agent'
:
'Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko'
}
if
ip
!=
'127.0.0.1'
:
params
.
update
({
'ip'
:
ip
})
parameters
=
urllib
.
parse
.
urlencode
(
params
)
url
=
'http://api.map.baidu.com/location/ip'
req
=
request
.
Request
(
url
=
'
%
s
%
s
%
s'
%
(
url
,
'?'
,
parameters
),
headers
=
headers
)
ret
=
request
.
urlopen
(
req
)
.
read
()
jsonData
=
json
.
loads
(
ret
)
return
jsonData
def
sql_filter
(
sql
):
return
re
.
sub
(
r"[\"\\/*\'=\-#;<>+
%
$()!@]"
,
""
,
sql
)
...
...
@@ -164,6 +158,31 @@ def get_days_before_datetime(dt, dayAgo):
# 转换为其他字符串格式
return
dayAgo
.
strftime
(
"
%
Y-
%
m-
%
d
%
H:
%
M:
%
S"
)
class
Klass
:
def
__init__
(
self
):
pass
klass
=
Klass
()
def
dict2obj
(
dictionary
):
klass
.
__dict__
.
update
(
dictionary
)
return
klass
class
ObjectDict
(
Dict
[
str
,
Any
]):
"""Makes a dictionary behave like an object, with attribute-style access."""
def
__getattr__
(
self
,
name
:
str
)
->
Any
:
try
:
return
self
[
name
]
except
KeyError
:
raise
AttributeError
(
name
)
def
__setattr__
(
self
,
name
:
str
,
value
:
Any
)
->
None
:
self
[
name
]
=
value
if
__name__
==
"__main__"
:
d
=
{
'a'
:
1
,
'b'
:
2
}
print
(
dict2obj
(
d
))
print
(
os
.
path
.
abspath
(
__file__
))
print
(
random_string
(
7
))
tools/templates/base.tpl
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import uuid
from datetime import datetime
...
...
tools/templates/controller.tpl
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from datetime import datetime
from application.app import db
from models.{{ config['name'] }} import {{ config['name'] | letterUpper }}Model
from webcreator.log import logger
# from webcreator.response import ResponseCode, response_result
from webcreator.response import ResponseCode
class {{ config['name'] | letterUpper }}Resource(object):
def __init__(self):
...
...
@@ -13,8 +16,8 @@ class {{ config['name'] | letterUpper }}Resource(object):
filters = [{{ config['name'] | letterUpper }}Model.is_delete==False, {{ config['name'] | letterUpper }}Model.uuid==uuid]
result = {{ config['name'] | letterUpper }}Model.query.filter(*filters).first()
if result:
return
(True, result)
return
(False, result)
return
result, ResponseCode.HTTP_SUCCESS
return
None, ResponseCode.HTTP_NOT_FOUND
def getList(self, params):
# handle business
...
...
@@ -22,7 +25,9 @@ class {{ config['name'] | letterUpper }}Resource(object):
filters = [{{ config['name'] | letterUpper }}Model.is_delete==False]
result = {{ config['name'] | letterUpper }}Model.query.filter(*filters).order_by({{ config['name'] | letterUpper }}Model.create_at).paginate(params.get('page', 1), params.get('pageSize', 10), error_out=False)
return (True, result.items, result.total)
if result:
return result, ResponseCode.HTTP_SUCCESS
return None, ResponseCode.HTTP_NOT_FOUND
def post(self, params, jwt={}):
# handle business
...
...
@@ -32,20 +37,20 @@ class {{ config['name'] | letterUpper }}Resource(object):
result.update_by = jwt.get("id", "")
result.update_date = datetime.now()
db.session.commit()
return
(True, None)
return
True, ResponseCode.HTTP_SUCCESS
elif result and result.is_delete == False:
return
(False, "record code exists")
return
False, ResponseCode.HTTP_INVAILD_REQUEST
result = {{ config['name'] | letterUpper }}Model(**params)
db.session.add(result)
db.session.commit()
return
(True, None)
return
True, ResponseCode.HTTP_SUCCESS
def put(self, uuid, params, jwt={}):
# handle business
result = {{ config['name'] | letterUpper }}Model.query.filter({{ config['name'] | letterUpper }}Model.uuid==uuid).first()
if not result:
return
(False, "record not exists")
return
None, ResponseCode.HTTP_NOT_FOUND
if params:
for key, value in params.items():
...
...
@@ -53,21 +58,21 @@ class {{ config['name'] | letterUpper }}Resource(object):
result.update_by = jwt.get("id", "")
result.update_date = datetime.now()
db.session.commit()
return
(True, None)
return
True, ResponseCode.HTTP_SUCCESS
else:
return
(False, "params is null")
return
False, ResponseCode.HTTP_INVAILD_REQUEST
def delete(self, uuid, jwt={}):
# handle business
result = {{ config['name'] | letterUpper }}Model.query.filter({{ config['name'] | letterUpper }}Model.uuid==uuid).first()
if not result:
return
(False, "record not exists")
return
False, ResponseCode.HTTP_NOT_FOUND
result.update_by = jwt.get("id", "")
result.update_date = datetime.now()
result.is_delete = True
db.session.delete(result)
db.session.commit()
return
(True, None)
return
True, ResponseCode.HTTP_SUCCESS
{{ config["name"] }}Manager = {{ config['name'] | letterUpper }}Resource()
tools/templates/model.tpl
View file @
e60789b3
# -*- coding: utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from application.app import db, ma
from .base import PrimaryModel
...
...
@@ -7,14 +8,14 @@ from marshmallow import Schema, fields, INCLUDE, EXCLUDE
{%- endif %}
class {{ config['name'] | letterUpper }}Model(PrimaryModel):
__tablename__ =
'{{ application["tablePrefix"] }}{{ config['name'] }}'
__tablename__ =
{% if config.get("model").get("tableName", None) != None %}'{{ config.get("model").get("tableName") }}'{% else %}'{{ application["tablePrefix"] }}{{ config['name'] }}'{% endif %}
{% for value in config['model']['fields'] %}
{%- if value.get('primaryKey', None) %}
{{ value.get('name') }} = db.Column(db.{{ value.get('dataType') }}, primary_key = True)
{%- elif value.get('dataType') == "Int" or value.get('dataType') == "Integer" %}
{{ value.get('name') }} = db.Column(db.{{ value.get('dataType') }}{% if value.get("length", None) %}{% endif %}{% if value.get("index", False) %}, index = True{% endif %}{% if value.get("required", False) %}, nullable = False{% else %}, nullable = True{% endif %}{% if value.get("default", None) %}, default = {
{
value
.
get
(
"default"
)
}
}{% endif %})
{{ value.get('name') }} = db.Column(db.{{ value.get('dataType') }}{% if value.get("length", None) %}{% endif %}{% if value.get("index", False) %}, index = True{% endif %}{% if value.get("required", False) %}, nullable = False{% else %}, nullable = True{% endif %}{% if value.get("default", None)
!= None
%}, default = {
{
value
.
get
(
"default"
)
}
}{% endif %})
{%- else %}
{{ value.get('name') }} = db.Column(db.{{ value.get('dataType') }}{% if value.get("length", None) %}({
{
value
.
get
(
"length"
)
}
}){% endif %}{% if value.get("index", False) %}, index = True{% endif %}{% if value.get("required", False) %}, nullable = False{% else %}, nullable = True{% endif %}{% if value.get("default", None) %}, default = {
{
value
.
get
(
"default"
)
}
}{% endif %})
{{ value.get('name') }} = db.Column(db.{{ value.get('dataType') }}{% if value.get("length", None) %}({
{
value
.
get
(
"length"
)
}
}){% endif %}{% if value.get("index", False) %}, index = True{% endif %}{% if value.get("required", False) %}, nullable = False{% else %}, nullable = True{% endif %}{% if value.get("default", None)
!= None
%}, default = {
{
value
.
get
(
"default"
)
}
}{% endif %})
{%- endif %}
{%- endfor %}
...
...
@@ -22,7 +23,7 @@ class {{ config['name'] | letterUpper }}Model(PrimaryModel):
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def __init__(self{% for value in config['model']['fields'] %}, {
{ value.get("name") }
}{% endfor %}):
def __init__(self{% for value in config['model']['fields'] %}, {
% if value.get("default", None) != None %}{{ value.get("name") }}={{ value.get("default") }}{% else %}{{ value.get("name") }}{% endif %
}{% endfor %}):
{%- for value in config['model']['fields'] %}
self.{{ value.get("name") }} = {{ value.get("name") }}
{%- endfor %}
...
...
@@ -30,7 +31,7 @@ class {{ config['name'] | letterUpper }}Model(PrimaryModel):
def __repr__(self):
return '
<
{{
config
['
name
']
|
letterUpper
}}
Model
%
r
>
' % (self.{{ config['model']['fields'][0]["name"] }})
def to_
json
(self):
def to_
dict
(self):
return {
{%- for item in config['model']['fields'] %}
{%- if item.get("toJson") %}
...
...
tools/templates/view.tpl
View file @
e60789b3
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from flask import current_app, jsonify, request
from flask_restful import Resource
from flask_restful.reqparse import RequestParser
...
...
@@ -30,16 +33,16 @@ class {{ config['name'] | letterUpper }}ResourceList(Resource):
json_payload = request.json
logger.warn(json_payload)
data = getList{{ config['name'] | letterUpper }}Schema.load(json_payload)
result = signalManager.actionGetList{{ config["name"] | letterUpper }}.emit(data)
result
, message
= signalManager.actionGetList{{ config["name"] | letterUpper }}.emit(data)
json_dumps = getList{{ config['name'] | letterUpper }}Schema.dump(result)
if result
[0]
:
json_dumps = getList{{ config['name'] | letterUpper }}sSchema.dump(result
[1]
)
if result:
json_dumps = getList{{ config['name'] | letterUpper }}sSchema.dump(result
.items
)
logger.warn(json_dumps)
return response_result(
ResponseCode.OK, data=json_dumps, count=result[2]
)
return response_result(
ResponseCode.REQUEST_ERROR
)
return response_result(
message, data=json_dumps, count=result.total
)
return response_result(
message
)
except Exception as e:
current_app.logger.error(e)
return response_result(ResponseCode.
DB
_ERROR)
return response_result(ResponseCode.
HTTP_SERVER
_ERROR)
{%- endif %}
{%- if config["view"]["post"] %}
...
...
@@ -50,15 +53,13 @@ class {{ config['name'] | letterUpper }}ResourceList(Resource):
try:
json_payload = request.json
data = post{{ config['name'] | letterUpper }}Schema.load(json_payload)
result = signalManager.actionPost{{ config["name"] | letterUpper }}.emit(data)
if result[0] == False:
# json_dumps = post{{ config["name"] | letterUpper }}Schema.dump(result)
return response_result(ResponseCode.REQUEST_ERROR, msg=result[1])
logger.warn(result)
return response_result(ResponseCode.OK)
result, message = signalManager.actionPost{{ config["name"] | letterUpper }}.emit(data)
logger.info(result)
logger.warn(message)
return response_result(message)
except Exception as e:
current_app.logger.error(e)
return response_result(ResponseCode.
DB
_ERROR)
return response_result(ResponseCode.
HTTP_SERVER
_ERROR)
{% endif %}
class {{ config['name'] | letterUpper }}Resource(Resource):
...
...
@@ -81,14 +82,14 @@ class {{ config['name'] | letterUpper }}Resource(Resource):
json_payload = request.json
print("========>", uuid, json_payload)
data = get{{ config['name'] | letterUpper }}Schema.load(json_payload)
result = signalManager.actionGet{{ config["name"] | letterUpper }}.emit(uuid, data)
if result
[0]
:
json_dumps = get{{ config['name'] | letterUpper }}Schema.dump(result
[1]
)
return response_result(
ResponseCode.OK
, data=json_dumps)
return response_result(
ResponseCode.NO_DATA
)
result
, message
= signalManager.actionGet{{ config["name"] | letterUpper }}.emit(uuid, data)
if result:
json_dumps = get{{ config['name'] | letterUpper }}Schema.dump(result)
return response_result(
message
, data=json_dumps)
return response_result(
message
)
except Exception as e:
current_app.logger.error(e)
return response_result(ResponseCode.
DB
_ERROR)
return response_result(ResponseCode.
HTTP_SERVER
_ERROR)
{% endif %}
{%- if config["view"]["put"] %}
...
...
@@ -100,14 +101,13 @@ class {{ config['name'] | letterUpper }}Resource(Resource):
json_payload = request.json
print("========>", uuid, json_payload)
data = put{{ config['name'] | letterUpper }}Schema.load(json_payload)
result = signalManager.actionPut{{ config["name"] | letterUpper }}.emit(uuid, data)
if result[0] == True:
# json_dumps = put{{ config['name'] | letterUpper }}Schema.dump(result)
return response_result(ResponseCode.OK)
return response_result(ResponseCode.NOTHING_CHANGE, msg=result[1])
result, message = signalManager.actionPut{{ config["name"] | letterUpper }}.emit(uuid, data)
logger.info(result)
logger.info(message)
return response_result(message, data=result)
except Exception as e:
current_app.logger.error(e)
return response_result(ResponseCode.
DB
_ERROR)
return response_result(ResponseCode.
HTTP_SERVER
_ERROR)
{% endif %}
{%- if config["view"]["delete"] %}
...
...
@@ -119,11 +119,9 @@ class {{ config['name'] | letterUpper }}Resource(Resource):
json_payload = request.json
print("========>", uuid, json_payload)
# data = delete{{ config['name'] | letterUpper }}Schema.load(json_payload)
result = signalManager.actionDelete{{ config["name"] | letterUpper }}.emit(uuid)
if result[0] == True:
return response_result(ResponseCode.OK)
return response_result(ResponseCode.REQUEST_ERROR, msg=result[1])
result, message = signalManager.actionDelete{{ config["name"] | letterUpper }}.emit(uuid)
return response_result(message, data=result)
except Exception as e:
current_app.logger.error(e)
return response_result(ResponseCode.
DB
_ERROR)
return response_result(ResponseCode.
HTTP_SERVER
_ERROR)
{% endif %}
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