Commit 5c792b14 by dong

fix

parent fc1ea934
......@@ -58,6 +58,7 @@ class IndustryChain1(db.Model):
enterprise_num = db.Column(db.Integer, comment='相关全企业表数量')
# 全国企业
class Enterprise(db.Model):
__tablename__ = "enterprise"
......@@ -114,9 +115,9 @@ class Enterprise(db.Model):
parti_year = db.Column(db.Integer, doc='高新企业注册年份', comment='高新企业注册年份') # 高新企业注册年份
tbe = db.Column(db.String(32), doc='是否科技型中小企业', comment='是否科技型中小企业') # 是否科技型中小企业
tbe_sjmy = db.Column(db.String(32), doc='是否为省级民营科技企业', comment='是否为省级民营科技企业') # 省级民营科技企业
zjtx = db.Column(db.String(32), doc='是否为专精特新企业', comment='是否为专精特新企业') # 山西专精特工企业
zjtx_gjjxjr = db.Column(db.String(32), doc='是否为国家级专精特新小巨人企业', comment='是否为国家级专精特新小巨人企业') # 国家级专精特新小巨人企业
zjtx_sjxjr = db.Column(db.String(32), doc='是否为省级专精特新小巨人企业', comment='是否为省级专精特新小巨人企业') # 省级专精特新小巨人企业
zjtg = db.Column(db.String(32), doc='是否为专精特新企业', comment='是否为专精特新企业') # 山西专精特工企业
zjtg_gjjxjr = db.Column(db.String(32), doc='是否为国家级专精特新小巨人企业', comment='是否为国家级专精特新小巨人企业') # 国家级专精特新小巨人企业
zjtg_sjxjr = db.Column(db.String(32), doc='是否为省级专精特新小巨人企业', comment='是否为省级专精特新小巨人企业') # 省级专精特新小巨人企业
fianacing = db.Column(db.String(32), doc='是否为有融资企业', comment='是否为有融资企业') # 是否为有融资企业
fianacing_rounds = db.Column(db.String(32), doc='融资轮次', comment='融资轮次') # 融资轮次
roundid = db.Column(db.Integer, index=True,
......@@ -233,9 +234,9 @@ class Company(db.Model):
company_info = db.Column(db.Text, doc='公司简介', comment='公司简介') # 公司简介
sxmon = db.Column(db.String(32), doc='是否山西民营100强', comment='是否山西民营100强') # 是否山西民营100强(2019年)
zjtx = db.Column(db.String(32), doc='是否为山西专精特新企业', comment='是否为山西专精特新企业') # 山西专精特工企业
zjtx_gjjxjr = db.Column(db.String(32), doc='是否为国家级专精特新小巨人企业', comment='是否为国家级专精特新小巨人企业') # 国家级专精特新小巨人企业
zjtx_sjxjr = db.Column(db.String(32), doc='是否为省级专精特新小巨人企业', comment='是否为省级专精特新小巨人企业') # 省级专精特新小巨人企业
zjtg = db.Column(db.String(32), doc='是否为山西专精特新企业', comment='是否为山西专精特新企业') # 山西专精特工企业
zjtg_gjjxjr = db.Column(db.String(32), doc='是否为国家级专精特新小巨人企业', comment='是否为国家级专精特新小巨人企业') # 国家级专精特新小巨人企业
zjtg_sjxjr = db.Column(db.String(32), doc='是否为省级专精特新小巨人企业', comment='是否为省级专精特新小巨人企业') # 省级专精特新小巨人企业
unicorn = db.Column(db.String(32), doc='独角兽企业', comment='独角兽企业') # 独角兽企业
dengl = db.Column(db.String(32), doc='瞪羚', comment='瞪羚') # 瞪羚
hncode = db.Column(db.String(32), doc='高企证书编号', comment='高企证书编号') # 高企证书编号
......
......@@ -2,7 +2,7 @@ from py2neo import Graph
def conn_neo4j():
graph = Graph("http://39.100.39.50:7476", username="neo4j", password="123456") # 晋城neo4j
graph = Graph("http://39.98.37.63:7479", username="neo4j", password="neo4j") # 晋城neo4j
return graph
......@@ -18,7 +18,7 @@ def neo4j_dict():
"文旅康养": "文旅康养",
"现代服务": "现代服务",
"数字经济": "数字经济",
"生物医药": "生物医药",
"医药": "医药",
"陶瓷": "陶瓷",
"绿色食品": "绿色食品",
......
......@@ -77,9 +77,13 @@ def find_up_thr(name_query, relation):
@login_required
def get_cluster():
try:
cluster_obj = IndustryChain.query.filter_by(industry_type=0, status=1).all()
data = [{"id": i.id, 'name': i.industry_name, 'industry_level': 1,
"icon": i.icon_url, "icon1": i.icon_url1}
# cluster_obj = IndustryChain.query.filter_by(industry_type=0, status=1).all()
# data = [{"id": i.id, 'name': i.industry_name, 'industry_level': 1,
# "icon": i.icon_url, "icon1": i.icon_url1}
# for i in cluster_obj]
cluster_obj = Industry.query.all()
data = [{"id": i.id, 'name': i.oname, 'industry_level': 1,
"icon": '', "icon1": ''}
for i in cluster_obj]
return jsonify(code=RET.OK, msg='产业集群名称获取成功!', data=data)
......@@ -89,80 +93,89 @@ def get_cluster():
# 获取新表的产业集群名称
@api_atlas.route('/IndustryCluster', methods=['POST'])
# @login_required
def industry_cluster():
req_dic = request.get_json()
industry_name = req_dic['industry_name']
flag = req_dic['flag']
'''
行业id->行业链标题-》上中下游-》查询数值
:return:
'''
req_dict = request.get_json()
# inid = req_dict.get("inid") # 二级行业id(二级行业显示链图)
industry_name = req_dict['industry_name'] # 二级行业id(二级行业显示链图)
# 校验参数完整性
if not all([industry_name]):
return jsonify(code=RET.PARAMERR, msg="参数不完整")
try:
industry_obj = IndustryChain.query.filter_by(industry_name=industry_name).first()
industry_id = industry_obj.id
chain_id = industry_obj.chain_id
if flag == 2:
# 查询redis
result = redis_store.get('chain_id_{}'.format(industry_id))
if result:
return jsonify(code=RET.OK, msg="获取成功", data=json.loads(result))
# name_query = "jc" + str(inid) + str(district)
# if redis_store.get(name_query) is not None:
# data = json.loads(redis_store.get(name_query))
# return jsonify(code=RET.OK, msg="获取成功", data=data)
# 行业使用名
# industryName = Industry.query.filter_by(oname=industry_name).first().oname
# ptp = neo4j_dict()
# if industryName in ptp:
# industryName = ptp[industryName]
result = {
"industryChain": industry_name,
"nodeList": [find_up_thr1(chain_id, 1, industry_id, flag),
find_up_thr1(chain_id, 2, industry_id, flag),
find_up_thr1(chain_id, 3, industry_id, flag)]
"nodeList": [find_up_thr(industry_name, "上游行业"),
find_up_thr(industry_name, "中游行业"),
find_up_thr(industry_name, "下游行业")]
}
# redis缓存
# redis_store.set(name_query, json.dumps(result))
# redis_store.expire(name_query, 30 * 24 * 3600)
# print("redis")
except Exception as e:
current_app.logger.error(e)
return jsonify(code=RET.DBERR, msg="数据异常")
if flag == 2:
try:
redis_store.setex("chain_id_%s" % industry_id, constants.INDUSTRY_ENTERPRISE_REDIS_EXPIRES,
json.dumps(result))
# 保存发送给这个手机号的记录,防止用户在60s内再次出发发送短信的操作
# redis_store.setex("send_sms_code_%s" % mobile, constants.SEND_SMS_CODE_INTERVAL, 1)
except Exception as e:
current_app.logger.error(e)
return jsonify(code=RET.DBERR, msg="保存产业/企业数量信息异常")
return jsonify(code=RET.OK, msg="获取成功", data=result)
# def get_count(industry_id, chain_name, flag):
# company_count = ''
# if flag == 1: # 晋城
# if chain_name in ["钢铁", "光机电", "煤层气", "装备制造", "铸造",
# "煤化工", "新材料", "绿色建材", "医药", "丝麻纺织服装",
# "现代服务业", "数字经济", "文化旅游"]:
# company_count = Company.query.filter(
# # Company.product_all.like('%{}%'.format(chain_name)),
# Company.c_type == industry_id
# ).count()
# else:
# company_count = Company.query.filter(
# Company.product_all.like('%{}%'.format(chain_name)),
# Company.c_type == industry_id,
# ).count()
# if flag == 2: # 全国
# if chain_name in ["钢铁", "光机电", "煤层气", "装备制造", "铸造",
# "煤化工", "新材料", "绿色建材", "医药", "丝麻纺织服装",
# "现代服务业", "数字经济", "文化旅游"]:
# company_count = Enterprise.query.filter(
# # Enterprise.product_all.like('%{}%'.format(chain_name)),
# Enterprise.c_type == industry_id
# ).count()
# else:
# company_count = Enterprise.query.filter(
# Enterprise.product_all.like('%{}%'.format(chain_name)),
# Enterprise.c_type == industry_id,
# ).count()
# return company_count
# @api_atlas.route('/IndustryCluster', methods=['POST'])
# def industry_cluster():
# req_dic = request.get_json()
# industry_name = req_dic['industry_name']
# flag = req_dic['flag']
#
# try:
# industry_obj = IndustryChain.query.filter_by(industry_name=industry_name).first()
# industry_id = industry_obj.id
# chain_id = industry_obj.chain_id
#
# if flag == 2:
# # 查询redis
# result = redis_store.get('chain_id_{}'.format(industry_id))
# if result:
# return jsonify(code=RET.OK, msg="获取成功", data=json.loads(result))
# result = {
# "industryChain": industry_name,
# "nodeList": [find_up_thr1(chain_id, 1, industry_id, flag),
# find_up_thr1(chain_id, 2, industry_id, flag),
# find_up_thr1(chain_id, 3, industry_id, flag)]
# }
# except Exception as e:
# current_app.logger.error(e)
# return jsonify(code=RET.DBERR, msg="数据异常")
# if flag == 2:
# try:
# redis_store.setex("chain_id_%s" % industry_id, constants.INDUSTRY_ENTERPRISE_REDIS_EXPIRES,
# json.dumps(result))
# # 保存发送给这个手机号的记录,防止用户在60s内再次出发发送短信的操作
# # redis_store.setex("send_sms_code_%s" % mobile, constants.SEND_SMS_CODE_INTERVAL, 1)
# except Exception as e:
# current_app.logger.error(e)
# return jsonify(code=RET.DBERR, msg="保存产业/企业数量信息异常")
#
# return jsonify(code=RET.OK, msg="获取成功", data=result)
def get_count(chain_id, industry_id, chain_name, flag):
company_count = ''
id_list = []
if flag == 1: # 晋城
# company_count = Company.query.filter(
# Company.product_all.like('%{}%'.format(chain_name)),
# Company.c_type == chain_id,
# ).count()
company_obj_li = Company.query.filter(
Company.product_all.like('%{}%'.format(chain_name)),
Company.c_type == chain_id,
......
......@@ -59,8 +59,8 @@ def industry_distribute():
def get_jjzb(district, flag):
'''经济指标数据'''
try:
if not district or district == '晋城市':
datas = City.query.filter_by(area='晋城市', flag=flag).first()
if not district or district == '满城区':
datas = City.query.filter_by(area='满城区', flag=flag).first()
else:
datas = City.query.filter_by(area=district, flag=flag).first()
df_dic = ''
......@@ -103,27 +103,15 @@ def menu():
req_dict = request.get_json()
district = req_dict.get("district") # 区县或者开发区名称
# 区县名称转换字典
district_dict = {
'沁水县': '沁水县',
'高平市': '高平市',
'陵川县': '陵川县',
'阳城县': '阳城县',
'泽州县': '泽州县',
'城区': '城区',
'晋城经济技术开发区': '晋城经济技术开发区'
}
if not district or district == '晋城市':
if not district or district == '满城区':
try:
company = Company.query.filter_by(city="晋城市")
company = Company.query.filter_by(city="满城区")
except Exception as e:
current_app.logger.error(e)
return jsonify(code=RET.DBERR, msg="数据库错误")
else:
try:
# company = Company.query.filter(Company.induzone == district_dict[district], Company.city == "晋城市")
company = Company.query.filter(Company.district == district_dict[district], Company.city == "晋城市")
company = Company.query.filter(Company.district == district, Company.city == "晋城市")
except Exception as e:
current_app.logger.error(e)
return jsonify(code=RET.DBERR, msg="数据库错误")
......@@ -133,9 +121,9 @@ def menu():
# 晋城市
t_c5 = company.filter_by(isfive="1").count() # 500强
ssqy = company.filter_by(quoted_company="1").count() # 上市
if district != "晋城市":
if district != "满城区":
gmys = Company.query.filter(
Company.induzone == district_dict[district]).filter_by(
Company.induzone == district).filter_by(
scale="1").count() # 规模(2-5) 622
else:
gmys = Company.query.filter_by(scale="1").count()
......@@ -169,35 +157,27 @@ def menu():
count_all = company.count()
if count_all == 0:
count_all = 1
count_gt = company.filter_by(f_type=1).count() # 钢铁
count_gjd = company.filter_by(f_type=2).count() # 光机电
count_mcq = company.filter_by(f_type=7).count() # 煤层气
count_zbzz = company.filter_by(f_type=8).count() # 装备制造
count_zz = company.filter_by(f_type=9).count() # 铸造
count_mhg = company.filter_by(f_type=10).count() # 煤化工
count_xcl = company.filter_by(f_type=11).count() # 新材料
count_lsjc = company.filter_by(f_type=12).count() # 绿色建材
count_yy = company.filter_by(f_type=13).count() # 医药
count_smfz = company.filter_by(f_type=14).count() # 丝麻纺织服装
count_xdfwy = company.filter_by(f_type=15).count() # 现代服务业
count_szjj = company.filter_by(f_type=16).count() # 数字经济
count_whly = company.filter_by(f_type=17).count() # 文化旅游
count_zzp = company.filter_by(f_type=1).count() # 纸制品加工及卫品
count_whly = company.filter_by(f_type=2).count() # 文化旅游
count_gdjt = company.filter_by(f_type=3).count() # 轨道交通
count_xcl = company.filter_by(f_type=4).count() # 新材料及高端装备制造
count_yy = company.filter_by(f_type=5).count() # 生物医药大健康
count_jy = company.filter_by(f_type=6).count() # 教育和体育
count_xdfwy = company.filter_by(f_type=7).count() # 现代服务及商贸物流
count_nycyh = company.filter_by(f_type=8).count() # 农业产业化及食品加工
count_dldq = company.filter_by(f_type=9).count() # 电力电气
# 产业结构分布
indu_dic = [
{"name": "钢铁", "value": count_gt}, # {百分比,value}
{"name": "光机电", "value": count_gjd},
{"name": "煤层气", "value": count_mcq},
{"name": "装备制造", "value": count_zbzz},
{"name": "铸造", "value": count_zz},
{"name": "煤化工", "value": count_mhg},
{"name": "新材料", "value": count_xcl},
{"name": "绿色建材", "value": count_lsjc},
{"name": "医药", "value": count_yy},
{"name": "丝麻纺织服装", "value": count_smfz},
{"name": "现代服务业", "value": count_xdfwy},
{"name": "数字经济", "value": count_szjj},
{"name": "文化旅游", "value": count_whly}
{"name": "纸制品加工及卫品", "value": count_zzp},
{"name": "文化旅游", "value": count_whly},
{"name": "轨道交通", "value": count_gdjt},
{"name": "新材料及高端装备制造", "value": count_xcl},
{"name": "生物医药大健康", "value": count_yy},
{"name": "教育和体育", "value": count_jy},
{"name": "现代服务及商贸物流", "value": count_xdfwy},
{"name": "农业产业化及食品加工", "value": count_nycyh},
{"name": "电力电气", "value": count_dldq},
]
data = {
......@@ -222,10 +202,10 @@ def project():
project_map = []
industry_money = []
industry_nums = []
list1 = ["晋城市", "沁水县", "高平市", "陵川县", "阳城县", "泽州县", "城区", "晋城经济技术开发区"]
list1 = ["满城区", "满城镇", "神星镇", "方顺桥镇", "南韩村镇", "大册营镇", "于家庄镇", "要庄乡", "石井乡", "坨南乡", "白龙乡", "刘家台乡"]
# 晋城市,点击区县之前默认数据
if not district or district == '晋城市':
if not district or district == '满城区':
for i in list1:
# 1.招商引资作战图数据
ss = Examine.query.filter_by(district=i).first()
......@@ -244,7 +224,7 @@ def project():
# 已开工项目产业分布/已开工项目到位资金产业分布
# types_list = []
# industry_dic = {}
project_list = NewProject.query.filter_by(district="晋城市").all()
project_list = NewProject.query.filter_by(district="满城区").all()
i = 0
for project in project_list:
i += 1
......@@ -301,14 +281,14 @@ def propol():
district = req_dict.get("district") # 县区
try:
if not district or district == "晋城市":
if not district or district == "满城区":
# name_query = "project-propol"
# if redis_store.get(name_query) is not None:
# data = json.loads(redis_store.get(name_query))
# return jsonify(code=RET.OK, msg="获取成功", data=data)
project = Project.query.all()
policy = InduPolicy.query.filter_by(district="晋城市").order_by(InduPolicy.pubdate.desc())
data_policy = [{"name": i.name, "id": i.id, "distict": "晋城市"} for i in policy.all()]
policy = InduPolicy.query.filter_by(district="满城区").order_by(InduPolicy.pubdate.desc())
data_policy = [{"name": i.name, "id": i.id, "distict": "满城区"} for i in policy.all()]
data_project1 = [{"name": i.name, "id": i.id} for i in project if i.project_stage_id == 1]
data_project2 = [{"name": i.name, "id": i.id} for i in project if i.project_stage_id == 2]
......@@ -370,14 +350,6 @@ def attract_video():
if not district:
return jsonify(code=RET.PARAMERR, msg="参数不全")
# district_dict = {'晋城市': '晋城市',
# '沁水市': '沁水市',
# '高平市': '高平市',
# '陵川市': '陵川市',
# '阳城市': '阳城市',
# '泽州市': '泽州市',
# '城区': '城区'
# }
try:
video = Video.query.filter_by(district=district).first()
except Exception as e:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment