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
b9b8ad2e
Commit
b9b8ad2e
authored
Jun 15, 2021
by
wanli
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
31c45ef7
Changes
29
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
1919 additions
and
58 deletions
+1919
-58
backend/controller/apps_manager.py
backend/controller/apps_manager.py
+6
-0
backend/schema/apps.py
backend/schema/apps.py
+1
-0
backend/view/api.py
backend/view/api.py
+13
-0
frontend/src/views/system/apps.vue
frontend/src/views/system/apps.vue
+20
-0
frontend/vue.config.js
frontend/vue.config.js
+1
-1
tools/build_out/application/signal_manager.py
tools/build_out/application/signal_manager.py
+14
-0
tools/build_out/controllers/__init__.py
tools/build_out/controllers/__init__.py
+18
-0
tools/build_out/controllers/app.py
tools/build_out/controllers/app.py
+58
-0
tools/build_out/controllers/login.py
tools/build_out/controllers/login.py
+58
-0
tools/build_out/controllers/package.py
tools/build_out/controllers/package.py
+58
-0
tools/build_out/controllers/user.py
tools/build_out/controllers/user.py
+58
-0
tools/build_out/logs/running.log
tools/build_out/logs/running.log
+12
-0
tools/build_out/models/app.py
tools/build_out/models/app.py
+131
-0
tools/build_out/models/area.py
tools/build_out/models/area.py
+12
-2
tools/build_out/models/login.py
tools/build_out/models/login.py
+72
-0
tools/build_out/models/package.py
tools/build_out/models/package.py
+92
-0
tools/build_out/models/user.py
tools/build_out/models/user.py
+131
-0
tools/build_out/views/__init__.py
tools/build_out/views/__init__.py
+17
-4
tools/build_out/views/app.py
tools/build_out/views/app.py
+93
-0
tools/build_out/views/area.py
tools/build_out/views/area.py
+2
-5
tools/build_out/views/login.py
tools/build_out/views/login.py
+54
-0
tools/build_out/views/package.py
tools/build_out/views/package.py
+54
-0
tools/build_out/views/user.py
tools/build_out/views/user.py
+93
-0
tools/config.json
tools/config.json
+803
-15
tools/gen_code.py
tools/gen_code.py
+3
-3
tools/templates/controller.tpl
tools/templates/controller.tpl
+8
-8
tools/templates/model.tpl
tools/templates/model.tpl
+14
-6
tools/templates/router.tpl
tools/templates/router.tpl
+4
-5
tools/templates/view.tpl
tools/templates/view.tpl
+19
-9
No files found.
backend/controller/apps_manager.py
View file @
b9b8ad2e
...
@@ -196,6 +196,12 @@ class AppsManager(object):
...
@@ -196,6 +196,12 @@ class AppsManager(object):
for
item
in
result
:
for
item
in
result
:
temp
.
append
(
item
.
to_dict
(
only
=
[
"uuid"
,
"app_name"
]))
temp
.
append
(
item
.
to_dict
(
only
=
[
"uuid"
,
"app_name"
]))
return
temp
,
len
(
temp
),
"get app {}."
.
format
(
"success"
if
temp
else
"fail"
)
return
temp
,
len
(
temp
),
"get app {}."
.
format
(
"success"
if
temp
else
"fail"
)
elif
"scope_type"
in
data
and
data
.
get
(
"scope_type"
)
==
"distinct"
:
result
=
select
(
p
.
category
for
p
in
Apps
)
temp
=
[]
for
item
in
result
:
temp
.
append
(
item
)
return
temp
,
len
(
temp
),
"success"
result
=
Apps
.
select
()
.
where
(
**
temp
)
.
order_by
(
Apps
.
sort
)
.
sort_by
(
desc
(
Apps
.
create_at
))
.
page
(
data
.
get
(
"pagenum"
,
1
),
pagesize
=
data
.
get
(
"pagesize"
,
10
))
result
=
Apps
.
select
()
.
where
(
**
temp
)
.
order_by
(
Apps
.
sort
)
.
sort_by
(
desc
(
Apps
.
create_at
))
.
page
(
data
.
get
(
"pagenum"
,
1
),
pagesize
=
data
.
get
(
"pagesize"
,
10
))
count
=
Apps
.
select
()
.
where
(
**
temp
)
.
count
()
count
=
Apps
.
select
()
.
where
(
**
temp
)
.
count
()
...
...
backend/schema/apps.py
View file @
b9b8ad2e
...
@@ -31,6 +31,7 @@ class DeleteSchema(BaseSchema):
...
@@ -31,6 +31,7 @@ class DeleteSchema(BaseSchema):
class
QuerySchema
(
BaseSchema
):
class
QuerySchema
(
BaseSchema
):
uuid
=
fields
.
UUID
(
required
=
False
)
uuid
=
fields
.
UUID
(
required
=
False
)
app_name
=
fields
.
String
(
required
=
False
)
app_name
=
fields
.
String
(
required
=
False
)
category
=
fields
.
String
(
required
=
False
)
scope_type
=
fields
.
String
(
required
=
False
)
scope_type
=
fields
.
String
(
required
=
False
)
pagenum
=
fields
.
Int
(
required
=
False
)
pagenum
=
fields
.
Int
(
required
=
False
)
pagesize
=
fields
.
Int
(
required
=
False
,
max
=
50
)
# 防止用户传特别大的数,导致数据库查询阻塞
pagesize
=
fields
.
Int
(
required
=
False
,
max
=
50
)
# 防止用户传特别大的数,导致数据库查询阻塞
...
...
backend/view/api.py
View file @
b9b8ad2e
...
@@ -5,6 +5,7 @@ import json
...
@@ -5,6 +5,7 @@ import json
import
logging
import
logging
import
traceback
import
traceback
import
uuid
import
uuid
import
sqlite3
from
datetime
import
datetime
from
datetime
import
datetime
from
flask
import
Blueprint
,
request
,
redirect
,
url_for
,
json
,
Response
,
send_file
,
make_response
,
send_from_directory
from
flask
import
Blueprint
,
request
,
redirect
,
url_for
,
json
,
Response
,
send_file
,
make_response
,
send_from_directory
...
@@ -98,6 +99,18 @@ def update_db():
...
@@ -98,6 +99,18 @@ def update_db():
print
(
index
)
print
(
index
)
result
.
append
(
str
(
uuid
.
uuid1
()))
result
.
append
(
str
(
uuid
.
uuid1
()))
# conn = sqlite3.connect('./app-store.db')
# cur = conn.cursor()
# update_sql = """update test set name = 'noname' where id = ?"""
# x = (1, )
# cur.execute(update_sql, x)
# # commit()提交事务
# conn.commit()
# # 关闭游标
# cur.close()
# # 关闭连接
# conn.close()
return
response_result
(
ResponseCode
.
OK
,
data
=
result
)
return
response_result
(
ResponseCode
.
OK
,
data
=
result
)
@
api
.
route
(
"/system/convertString"
,
methods
=
[
'POST'
])
@
api
.
route
(
"/system/convertString"
,
methods
=
[
'POST'
])
...
...
frontend/src/views/system/apps.vue
View file @
b9b8ad2e
...
@@ -11,6 +11,16 @@
...
@@ -11,6 +11,16 @@
></el-option>
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"应用分类"
>
<el-select
v-model=
"form.category"
filterable
placeholder=
"请选择分类"
>
<el-option
v-for=
"(item, index) in categoryList"
:key=
"index"
:label=
"item"
:value=
"item"
></el-option>
</el-select>
</el-form-item>
<el-form-item
<el-form-item
><el-button
type=
"primary"
@
click=
"onSubmit"
><el-button
type=
"primary"
@
click=
"onSubmit"
>
查询
</el-button
>
查询
</el-button
...
@@ -236,10 +246,12 @@ export default {
...
@@ -236,10 +246,12 @@ export default {
total
:
0
,
total
:
0
,
list
:
[],
list
:
[],
selectList
:
[],
selectList
:
[],
categoryList
:
[],
isLoading
:
false
,
isLoading
:
false
,
form
:
{
form
:
{
uuid
:
null
,
uuid
:
null
,
name
:
null
,
name
:
null
,
category
:
null
,
pagesize
:
15
,
pagesize
:
15
,
pagenum
:
1
,
pagenum
:
1
,
},
},
...
@@ -292,6 +304,13 @@ export default {
...
@@ -292,6 +304,13 @@ export default {
this
.
isLoading
=
false
;
this
.
isLoading
=
false
;
});
});
},
},
fetchCategory
()
{
getAppsList
({
scope_type
:
"
distinct
"
}).
then
(
res
=>
{
this
.
categoryList
=
res
.
data
}).
catch
(
err
=>
{
console
.
log
(
err
.
message
)
})
},
handleSizeChange
(
e
)
{
handleSizeChange
(
e
)
{
this
.
form
.
pagesize
=
e
;
this
.
form
.
pagesize
=
e
;
this
.
fetchData
(
mapTrim
(
this
.
form
));
this
.
fetchData
(
mapTrim
(
this
.
form
));
...
@@ -466,6 +485,7 @@ export default {
...
@@ -466,6 +485,7 @@ export default {
created
()
{
created
()
{
this
.
fetchData
(
mapTrim
(
this
.
form
));
this
.
fetchData
(
mapTrim
(
this
.
form
));
this
.
fetchSelectData
();
this
.
fetchSelectData
();
this
.
fetchCategory
();
},
},
};
};
</
script
>
</
script
>
...
...
frontend/vue.config.js
View file @
b9b8ad2e
...
@@ -31,7 +31,7 @@ module.exports = {
...
@@ -31,7 +31,7 @@ module.exports = {
// change xxx-api/login => mock/login
// change xxx-api/login => mock/login
// detail: https://cli.vuejs.org/config/#devserver-proxy
// detail: https://cli.vuejs.org/config/#devserver-proxy
"
/api/v1
"
:
{
"
/api/v1
"
:
{
target
:
"
http://127.0.0.1:500
0
/
"
,
target
:
"
http://127.0.0.1:500
1
/
"
,
changeOrigin
:
true
,
changeOrigin
:
true
,
pathRewrite
:
{},
pathRewrite
:
{},
},
},
...
...
tools/build_out/application/signal_manager.py
View file @
b9b8ad2e
...
@@ -9,6 +9,20 @@ class SignalManager(object):
...
@@ -9,6 +9,20 @@ class SignalManager(object):
actionGetListArea
=
PySignal
()
actionGetListArea
=
PySignal
()
actionGetArea
=
PySignal
()
actionGetArea
=
PySignal
()
actionPutArea
=
PySignal
()
actionPutArea
=
PySignal
()
actionPostApp
=
PySignal
()
actionDeleteApp
=
PySignal
()
actionGetListApp
=
PySignal
()
actionGetApp
=
PySignal
()
actionPutApp
=
PySignal
()
actionGetListPackage
=
PySignal
()
actionGetPackage
=
PySignal
()
actionPostUser
=
PySignal
()
actionDeleteUser
=
PySignal
()
actionGetListUser
=
PySignal
()
actionGetUser
=
PySignal
()
actionPutUser
=
PySignal
()
actionGetListLogin
=
PySignal
()
actionGetLogin
=
PySignal
()
def
__init__
(
self
):
def
__init__
(
self
):
super
()
.
__init__
()
super
()
.
__init__
()
...
...
tools/build_out/controllers/__init__.py
View file @
b9b8ad2e
...
@@ -3,6 +3,10 @@
...
@@ -3,6 +3,10 @@
from
application.app
import
signalManager
from
application.app
import
signalManager
from
.area
import
areaManager
from
.area
import
areaManager
from
.app
import
appManager
from
.package
import
packageManager
from
.user
import
userManager
from
.login
import
loginManager
def
initConnect
():
def
initConnect
():
signalManager
.
actionPostArea
.
connect
(
areaManager
.
post
)
signalManager
.
actionPostArea
.
connect
(
areaManager
.
post
)
...
@@ -10,5 +14,19 @@ def initConnect():
...
@@ -10,5 +14,19 @@ def initConnect():
signalManager
.
actionGetListArea
.
connect
(
areaManager
.
getList
)
signalManager
.
actionGetListArea
.
connect
(
areaManager
.
getList
)
signalManager
.
actionGetArea
.
connect
(
areaManager
.
get
)
signalManager
.
actionGetArea
.
connect
(
areaManager
.
get
)
signalManager
.
actionPutArea
.
connect
(
areaManager
.
put
)
signalManager
.
actionPutArea
.
connect
(
areaManager
.
put
)
signalManager
.
actionPostApp
.
connect
(
appManager
.
post
)
signalManager
.
actionDeleteApp
.
connect
(
appManager
.
delete
)
signalManager
.
actionGetListApp
.
connect
(
appManager
.
getList
)
signalManager
.
actionGetApp
.
connect
(
appManager
.
get
)
signalManager
.
actionPutApp
.
connect
(
appManager
.
put
)
signalManager
.
actionGetListPackage
.
connect
(
packageManager
.
getList
)
signalManager
.
actionGetPackage
.
connect
(
packageManager
.
get
)
signalManager
.
actionPostUser
.
connect
(
userManager
.
post
)
signalManager
.
actionDeleteUser
.
connect
(
userManager
.
delete
)
signalManager
.
actionGetListUser
.
connect
(
userManager
.
getList
)
signalManager
.
actionGetUser
.
connect
(
userManager
.
get
)
signalManager
.
actionPutUser
.
connect
(
userManager
.
put
)
signalManager
.
actionGetListLogin
.
connect
(
loginManager
.
getList
)
signalManager
.
actionGetLogin
.
connect
(
loginManager
.
get
)
initConnect
()
initConnect
()
\ No newline at end of file
tools/build_out/controllers/app.py
0 → 100644
View file @
b9b8ad2e
from
datetime
import
datetime
from
application.app
import
db
from
models.app
import
AppModel
from
webcreator.utils
import
ResponseCode
,
response_result
class
AppResource
(
object
):
def
__init__
(
self
):
super
()
.
__init__
()
def
get
(
self
,
params
):
# handle business
filters
=
[]
result
=
AppModel
.
query
.
filter
(
*
filters
)
.
order_by
(
AppModel
.
areaId
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
result
def
post
(
self
,
params
,
jwt
=
None
):
# handle business
result
=
AppModel
.
query
.
filter
(
AppModel
.
areaName
==
params
.
get
(
'areaName'
))
.
first
()
if
result
and
result
.
is_delete
:
result
.
is_delete
=
False
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
elif
result
and
result
.
is_delete
==
False
:
return
response_result
(
ResponseCode
.
EXISTS_ERROR
)
result
=
AppModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
def
put
(
self
,
id
,
params
,
jwt
=
None
):
# handle business
result
=
AppModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA
)
if
params
:
for
key
,
value
in
params
.
items
():
if
value
!=
None
:
setattr
(
result
,
key
,
value
)
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
else
:
return
response_result
(
ResponseCode
.
PARAM_NULL
)
def
delete
(
self
,
id
,
jwt
=
None
):
# handle business
result
=
AppModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA_FOUND
)
else
:
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
appManager
=
AppResource
()
\ No newline at end of file
tools/build_out/controllers/login.py
0 → 100644
View file @
b9b8ad2e
from
datetime
import
datetime
from
application.app
import
db
from
models.login
import
LoginModel
from
webcreator.utils
import
ResponseCode
,
response_result
class
LoginResource
(
object
):
def
__init__
(
self
):
super
()
.
__init__
()
def
get
(
self
,
params
):
# handle business
filters
=
[]
result
=
LoginModel
.
query
.
filter
(
*
filters
)
.
order_by
(
LoginModel
.
areaId
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
result
def
post
(
self
,
params
,
jwt
=
None
):
# handle business
result
=
LoginModel
.
query
.
filter
(
LoginModel
.
areaName
==
params
.
get
(
'areaName'
))
.
first
()
if
result
and
result
.
is_delete
:
result
.
is_delete
=
False
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
elif
result
and
result
.
is_delete
==
False
:
return
response_result
(
ResponseCode
.
EXISTS_ERROR
)
result
=
LoginModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
def
put
(
self
,
id
,
params
,
jwt
=
None
):
# handle business
result
=
LoginModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA
)
if
params
:
for
key
,
value
in
params
.
items
():
if
value
!=
None
:
setattr
(
result
,
key
,
value
)
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
else
:
return
response_result
(
ResponseCode
.
PARAM_NULL
)
def
delete
(
self
,
id
,
jwt
=
None
):
# handle business
result
=
LoginModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA_FOUND
)
else
:
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
loginManager
=
LoginResource
()
\ No newline at end of file
tools/build_out/controllers/package.py
0 → 100644
View file @
b9b8ad2e
from
datetime
import
datetime
from
application.app
import
db
from
models.package
import
PackageModel
from
webcreator.utils
import
ResponseCode
,
response_result
class
PackageResource
(
object
):
def
__init__
(
self
):
super
()
.
__init__
()
def
get
(
self
,
params
):
# handle business
filters
=
[]
result
=
PackageModel
.
query
.
filter
(
*
filters
)
.
order_by
(
PackageModel
.
areaId
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
result
def
post
(
self
,
params
,
jwt
=
None
):
# handle business
result
=
PackageModel
.
query
.
filter
(
PackageModel
.
areaName
==
params
.
get
(
'areaName'
))
.
first
()
if
result
and
result
.
is_delete
:
result
.
is_delete
=
False
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
elif
result
and
result
.
is_delete
==
False
:
return
response_result
(
ResponseCode
.
EXISTS_ERROR
)
result
=
PackageModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
def
put
(
self
,
id
,
params
,
jwt
=
None
):
# handle business
result
=
PackageModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA
)
if
params
:
for
key
,
value
in
params
.
items
():
if
value
!=
None
:
setattr
(
result
,
key
,
value
)
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
else
:
return
response_result
(
ResponseCode
.
PARAM_NULL
)
def
delete
(
self
,
id
,
jwt
=
None
):
# handle business
result
=
PackageModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA_FOUND
)
else
:
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
packageManager
=
PackageResource
()
\ No newline at end of file
tools/build_out/controllers/user.py
0 → 100644
View file @
b9b8ad2e
from
datetime
import
datetime
from
application.app
import
db
from
models.user
import
UserModel
from
webcreator.utils
import
ResponseCode
,
response_result
class
UserResource
(
object
):
def
__init__
(
self
):
super
()
.
__init__
()
def
get
(
self
,
params
):
# handle business
filters
=
[]
result
=
UserModel
.
query
.
filter
(
*
filters
)
.
order_by
(
UserModel
.
areaId
)
.
paginate
(
params
.
get
(
'page'
,
1
),
params
.
get
(
'pageSize'
,
10
),
error_out
=
False
)
return
result
def
post
(
self
,
params
,
jwt
=
None
):
# handle business
result
=
UserModel
.
query
.
filter
(
UserModel
.
areaName
==
params
.
get
(
'areaName'
))
.
first
()
if
result
and
result
.
is_delete
:
result
.
is_delete
=
False
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
elif
result
and
result
.
is_delete
==
False
:
return
response_result
(
ResponseCode
.
EXISTS_ERROR
)
result
=
UserModel
(
**
params
)
db
.
session
.
add
(
result
)
db
.
session
.
commit
()
return
response_result
(
ResponseCode
.
OK
)
def
put
(
self
,
id
,
params
,
jwt
=
None
):
# handle business
result
=
UserModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA
)
if
params
:
for
key
,
value
in
params
.
items
():
if
value
!=
None
:
setattr
(
result
,
key
,
value
)
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
db
.
session
.
commit
()
else
:
return
response_result
(
ResponseCode
.
PARAM_NULL
)
def
delete
(
self
,
id
,
jwt
=
None
):
# handle business
result
=
UserModel
.
query
.
get
(
id
)
if
not
result
:
return
response_result
(
ResponseCode
.
NO_DATA_FOUND
)
else
:
result
.
update_by
=
jwt
[
'id'
]
result
.
update_date
=
datetime
.
now
()
result
.
is_delete
=
True
db
.
session
.
delete
(
result
)
db
.
session
.
commit
()
userManager
=
UserResource
()
\ No newline at end of file
tools/build_out/logs/running.log
View file @
b9b8ad2e
...
@@ -555,3 +555,15 @@
...
@@ -555,3 +555,15 @@
[2021-06-15 10:51:14,114][ INFO] [ _internal.py _log 225] * Restarting with stat
[2021-06-15 10:51:14,114][ INFO] [ _internal.py _log 225] * Restarting with stat
[2021-06-15 10:51:15,218][WARNING] [ _internal.py _log 225] * Debugger is active!
[2021-06-15 10:51:15,218][WARNING] [ _internal.py _log 225] * Debugger is active!
[2021-06-15 10:51:15,280][ INFO] [ _internal.py _log 225] * Debugger PIN: 182-666-074
[2021-06-15 10:51:15,280][ INFO] [ _internal.py _log 225] * Debugger PIN: 182-666-074
[2021-06-15 10:51:15,507][ INFO] [ _internal.py _log 225] * Running on http://127.0.0.1:3000/ (Press CTRL+C to quit)
[2021-06-15 11:10:06,108][ INFO] [ _internal.py _log 225] * Detected change in 'D:\\projects\\scriptiot\\evm-store\\tools\\build_out\\manager.py', reloading
[2021-06-15 11:10:06,221][ INFO] [ _internal.py _log 225] * Restarting with stat
[2021-06-15 14:08:51,000][ INFO] [ _internal.py _log 225] * Restarting with stat
[2021-06-15 14:08:52,172][WARNING] [ _internal.py _log 225] * Debugger is active!
[2021-06-15 14:08:52,216][ INFO] [ _internal.py _log 225] * Debugger PIN: 182-666-074
[2021-06-15 14:08:52,454][ INFO] [ _internal.py _log 225] * Running on http://127.0.0.1:3000/ (Press CTRL+C to quit)
[2021-06-15 15:31:27,665][ INFO] [ _internal.py _log 225] * Detected change in 'D:\\projects\\scriptiot\\evm-store\\tools\\build_out\\webcreator\\__init__.py', reloading
[2021-06-15 15:31:27,792][ INFO] [ _internal.py _log 225] * Restarting with stat
[2021-06-15 16:06:30,317][ INFO] [ _internal.py _log 225] * Restarting with stat
[2021-06-15 16:06:31,585][WARNING] [ _internal.py _log 225] * Debugger is active!
[2021-06-15 16:06:31,633][ INFO] [ _internal.py _log 225] * Debugger PIN: 182-666-074
tools/build_out/models/app.py
0 → 100644
View file @
b9b8ad2e
# -*- coding: utf-8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
AppModel
(
PrimaryModel
):
__tablename__
=
'evm_app'
app_name
=
db
.
Column
(
db
.
String
(
70
),
index
=
True
)
app_icon
=
db
.
Column
(
db
.
String
(
200
))
app_version
=
db
.
Column
(
db
.
String
(
20
))
category
=
db
.
Column
(
db
.
Integer
)
category_2th
=
db
.
Column
(
db
.
Integer
)
developer
=
db
.
Column
(
db
.
Integer
)
download_url
=
db
.
Column
(
db
.
String
(
20
))
app_file_size
=
db
.
Column
(
db
.
Integer
)
app_screen_size
=
db
.
Column
(
db
.
Integer
)
app_arch
=
db
.
Column
(
db
.
String
(
20
))
app_review
=
db
.
Column
(
db
.
String
(
100
))
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
app_name
,
app_icon
,
app_version
,
category
,
category_2th
,
developer
,
download_url
,
app_file_size
,
app_screen_size
,
app_arch
,
app_review
):
self
.
app_name
=
app_name
self
.
app_icon
=
app_icon
self
.
app_version
=
app_version
self
.
category
=
category
self
.
category_2th
=
category_2th
self
.
developer
=
developer
self
.
download_url
=
download_url
self
.
app_file_size
=
app_file_size
self
.
app_screen_size
=
app_screen_size
self
.
app_arch
=
app_arch
self
.
app_review
=
app_review
def
__repr__
(
self
):
return
'<AppModel
%
r>'
%
(
self
.
app_name
)
def
to_json
(
self
):
return
{
'app_name'
:
self
.
app_name
,
'app_icon'
:
self
.
app_icon
,
'app_version'
:
self
.
app_version
,
'category'
:
self
.
category
,
'category_2th'
:
self
.
category_2th
,
'developer'
:
self
.
developer
,
'download_url'
:
self
.
download_url
,
'app_file_size'
:
self
.
app_file_size
,
'app_screen_size'
:
self
.
app_screen_size
,
'app_arch'
:
self
.
app_arch
,
'app_review'
:
self
.
app_review
,
}
class
PostAppSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
AppModel
app_name
=
ma
.
auto_field
()
app_icon
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
developer
=
ma
.
auto_field
()
app_screen_size
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
app_review
=
ma
.
auto_field
()
postAppSchema
=
PostAppSchema
()
postAppsSchema
=
PostAppSchema
(
many
=
True
)
class
DeleteAppSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
AppModel
deleteAppSchema
=
DeleteAppSchema
()
class
GetListAppSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
AppModel
page
=
fields
.
Integer
(
required
=
False
)
pageSize
=
fields
.
Integer
(
required
=
False
)
app_name
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
getListAppSchema
=
GetListAppSchema
()
class
GetAppSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
AppModel
app_name
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
getAppSchema
=
GetAppSchema
()
class
PutAppSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
AppModel
app_name
=
ma
.
auto_field
()
app_icon
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
app_screen_size
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
app_review
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
putAppSchema
=
PutAppSchema
()
tools/build_out/models/area.py
View file @
b9b8ad2e
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
from
application.app
import
db
,
ma
from
application.app
import
db
,
ma
from
datetime
import
datetime
from
.base
import
PrimaryModel
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
AreaModel
(
PrimaryModel
):
class
AreaModel
(
PrimaryModel
):
__tablename__
=
'area'
__tablename__
=
'
evm_
area'
areaCode
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
)
areaCode
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
)
areaName
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
)
areaName
=
db
.
Column
(
db
.
String
(
20
),
index
=
True
)
...
@@ -32,6 +31,17 @@ class AreaModel(PrimaryModel):
...
@@ -32,6 +31,17 @@ class AreaModel(PrimaryModel):
def
__repr__
(
self
):
def
__repr__
(
self
):
return
'<AreaModel
%
r>'
%
(
self
.
areaCode
)
return
'<AreaModel
%
r>'
%
(
self
.
areaCode
)
def
to_json
(
self
):
return
{
'areaCode'
:
self
.
areaCode
,
'areaName'
:
self
.
areaName
,
'level'
:
self
.
level
,
'cityCode'
:
self
.
cityCode
,
'center'
:
self
.
center
,
'parentId'
:
self
.
parentId
,
'hasChildren'
:
self
.
hasChildren
,
}
class
PostAreaSchema
(
ma
.
SQLAlchemySchema
):
class
PostAreaSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
class
Meta
:
...
...
tools/build_out/models/login.py
0 → 100644
View file @
b9b8ad2e
# -*- coding: utf-8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
LoginModel
(
PrimaryModel
):
__tablename__
=
'evm_login'
user
=
db
.
Column
(
db
.
Integer
)
login_at
=
db
.
Column
(
db
.
String
(
200
))
user_agent
=
db
.
Column
(
db
.
String
(
200
))
ip
=
db
.
Column
(
db
.
String
(
128
))
geo_location
=
db
.
Column
(
db
.
String
(
200
))
operator
=
db
.
Column
(
db
.
String
(
50
))
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
user
,
login_at
,
user_agent
,
ip
,
geo_location
,
operator
):
self
.
user
=
user
self
.
login_at
=
login_at
self
.
user_agent
=
user_agent
self
.
ip
=
ip
self
.
geo_location
=
geo_location
self
.
operator
=
operator
def
__repr__
(
self
):
return
'<LoginModel
%
r>'
%
(
self
.
user
)
def
to_json
(
self
):
return
{
'login_at'
:
self
.
login_at
,
'user_agent'
:
self
.
user_agent
,
'ip'
:
self
.
ip
,
'geo_location'
:
self
.
geo_location
,
'operator'
:
self
.
operator
,
}
class
GetListLoginSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
LoginModel
page
=
fields
.
Integer
(
required
=
False
)
pageSize
=
fields
.
Integer
(
required
=
False
)
user
=
ma
.
auto_field
()
login_at
=
ma
.
auto_field
()
user_agent
=
ma
.
auto_field
()
ip
=
ma
.
auto_field
()
geo_location
=
ma
.
auto_field
()
operator
=
ma
.
auto_field
()
getListLoginSchema
=
GetListLoginSchema
()
class
GetLoginSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
LoginModel
user
=
ma
.
auto_field
()
login_at
=
ma
.
auto_field
()
user_agent
=
ma
.
auto_field
()
ip
=
ma
.
auto_field
()
geo_location
=
ma
.
auto_field
()
operator
=
ma
.
auto_field
()
getLoginSchema
=
GetLoginSchema
()
tools/build_out/models/package.py
0 → 100644
View file @
b9b8ad2e
# -*- 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
)
app_version
=
db
.
Column
(
db
.
String
(
200
))
package_info
=
db
.
Column
(
db
.
String
(
20
))
file_path
=
db
.
Column
(
db
.
String
(
200
))
source
=
db
.
Column
(
db
.
Integer
)
user_agent
=
db
.
Column
(
db
.
String
(
200
))
download_url
=
db
.
Column
(
db
.
String
(
200
))
ip
=
db
.
Column
(
db
.
String
(
128
))
geo_location
=
db
.
Column
(
db
.
String
(
200
))
operator
=
db
.
Column
(
db
.
String
(
50
))
# __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
):
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
def
__repr__
(
self
):
return
'<PackageModel
%
r>'
%
(
self
.
app
)
def
to_json
(
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
()
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/user.py
0 → 100644
View file @
b9b8ad2e
# -*- coding: utf-8 -*-
from
application.app
import
db
,
ma
from
.base
import
PrimaryModel
from
marshmallow
import
Schema
,
fields
,
INCLUDE
,
EXCLUDE
class
UserModel
(
PrimaryModel
):
__tablename__
=
'evm_user'
app_name
=
db
.
Column
(
db
.
String
(
70
),
index
=
True
)
app_icon
=
db
.
Column
(
db
.
String
(
200
))
app_version
=
db
.
Column
(
db
.
String
(
20
))
category
=
db
.
Column
(
db
.
Integer
)
category_2th
=
db
.
Column
(
db
.
Integer
)
developer
=
db
.
Column
(
db
.
Integer
)
download_url
=
db
.
Column
(
db
.
String
(
20
))
app_file_size
=
db
.
Column
(
db
.
Integer
)
app_screen_size
=
db
.
Column
(
db
.
Integer
)
app_arch
=
db
.
Column
(
db
.
String
(
20
))
app_review
=
db
.
Column
(
db
.
String
(
100
))
# __table_args__ = (
# db.Index('idx_xxx', 'xxx', mysql_using='btree'),
# )
def
__init__
(
self
,
app_name
,
app_icon
,
app_version
,
category
,
category_2th
,
developer
,
download_url
,
app_file_size
,
app_screen_size
,
app_arch
,
app_review
):
self
.
app_name
=
app_name
self
.
app_icon
=
app_icon
self
.
app_version
=
app_version
self
.
category
=
category
self
.
category_2th
=
category_2th
self
.
developer
=
developer
self
.
download_url
=
download_url
self
.
app_file_size
=
app_file_size
self
.
app_screen_size
=
app_screen_size
self
.
app_arch
=
app_arch
self
.
app_review
=
app_review
def
__repr__
(
self
):
return
'<UserModel
%
r>'
%
(
self
.
app_name
)
def
to_json
(
self
):
return
{
'app_name'
:
self
.
app_name
,
'app_icon'
:
self
.
app_icon
,
'app_version'
:
self
.
app_version
,
'category'
:
self
.
category
,
'category_2th'
:
self
.
category_2th
,
'developer'
:
self
.
developer
,
'download_url'
:
self
.
download_url
,
'app_file_size'
:
self
.
app_file_size
,
'app_screen_size'
:
self
.
app_screen_size
,
'app_arch'
:
self
.
app_arch
,
'app_review'
:
self
.
app_review
,
}
class
PostUserSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
UserModel
app_name
=
ma
.
auto_field
()
app_icon
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
developer
=
ma
.
auto_field
()
app_screen_size
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
app_review
=
ma
.
auto_field
()
postUserSchema
=
PostUserSchema
()
postUsersSchema
=
PostUserSchema
(
many
=
True
)
class
DeleteUserSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
UserModel
deleteUserSchema
=
DeleteUserSchema
()
class
GetListUserSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
UserModel
page
=
fields
.
Integer
(
required
=
False
)
pageSize
=
fields
.
Integer
(
required
=
False
)
app_name
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
getListUserSchema
=
GetListUserSchema
()
class
GetUserSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
UserModel
app_name
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
getUserSchema
=
GetUserSchema
()
class
PutUserSchema
(
ma
.
SQLAlchemySchema
):
class
Meta
:
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
model
=
UserModel
app_name
=
ma
.
auto_field
()
app_icon
=
ma
.
auto_field
()
app_version
=
ma
.
auto_field
()
app_screen_size
=
ma
.
auto_field
()
app_arch
=
ma
.
auto_field
()
app_review
=
ma
.
auto_field
()
category
=
ma
.
auto_field
()
category_2th
=
ma
.
auto_field
()
putUserSchema
=
PutUserSchema
()
tools/build_out/views/__init__.py
View file @
b9b8ad2e
...
@@ -2,10 +2,11 @@
...
@@ -2,10 +2,11 @@
from
flask
import
Blueprint
from
flask
import
Blueprint
from
flask_restful
import
Api
from
flask_restful
import
Api
from
.
import
area
from
.
import
area
from
.
import
app
from
.
import
package
from
.
import
user
from
.
import
login
api_v1
=
Blueprint
(
'api_v1'
,
__name__
)
api_v1
=
Blueprint
(
'api_v1'
,
__name__
)
...
@@ -13,4 +14,16 @@ api = Api(api_v1)
...
@@ -13,4 +14,16 @@ api = Api(api_v1)
api
.
add_resource
(
area
.
AreaResource
,
'/area/<string:uuid>'
)
api
.
add_resource
(
area
.
AreaResource
,
'/area/<string:uuid>'
)
api
.
add_resource
(
area
.
AreaResourceList
,
'/area'
,
endpoint
=
'/'
)
api
.
add_resource
(
area
.
AreaResourceList
,
'/area'
)
api
.
add_resource
(
app
.
AppResource
,
'/app/<string:uuid>'
)
api
.
add_resource
(
app
.
AppResourceList
,
'/app'
)
api
.
add_resource
(
package
.
PackageResource
,
'/package/<string:uuid>'
)
api
.
add_resource
(
package
.
PackageResourceList
,
'/package'
)
api
.
add_resource
(
user
.
UserResource
,
'/user/<string:uuid>'
)
api
.
add_resource
(
user
.
UserResourceList
,
'/user'
)
api
.
add_resource
(
login
.
LoginResource
,
'/login/<string:uuid>'
)
api
.
add_resource
(
login
.
LoginResourceList
,
'/login'
)
tools/build_out/views/app.py
0 → 100644
View file @
b9b8ad2e
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
,
getAppSchema
,
putAppSchema
from
webcreator.response
import
ResponseCode
,
response_result
class
AppResource
(
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
print
(
"========>"
,
json_payload
)
data
=
getListAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetApp
.
emit
(
**
data
)
json_dumps
=
getListAppSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
@
jwt_required
def
post
(
self
):
try
:
json_payload
=
request
.
json
data
=
postAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPostApp
.
emit
(
**
data
)
json_dumps
=
postAppSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
class
AppResourceList
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
@
jwt_required
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
print
(
"========>"
,
json_payload
)
data
=
getAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetApp
.
emit
(
**
data
)
json_dumps
=
getAppSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
@
jwt_required
def
put
(
self
):
try
:
json_payload
=
request
.
json
data
=
putAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPutApp
.
emit
(
**
data
)
json_dumps
=
putAppSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
@
jwt_required
def
delete
(
self
):
try
:
json_payload
=
request
.
json
data
=
deleteAppSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionDeleteApp
.
emit
(
**
data
)
json_dumps
=
deleteAppSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
tools/build_out/views/area.py
View file @
b9b8ad2e
...
@@ -12,8 +12,6 @@ class AreaResource(Resource):
...
@@ -12,8 +12,6 @@ class AreaResource(Resource):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
# self.parser = RequestParser()
@
jwt_required
def
get
(
self
):
def
get
(
self
):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser.add_argument("page", type=int, location="args", default=1)
# self.parser.add_argument("page", type=int, location="args", default=1)
...
@@ -31,7 +29,6 @@ class AreaResource(Resource):
...
@@ -31,7 +29,6 @@ class AreaResource(Resource):
current_app
.
logger
.
error
(
e
)
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
@
jwt_required
@
jwt_required
def
post
(
self
):
def
post
(
self
):
try
:
try
:
...
@@ -44,13 +41,13 @@ class AreaResource(Resource):
...
@@ -44,13 +41,13 @@ class AreaResource(Resource):
current_app
.
logger
.
error
(
e
)
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
class
AreaResourceList
(
Resource
):
class
AreaResourceList
(
Resource
):
def
__init__
(
self
):
def
__init__
(
self
):
pass
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
# self.parser = RequestParser()
@
jwt_required
@
jwt_required
def
get
(
self
):
def
get
(
self
):
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
...
@@ -93,4 +90,4 @@ class AreaResourceList(Resource):
...
@@ -93,4 +90,4 @@ class AreaResourceList(Resource):
return
jsonify
(
json_dumps
),
200
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
\ No newline at end of file
tools/build_out/views/login.py
0 → 100644
View file @
b9b8ad2e
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.login
import
getListLoginSchema
,
getLoginSchema
from
webcreator.response
import
ResponseCode
,
response_result
class
LoginResource
(
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
print
(
"========>"
,
json_payload
)
data
=
getListLoginSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetLogin
.
emit
(
**
data
)
json_dumps
=
getListLoginSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
class
LoginResourceList
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
@
jwt_required
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
print
(
"========>"
,
json_payload
)
data
=
getLoginSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetLogin
.
emit
(
**
data
)
json_dumps
=
getLoginSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
tools/build_out/views/package.py
0 → 100644
View file @
b9b8ad2e
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
,
getPackageSchema
from
webcreator.response
import
ResponseCode
,
response_result
class
PackageResource
(
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
print
(
"========>"
,
json_payload
)
data
=
getListPackageSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetPackage
.
emit
(
**
data
)
json_dumps
=
getListPackageSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
class
PackageResourceList
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
@
jwt_required
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
print
(
"========>"
,
json_payload
)
data
=
getPackageSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetPackage
.
emit
(
**
data
)
json_dumps
=
getPackageSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
tools/build_out/views/user.py
0 → 100644
View file @
b9b8ad2e
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.user
import
postUserSchema
,
deleteUserSchema
,
getListUserSchema
,
getUserSchema
,
putUserSchema
from
webcreator.response
import
ResponseCode
,
response_result
class
UserResource
(
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
print
(
"========>"
,
json_payload
)
data
=
getListUserSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetUser
.
emit
(
**
data
)
json_dumps
=
getListUserSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
@
jwt_required
def
post
(
self
):
try
:
json_payload
=
request
.
json
data
=
postUserSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPostUser
.
emit
(
**
data
)
json_dumps
=
postUserSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
class
UserResourceList
(
Resource
):
def
__init__
(
self
):
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
@
jwt_required
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
print
(
"========>"
,
json_payload
)
data
=
getUserSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionGetUser
.
emit
(
**
data
)
json_dumps
=
getUserSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
@
jwt_required
def
put
(
self
):
try
:
json_payload
=
request
.
json
data
=
putUserSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionPutUser
.
emit
(
**
data
)
json_dumps
=
putUserSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
@
jwt_required
def
delete
(
self
):
try
:
json_payload
=
request
.
json
data
=
deleteUserSchema
.
load
(
json_payload
)
result
=
signalManager
.
actionDeleteUser
.
emit
(
**
data
)
json_dumps
=
deleteUserSchema
.
dump
(
result
)
return
jsonify
(
json_dumps
),
200
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
response_result
(
ResponseCode
.
DB_ERROR
)
tools/config.json
View file @
b9b8ad2e
This diff is collapsed.
Click to expand it.
tools/gen_code.py
View file @
b9b8ad2e
...
@@ -41,7 +41,7 @@ def handleSignal(config):
...
@@ -41,7 +41,7 @@ def handleSignal(config):
target_file
=
os
.
sep
.
join
([
"controllers"
,
"__init__.py"
])
target_file
=
os
.
sep
.
join
([
"controllers"
,
"__init__.py"
])
handleRender
(
config
,
'signal_manager_init.tpl'
,
target_file
)
handleRender
(
config
,
'signal_manager_init.tpl'
,
target_file
)
def
handleModel
(
config
):
def
handleModel
(
config
,
application
):
# 将所有有默认值的字段分为一组,没有默认值的字段分为另一组
# 将所有有默认值的字段分为一组,没有默认值的字段分为另一组
# 生成模板代码时,无默认值的字段在前,有默认值的字段字在后
# 生成模板代码时,无默认值的字段在前,有默认值的字段字在后
# 收集表字段信息
# 收集表字段信息
...
@@ -53,7 +53,7 @@ def handleModel(config):
...
@@ -53,7 +53,7 @@ def handleModel(config):
print
(
m
)
print
(
m
)
target_file
=
os
.
sep
.
join
([
"models"
,
"{}.py"
.
format
(
config
.
get
(
"name"
))])
target_file
=
os
.
sep
.
join
([
"models"
,
"{}.py"
.
format
(
config
.
get
(
"name"
))])
handleRender
(
config
,
'model.tpl'
,
target_file
,
fields
=
fields
,
extend
=
extend
)
handleRender
(
config
,
'model.tpl'
,
target_file
,
fields
=
fields
,
extend
=
extend
,
application
=
application
)
def
handleView
(
config
):
def
handleView
(
config
):
target_file
=
os
.
sep
.
join
([
"views"
,
"{}.py"
.
format
(
config
.
get
(
"name"
))])
target_file
=
os
.
sep
.
join
([
"views"
,
"{}.py"
.
format
(
config
.
get
(
"name"
))])
...
@@ -80,7 +80,7 @@ def handleRender(result, tpl, target_file, **kwargs):
...
@@ -80,7 +80,7 @@ def handleRender(result, tpl, target_file, **kwargs):
def
parseConfig
(
config
):
def
parseConfig
(
config
):
# 解析配置文件
# 解析配置文件
for
cfg
in
config
.
get
(
"apis"
):
for
cfg
in
config
.
get
(
"apis"
):
handleModel
(
cfg
)
handleModel
(
cfg
,
config
.
get
(
"application"
)
)
handleView
(
cfg
)
handleView
(
cfg
)
handleController
(
cfg
)
handleController
(
cfg
)
handleResources
(
config
.
get
(
"apis"
))
handleResources
(
config
.
get
(
"apis"
))
...
...
tools/templates/controller.tpl
View file @
b9b8ad2e
from datetime import datetime
from datetime import datetime
from application.app import db
from application.app import db
from models.{{ config['
model']['tableName'] }} import {{ config['model']['className'] }}
from models.{{ config['
name'] }} import {{ config['name'] | letterUpper }}Model
from webcreator.utils import ResponseCode, response_result
from webcreator.utils import ResponseCode, response_result
class {{ config['
controller']['className'] }}
(object):
class {{ config['
name'] | letterUpper }}Resource
(object):
def __init__(self):
def __init__(self):
super().__init__()
super().__init__()
def get(self, params):
def get(self, params):
# handle business
# handle business
filters = []
filters = []
result = {{ config['
model']['className'] }}.query.filter(*filters).order_by({{ config['model']['className'] }}
.areaId).paginate(params.get('page', 1), params.get('pageSize', 10), error_out=False)
result = {{ config['
name'] | letterUpper }}Model.query.filter(*filters).order_by({{ config['name'] | letterUpper }}Model
.areaId).paginate(params.get('page', 1), params.get('pageSize', 10), error_out=False)
return result
return result
def post(self, params, jwt=None):
def post(self, params, jwt=None):
# handle business
# handle business
result = {{ config['
model']['className'] }}.query.filter({{ config['model']['className'] }}
.areaName == params.get('areaName')).first()
result = {{ config['
name'] | letterUpper }}Model.query.filter({{ config['name'] | letterUpper }}Model
.areaName == params.get('areaName')).first()
if result and result.is_delete:
if result and result.is_delete:
result.is_delete = False
result.is_delete = False
result.update_by = jwt['id']
result.update_by = jwt['id']
...
@@ -26,14 +26,14 @@ class {{ config['controller']['className'] }}(object):
...
@@ -26,14 +26,14 @@ class {{ config['controller']['className'] }}(object):
elif result and result.is_delete == False:
elif result and result.is_delete == False:
return response_result(ResponseCode.EXISTS_ERROR)
return response_result(ResponseCode.EXISTS_ERROR)
result = {{ config['
model']['className'] }}
(**params)
result = {{ config['
name'] | letterUpper }}Model
(**params)
db.session.add(result)
db.session.add(result)
db.session.commit()
db.session.commit()
return response_result(ResponseCode.OK)
return response_result(ResponseCode.OK)
def put(self, id, params, jwt=None):
def put(self, id, params, jwt=None):
# handle business
# handle business
result = {{ config['
model']['className'] }}
.query.get(id)
result = {{ config['
name'] | letterUpper }}Model
.query.get(id)
if not result: return response_result(ResponseCode.NO_DATA)
if not result: return response_result(ResponseCode.NO_DATA)
if params:
if params:
for key, value in params.items():
for key, value in params.items():
...
@@ -46,7 +46,7 @@ class {{ config['controller']['className'] }}(object):
...
@@ -46,7 +46,7 @@ class {{ config['controller']['className'] }}(object):
def delete(self, id, jwt=None):
def delete(self, id, jwt=None):
# handle business
# handle business
result = {{ config['
model']['className'] }}
.query.get(id)
result = {{ config['
name'] | letterUpper }}Model
.query.get(id)
if not result: return response_result(ResponseCode.NO_DATA_FOUND)
if not result: return response_result(ResponseCode.NO_DATA_FOUND)
else:
else:
result.update_by = jwt['id']
result.update_by = jwt['id']
...
@@ -55,4 +55,4 @@ class {{ config['controller']['className'] }}(object):
...
@@ -55,4 +55,4 @@ class {{ config['controller']['className'] }}(object):
db.session.delete(result)
db.session.delete(result)
db.session.commit()
db.session.commit()
{{ config["name"] }}Manager = {{ config['controller']['className'] }}()
{{ config["name"] }}Manager = {{ config['name'] | letterUpper }}Resource()
\ No newline at end of file
\ No newline at end of file
tools/templates/model.tpl
View file @
b9b8ad2e
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
from application.app import db, ma
from application.app import db, ma
from datetime import datetime
from .base import PrimaryModel
from .base import PrimaryModel
{%- if extend %}
{
#
判断是否有扩展字段,也就是
model
对象不包含的字段,因为查询里面还有
page
和
pageSize
等这两种字段
#
}
{%- if extend %}
{
#
判断是否有扩展字段,也就是
model
对象不包含的字段,因为查询里面还有
page
和
pageSize
等这两种字段
#
}
from marshmallow import Schema, fields, INCLUDE, EXCLUDE
from marshmallow import Schema, fields, INCLUDE, EXCLUDE
{%- endif %}
{%- endif %}
class {{ config['
model']['className'] }}
(PrimaryModel):
class {{ config['
name'] | letterUpper }}Model
(PrimaryModel):
__tablename__ = '{{
config['model']['tableN
ame'] }}'
__tablename__ = '{{
application["tablePrefix"] }}{{ config['n
ame'] }}'
{% for value in config['model']['fields'] %}
{% for value in config['model']['fields'] %}
{%- if value.get('primaryKey', None) %}
{%- if value.get('primaryKey', None) %}
{{ value.get('name') }} = db.Column(db.{{ value.get('dataType') }}, primary_key = True, {% if value.get('autoIncrement') %}autoincrement = True{% endif %})
{{ value.get('name') }} = db.Column(db.{{ value.get('dataType') }}, primary_key = True, {% if value.get('autoIncrement') %}autoincrement = True{% endif %})
...
@@ -29,14 +28,23 @@ class {{ config['model']['className'] }}(PrimaryModel):
...
@@ -29,14 +28,23 @@ class {{ config['model']['className'] }}(PrimaryModel):
{%- endfor %}
{%- endfor %}
def __repr__(self):
def __repr__(self):
return '
<
{{
config
['
model
']['
className
']
}}
%
r
>
' % (self.{{ config['model']['fields'][0]["name"] }})
return '
<
{{
config
['
name
']
|
letterUpper
}}
Model
%
r
>
' % (self.{{ config['model']['fields'][0]["name"] }})
def to_json(self):
return {
{%- for item in config['model']['fields'] %}
{%- if item.get("toJson") %}
'{{ item.get("name") }}': self.{{ item.get("name") }},
{%- endif %}
{%- endfor %}
}
{% for key, value in config["view"].items() %}
{% for key, value in config["view"].items() %}
class {{ key |letterUpper }}{{ config['name'] | letterUpper }}Schema(ma.SQLAlchemySchema):
class {{ key |
letterUpper }}{{ config['name'] | letterUpper }}Schema(ma.SQLAlchemySchema):
class Meta:
class Meta:
# unknown = INCLUDE # 未知字段默认包含
# unknown = INCLUDE # 未知字段默认包含
# unknown = EXCLUDE # 未知字段默认排除
# unknown = EXCLUDE # 未知字段默认排除
model = {{ config['
model']['className'] }}
model = {{ config['
name'] | letterUpper }}Model
{%- if config['model']['foreignKey'] %}
{%- if config['model']['foreignKey'] %}
include_fk = {{ config['model']['foreignKey'] }}
include_fk = {{ config['model']['foreignKey'] }}
{% endif %}
{% endif %}
...
...
tools/templates/router.tpl
View file @
b9b8ad2e
...
@@ -2,16 +2,15 @@
...
@@ -2,16 +2,15 @@
from flask import Blueprint
from flask import Blueprint
from flask_restful import Api
from flask_restful import Api
{%- for item in config %}
{% for item in config %}
from . import {
{
item
[
"name"
]
}
}
from . import {
{
item
[
"name"
]
}
}
{% endfor %}
{%
-
endfor %}
api_v1 = Blueprint('api_v1', __name__)
api_v1 = Blueprint('api_v1', __name__)
api = Api(api_v1)
api = Api(api_v1)
{% for item in config %}
{% for item in config %}
api.add_resource({{ item['name'] }}.{{ item['
controller']['className'] }}, '{{ item['view']['put']['path'] }}'{% if item['view']['put']['endpoint'] %}, endpoint={{ item['view']['pu
t']['endpoint'] }}{% endif %})
api.add_resource({{ item['name'] }}.{{ item['
name'] | letterUpper }}Resource, '/{{ item['name'] }}{{ item['view']['get']['path'] }}'{% if item['view']['get']['endpoint'] %}, endpoint={{ item['view']['ge
t']['endpoint'] }}{% endif %})
api.add_resource({{ item['name'] }}.{{ item['
controller']['className'] }}List, '{{ item['view']['post']['path'] }}'{% if item['view']['post']['endpoint'] %}, endpoint='{{ item['view']['po
st']['endpoint'] }}'{% endif %})
api.add_resource({{ item['name'] }}.{{ item['
name'] | letterUpper }}ResourceList, '/{{ item['name'] }}{{ item['view']['getList']['path'] }}'{% if item['view']['getList']['endpoint'] %}, endpoint='{{ item['view']['getLi
st']['endpoint'] }}'{% endif %})
{% endfor %}
{% endfor %}
tools/templates/view.tpl
View file @
b9b8ad2e
...
@@ -9,13 +9,14 @@ from models.{{ config['name'] }} import {% for k, v in config["view"].items() -%
...
@@ -9,13 +9,14 @@ from models.{{ config['name'] }} import {% for k, v in config["view"].items() -%
{%- endfor %}
{%- endfor %}
from webcreator.response import ResponseCode, response_result
from webcreator.response import ResponseCode, response_result
class {{ config['
controller']['className'] | letterUpper }}
(Resource):
class {{ config['
name'] | letterUpper }}Resource
(Resource):
def __init__(self):
def __init__(self):
pass
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
# self.parser = RequestParser()
{% if config["view"]["getList"] %}
{%- if config["view"]["getList"] %}
{% if config["view"]["getList"]["auth"] %}
@jwt_required
@jwt_required
{%- endif %}
{%- endif %}
def get(self):
def get(self):
...
@@ -34,8 +35,10 @@ class {{ config['controller']['className'] | letterUpper }}(Resource):
...
@@ -34,8 +35,10 @@ class {{ config['controller']['className'] | letterUpper }}(Resource):
except Exception as e:
except Exception as e:
current_app.logger.error(e)
current_app.logger.error(e)
return response_result(ResponseCode.DB_ERROR)
return response_result(ResponseCode.DB_ERROR)
{%- endif %}
{% if config["view"]["post"] %}
{%- if config["view"]["post"] %}
{% if config["view"]["post"]["auth"] %}
@jwt_required
@jwt_required
{%- endif %}
{%- endif %}
def post(self):
def post(self):
...
@@ -43,19 +46,21 @@ class {{ config['controller']['className'] | letterUpper }}(Resource):
...
@@ -43,19 +46,21 @@ class {{ config['controller']['className'] | letterUpper }}(Resource):
json_payload = request.json
json_payload = request.json
data = post{{ config['name'] | letterUpper }}Schema.load(json_payload)
data = post{{ config['name'] | letterUpper }}Schema.load(json_payload)
result = signalManager.actionPost{{ config["name"] | letterUpper }}.emit(**data)
result = signalManager.actionPost{{ config["name"] | letterUpper }}.emit(**data)
json_dumps = post{{ config['name'] |letterUpper }}Schema.dump(result)
json_dumps = post{{ config['name'] |
letterUpper }}Schema.dump(result)
return jsonify(json_dumps), 200
return jsonify(json_dumps), 200
except Exception as e:
except Exception as e:
current_app.logger.error(e)
current_app.logger.error(e)
return response_result(ResponseCode.DB_ERROR)
return response_result(ResponseCode.DB_ERROR)
{% endif %}
class {{ config['
controller']['className'] | letterUpper }}
List(Resource):
class {{ config['
name'] | letterUpper }}Resource
List(Resource):
def __init__(self):
def __init__(self):
pass
pass
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# 特殊参数,即不是从json获取参数的接口,可以将这个注释打开
# self.parser = RequestParser()
# self.parser = RequestParser()
{% if config["view"]["get"] %}
{%- if config["view"]["get"] %}
{% if config["view"]["get"]["auth"] %}
@jwt_required
@jwt_required
{%- endif %}
{%- endif %}
def get(self):
def get(self):
...
@@ -74,8 +79,10 @@ class {{ config['controller']['className'] | letterUpper }}List(Resource):
...
@@ -74,8 +79,10 @@ class {{ config['controller']['className'] | letterUpper }}List(Resource):
except Exception as e:
except Exception as e:
current_app.logger.error(e)
current_app.logger.error(e)
return response_result(ResponseCode.DB_ERROR)
return response_result(ResponseCode.DB_ERROR)
{% endif %}
{% if config["view"]["put"] %}
{%- if config["view"]["put"] %}
{% if config["view"]["put"]["auth"] %}
@jwt_required
@jwt_required
{%- endif %}
{%- endif %}
def put(self):
def put(self):
...
@@ -88,8 +95,10 @@ class {{ config['controller']['className'] | letterUpper }}List(Resource):
...
@@ -88,8 +95,10 @@ class {{ config['controller']['className'] | letterUpper }}List(Resource):
except Exception as e:
except Exception as e:
current_app.logger.error(e)
current_app.logger.error(e)
return response_result(ResponseCode.DB_ERROR)
return response_result(ResponseCode.DB_ERROR)
{% endif %}
{% if config["view"]["delete"] %}
{%- if config["view"]["delete"] %}
{% if config["view"]["delete"]["auth"] %}
@jwt_required
@jwt_required
{%- endif %}
{%- endif %}
def delete(self):
def delete(self):
...
@@ -101,4 +110,5 @@ class {{ config['controller']['className'] | letterUpper }}List(Resource):
...
@@ -101,4 +110,5 @@ class {{ config['controller']['className'] | letterUpper }}List(Resource):
return jsonify(json_dumps), 200
return jsonify(json_dumps), 200
except Exception as e:
except Exception as e:
current_app.logger.error(e)
current_app.logger.error(e)
return response_result(ResponseCode.DB_ERROR)
return response_result(ResponseCode.DB_ERROR)
\ No newline at end of file
{% endif %}
\ No newline at end of file
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