Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
mancheng
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
mancheng
Commits
6015a4ca
Commit
6015a4ca
authored
Dec 28, 2021
by
赵宇
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix
parent
904b82da
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
829 additions
and
189 deletions
+829
-189
apps/atlas/__init__.py
+1
-1
apps/atlas/view_graph.py
+555
-25
apps/models.py
+273
-163
No files found.
apps/atlas/__init__.py
View file @
6015a4ca
...
...
@@ -3,7 +3,7 @@ from flask import Blueprint
# 创建蓝图对象
api_atlas
=
Blueprint
(
"api_atlas"
,
__name__
)
from
.
import
view
#
from
.
import
view
from
.
import
view_detail
# 产业发展图谱下详情页
from
.
import
view_es
# 政策
from
.
import
view_graph
# 产业发展图谱业图谱
...
...
apps/atlas/view_graph.py
View file @
6015a4ca
...
...
@@ -3,20 +3,17 @@ from apps.atlas import api_atlas
from
apps.util
import
login_required
from
apps.utils.response_code
import
RET
from
apps.models
import
*
from
apps.utils.neo4j_conn
import
conn_neo4j
,
neo4j_dict
from
apps.utils.neo4j_conn
import
conn_neo4j
,
neo4j_dict
from
apps
import
redis_store
import
json
graph
=
conn_neo4j
()
'''行业名转换ptp字典两个 neo4j_dict line 164/177'''
def
deleteDuplicate
(
li
):
'''
列表[字典]去重
:param li:
:return:
'''
'''列表[字典]去重'''
temp_list
=
list
(
set
([
str
(
i
)
for
i
in
li
]))
li
=
[
eval
(
i
)
for
i
in
temp_list
]
return
li
...
...
@@ -30,10 +27,10 @@ def find_up_thr(name_query, relation):
# 零级,上中下三游
data
=
{
"node"
:
"{}"
.
format
(
relation
[:
2
]),
"level"
:
1
,
"subNodeList"
:
[],
}
"node"
:
"{}"
.
format
(
relation
[:
2
]),
"level"
:
1
,
"subNodeList"
:
[],
}
sql_01
=
"match (n) -[r:`{}`]->(m) WHERE n.name='{}' return n.name,r.type,m.name"
.
format
(
relation_c
,
name_query
)
res_zero
=
graph
.
run
(
sql_01
)
.
data
()
res_one
=
list
(
set
([
i
[
"m.name"
]
for
i
in
list
(
res_zero
)]))
# 不重复的一级节点
...
...
@@ -41,10 +38,10 @@ def find_up_thr(name_query, relation):
pname_one
=
it
# 一级
node_one
=
{
"node"
:
"{}"
.
format
(
pname_one
),
"level"
:
2
,
"subNodeList"
:
[]
}
"node"
:
"{}"
.
format
(
pname_one
),
"level"
:
2
,
"subNodeList"
:
[]
}
sql_02
=
"match (n) -[r]->(m) WHERE n.name='{}' return n.name,r.type,m.name"
.
format
(
pname_one
)
result
=
graph
.
run
(
sql_02
)
.
data
()
result
=
list
(
set
([
i
[
"m.name"
]
for
i
in
list
(
result
)]))
# 不重复的二级节点
...
...
@@ -52,10 +49,10 @@ def find_up_thr(name_query, relation):
pname_two
=
item
# 二级
node_two
=
{
"node"
:
"{}"
.
format
(
pname_two
),
"level"
:
3
,
"subNodeList"
:
[]
}
"node"
:
"{}"
.
format
(
pname_two
),
"level"
:
3
,
"subNodeList"
:
[]
}
sql_03
=
"match (n) -[r]->(m) WHERE n.name='{}' return n.name,r.type,m.name"
.
format
(
pname_two
)
result3
=
graph
.
run
(
sql_03
)
.
data
()
result3
=
list
(
set
([
i
[
"m.name"
]
for
i
in
list
(
result3
)]))
# 不重复的三级节点
...
...
@@ -63,10 +60,10 @@ def find_up_thr(name_query, relation):
pname_thr
=
itm
# 三级
node_thr
=
{
"node"
:
"{}"
.
format
(
pname_thr
),
"level"
:
4
,
"subNodeList"
:
[]
}
"node"
:
"{}"
.
format
(
pname_thr
),
"level"
:
4
,
"subNodeList"
:
[]
}
node_two
[
"subNodeList"
]
.
append
(
node_thr
)
node_one
[
"subNodeList"
]
.
append
(
node_two
)
data
[
"subNodeList"
]
.
append
(
node_one
)
...
...
@@ -114,4 +111,538 @@ def industry_chain():
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
jsonify
(
code
=
RET
.
DBERR
,
msg
=
"数据异常"
)
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"获取成功"
,
data
=
result
)
\ No newline at end of file
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"获取成功"
,
data
=
result
)
# 点击产业联动显示企业
@api_atlas.route
(
'/industry/enterprise'
,
methods
=
[
'POST'
])
# @login_required
def
industry_enterprise
():
'''骨干企业数据'''
req_dict
=
request
.
get_json
()
inid
=
req_dict
.
get
(
"inid"
)
# 行业id
cate
=
req_dict
.
get
(
"cate"
)
# 行业等级,(高端设备等五个为"1",子行业为"2")
page
=
req_dict
.
get
(
"page"
)
# 分页页码
perpage
=
req_dict
.
get
(
"perpage"
)
# 分页大小
# entype = req_dict.get("entype") # 企业类型id
# qualificat = req_dict.get("qualificat") # 企业资质id
# capital = req_dict.get("capital") # 注册资本id
# quoted = req_dict.get("quoted") # 上市板块
# district = req_dict.get("district") # 太原市下区县
# yearid = req_dict.get("yearid") # 成立时间年限id
# roundid = req_dict.get("roundid") # 融资轮次id(天使/种子,1)(PreA/A+,2)(PreB/B+,3)(C轮以上,4)(收并购,5)(战略投资,6)(其他,7)
# product = req_dict.get("product") # 产业产品选择
# company_name = req_dict.get("company_name") # 产业产品名称筛选
sorts
=
req_dict
.
get
(
"sorts"
)
# 排序 sorts "1"按时间降序 ,“2”按热度降序
# 校验参数完整性
if
not
all
([
inid
,
cate
,
page
,
perpage
]):
return
jsonify
(
code
=
RET
.
PARAMERR
,
msg
=
"参数不完整"
)
try
:
if
cate
==
"1"
:
company
=
Company
.
query
.
filter_by
(
f_type
=
inid
,
city
=
"晋城市"
)
else
:
company
=
Company
.
query
.
filter_by
(
c_type
=
inid
,
city
=
"晋城市"
)
# # 企业类型
# if entype:
# company = company.filter_by(entypeid=entype)
# # 企业资质
# if qualificat:
# if qualificat == 1:
# company = company.filter_by(high_new=1)
# if qualificat == 2:
# company = company.filter_by(tbe=1)
# if qualificat == 3:
# company = company.filter_by(quoted_company=1)
# if qualificat == 4:
# company = company.filter_by(sxonhun=1)
# if qualificat == 5:
# company = company.filter_by(isfive=1)
# if qualificat == 6:
# company = company.filter_by(unicorn=1)
# if qualificat == 7:
# company = company.filter_by(dengl=1)
# if qualificat == 8:
# company = company.filter_by(zjtg=1)
# if qualificat == 9:
# company = company.filter_by(scale=1)
# if qualificat == 10:
# company = company.filter_by(serve=1)
# # 注册资本
# if capital:
# company = company.filter_by(capital_id=capital)
# # 上市板块
# if quoted:
# company = company.filter_by(public_id=quoted)
# # 区域选择
# if district:
# company = company.filter_by(district=district)
# # 成立时间id
# if yearid:
# company = company.filter_by(yearid=yearid)
# # 融资轮次
# if roundid:
# company = company.filter_by(roundid=roundid)
# if company_name:
# company = company.filter(Company.company_name.like("%{}%".format(company_name)))
# if product:
# company = Company.query.filter(Company.product_all.like("%{}%".format(product)))
size
=
company
.
count
()
if
sorts
==
"1"
:
companys
=
company
.
order_by
(
Company
.
build_date
.
desc
())
.
paginate
(
page
,
perpage
)
.
items
# 企业热度倒序
else
:
companys
=
company
.
order_by
(
Company
.
hots
.
desc
())
.
paginate
(
page
,
perpage
)
.
items
# 企业热度倒序
df
=
[{
"id"
:
i
.
id
,
"company_name"
:
i
.
company_name
,
"hots"
:
i
.
hots
}
for
i
in
companys
]
data
=
{
"size"
:
size
,
"df"
:
df
}
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
jsonify
(
code
=
RET
.
DBERR
,
msg
=
"数据库查询错误"
)
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"获取成功"
,
data
=
data
)
# 点击产业创新资源联动显示 innovation resource
@api_atlas.route
(
'/innovate/resource'
,
methods
=
[
'POST'
])
def
industry_resource
():
'''创新资源机构列表'''
req_dict
=
request
.
get_json
()
inid
=
req_dict
.
get
(
"inid"
)
# 行业id
industry_level
=
req_dict
.
get
(
"industry_level"
)
# 行业等级,(父行业高端设备等五个为"1",子行业为"2")
select_flag
=
req_dict
.
get
(
"select_flag"
)
# 机构类型id. 高等院校1,科研机构2,创新平台3,产业服务平台4
page
=
req_dict
.
get
(
"page"
)
# 分页页码
perpage
=
req_dict
.
get
(
"perpage"
)
# 分页大小
# 校验参数完整性
if
not
all
([
inid
,
industry_level
,
select_flag
,
page
,
perpage
]):
return
jsonify
(
code
=
RET
.
PARAMERR
,
msg
=
"参数不完整"
)
name
=
Industry
.
query
.
filter_by
(
nid
=
inid
)
.
first
()
.
oname
if
select_flag
==
1
:
# 高等院校
try
:
if
industry_level
==
"1"
:
college
=
College
.
query
.
filter
(
College
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
else
:
college
=
College
.
query
.
filter
(
College
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
college
.
count
()
college
=
college
.
paginate
(
page
,
perpage
)
.
items
data
=
{
"df"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
"admin"
:
i
.
admin
,
"buildate"
:
i
.
buildate
,
"charge"
:
i
.
charge
,
"cate"
:
i
.
category
,
"nature"
:
i
.
nature
,
"ccode"
:
i
.
ccode
,
"address"
:
i
.
address
,
}
for
i
in
college
],
"size"
:
size
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"查询成功"
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
jsonify
(
code
=
RET
.
DATAERR
,
msg
=
"参数错误"
)
elif
select_flag
==
2
:
# 科研机构
if
industry_level
==
"1"
:
scientific
=
Scientific
.
query
.
filter
(
Scientific
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
else
:
scientific
=
Scientific
.
query
.
filter
(
Scientific
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
scientific
.
count
()
scientific
=
scientific
.
paginate
(
page
,
perpage
)
.
items
data
=
{
"df"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
"admin"
:
i
.
admin
,
"telephone"
:
i
.
telephone
,
"fax"
:
i
.
fax
,
"postcode"
:
i
.
postcode
,
"address"
:
i
.
address
}
for
i
in
scientific
],
"size"
:
size
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"查询成功"
,
data
=
data
)
elif
select_flag
==
3
:
# 创新平台3
if
industry_level
==
"1"
:
lab
=
Lab
.
query
.
filter
(
Lab
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
else
:
lab
=
Lab
.
query
.
filter
(
Lab
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
lab
.
count
()
lab
=
lab
.
paginate
(
page
,
perpage
)
.
items
data
=
{
"df"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
"admin"
:
i
.
admin
,
"cate"
:
i
.
cate
,
"fax"
:
i
.
fax
,
"postcode"
:
i
.
postcode
,
"address"
:
i
.
address
}
for
i
in
lab
],
"size"
:
size
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"查询成功"
,
data
=
data
)
else
:
return
jsonify
(
code
=
RET
.
PARAMERR
,
msg
=
"参数错误"
)
def
get_data
(
name
,
industry_level
,
select_flag
,
page
,
perpage
):
try
:
if
select_flag
in
[
1
,
2
]:
# 当选择行政区/园区时
if
industry_level
==
"1"
:
# 当选择的是父产业时
induzone
=
Induzone
.
query
.
filter
(
Induzone
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
else
:
# 当选择的是子产业时
induzone
=
Induzone
.
query
.
filter
(
Induzone
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
induzone
.
count
()
# 分页总数
induzone
=
induzone
.
paginate
(
page
,
perpage
)
.
items
if
select_flag
==
1
:
# 封装行政区数据
admin_data
=
{
"admin_data"
:
[{
"id"
:
i
.
id
,
"region"
:
i
.
region
,
"area"
:
i
.
area
,
"address"
:
i
.
address
,
"cluster"
:
i
.
cluster
}
for
i
in
induzone
],
"size"
:
size
}
return
admin_data
if
select_flag
==
2
:
# 封装园区数据
garden_data
=
{
"garden"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
# 园区名称
"region"
:
i
.
region
,
# 所属地区
"phone"
:
i
.
phone
,
# 联系电话
"level"
:
i
.
level
,
# 园区级别
"cate"
:
i
.
cate
,
# 园区类型
"address"
:
i
.
address
,
}
for
i
in
induzone
],
# 园区地址
"size"
:
size
}
return
garden_data
if
select_flag
==
3
:
# 当选择载体土地时
if
industry_level
==
"1"
:
# 当选择的是父产业时
land
=
ZaitiLand
.
query
.
filter
(
ZaitiLand
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
else
:
land
=
ZaitiLand
.
query
.
filter
(
ZaitiLand
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
land
.
count
()
# 分页总数
land
=
land
.
paginate
(
page
,
perpage
)
.
items
# 封装土地数据
land_data
=
{
"land_data"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
"num"
:
i
.
num
,
"nature"
:
i
.
nature
,
"acreage"
:
i
.
acreage
,
"industry_type"
:
i
.
industry_type
,
"telephone"
:
i
.
telephone
}
for
i
in
land
],
"size"
:
size
}
return
land_data
if
select_flag
==
4
:
# 当选择载体楼宇时
if
industry_level
==
"1"
:
# 当选择的是父产业时
build
=
ZaitiBuild
.
query
.
filter
(
ZaitiBuild
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
else
:
build
=
ZaitiBuild
.
query
.
filter
(
ZaitiBuild
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
build
.
count
()
# 分页总数
build
=
build
.
paginate
(
page
,
perpage
)
.
items
# 封装楼宇数据
build_data
=
{
"build_data"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
"acreage"
:
i
.
acreage
,
"buide_type"
:
i
.
buide_type
,
"industry_type"
:
i
.
industry_type
,
"telephone"
:
i
.
telephone
,
"addr"
:
i
.
addr
,
}
for
i
in
build
],
"size"
:
size
}
return
build_data
if
select_flag
==
5
:
# 当选择载体厂房时
if
industry_level
==
"1"
:
# 当选择的是父产业时
factory
=
ZaitiFactory
.
query
.
filter
(
ZaitiFactory
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
else
:
factory
=
ZaitiFactory
.
query
.
filter
(
ZaitiFactory
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
factory
.
count
()
# 分页总数
factory
=
factory
.
paginate
(
page
,
perpage
)
.
items
# 封装楼宇数据
factory_data
=
{
"factory_data"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
"acreage"
:
i
.
acreage
,
"buide_type"
:
i
.
buide_type
,
"industry_type"
:
i
.
industry_type
,
"telephone"
:
i
.
telephone
,
"addr"
:
i
.
addr
,
}
for
i
in
factory
],
"size"
:
size
}
return
factory_data
except
Exception
as
e
:
print
(
e
)
current_app
.
logger
.
error
(
e
)
return
jsonify
(
code
=
RET
.
DBERR
,
msg
=
"数据库查询错误"
)
# 产业载体
@api_atlas.route
(
'/carrier/zaiti'
,
methods
=
[
'POST'
])
def
industry_zaiti
():
'''产业载体数据'''
req_dict
=
request
.
get_json
()
inid
=
req_dict
.
get
(
"inid"
)
# 行业id
industry_level
=
req_dict
.
get
(
"industry_level"
)
# 行业等级,(父行业高端设备等五个为"1",子行业为"2")
select_flag
=
req_dict
.
get
(
"select_flag"
)
# 1为行政区,2为园区,3为产业载体,4为土地,5为楼宇,6为厂房
page
=
req_dict
.
get
(
"page"
)
# 分页页码
perpage
=
req_dict
.
get
(
"perpage"
)
# 分页大小
# 校验参数完整性
if
not
all
([
page
,
perpage
]):
return
jsonify
(
code
=
RET
.
PARAMERR
,
msg
=
"参数不完整"
)
if
inid
:
name
=
Industry
.
query
.
filter_by
(
nid
=
inid
)
.
first
()
.
oname
# 获取导航对应的真名
try
:
data
=
get_data
(
name
,
industry_level
,
select_flag
,
page
,
perpage
)
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"数据查询成功"
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
else
:
name
=
'煤层气'
# 默认页面为煤层气的数据
try
:
data
=
get_data
(
name
,
"1"
,
1
,
page
,
perpage
)
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"数据查询成功"
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
# 产业政策
@api_atlas.route
(
'/industry/indus_policy'
,
methods
=
[
'POST'
])
def
industry_policy
():
"""产业政策数据"""
req_dict
=
request
.
get_json
()
inid
=
req_dict
.
get
(
"inid"
)
# 行业id
industry_level
=
req_dict
.
get
(
"industry_level"
)
# 行业等级,(父行业高端设备等五个为"1",子行业为"2")
page
=
req_dict
.
get
(
"page"
)
# 分页页码
perpage
=
req_dict
.
get
(
"perpage"
)
# 分页大小
# 校验参数完整性
if
not
all
([
page
,
perpage
]):
return
jsonify
(
code
=
RET
.
PARAMERR
,
msg
=
"参数不完整"
)
try
:
indu_policy
=
''
size
=
''
name
=
Industry
.
query
.
filter_by
(
nid
=
inid
)
.
first
()
.
oname
# 获取导航对应的真名
if
industry_level
==
"1"
:
indu_policy
=
InduPolicy
.
query
.
filter
(
InduPolicy
.
navigator
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
indu_policy
.
count
()
# 分页总数
indu_policy
=
indu_policy
.
paginate
(
page
,
perpage
)
.
items
if
industry_level
==
"2"
:
indu_policy
=
InduPolicy
.
query
.
filter
(
InduPolicy
.
navigat
.
like
(
"
%
{}
%
"
.
format
(
name
)))
size
=
indu_policy
.
count
()
# 分页总数
indu_policy
=
indu_policy
.
paginate
(
page
,
perpage
)
.
items
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
return
jsonify
(
code
=
RET
.
DBERR
,
msg
=
"数据库查询错误"
)
# 封装政策数据
policy_data
=
{
"policy_data"
:
[{
"id"
:
i
.
id
,
"name"
:
i
.
name
,
"org"
:
i
.
org
,
"pubdate"
:
i
.
pubdate
}
for
i
in
indu_policy
],
"size"
:
size
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
"政策数据查询成功"
,
data
=
policy_data
)
# 创新资源-高等院校详情
@api_atlas.route
(
'/innovate/college_detail'
,
methods
=
[
'POST'
])
def
get_college_detail
():
req_dict
=
request
.
get_json
()
college_id
=
req_dict
.
get
(
'id'
)
try
:
college
=
College
.
query
.
filter_by
(
id
=
college_id
)
.
first
()
# 封装院校数据
data
=
{
"name"
:
college
.
name
,
# 校名
"charge"
:
college
.
charge
,
# 主管部门
"buildate"
:
college
.
buildate
,
# 创办时间
"nature"
:
college
.
nature
,
# 办学性质
"clas"
:
college
.
clas
,
# 学校类别
"address"
:
college
.
address
,
# 校址
"introduct"
:
college
.
introduct
,
# 简介
"ccode"
:
college
.
ccode
,
# 学校代码
"feature"
:
college
.
feature
,
# 学校特色
"research"
:
college
.
research
,
# 研究方向
"lng"
:
college
.
lng
,
# 经度
"lat"
:
college
.
lat
# 纬度
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'院校详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
# 创新资源-科研机构详情
@api_atlas.route
(
'/innovate/scientific_detail'
,
methods
=
[
'POST'
])
def
get_scientific_detail
():
req_dict
=
request
.
get_json
()
scientific_id
=
req_dict
.
get
(
'id'
)
try
:
scientific
=
Scientific
.
query
.
filter_by
(
id
=
scientific_id
)
.
first
()
# 封装科研机构数据
data
=
{
"name"
:
scientific
.
name
,
# 名称
"admin"
:
scientific
.
admin
,
# 行政区
"telephone"
:
scientific
.
telephone
,
# 联系电话
"fax"
:
scientific
.
fax
,
# 传真
"postcode"
:
scientific
.
postcode
,
# 邮编
"address"
:
scientific
.
address
,
# 地址
"introduct"
:
scientific
.
introduct
,
# 简介
"lng"
:
scientific
.
lng
,
# 经度
"lat"
:
scientific
.
lat
# 纬度
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'科研机构详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
# 创新资源-创新平台详情
@api_atlas.route
(
'/innovate/Lab_detail'
,
methods
=
[
'POST'
])
def
get_lab_detail
():
req_dict
=
request
.
get_json
()
lab_id
=
req_dict
.
get
(
'id'
)
try
:
lab
=
Lab
.
query
.
filter_by
(
id
=
lab_id
)
.
first
()
# 封装创新平台数据
data
=
{
"name"
:
lab
.
name
,
# 名称
"address"
:
lab
.
address
,
# 地址
"introduct"
:
lab
.
introduct
,
# 简介
"lng"
:
lab
.
lng
,
# 经度
"lat"
:
lab
.
lat
# 纬度
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'创新平台详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
# 产业载体-行政区详情信息
@api_atlas.route
(
'/carrier/zaiti_detail'
,
methods
=
[
'POST'
])
def
get_zaiti_detail_data
():
req_dict
=
request
.
get_json
()
id
=
req_dict
.
get
(
'id'
)
cate_id
=
req_dict
.
get
(
'cate_id'
)
# 1为行政区,2为园区,3为土地,4为楼宇,5为厂房
print
(
cate_id
)
if
cate_id
==
1
:
try
:
induzone
=
Induzone
.
query
.
filter_by
(
id
=
id
)
.
first
()
data
=
{
"district"
:
induzone
.
district
,
"cate"
:
induzone
.
cate
,
"area"
:
induzone
.
area
,
"address"
:
induzone
.
address
,
"cluster"
:
induzone
.
cluster
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'行政区详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
if
cate_id
==
2
:
try
:
induzone
=
Induzone
.
query
.
filter_by
(
id
=
id
)
.
first
()
data
=
{
"name"
:
induzone
.
name
,
# 名称
"district"
:
induzone
.
district
,
# 所属地区
"phone"
:
induzone
.
phone
,
# 电话
"email"
:
induzone
.
email
,
"address"
:
induzone
.
address
,
# 园区地址
"industry_position"
:
induzone
.
industry_position
,
# 产业定位
"cate"
:
induzone
.
cate
,
# 园区类型
"gdp"
:
induzone
.
gdp
,
# GDP
"represent"
:
induzone
.
represent
,
# 代表企业
"introduct"
:
induzone
.
introduct
,
# 简介
"level"
:
induzone
.
level
,
# 等级
"charge"
:
induzone
.
charge
,
# 园区负责人
"site"
:
induzone
.
site
,
# 园区所在地
"industry_type"
:
induzone
.
industry_type
,
# 产业类型
"area"
:
induzone
.
area
,
# 面积
"out_power"
:
induzone
.
out_power
,
# 产出强度(万元/亩)
"invest_power"
:
induzone
.
invest_power
,
# 亩均投资强度(万元/亩)
"value_product"
:
induzone
.
value_product
,
# 亩均年产值(万元/亩)
"tax"
:
induzone
.
tax
,
# 亩均年税收(万元/亩)
"indu_land"
:
induzone
.
indu_land
,
# 工业土地均价(万元/亩)
"comm_land"
:
induzone
.
comm_land
,
# 商办土地均价(万元/亩)
"highmag"
:
induzone
.
highmag
,
# 高层管理人员(元/月)
"middlemag"
:
induzone
.
middlemag
,
# 中级管理人员(元/月)
"worker"
:
induzone
.
worker
,
# 普通员工(元/月)
"trans_facility"
:
induzone
.
trans_facility
,
# 交通配套
"goods_trans"
:
induzone
.
goods_trans
,
# 货物运输
"live_facility"
:
induzone
.
live_facility
,
# 园区生活配套
"market"
:
induzone
.
market
,
# 百货商场
"hotel_bus"
:
induzone
.
hotel_bus
,
# 酒店商务
"medical"
:
induzone
.
medical
,
# 医疗机构
"education"
:
induzone
.
education
,
# 教育教育
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'园区详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
if
cate_id
==
3
:
try
:
land
=
ZaitiLand
.
query
.
filter_by
(
id
=
id
)
.
first
()
data
=
{
"num"
:
land
.
num
,
# 编号
"name"
:
land
.
name
,
# 地块名称
"addr"
:
land
.
addr
,
# 地址
"nature"
:
land
.
nature
,
# 土地性质
"acreage"
:
land
.
acreage
,
# 面积
"target"
:
land
.
target
,
# 规划指标
"age_limit"
:
land
.
age_limit
,
# 出让年限
"industry_type"
:
land
.
industry_type
,
# 产业类型
"telephone"
:
land
.
telephone
# 电话
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'土地详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
if
cate_id
==
4
:
try
:
build
=
ZaitiBuild
.
query
.
filter_by
(
id
=
id
)
.
first
()
data
=
{
"name"
:
build
.
name
,
# 楼宇名称
"addr"
:
build
.
addr
,
# 地址
"acreage"
:
build
.
acreage
,
# 面积
"buide_type"
:
build
.
buide_type
,
# 楼宇类型
"industry_type"
:
build
.
industry_type
,
# 产业类型
"rate"
:
build
.
rate
,
# 出租率
"telephone"
:
build
.
telephone
# 电话
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'楼宇详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
if
cate_id
==
5
:
try
:
factory
=
ZaitiFactory
.
query
.
filter_by
(
id
=
id
)
.
first
()
data
=
{
"name"
:
factory
.
name
,
# 厂房名称
"addr"
:
factory
.
addr
,
# 地址
"acreage"
:
factory
.
acreage
,
# 面积
"structure"
:
factory
.
structure
,
# 简介
"height"
:
factory
.
height
,
# 高度
"bearing"
:
factory
.
bearing
,
# 承重
"new_level"
:
factory
.
new_level
,
# 新旧程度
"other"
:
factory
.
other
,
# 其他
"industry_type"
:
factory
.
industry_type
,
# 产业类型
"factory_type"
:
factory
.
factory_type
,
# 厂房类型
"telephone"
:
factory
.
telephone
,
# 电话
}
return
jsonify
(
code
=
RET
.
OK
,
msg
=
'厂房详情查询成功!'
,
data
=
data
)
except
Exception
as
e
:
current_app
.
logger
.
error
(
e
)
apps/models.py
View file @
6015a4ca
...
...
@@ -246,6 +246,69 @@ class CompanyCustomer(db.Model):
relation
=
db
.
Column
(
db
.
String
(
32
),
doc
=
'关联关系'
,
comment
=
'关联关系'
)
# 晋城企业详情股权出质
class
CompanyStock
(
db
.
Model
):
__tablename_
=
"company_stock"
__table_args__
=
({
'comment'
:
'晋城企业详情股权出质'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
,
doc
=
'股权出质主键id'
,
comment
=
'股权出质主键id'
)
# 企业
company_id
=
db
.
Column
(
db
.
Integer
,
doc
=
'晋城企业id'
,
comment
=
'晋城企业id'
)
num
=
db
.
Column
(
db
.
String
(
32
),
doc
=
'等级编号'
,
comment
=
'等级编号'
)
person
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'出质人'
,
comment
=
'出质人'
)
from_company
=
db
.
Column
(
db
.
String
(
25
),
doc
=
'出质股权的企业'
,
comment
=
'出质股权的企业'
)
pledgee
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'质权人'
,
comment
=
'质权人'
)
amount
=
db
.
Column
(
db
.
Float
,
doc
=
'出质股权数额(万元)'
,
comment
=
'出质股权数额(万元)'
)
datatime
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'登记日期'
,
comment
=
'登记日期'
)
status
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'状态'
,
comment
=
'状态'
)
# 晋城企业详情股权质押
class
CompanyPledge
(
db
.
Model
):
__tablename_
=
"company_pledge"
__table_args__
=
({
'comment'
:
'晋城企业详情股权质押'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
,
doc
=
'股权质押主键id'
,
comment
=
'股权质押主键id'
)
# 企业
company_id
=
db
.
Column
(
db
.
Integer
,
doc
=
'晋城企业id'
,
comment
=
'晋城企业id'
)
person1
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'质押人'
,
comment
=
'质押人'
)
jion_company
=
db
.
Column
(
db
.
String
(
25
),
doc
=
'参股企业'
,
comment
=
'参股企业'
)
person2
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'质押权人'
,
comment
=
'质押权人'
)
number
=
db
.
Column
(
db
.
Float
,
doc
=
'质押股份总额(股)'
,
comment
=
'质押股份总额(股)'
)
amount
=
db
.
Column
(
db
.
Float
,
doc
=
'质押股份市值(元)'
,
comment
=
'质押股份市值(元)'
)
status
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'状态'
,
comment
=
'状态'
)
datatime
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'公告日期'
,
comment
=
'公告日期'
)
# 晋城企业详情担保信息
class
CompanyDanbao
(
db
.
Model
):
__tablename_
=
"company_pledge"
__table_args__
=
({
'comment'
:
'晋城企业详情担保信息'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
,
doc
=
'担保信息主键id'
,
comment
=
'担保信息主键id'
)
# 企业
company_id
=
db
.
Column
(
db
.
Integer
,
doc
=
'晋城企业id'
,
comment
=
'晋城企业id'
)
person1
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'被担保方'
,
comment
=
'被担保方'
)
person2
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'担保方'
,
comment
=
'担保方'
)
method
=
db
.
Column
(
db
.
String
(
10
),
doc
=
'方式'
,
comment
=
'方式'
)
amount
=
db
.
Column
(
db
.
Float
,
doc
=
'担保金额(万元)'
,
comment
=
'担保金额(万元)'
)
datatime
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'公告日期'
,
comment
=
'公告日期'
)
# 晋城企业详情专利信息
class
CompanyPatent
(
db
.
Model
):
__tablename_
=
"company_pledge"
__table_args__
=
({
'comment'
:
'晋城企业详情专利信息'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
,
doc
=
'专利信息主键id'
,
comment
=
'专利信息主键id'
)
# 企业
company_id
=
db
.
Column
(
db
.
Integer
,
doc
=
'晋城企业id'
,
comment
=
'晋城企业id'
)
name
=
db
.
Column
(
db
.
String
(
50
),
doc
=
'发明名称'
,
comment
=
'发明名称'
)
type
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'类型'
,
comment
=
'类型'
)
status
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'法律状态'
,
comment
=
'法律状态'
)
num
=
db
.
Column
(
db
.
String
(
50
),
doc
=
'申请号'
,
comment
=
'申请号'
)
day
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'申请日'
,
comment
=
'申请日'
)
open_num
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'公开号'
,
comment
=
'公开号'
)
datatime
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'公开日期'
,
comment
=
'公开日期'
)
person
=
db
.
Column
(
db
.
String
(
20
),
doc
=
'发明人'
,
comment
=
'发明人'
)
# 产业导航目录
class
Industry
(
db
.
Model
):
__tablename_
=
"industry"
...
...
@@ -262,7 +325,7 @@ class Industry(db.Model):
entities
=
db
.
Column
(
db
.
Integer
,
doc
=
'行业所包含细分行业实体数'
,
comment
=
'行业所包含细分行业实体数'
)
# 行业所包含细分行业实体数
# 招商驾驶舱-区县经济指标表
# 招商驾驶舱-区县经济指标表
/产业载体-行政区
class
City
(
BaseModel
,
db
.
Model
):
__tablename__
=
"city"
__table_args__
=
({
'comment'
:
'招商驾驶舱-区县经济指标表'
})
# 添加表注释
...
...
@@ -379,9 +442,6 @@ class InduPolicy(db.Model):
sorts_level
=
db
.
Column
(
db
.
Integer
,
doc
=
'发布机构排序'
,
comment
=
'发布机构排序'
)
# 发布机构排序
# 产业现状图谱-园区数据表
class
Induzone
(
db
.
Model
):
__tablename_
=
"induzone"
...
...
@@ -391,6 +451,8 @@ class Induzone(db.Model):
name
=
db
.
Column
(
db
.
String
(
255
),
doc
=
'园区名称'
,
comment
=
'园区名称'
)
# 园区姓名
image
=
db
.
Column
(
db
.
String
(
255
),
doc
=
'园区图片'
,
comment
=
'园区图片'
)
# 园区单图链接http://192.168.132.165:5000/static/images/garden.jpg
phone
=
db
.
Column
(
db
.
String
(
255
),
doc
=
'园区联系电话'
,
comment
=
'园区联系电话'
)
# 园区联系电话
email
=
db
.
Column
(
db
.
String
(
30
))
# 邮箱
address
=
db
.
Column
(
db
.
String
(
255
),
doc
=
'园区地址'
,
comment
=
'园区地址'
)
# 园区地址
industry_position
=
db
.
Column
(
db
.
String
(
255
),
doc
=
'产业定位'
,
comment
=
'产业定位'
)
# 产业定位
gdp
=
db
.
Column
(
db
.
Float
,
doc
=
'GDP(亿元)'
,
comment
=
'GDP(亿元)'
)
# GDP(亿元)
...
...
@@ -414,7 +476,7 @@ class Induzone(db.Model):
# acreage = db.Column(db.Float, doc='规划面积(平方公里)', comment='规划面积(平方公里)') # 规划面积(平方公里)
# actarea = db.Column(db.Float, doc='建成面积(平方公里)', comment='建成面积(平方公里)') # 建成面积(平方公里)
# tax = db.Column(db.Float, doc='税收要求(万元/亩)', comment='税收要求(万元/亩)') # 税收要求(万元/亩)
#
out_power = db.Column(db.Float, doc='产出强度(万元/亩)', comment='产出强度(万元/亩)') # 产出强度(万元/亩)
out_power
=
db
.
Column
(
db
.
Float
,
doc
=
'产出强度(万元/亩)'
,
comment
=
'产出强度(万元/亩)'
)
# 产出强度(万元/亩)
# indu_need = db.Column(db.String(255), doc='行业要求', comment='行业要求') # 行业要求
# fiscal = db.Column(db.Float, doc='财政收入(亿元)', comment='财政收入(亿元)') # 财政收入(亿元)
invest_power
=
db
.
Column
(
db
.
Float
,
doc
=
'亩均投资强度(万元/亩)'
,
comment
=
'亩均投资强度(万元/亩)'
)
# 投资强度(万元/亩)
...
...
@@ -485,12 +547,6 @@ class Induzone(db.Model):
policy_point
=
db
.
Column
(
db
.
Float
,
doc
=
'政策数的评分'
,
comment
=
'政策数的评分'
)
# 政策数的评分
development_zone
=
db
.
Column
(
db
.
String
(
255
),
doc
=
'所在开发区'
,
comment
=
'所在开发区'
)
# 所在开发区
# 项目列表
# class Item(db.Model):
# __tablename_ = "item"
...
...
@@ -641,157 +697,155 @@ class Induzone(db.Model):
# enterprise_id = db.Column(db.Integer, db.ForeignKey("enterprise.id"), primary_key=True)
#
#
# # 用户
# class User(BaseModel, db.Model):
# __tablename__ = "user"
#
# # 基本信息
# id = db.Column(db.Integer, primary_key=True, autoincrement=True) # 用户编号
# name = db.Column(db.String(32), unique=True) # 用户名
# password_hash = db.Column(db.String(128)) # 加密的密码
# real_name = db.Column(db.String(32)) # 姓名
# age = db.Column(db.Integer) # 年龄
# sex = db.Column(db.Integer) # 性别,男1女2
# mobile = db.Column(db.String(11), unique=True) # 手机号
# email = db.Column(db.String(20)) # 邮箱
# # 个人中心的信息
# function = db.Column(db.Text) # 工作职能 ---个人中心
# flag = db.Column(db.Integer) # 普通1,政府2
# status = db.Column(db.Integer) # 通过1,在审2,驳回3
# # bused = db.Column(db.Integer) # 账户有无组织
# # 政府信息
# position = db.Column(db.String(128)) # 现任职务(职务)
# unit = db.Column(db.String(128)) # 现任工作机构、单位(政府机构,局)
# section = db.Column(db.String(128)) # 所在部门(部门)
# group = db.Column(db.String(128)) # 所在组
# level = db.Column(db.String(128)) # 职级(职级) 跟role_id对应
# leader = db.Column(db.String(32)) # 领导(直属领导)
#
# # 三方登陆唯一标识
# # 微信
# vxopenid = db.Column(db.String(128), unique=True) # 微信openid
# vxunionid = db.Column(db.String(128), unique=True) # 微信unionid
# # 角色(职级配置)
# role_id = db.Column(db.Integer, db.ForeignKey("role.id"))
# role = db.relationship("Role", backref=db.backref("users"))
#
# # # 钉钉
# # ddopenid = db.Column(db.String(128)) # 钉钉openid
# # ddunionid = db.Column(db.String(128)) # 钉钉unionid
# # dddingid = db.Column(db.String(128)) # 钉钉dingid
#
# # 用户关注行业(图谱)
# industry = db.relationship("Industry", secondary="user_industry", backref=db.backref('bindustry'))
# # 用户关注太原企业
# company = db.relationship("Company", secondary="user_company", backref=db.backref("bcompany"))
# # 用户关注全国企业
# enterprise = db.relationship("Enterprise", secondary="user_enterprise", backref=db.backref("benterprise"))
#
# @property
# def password(self):
# # 设置为只写的方式
# # return self.password_hash
# raise AttributeError('这个属性只能设置,不能读取')
#
# @password.setter
# def password(self, value):
# self.password_hash = generate_password_hash(value)
#
# def check_password(self, password):
# '''检验密码的正确性,传入参数为用户登录时填写的密码'''
# return check_password_hash(self.password_hash, password)
#
# # 生成token
# @staticmethod
# def create_token(user_id):
# """
# 生成token,生成方式( 内部配置的私钥+有效期+用户的id )
# :param user_id: 用户id
# :return:
# """
# # 第一个参数是内部的私钥,写在配置里,第二个参数是有效期(秒)
# s = Serializer(Config.SECRET_KEY, expires_in=Config.TOKEN_EXPIRATION)
# # 接收用户id转换与编码
# token = s.dumps({"id": user_id}).decode('ascii')
# print(token)
# return token
#
#
# # 角色(职位,职级)
# class Role(BaseModel, db.Model):
# __tablename__ = "role"
#
# id = db.Column(db.Integer, primary_key=True, autoincrement=True) # 企业
# role_name = db.Column(db.String(255), unique=True) # 角色名
# role = db.Column(db.String(10), unique=True) # 权限值 000000 0位位职级123,后面为权限01
# info = db.Column(db.String(255)) # 权限说明
#
#
#
#
#
# 用户
class
User
(
BaseModel
,
db
.
Model
):
__tablename__
=
"user"
__table_args__
=
({
'comment'
:
'用户信息表'
})
# 添加表注释
# 基本信息
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
# 用户编号
name
=
db
.
Column
(
db
.
String
(
32
),
unique
=
True
)
# 用户名
password_hash
=
db
.
Column
(
db
.
String
(
128
))
# 加密的密码
real_name
=
db
.
Column
(
db
.
String
(
32
))
# 姓名
age
=
db
.
Column
(
db
.
Integer
)
# 年龄
sex
=
db
.
Column
(
db
.
Integer
)
# 性别,男1女2
mobile
=
db
.
Column
(
db
.
String
(
11
),
unique
=
True
)
# 手机号
email
=
db
.
Column
(
db
.
String
(
20
))
# 邮箱
# 个人中心的信息
function
=
db
.
Column
(
db
.
Text
)
# 工作职能 ---个人中心
flag
=
db
.
Column
(
db
.
Integer
)
# 普通1,政府2
status
=
db
.
Column
(
db
.
Integer
)
# 通过1,在审2,驳回3
# bused = db.Column(db.Integer) # 账户有无组织
# 政府信息
position
=
db
.
Column
(
db
.
String
(
128
))
# 现任职务(职务)
unit
=
db
.
Column
(
db
.
String
(
128
))
# 现任工作机构、单位(政府机构,局)
section
=
db
.
Column
(
db
.
String
(
128
))
# 所在部门(部门)
group
=
db
.
Column
(
db
.
String
(
128
))
# 所在组
level
=
db
.
Column
(
db
.
String
(
128
))
# 职级(职级) 跟role_id对应
leader
=
db
.
Column
(
db
.
String
(
32
))
# 领导(直属领导)
# 三方登陆唯一标识
# 微信
vxopenid
=
db
.
Column
(
db
.
String
(
128
),
unique
=
True
)
# 微信openid
vxunionid
=
db
.
Column
(
db
.
String
(
128
),
unique
=
True
)
# 微信unionid
# 角色(职级配置)
role_id
=
db
.
Column
(
db
.
Integer
,
db
.
ForeignKey
(
"role.id"
))
role
=
db
.
relationship
(
"Role"
,
backref
=
db
.
backref
(
"users"
))
# # 钉钉
# ddopenid = db.Column(db.String(128)) # 钉钉openid
# ddunionid = db.Column(db.String(128)) # 钉钉unionid
# dddingid = db.Column(db.String(128)) # 钉钉dingid
# 用户关注行业(图谱)
# industry = db.relationship("Industry", secondary="user_industry", backref=db.backref('bindustry'))
# 用户关注太原企业
# company = db.relationship("Company", secondary="user_company", backref=db.backref("bcompany"))
# 用户关注全国企业
# enterprise = db.relationship("Enterprise", secondary="user_enterprise", backref=db.backref("benterprise"))
@property
def
password
(
self
):
# 设置为只写的方式
# return self.password_hash
raise
AttributeError
(
'这个属性只能设置,不能读取'
)
@password.setter
def
password
(
self
,
value
):
self
.
password_hash
=
generate_password_hash
(
value
)
def
check_password
(
self
,
password
):
'''检验密码的正确性,传入参数为用户登录时填写的密码'''
return
check_password_hash
(
self
.
password_hash
,
password
)
# 生成token
@staticmethod
def
create_token
(
user_id
):
"""
生成token,生成方式( 内部配置的私钥+有效期+用户的id )
:param user_id: 用户id
:return:
"""
# 第一个参数是内部的私钥,写在配置里,第二个参数是有效期(秒)
s
=
Serializer
(
Config
.
SECRET_KEY
,
expires_in
=
Config
.
TOKEN_EXPIRATION
)
# 接收用户id转换与编码
token
=
s
.
dumps
({
"id"
:
user_id
})
.
decode
(
'ascii'
)
print
(
token
)
return
token
# 角色(职位,职级)
class
Role
(
BaseModel
,
db
.
Model
):
__tablename__
=
"role"
__table_args__
=
({
'comment'
:
'用户角色表'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
# 企业
role_name
=
db
.
Column
(
db
.
String
(
255
),
unique
=
True
)
# 角色名
role
=
db
.
Column
(
db
.
String
(
10
),
unique
=
True
)
# 权限值 000000 0位位职级123,后面为权限01
info
=
db
.
Column
(
db
.
String
(
255
))
# 权限说明
# 创新资源-高等院校(985,211,本科,高职专高)
class
College
(
db
.
Model
):
__tablename_
=
"college"
__table_args__
=
({
'comment'
:
'创新资源-高等院校表'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
# 省市区层级分类
category
=
db
.
Column
(
db
.
String
(
255
))
# 学校类型 211工程院校1,普通本科2,高职专高3
cateid
=
db
.
Column
(
db
.
Integer
)
# 学校类型 211工程院校1,普通本科2,高职专高3
name
=
db
.
Column
(
db
.
String
(
255
))
# 高等院校高职专科等机构名称
ccode
=
db
.
Column
(
db
.
String
(
255
))
# 院校代码
buildate
=
db
.
Column
(
db
.
String
(
255
))
# 创建时间
nature
=
db
.
Column
(
db
.
String
(
255
))
# 办学性质
clas
=
db
.
Column
(
db
.
String
(
255
))
# 学校类别
feature
=
db
.
Column
(
db
.
String
(
255
))
# 学校特色
charge
=
db
.
Column
(
db
.
String
(
255
))
# 主管部门
major
=
db
.
Column
(
db
.
String
(
255
))
# 专业设置
faculty
=
db
.
Column
(
db
.
String
(
255
))
# 院系设置
introduct
=
db
.
Column
(
db
.
Text
)
# 院校简介
address
=
db
.
Column
(
db
.
String
(
255
))
# 所在地址
lng
=
db
.
Column
(
db
.
String
(
255
))
# 经度
lat
=
db
.
Column
(
db
.
String
(
255
))
# 纬度
# # 高等院校(985,211,本科,高职专高)
# class College(db.Model):
# __tablename_ = "college"
#
# id = db.Column(db.Integer, primary_key=True, autoincrement=True) # 省市区层级分类
#
# category = db.Column(db.String(255)) # 学校类型 211工程院校1,普通本科2,高职专高3
# cateid = db.Column(db.Integer) # 学校类型 211工程院校1,普通本科2,高职专高3
# name = db.Column(db.String(255)) # 高等院校高职专科等机构名称
# ccode = db.Column(db.String(255)) # 院校代码
# buildate = db.Column(db.String(255)) # 创建时间
# nature = db.Column(db.String(255)) # 办学性质
# clas = db.Column(db.String(255)) # 学校类别
# feature = db.Column(db.String(255)) # 学校特色
# charge = db.Column(db.String(255)) # 主管部门
# major = db.Column(db.String(255)) # 专业设置
# faculty = db.Column(db.String(255)) # 院系设置
# introduct = db.Column(db.Text) # 院校简介
# address = db.Column(db.String(255)) # 所在地址
# lng = db.Column(db.String(255)) # 经度
# lat = db.Column(db.String(255)) # 纬度
#
# navigator = db.Column(db.String(255)) # 导航一
# navigat = db.Column(db.String(255)) # 导航二
# # navigatorid = db.Column(db.String(32)) # 导航一id
# # navigatid = db.Column(db.String(32)) # 导航二id
#
# research = db.Column(db.String(255)) # 研究方向
# admin = db.Column(db.String(255)) # 所在行政区
# developarea = db.Column(db.String(255)) # 所在开发区
#
#
# # 科研机构
# class Scientific(db.Model):
# __tablename_ = "scientific"
#
# id = db.Column(db.Integer, primary_key=True, autoincrement=True)
# # oname = db.Column(db.String(64)) # 机构原名
# name = db.Column(db.String(255)) # 机构现名
# introduct = db.Column(db.Text) # 机构简介
# buildate = db.Column(db.DateTime) # 创建时间
# telephone = db.Column(db.String(255)) # 电话
# fax = db.Column(db.String(255)) # 传真
# postcode = db.Column(db.String(255)) # 邮编
# address = db.Column(db.String(255)) # 所在地址
# lng = db.Column(db.String(255)) # 经度
# lat = db.Column(db.String(255)) # 纬度
#
# research = db.Column(db.String(255)) # 研究方向
# admin = db.Column(db.String(255)) # 所在行政区
# developarea = db.Column(db.String(255)) # 所在开发区
#
# navigator = db.Column(db.String(255)) # 导航一
# navigat = db.Column(db.String(255)) # 导航二
# # navigatorid = db.Column(db.String(32)) # 导航一id
# # navigatid = db.Column(db.String(32)) # 导航二id
navigator
=
db
.
Column
(
db
.
String
(
255
))
# 导航一
navigat
=
db
.
Column
(
db
.
String
(
255
))
# 导航二
research
=
db
.
Column
(
db
.
String
(
255
))
# 研究方向
admin
=
db
.
Column
(
db
.
String
(
255
))
# 所在行政区
developarea
=
db
.
Column
(
db
.
String
(
255
))
# 所在开发区
# 创新平台(实验室等)
# 创新资源-科研机构
class
Scientific
(
db
.
Model
):
__tablename_
=
"scientific"
__table_args__
=
({
'comment'
:
'创新资源-科研机构表'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
name
=
db
.
Column
(
db
.
String
(
255
))
# 机构现名
introduct
=
db
.
Column
(
db
.
Text
)
# 机构简介
buildate
=
db
.
Column
(
db
.
DateTime
)
# 创建时间
telephone
=
db
.
Column
(
db
.
String
(
255
))
# 电话
fax
=
db
.
Column
(
db
.
String
(
255
))
# 传真
postcode
=
db
.
Column
(
db
.
String
(
255
))
# 邮编
address
=
db
.
Column
(
db
.
String
(
255
))
# 所在地址
lng
=
db
.
Column
(
db
.
String
(
255
))
# 经度
lat
=
db
.
Column
(
db
.
String
(
255
))
# 纬度
research
=
db
.
Column
(
db
.
String
(
255
))
# 研究方向
admin
=
db
.
Column
(
db
.
String
(
255
))
# 所在行政区
developarea
=
db
.
Column
(
db
.
String
(
255
))
# 所在开发区
navigator
=
db
.
Column
(
db
.
String
(
255
))
# 导航一
navigat
=
db
.
Column
(
db
.
String
(
255
))
# 导航二
# 创新资源-创新平台(实验室等)
class
Lab
(
db
.
Model
):
__tablename_
=
"lab"
__table_args__
=
({
'comment'
:
'创新资源-创新平台表'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
...
...
@@ -800,6 +854,8 @@ class Lab(db.Model):
# 工程技术中心1,国际科技合作基地2,企业技术中心3,双创基地4,院士工作站5,质量检测与测量中心6,重点实验室7
name
=
db
.
Column
(
db
.
String
(
255
))
# 机构现名
fax
=
db
.
Column
(
db
.
String
(
255
))
# 传真
postcode
=
db
.
Column
(
db
.
String
(
255
))
# 邮编
introduct
=
db
.
Column
(
db
.
Text
)
# 机构简介
address
=
db
.
Column
(
db
.
String
(
255
))
# 所在地址
lng
=
db
.
Column
(
db
.
String
(
255
))
# 经度
...
...
@@ -814,9 +870,63 @@ class Lab(db.Model):
developarea
=
db
.
Column
(
db
.
String
(
255
))
# 所在开发区
# 公共服务平台
# 产业载体-土地数据
class
ZaitiLand
(
db
.
Model
):
__tablename_
=
"zaiti_land"
__table_args__
=
({
'comment'
:
'产业载体-土地数据表'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
num
=
db
.
Column
(
db
.
String
(
20
))
name
=
db
.
Column
(
db
.
String
(
20
))
addr
=
db
.
Column
(
db
.
String
(
50
))
nature
=
db
.
Column
(
db
.
String
(
20
))
acreage
=
db
.
Column
(
db
.
String
(
50
))
target
=
db
.
Column
(
db
.
String
(
255
))
age_limit
=
db
.
Column
(
db
.
String
(
20
))
industry_type
=
db
.
Column
(
db
.
String
(
255
))
telephone
=
db
.
Column
(
db
.
String
(
20
))
navigator
=
db
.
Column
(
db
.
String
(
10
))
navigat
=
db
.
Column
(
db
.
String
(
20
))
# 产业载体-楼宇数据
class
ZaitiBuild
(
db
.
Model
):
__tablename_
=
"zaiti_build"
__table_args__
=
({
'comment'
:
'产业载体-楼宇数据表'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
name
=
db
.
Column
(
db
.
String
(
20
))
addr
=
db
.
Column
(
db
.
String
(
50
))
acreage
=
db
.
Column
(
db
.
String
(
50
))
buide_type
=
db
.
Column
(
db
.
String
(
20
))
industry_type
=
db
.
Column
(
db
.
String
(
255
))
rate
=
db
.
Column
(
db
.
String
(
20
))
telephone
=
db
.
Column
(
db
.
String
(
20
))
navigator
=
db
.
Column
(
db
.
String
(
10
))
navigat
=
db
.
Column
(
db
.
String
(
20
))
# 产业载体-楼宇数据
class
ZaitiFactory
(
db
.
Model
):
__tablename_
=
"zaiti_factory"
__table_args__
=
({
'comment'
:
'产业载体-厂房数据表'
})
# 添加表注释
id
=
db
.
Column
(
db
.
Integer
,
primary_key
=
True
,
autoincrement
=
True
)
name
=
db
.
Column
(
db
.
String
(
20
))
addr
=
db
.
Column
(
db
.
String
(
50
))
acreage
=
db
.
Column
(
db
.
String
(
50
))
structure
=
db
.
Column
(
db
.
String
(
20
))
height
=
db
.
Column
(
db
.
String
(
20
))
bearing
=
db
.
Column
(
db
.
String
(
50
))
new_level
=
db
.
Column
(
db
.
String
(
20
))
other
=
db
.
Column
(
db
.
String
(
255
))
industry_type
=
db
.
Column
(
db
.
String
(
20
))
factory_type
=
db
.
Column
(
db
.
String
(
20
))
telephone
=
db
.
Column
(
db
.
String
(
20
))
navigator
=
db
.
Column
(
db
.
String
(
10
))
navigat
=
db
.
Column
(
db
.
String
(
20
))
# # 创新资源-双创平台
# class Platform(db.Model):
# __tablename_ = "platform"
# __table_args__ = ({'comment': '创新资源-双创平台表'}) # 添加表注释
#
# id = db.Column(db.Integer, primary_key=True, autoincrement=True)
#
...
...
@@ -835,9 +945,9 @@ class Lab(db.Model):
# research = db.Column(db.String(255)) # 研究方向
# admin = db.Column(db.String(255)) # 所在行政区
# developarea = db.Column(db.String(255)) # 所在开发区
#
#
#
#
资源机构的位置信息+research(产品词扩展)
# 资源机构的位置信息+research(产品词扩展)
# class Orgs(db.Model):
# __tablename_ = "orgs"
#
...
...
@@ -851,8 +961,8 @@ class Lab(db.Model):
# research = db.Column(db.String(255)) # research
# navigator = db.Column(db.String(255)) # 导航一
# navigat = db.Column(db.String(255)) # 导航二
#
#
...
...
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