From 586815b2cefa896f1515c0c103ca7a87874d4a7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BD=AD=E6=A3=AE?= Date: Tue, 18 Jan 2022 15:35:11 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=81=E4=B8=9A=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E6=8E=A5=E5=8F=A3/=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=AE=8F=E8=A7=82=E6=8A=A5=E5=91=8Abug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.py | 2 +- company/Company.py | 9 +++++++++ company/db.py | 15 +++++++++++++++ company/routes.py | 17 +++++++++++++++++ company/scripts.py | 13 +++++++++++++ macro/Macro.py | 8 +++++--- macro/db.py | 19 ++++++++++++++++++- macro/routes.py | 2 +- macro/scripts.py | 24 ++++++++++++++++++++---- 9 files changed, 99 insertions(+), 10 deletions(-) diff --git a/app.py b/app.py index 9a5f0f7..4f4d1fd 100644 --- a/app.py +++ b/app.py @@ -16,7 +16,7 @@ app.register_blueprint(test_route, url_prefix='/admin/test') app.register_blueprint(user_route, url_prefix='/admin/user') app.register_blueprint(company_route, url_prefix='/admin/company') app.register_blueprint(rating_route, url_prefix='/admin/rating') -app.register_blueprint(macro_route, url_prefix='/admin/marco') +app.register_blueprint(macro_route, url_prefix='/admin/macro') if __name__ == '__main__': app.run() diff --git a/company/Company.py b/company/Company.py index fdceeef..dbe568b 100644 --- a/company/Company.py +++ b/company/Company.py @@ -25,3 +25,12 @@ class Company: """ result = company_index_script(self.cid) return result + + def company_edit(self, data): + """ + 企业信息编辑 + Returns: + result: 企业信息编辑结果 + """ + result = company_edit_script(self.cid, data) + return result diff --git a/company/db.py b/company/db.py index bc2bd57..e9f72ca 100644 --- a/company/db.py +++ b/company/db.py @@ -69,3 +69,18 @@ def find_company_evaluate_info(cid): data = collection.find({"企业ID": cid}, {'_id': False, '企业ID': False}) record = list(data) return record + + +def update_company_info(cid, data): + """ + 编辑企业信息 + Parameters: + cid: 企业ID + data: 编辑后数据 + Returns: + record: 编辑结果 + """ + collection = client['企业']['公司基本信息'] + res = collection.update_one({"企业ID": cid}, {"$set": data}) + info = res.raw_result['updatedExisting'] + return info diff --git a/company/routes.py b/company/routes.py index 6b12e0f..894515f 100644 --- a/company/routes.py +++ b/company/routes.py @@ -41,3 +41,20 @@ def company_index(): return {"info": '企业信息查询成功', "result": data}, 200 +@company_route.route('/edit', methods=['POST']) +@api_secret +def company_edit(): + """ + 企业信息编辑 + Parameters: + - + Returns: + result: 编辑结果 + """ + company = Company() + company.cid = request.json['cid'] + data = request.json['data'] + result = company.company_edit(data) + status = 200 if result else 210 + info = "企业信息编辑成功" if result else "企业信息编辑失败" + return {"info": info}, status diff --git a/company/scripts.py b/company/scripts.py index 6164327..0d6a5b8 100644 --- a/company/scripts.py +++ b/company/scripts.py @@ -40,3 +40,16 @@ def company_index_script(cid): result['评价记录'] = list() result['评价记录'] = evaluate_info return result + + +def company_edit_script(cid, data): + """ + 编辑企业信息 + Parameters: + cid: 企业ID + data: 编辑后数据 + Returns: + result: 编辑数据 + """ + result = update_company_info(cid, data) + return result diff --git a/macro/Macro.py b/macro/Macro.py index bb6b038..00e3487 100644 --- a/macro/Macro.py +++ b/macro/Macro.py @@ -30,7 +30,8 @@ class Macro: result = search_macroscopic_report_script(self.industry, time, skip, limit) return result - def upload_macroscopic_data(self, req): + @staticmethod + def upload_macroscopic_data(req): """ 宏观数据上传 Parameters: @@ -41,7 +42,8 @@ class Macro: result = upload_macroscopic_data_script(req) return result - def update_macroscopic_data(self, req): + @staticmethod + def update_macroscopic_data(req): """ 宏观数据编辑 Parameters: @@ -50,4 +52,4 @@ class Macro: result: 修改结果 """ result = update_macroscopic_data_script(req) - return result \ No newline at end of file + return result diff --git a/macro/db.py b/macro/db.py index fe36fe0..bc1afeb 100644 --- a/macro/db.py +++ b/macro/db.py @@ -46,7 +46,7 @@ def update_macroscopic_report_data(industry, update_time, fid): result: 更新结果 """ collection = client['宏观']['行业报告'] - res = collection.update_one({"行业名称": industry, '上传日期': update_time}, {"$set": {"报告fid": fid}}) + res = collection.update_one({"行业名称": industry}, {"$set": {"报告fid": fid, "上传日期": update_time}}) info = res.raw_result['updatedExisting'] return info @@ -156,6 +156,23 @@ def upload_industry_macroscopic_data(req): return False +def upload_overview_macroscopic_data(req): + """ + 上传总规模宏观数据 + Parameters: + req: 上传的数据 + Returns: + record: 上传结果 + """ + collection = client['宏观']['总规模数据'] + find = {"行业名称": req['行业名称'], "统计时间": req['统计时间'], "统计字段名称": req['统计字段名称']} + res = collection.update_one(find, {"$set": req}, upsert=True) + if res.raw_result['n'] == 1: + return True + else: + return False + + def update_industry_macroscopic_data(req): collection = client['宏观']['行业数据'] find = {"一级行业": req['一级行业'], "二级行业": req['二级行业'], "统计时间": req['统计时间'], "统计字段名称": req['统计字段名称']} diff --git a/macro/routes.py b/macro/routes.py index 4318842..a672d7e 100644 --- a/macro/routes.py +++ b/macro/routes.py @@ -102,4 +102,4 @@ def edit_data(): except KeyError: return {"info": "键值错误"}, 400 except TypeError: - return {"info": "参数错误"}, 400 \ No newline at end of file + return {"info": "参数错误"}, 400 diff --git a/macro/scripts.py b/macro/scripts.py index 0c173fe..d6c56bd 100644 --- a/macro/scripts.py +++ b/macro/scripts.py @@ -98,16 +98,32 @@ def get_macro_data(): num = len(row) for i in range(num-1): req = { - "一级行业": "制造业", - "二级行业": row[0], + "一级行业": "信息技术业", + "二级行业": row.keys()[i + 1], + "数据": row[i + 1], + "统计字段名称": "营业收入", + "统计周期": "年度", + "统计时间": row[0], + "数据单位": "亿元" + } + upload_overview_macroscopic_data(req) + + +def get_macro_data_over(): + df = pd.read_excel('./static/C13-02.xlsx') + for index, row in df.iterrows(): + num = len(row) + for i in range(num-1): + req = { + "行业名称": "制造业", "数据": row[i + 1], "统计字段名称": row.keys()[i + 1], "统计周期": "年度", "统计时间": "2020年", "数据单位": "亿元" } - upload_industry_macroscopic_data(req) + upload_overview_macroscopic_data(req) if __name__ == '__main__': - get_macro_data() \ No newline at end of file + get_macro_data_over() \ No newline at end of file